Annotation of mstools/ole20/samples/ole2ui/template.h, revision 1.1.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.