Annotation of mstools/mfc/samples/about2/readme.txt, revision 1.1.1.1

1.1       root        1: ========================================================================
                      2:          MICROSOFT FOUNDATION CLASS LIBRARY : ABOUT2 EXAMPLE PROGRAM
                      3: ========================================================================
                      4: 
                      5: This application is exactly like the "About2" sample written by
                      6: Charles Petzold in his book, "Programming Windows."  This version was
                      7: written in C++ and uses the Foundation classes.  Compare the code of
                      8: these two versions to see how Windows applications written in C can be
                      9: adapted to use the features of the Microsoft Foundation Class Library.
                     10: 
                     11: MAKEFILE.
                     12: ABOUT2.MAK
                     13: ABOUT2.STS
                     14:        These describe the compile process for the NMAKE tool and the
                     15:        Programmer's Workbench.  MAKEFILE is an NMAKE-compatible makefile,
                     16:        while ABOUT2.MAK and ABOUT2.STS are the PWB-compatible makefile and
                     17:        PWB status file, respectively.
                     18: 
                     19: ABOUT2.H
                     20: ABOUT2.CPP
                     21:        These two files make up the entire behavior of the application.
                     22:        The application's classes are declared in the ABOUT2.H header
                     23:        file, and the member functions and message maps are defined in
                     24:        ABOUT2.CPP.
                     25: 
                     26:        Note that the CAbout2Dlg class's constructor, declared in ABOUT2.H,
                     27:        uses the constructor of the base class, CModalDialog (a Foundation
                     28:        class).  Normally, the CModalDialog's constructor requires the name
                     29:        of the dialog template resource.  CAbout2Dlg objects will always be
                     30:        associated with the "AboutBox" template (found in ABOUT2.RC), so
                     31:        the new constructor supplies this name explicitly.  Only the parent
                     32:        window argument is then required by the creator of these objects.
                     33: 
                     34:        The CAbout2Dlg also has some member variables.  These variables
                     35:        hold the state of the current color and figure, for the duration of
                     36:        the dialog.  When the dialog is invoked, the global variables
                     37:        nCurrentColor and nCurrentFigure are copied to these member
                     38:        variables, and if the user presses OK in the dialog, they are
                     39:        copied back into the global variables.  A modal dialog box should
                     40:        not modify the actual variables, but rather keep a separate copy
                     41:        that can be disposed of in case the dialog's Cancel button is
                     42:        pushed.
                     43: 
                     44:        A function is defined in ABOUT2.CPP which is not a member of either
                     45:        of the two classes in the application.  This is called Paint, and
                     46:        it is used by both classes to draw a given figure in a given color
                     47:        in any window's display context.  The dialog calls Paint to draw the
                     48:        figure according to the settings that the user makes in the dialog.
                     49:        Once the dialog is dismissed, the frame window uses Paint to draw
                     50:        the same figure in its client area.
                     51: 
                     52:        (For the extremely observant:  you may notice that the Paint
                     53:        function is slightly different in the C++ version from Charles
                     54:        Petzold's original PaintWindow.  The original version always
                     55:        creates a new display context in which to draw.  This version takes
                     56:        a display context (such as the CPaintDC of the frame window) if one
                     57:        is available, and creates a CDC if none is given.  This avoids
                     58:        obtaining and releasing extra display contexts from Windows.
                     59:        Painting during an OnPaint/WM_PAINT message should be done with the
                     60:        display context provided by CPaintDC/BeginPaint, to avoid unwanted
                     61:        flashing.)
                     62: 
                     63: RESOURCE.H
                     64:        This file defines control IDs used in the About dialog box,
                     65:        and the application's main window menu bar.
                     66: 
                     67: ABOUT2.ICO
                     68:        This is an icon file, which is used by the frame window, and also
                     69:        appears in the About dialog box.
                     70: 
                     71: ABOUT2.RC
                     72:        This is a listing of all of the Microsoft Windows resources which
                     73:        the program uses.  It includes two resources: the icon found in
                     74:        ABOUT2.ICO, and the application's main menu.
                     75: 
                     76: ABOUT2.DLG
                     77:        This file contains dialog control content and layout information.
                     78:        It was generated directly by the DLGEDIT dialog editor, part of
                     79:        the Microsoft Windows 3.1 Software Development Kit.  ABOUT2.DLG is
                     80:        processed by the Microsoft Windows Resource Compiler (it is
                     81:        included by ABOUT2.RC).
                     82: 
                     83: ABOUT2.DEF
                     84:        A typical module definition file, used by LINK to set specific
                     85:        application information in the executable file.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.