Annotation of mstools/mfc/samples/about2/readme.txt, revision 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.