Annotation of mstools/ole20/samples/ole2ui/template.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * TEMPLATE.H
        !             3:  *
        !             4:  * CUSTOMIZATION INSTRUCTIONS:
        !             5:  *
        !             6:  * Copyright (c)1992 Microsoft Corporation, All Right Reserved 
        !             7:  *
        !             8:  *
        !             9:  *  1.  Replace <FILE> with the uppercased filename for this file.
        !            10:  *      Lowercase the <FILE>.h entry
        !            11:  *
        !            12:  *  2.  Replace <NAME> with the mixed case dialog name in one word,
        !            13:  *      such as InsertObject
        !            14:  *
        !            15:  *  3.  Replace <FULLNAME> with the mixed case dialog name in multiple
        !            16:  *      words, such as Insert Object
        !            17:  *
        !            18:  *  4.  Replace <ABBREV> with the suffix for pointer variables, such
        !            19:  *      as the IO in InsertObject's pIO or the CI in ChangeIcon's pCI.
        !            20:  *      Check the alignment of the first variable declaration in the
        !            21:  *      Dialog Proc after this.  I will probably be misaligned with the
        !            22:  *      rest of the variables.
        !            23:  *
        !            24:  *  5.  Replace <STRUCT> with the uppercase structure name for this
        !            25:  *      dialog sans OLEUI, such as INSERTOBJECT.  Changes OLEUI<STRUCT>
        !            26:  *      in most cases, but we also use this for IDD_<STRUCT> as the
        !            27:  *      standard template resource ID.
        !            28:  *
        !            29:  *  6.  Find <UFILL> fields and fill them out with whatever is appropriate.
        !            30:  *
        !            31:  *  7.  Delete this header up to the start of the next comment.
        !            32:  *
        !            33:  */
        !            34: 
        !            35: 
        !            36: /*
        !            37:  * <FILE>.H
        !            38:  *
        !            39:  * Internal definitions, structures, and function prototypes for the
        !            40:  * OLE 2.0 UI <FULLNAME> dialog.
        !            41:  *
        !            42:  * Copyright (c)1992 Microsoft Corporation, All Right Reserved
        !            43:  */
        !            44: 
        !            45: 
        !            46: #ifndef <UFILL>
        !            47: #define <UFILL>
        !            48: 
        !            49: //UFILL>  Move from here to INTERNAL to to OLE2UI.H
        !            50: 
        !            51: 
        !            52: typedef struct tagOLEUI<STRUCT>
        !            53:     {
        !            54:     //These IN fields are standard across all OLEUI dialog functions.
        !            55:     DWORD           cbStruct;       //Structure Size
        !            56:     DWORD           dwFlags;        //IN-OUT:  Flags
        !            57:     HWND            hWndOwner;      //Owning window
        !            58:     LPCSTR          lpszCaption;    //Dialog caption bar contents
        !            59:     LPFNOLEUIHOOK   lpfnHook;       //Hook callback
        !            60:     LPARAM          lCustData;      //Custom data to pass to hook
        !            61:     HINSTANCE       hInstance;      //Instance for customized template name
        !            62:     LPCSTR          lpszTemplate;   //Customized template name
        !            63:     HRSRC           hResource;      //Customized template handle
        !            64: 
        !            65:     //Specifics for OLEUI<STRUCT>.  All are IN-OUT unless otherwise spec.
        !            66:     } OLEUI<STRUCT>, *POLEUI<STRUCT>, FAR *LPOLEUI<STRUCT>;
        !            67: 
        !            68: 
        !            69: //API Prototype
        !            70: UINT FAR PASCAL OleUI<NAME>(LPOLEUI<STRUCT>);
        !            71: 
        !            72: 
        !            73: //<FULLNAME> flags
        !            74: #define <ABBREV>F_SHOWHELP                0x00000001L
        !            75: <UFILL>
        !            76: 
        !            77: 
        !            78: //<FULLNAME> specific error codes
        !            79: //DEFINE AS OLEUI_<ABBREV>ERR_<ERROR>     (OLEUI_ERR_STANDARDMAX+n)
        !            80: <UFILL>
        !            81: 
        !            82: 
        !            83: //<FULLNAME> Dialog identifiers
        !            84: //FILL IN DIALOG IDs HERE
        !            85: <UFILL>
        !            86: 
        !            87: 
        !            88: 
        !            89: 
        !            90: 
        !            91: //INTERNAL INFORMATION STARTS HERE
        !            92: 
        !            93: //Internally used structure
        !            94: typedef struct tag<STRUCT>
        !            95:     {
        !            96:     //Keep this item first as the Standard* functions depend on it here.
        !            97:     LPOLEUI<STRUCT>     lpO<ABBREV>;       //Original structure passed.
        !            98: 
        !            99:     /*
        !           100:      * What we store extra in this structure besides the original caller's
        !           101:      * pointer are those fields that we need to modify during the life of
        !           102:      * the dialog but that we don't want to change in the original structure
        !           103:      * until the user presses OK.
        !           104:      */
        !           105: 
        !           106:     <UFILL>
        !           107:     } <STRUCT>, *P<STRUCT>;
        !           108: 
        !           109: 
        !           110: 
        !           111: //Internal function prototypes
        !           112: //<FILE>.C
        !           113: BOOL FAR PASCAL <NAME>DialogProc(HWND, UINT, WPARAM, LPARAM);
        !           114: BOOL            F<NAME>Init(HWND hDlg, WPARAM, LPARAM);
        !           115: <UFILL>
        !           116: 
        !           117: 
        !           118: 
        !           119: #endif //<UFILL>

unix.superglobalmegacorp.com

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