Annotation of mstools/h/commdlg.h, revision 1.1.1.3

1.1.1.3 ! root        1: /*++
        !             2: 
        !             3: Copyright (c) 1992  Microsoft Corporation
        !             4: 
        !             5: Module Name:
        !             6: 
        !             7:     commdlg.h
        !             8: 
        !             9: Abstract:
        !            10: 
        !            11:     common dialog definitions; #include <windows.h> must be precluded
        !            12: 
        !            13: Revision History:
        !            14: 
        !            15: --*/
        !            16: 
        !            17: #ifndef _INC_COMMDLG
        !            18: #define _INC_COMMDLG
        !            19: 
        !            20: #ifndef RC_INVOKED
        !            21: #pragma pack(1)         /* Assume byte packing throughout */
        !            22: #endif /* !RC_INVOKED */
        !            23: 
        !            24: #ifdef __cplusplus
        !            25: extern "C" {            /* Assume C declarations for C++ */
        !            26: #endif /* __cplusplus */
        !            27: 
        !            28: typedef UINT (APIENTRY *LPOFNHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
        !            29: 
        !            30: typedef struct tagOFNA {
        !            31:    DWORD   lStructSize;
        !            32:    HWND    hwndOwner;
        !            33:    HINSTANCE  hInstance;
        !            34:    LPCSTR   lpstrFilter;
        !            35:    LPSTR   lpstrCustomFilter;
        !            36:    DWORD   nMaxCustFilter;
        !            37:    DWORD   nFilterIndex;
        !            38:    LPSTR   lpstrFile;
        !            39:    DWORD   nMaxFile;
        !            40:    LPSTR   lpstrFileTitle;
        !            41:    DWORD   nMaxFileTitle;
        !            42:    LPCSTR   lpstrInitialDir;
        !            43:    LPCSTR   lpstrTitle;
        !            44:    DWORD   Flags;
        !            45:    WORD    nFileOffset;
        !            46:    WORD    nFileExtension;
        !            47:    LPCSTR   lpstrDefExt;
        !            48:    DWORD   lCustData;
        !            49:    LPOFNHOOKPROC lpfnHook;
        !            50:    LPCSTR   lpTemplateName;
        !            51: } OPENFILENAMEA;
        !            52: 
        !            53: typedef struct tagOFNW {
        !            54:    DWORD   lStructSize;
        !            55:    HWND    hwndOwner;
        !            56:    HINSTANCE  hInstance;
        !            57:    LPCWSTR  lpstrFilter;
        !            58:    LPWSTR  lpstrCustomFilter;
        !            59:    DWORD   nMaxCustFilter;
        !            60:    DWORD   nFilterIndex;
        !            61:    LPWSTR  lpstrFile;
        !            62:    DWORD   nMaxFile;
        !            63:    LPWSTR  lpstrFileTitle;
        !            64:    DWORD   nMaxFileTitle;
        !            65:    LPCWSTR  lpstrInitialDir;
        !            66:    LPCWSTR  lpstrTitle;
        !            67:    DWORD   Flags;
        !            68:    WORD    nFileOffset;
        !            69:    WORD    nFileExtension;
        !            70:    LPCWSTR  lpstrDefExt;
        !            71:    DWORD   lCustData;
        !            72:    LPOFNHOOKPROC lpfnHook;
        !            73:    LPCWSTR   lpTemplateName;
        !            74: } OPENFILENAMEW;
        !            75: 
        !            76: #ifdef UNICODE
        !            77: #define OPENFILENAME OPENFILENAMEW
        !            78: #else
        !            79: #define OPENFILENAME OPENFILENAMEA
        !            80: #endif // ! UNICODE
        !            81: 
        !            82: typedef OPENFILENAMEA * LPOPENFILENAMEA;
        !            83: typedef OPENFILENAMEW * LPOPENFILENAMEW;
        !            84: typedef OPENFILENAME * LPOPENFILENAME;
        !            85: 
        !            86: BOOL  APIENTRY     GetOpenFileNameA(LPOPENFILENAMEA);
        !            87: BOOL  APIENTRY     GetOpenFileNameW(LPOPENFILENAMEW);
        !            88: 
        !            89: #ifdef UNICODE
        !            90: #define GetOpenFileName GetOpenFileNameW
        !            91: #else
        !            92: #define GetOpenFileName GetOpenFileNameA
        !            93: #endif // ! UNICODE
        !            94: 
        !            95: BOOL  APIENTRY     GetSaveFileNameA(LPOPENFILENAMEA);
        !            96: BOOL  APIENTRY     GetSaveFileNameW(LPOPENFILENAMEW);
        !            97: #ifdef UNICODE
        !            98: #define GetSaveFileName GetSaveFileNameW
        !            99: #else
        !           100: #define GetSaveFileName GetSaveFileNameA
        !           101: #endif // ! UNICODE
        !           102: 
        !           103: short APIENTRY     GetFileTitleA(LPCSTR, LPSTR, WORD);
        !           104: short APIENTRY     GetFileTitleW(LPCWSTR, LPWSTR, WORD);
        !           105: 
        !           106: #ifdef UNICODE
        !           107: #define GetFileTitle GetFileTitleW
        !           108: #else
        !           109: #define GetFileTitle GetFileTitleA
        !           110: #endif // ! UNICODE
1.1       root      111: 
                    112: #define OFN_READONLY                 0x00000001
                    113: #define OFN_OVERWRITEPROMPT          0x00000002
                    114: #define OFN_HIDEREADONLY             0x00000004
                    115: #define OFN_NOCHANGEDIR              0x00000008
                    116: #define OFN_SHOWHELP                 0x00000010
                    117: #define OFN_ENABLEHOOK               0x00000020
                    118: #define OFN_ENABLETEMPLATE           0x00000040
                    119: #define OFN_ENABLETEMPLATEHANDLE     0x00000080
                    120: #define OFN_NOVALIDATE               0x00000100
                    121: #define OFN_ALLOWMULTISELECT         0x00000200
                    122: #define OFN_EXTENSIONDIFFERENT       0x00000400
                    123: #define OFN_PATHMUSTEXIST            0x00000800
                    124: #define OFN_FILEMUSTEXIST            0x00001000
                    125: #define OFN_CREATEPROMPT             0x00002000
                    126: #define OFN_SHAREAWARE               0x00004000
                    127: #define OFN_NOREADONLYRETURN         0x00008000
1.1.1.2   root      128: #define OFN_NOTESTFILECREATE         0x00010000
1.1.1.3 ! root      129: #define OFN_NONETWORKBUTTON          0x00020000
1.1       root      130: 
1.1.1.3 ! root      131: // Return values for the registered message sent to the hook function
        !           132: // when a sharing violation occurs.  OFN_SHAREFALLTHROUGH allows the
        !           133: // filename to be accepted, OFN_SHARENOWARN rejects the name but puts
        !           134: // up no warning (returned when the app has already put up a warning
        !           135: // message), and OFN_SHAREWARN puts up the default warning message
        !           136: // for sharing violations.
        !           137: //
        !           138: // Note:  Undefined return values map to OFN_SHAREWARN, but are
        !           139: //        reserved for future use.
1.1.1.2   root      140: 
1.1       root      141: #define OFN_SHAREFALLTHROUGH     2
                    142: #define OFN_SHARENOWARN          1
                    143: #define OFN_SHAREWARN            0
                    144: 
1.1.1.3 ! root      145: typedef UINT (APIENTRY *LPCCHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
1.1       root      146: 
1.1.1.3 ! root      147: typedef struct {
        !           148:    DWORD   lStructSize;
        !           149:    HWND    hwndOwner;
        !           150:    HWND    hInstance;
        !           151:    DWORD   rgbResult;
        !           152:    LPDWORD lpCustColors;
        !           153:    DWORD   Flags;
        !           154:    DWORD   lCustData;
        !           155:    LPCCHOOKPROC lpfnHook;
        !           156:    LPCSTR   lpTemplateName;
        !           157: } CHOOSECOLORA;
        !           158: 
        !           159: typedef struct {
        !           160:    DWORD   lStructSize;
        !           161:    HWND    hwndOwner;
        !           162:    HWND    hInstance;
        !           163:    DWORD   rgbResult;
        !           164:    LPDWORD lpCustColors;
        !           165:    DWORD   Flags;
        !           166:    DWORD   lCustData;
        !           167:    LPCCHOOKPROC lpfnHook;
        !           168:    LPCWSTR   lpTemplateName;
        !           169: } CHOOSECOLORW;
        !           170: 
        !           171: #ifdef UNICODE
        !           172: #define CHOOSECOLOR CHOOSECOLORW
        !           173: #else
        !           174: #define CHOOSECOLOR CHOOSECOLORA
        !           175: #endif // ! UNICODE
        !           176: 
        !           177: typedef CHOOSECOLORA *LPCHOOSECOLORA;
        !           178: typedef CHOOSECOLORW *LPCHOOSECOLORW;
        !           179: typedef CHOOSECOLOR *LPCHOOSECOLOR;
        !           180: 
        !           181: BOOL  APIENTRY ChooseColorA(LPCHOOSECOLORA);
        !           182: BOOL  APIENTRY ChooseColorW(LPCHOOSECOLORW);
        !           183: 
        !           184: #ifdef UNICODE
        !           185: #define ChooseColor ChooseColorW
        !           186: #else
        !           187: #define ChooseColor ChooseColorA
        !           188: #endif // ! UNICODE
1.1       root      189: 
                    190: #define CC_RGBINIT               0x00000001
                    191: #define CC_FULLOPEN              0x00000002
                    192: #define CC_PREVENTFULLOPEN       0x00000004
                    193: #define CC_SHOWHELP              0x00000008
                    194: #define CC_ENABLEHOOK            0x00000010
                    195: #define CC_ENABLETEMPLATE        0x00000020
                    196: #define CC_ENABLETEMPLATEHANDLE  0x00000040
                    197: 
1.1.1.3 ! root      198: typedef UINT (APIENTRY *LPFRHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
1.1       root      199: 
1.1.1.3 ! root      200: typedef struct {
        !           201:    DWORD    lStructSize;        // size of this struct 0x20
        !           202:    HWND     hwndOwner;          // handle to owner's window
        !           203:    HINSTANCE hInstance;          // instance handle of.EXE that
        !           204:                                 //   contains cust. dlg. template
        !           205:    DWORD    Flags;              // one or more of the FR_??
        !           206:    LPSTR    lpstrFindWhat;      // ptr. to search string
        !           207:    LPSTR    lpstrReplaceWith;   // ptr. to replace string
        !           208:    WORD     wFindWhatLen;       // size of find buffer
        !           209:    WORD     wReplaceWithLen;    // size of replace buffer
        !           210:    DWORD    lCustData;          // data passed to hook fn.
        !           211:    LPFRHOOKPROC lpfnHook;       // ptr. to hook fn. or NULL
        !           212:    LPCSTR    lpTemplateName;     // custom template name
        !           213: } FINDREPLACEA;
        !           214: 
        !           215: typedef struct {
        !           216:    DWORD    lStructSize;        // size of this struct 0x20
        !           217:    HWND     hwndOwner;          // handle to owner's window
        !           218:    HINSTANCE hInstance;          // instance handle of.EXE that
        !           219:                                 //   contains cust. dlg. template
        !           220:    DWORD    Flags;              // one or more of the FR_??
        !           221:    LPWSTR   lpstrFindWhat;      // ptr. to search string
        !           222:    LPWSTR   lpstrReplaceWith;   // ptr. to replace string
        !           223:    WORD     wFindWhatLen;       // size of find buffer
        !           224:    WORD     wReplaceWithLen;    // size of replace buffer
        !           225:    DWORD    lCustData;          // data passed to hook fn.
        !           226:    LPFRHOOKPROC lpfnHook;       // ptr. to hook fn. or NULL
        !           227:    LPCWSTR   lpTemplateName;     // custom template name
        !           228: } FINDREPLACEW;
        !           229: 
        !           230: #ifdef UNICODE
        !           231: #define FINDREPLACE FINDREPLACEW
        !           232: #else
        !           233: #define FINDREPLACE FINDREPLACEA
        !           234: #endif // ! UNICODE
        !           235: 
        !           236: typedef FINDREPLACEA  *LPFINDREPLACEA;
        !           237: typedef FINDREPLACEW *LPFINDREPLACEW;
        !           238: typedef FINDREPLACE *LPFINDREPLACE;
1.1       root      239: 
1.1.1.2   root      240: #define FR_DOWN                         0x00000001
1.1.1.3 ! root      241: #define FR_WHOLEWORD                    0x00000002
        !           242: #define FR_MATCHCASE                    0x00000004
1.1.1.2   root      243: #define FR_FINDNEXT                     0x00000008
                    244: #define FR_REPLACE                      0x00000010
1.1.1.3 ! root      245: #define FR_REPLACEALL                   0x00000020
        !           246: #define FR_DIALOGTERM                   0x00000040
1.1.1.2   root      247: #define FR_SHOWHELP                     0x00000080
1.1.1.3 ! root      248: #define FR_ENABLEHOOK                   0x00000100
        !           249: #define FR_ENABLETEMPLATE               0x00000200
1.1.1.2   root      250: #define FR_NOUPDOWN                     0x00000400
1.1.1.3 ! root      251: #define FR_NOMATCHCASE                  0x00000800
        !           252: #define FR_NOWHOLEWORD                  0x00001000
1.1.1.2   root      253: #define FR_ENABLETEMPLATEHANDLE         0x00002000
1.1.1.3 ! root      254: #define FR_HIDEUPDOWN                   0x00004000
        !           255: #define FR_HIDEMATCHCASE                0x00008000
        !           256: #define FR_HIDEWHOLEWORD                0x00010000
        !           257: 
        !           258: HWND  APIENTRY    FindTextA(LPFINDREPLACEA);
        !           259: HWND  APIENTRY    FindTextW(LPFINDREPLACEW);
        !           260: 
        !           261: #ifdef UNICODE
        !           262: #define FindText FindTextW
        !           263: #else
        !           264: #define FindText FindTextA
        !           265: #endif // ! UNICODE
        !           266: 
        !           267: HWND  APIENTRY    ReplaceTextA(LPFINDREPLACEA);
        !           268: HWND  APIENTRY    ReplaceTextW(LPFINDREPLACEW);
        !           269: 
        !           270: #ifdef UNICODE
        !           271: #define ReplaceText ReplaceTextW
        !           272: #else
        !           273: #define ReplaceText ReplaceTextA
        !           274: #endif // ! UNICODE
        !           275: 
        !           276: typedef UINT (APIENTRY *LPCFHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
        !           277: 
        !           278: typedef struct {
        !           279:    DWORD           lStructSize;
        !           280:    HWND            hwndOwner;          // caller's window handle
        !           281:    HDC             hDC;                // printer DC/IC or NULL
        !           282:    LPLOGFONTA      lpLogFont;          // ptr. to a LOGFONT struct
        !           283:    INT             iPointSize;         // 10 * size in points of selected font
        !           284:    DWORD           Flags;              // enum. type flags
        !           285:    DWORD           rgbColors;          // returned text color
        !           286:    DWORD           lCustData;          // data passed to hook fn.
        !           287:    LPCFHOOKPROC    lpfnHook;           // ptr. to hook function
        !           288:    LPCSTR           lpTemplateName;     // custom template name
        !           289:    HINSTANCE       hInstance;          // instance handle of.EXE that
        !           290:                                        //   contains cust. dlg. template
        !           291:    LPSTR           lpszStyle;          // return the style field here
        !           292:                                        // must be LF_FACESIZE or bigger
        !           293:    WORD            nFontType;          // same value reported to the EnumFonts
        !           294:                                        //   call back with the extra FONTTYPE_
        !           295:                                        //   bits added
        !           296:    WORD                   ___MISSING_ALIGNMENT__;
        !           297:    INT             nSizeMin;           // minimum pt size allowed &
        !           298:    INT             nSizeMax;           // max pt size allowed if
        !           299:                                        //   CF_LIMITSIZE is used
        !           300: } CHOOSEFONTA;
        !           301: 
        !           302: typedef struct {
        !           303:    DWORD           lStructSize;
        !           304:    HWND            hwndOwner;          // caller's window handle
        !           305:    HDC             hDC;                // printer DC/IC or NULL
        !           306:    LPLOGFONTW      lpLogFont;          // ptr. to a LOGFONT struct
        !           307:    INT             iPointSize;         // 10 * size in points of selected font
        !           308:    DWORD           Flags;              // enum. type flags
        !           309:    DWORD           rgbColors;          // returned text color
        !           310:    DWORD           lCustData;          // data passed to hook fn.
        !           311:    LPCFHOOKPROC lpfnHook;              // ptr. to hook function
        !           312:    LPCWSTR          lpTemplateName;     // custom template name
        !           313:    HINSTANCE       hInstance;          // instance handle of.EXE that
        !           314:                                        // contains cust. dlg. template
        !           315:    LPWSTR          lpszStyle;          // return the style field here
        !           316:                                        // must be LF_FACESIZE or bigger
        !           317:    WORD            nFontType;          // same value reported to the EnumFonts
        !           318:                                        //   call back with the extra FONTTYPE_
        !           319:                                        //   bits added
        !           320:    WORD                   ___MISSING_ALIGNMENT__;
        !           321:    INT             nSizeMin;           // minimum pt size allowed &
        !           322:    INT             nSizeMax;           // max pt size allowed if
        !           323:                                        //   CF_LIMITSIZE is used
        !           324: } CHOOSEFONTW;
        !           325: 
        !           326: #ifdef UNICODE
        !           327: #define CHOOSEFONT CHOOSEFONTW
        !           328: #else
        !           329: #define CHOOSEFONT CHOOSEFONTA
        !           330: #endif // ! UNICODE
        !           331: 
        !           332: typedef CHOOSEFONTA *LPCHOOSEFONTA;
        !           333: typedef CHOOSEFONTW *LPCHOOSEFONTW;
        !           334: typedef CHOOSEFONT *LPCHOOSEFONT;
        !           335: 
        !           336: BOOL APIENTRY ChooseFontA(LPCHOOSEFONTA);
        !           337: BOOL APIENTRY ChooseFontW(LPCHOOSEFONTW);
        !           338: 
        !           339: #ifdef UNICODE
        !           340: #define ChooseFont ChooseFontW
        !           341: #else
        !           342: #define ChooseFont ChooseFontA
        !           343: #endif // !UNICODE
        !           344: 
        !           345: #define CF_SCREENFONTS             0x00000001
        !           346: #define CF_PRINTERFONTS            0x00000002
        !           347: #define CF_BOTH                    (CF_SCREENFONTS | CF_PRINTERFONTS)
        !           348: #define CF_SHOWHELP                0x00000004L
        !           349: #define CF_ENABLEHOOK              0x00000008L
        !           350: #define CF_ENABLETEMPLATE          0x00000010L
1.1       root      351: #define CF_ENABLETEMPLATEHANDLE    0x00000020L
                    352: #define CF_INITTOLOGFONTSTRUCT     0x00000040L
                    353: #define CF_USESTYLE                0x00000080L
                    354: #define CF_EFFECTS                 0x00000100L
                    355: #define CF_APPLY                   0x00000200L
                    356: #define CF_ANSIONLY                0x00000400L
                    357: #define CF_NOVECTORFONTS           0x00000800L
1.1.1.3 ! root      358: #define CF_NOOEMFONTS             CF_NOVECTORFONTS
1.1       root      359: #define CF_NOSIMULATIONS           0x00001000L
                    360: #define CF_LIMITSIZE               0x00002000L
                    361: #define CF_FIXEDPITCHONLY          0x00004000L
1.1.1.3 ! root      362: #define CF_WYSIWYG                 0x00008000L // must also have CF_SCREENFONTS & CF_PRINTERFONTS
1.1       root      363: #define CF_FORCEFONTEXIST          0x00010000L
                    364: #define CF_SCALABLEONLY            0x00020000L
                    365: #define CF_TTONLY                  0x00040000L
                    366: #define CF_NOFACESEL               0x00080000L
                    367: #define CF_NOSTYLESEL              0x00100000L
                    368: #define CF_NOSIZESEL               0x00200000L
                    369: 
1.1.1.3 ! root      370: // these are extra nFontType bits that are added to what is returned to the
        !           371: // EnumFonts callback routine
1.1.1.2   root      372: 
1.1       root      373: #define SIMULATED_FONTTYPE    0x8000
                    374: #define PRINTER_FONTTYPE      0x4000
                    375: #define SCREEN_FONTTYPE       0x2000
                    376: #define BOLD_FONTTYPE         0x0100
                    377: #define ITALIC_FONTTYPE       0x0200
                    378: #define REGULAR_FONTTYPE      0x0400
                    379: 
                    380: #define WM_CHOOSEFONT_GETLOGFONT      (WM_USER + 1)
                    381: 
1.1.1.3 ! root      382: // strings used to obtain unique window message for communication
        !           383: // between dialog and caller
1.1       root      384: 
1.1.1.3 ! root      385: #define LBSELCHSTRINGA  "commdlg_LBSelChangedNotify"
        !           386: #define SHAREVISTRINGA  "commdlg_ShareViolation"
        !           387: #define FILEOKSTRINGA   "commdlg_FileNameOK"
        !           388: #define COLOROKSTRINGA  "commdlg_ColorOK"
        !           389: #define SETRGBSTRINGA   "commdlg_SetRGBColor"
        !           390: #define HELPMSGSTRINGA  "commdlg_help"
        !           391: #define FINDMSGSTRINGA  "commdlg_FindReplace"
        !           392: 
        !           393: #define LBSELCHSTRINGW  L"commdlg_LBSelChangedNotify"
        !           394: #define SHAREVISTRINGW  L"commdlg_ShareViolation"
        !           395: #define FILEOKSTRINGW   L"commdlg_FileNameOK"
        !           396: #define COLOROKSTRINGW  L"commdlg_ColorOK"
        !           397: #define SETRGBSTRINGW   L"commdlg_SetRGBColor"
        !           398: #define HELPMSGSTRINGW  L"commdlg_help"
        !           399: #define FINDMSGSTRINGW  L"commdlg_FindReplace"
        !           400: 
        !           401: #ifdef UNICODE
        !           402: #define LBSELCHSTRING  LBSELCHSTRINGW
        !           403: #define SHAREVISTRING  SHAREVISTRINGW
        !           404: #define FILEOKSTRING   FILEOKSTRINGW
        !           405: #define COLOROKSTRING  COLOROKSTRINGW
        !           406: #define SETRGBSTRING   SETRGBSTRINGW
        !           407: #define HELPMSGSTRING  HELPMSGSTRINGW
        !           408: #define FINDMSGSTRING  FINDMSGSTRINGW
        !           409: #else
        !           410: #define LBSELCHSTRING  LBSELCHSTRINGA
        !           411: #define SHAREVISTRING  SHAREVISTRINGA
        !           412: #define FILEOKSTRING   FILEOKSTRINGA
        !           413: #define COLOROKSTRING  COLOROKSTRINGA
        !           414: #define SETRGBSTRING   SETRGBSTRINGA
        !           415: #define HELPMSGSTRING  HELPMSGSTRINGA
        !           416: #define FINDMSGSTRING  FINDMSGSTRINGA
        !           417: #endif
1.1       root      418: 
1.1.1.3 ! root      419: // HIWORD values for lParam of commdlg_LBSelChangeNotify message
1.1.1.2   root      420: #define CD_LBSELNOITEMS -1
                    421: #define CD_LBSELCHANGE   0
                    422: #define CD_LBSELSUB      1
                    423: #define CD_LBSELADD      2
1.1       root      424: 
1.1.1.3 ! root      425: typedef UINT (APIENTRY *LPPRINTHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
        !           426: typedef UINT (APIENTRY *LPSETUPHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
1.1       root      427: 
1.1.1.3 ! root      428: typedef struct tagPDA {
        !           429:    DWORD   lStructSize;
        !           430:    HWND    hwndOwner;
        !           431:    HANDLE  hDevMode;
        !           432:    HANDLE  hDevNames;
        !           433:    HDC     hDC;
        !           434:    DWORD   Flags;
        !           435:    WORD    nFromPage;
        !           436:    WORD    nToPage;
        !           437:    WORD    nMinPage;
        !           438:    WORD    nMaxPage;
        !           439:    WORD    nCopies;
        !           440:    HINSTANCE hInstance;
        !           441:    DWORD   lCustData;
        !           442:    LPPRINTHOOKPROC lpfnPrintHook;
        !           443:    LPSETUPHOOKPROC lpfnSetupHook;
        !           444:    LPCSTR   lpPrintTemplateName;
        !           445:    LPCSTR   lpSetupTemplateName;
        !           446:    HANDLE  hPrintTemplate;
        !           447:    HANDLE  hSetupTemplate;
        !           448: } PRINTDLGA;
        !           449: 
        !           450: typedef struct tagPDW {
        !           451:    DWORD   lStructSize;
        !           452:    HWND    hwndOwner;
        !           453:    HANDLE  hDevMode;
        !           454:    HANDLE  hDevNames;
        !           455:    HDC     hDC;
        !           456:    DWORD   Flags;
        !           457:    WORD    nFromPage;
        !           458:    WORD    nToPage;
        !           459:    WORD    nMinPage;
        !           460:    WORD    nMaxPage;
        !           461:    WORD    nCopies;
        !           462:    HINSTANCE hInstance;
        !           463:    DWORD   lCustData;
        !           464:    LPPRINTHOOKPROC lpfnPrintHook;
        !           465:    LPSETUPHOOKPROC lpfnSetupHook;
        !           466:    LPCWSTR  lpPrintTemplateName;
        !           467:    LPCWSTR  lpSetupTemplateName;
        !           468:    HANDLE  hPrintTemplate;
        !           469:    HANDLE  hSetupTemplate;
        !           470: }  PRINTDLGW;
        !           471: 
        !           472: #ifdef UNICODE
        !           473: #define PRINTDLG PRINTDLGW
        !           474: #else
        !           475: #define PRINTDLG PRINTDLGA
        !           476: #endif // ! UNICODE
        !           477: 
        !           478: typedef PRINTDLGA * LPPRINTDLGA;
        !           479: typedef PRINTDLGW * LPPRINTDLGW;
        !           480: typedef PRINTDLG  * LPPRINTDLG;
        !           481: 
        !           482: BOOL  APIENTRY     PrintDlgA(LPPRINTDLGA);
        !           483: BOOL  APIENTRY     PrintDlgW(LPPRINTDLGW);
        !           484: 
        !           485: #ifdef UNICODE
        !           486: #define PrintDlg PrintDlgW
        !           487: #else
        !           488: #define PrintDlg PrintDlgA
        !           489: #endif // ! UNICODE
1.1       root      490: 
                    491: #define PD_ALLPAGES                  0x00000000
                    492: #define PD_SELECTION                 0x00000001
                    493: #define PD_PAGENUMS                  0x00000002
                    494: #define PD_NOSELECTION               0x00000004
                    495: #define PD_NOPAGENUMS                0x00000008
                    496: #define PD_COLLATE                   0x00000010
                    497: #define PD_PRINTTOFILE               0x00000020
                    498: #define PD_PRINTSETUP                0x00000040
                    499: #define PD_NOWARNING                 0x00000080
                    500: #define PD_RETURNDC                  0x00000100
                    501: #define PD_RETURNIC                  0x00000200
                    502: #define PD_RETURNDEFAULT             0x00000400
                    503: #define PD_SHOWHELP                  0x00000800
                    504: #define PD_ENABLEPRINTHOOK           0x00001000
                    505: #define PD_ENABLESETUPHOOK           0x00002000
                    506: #define PD_ENABLEPRINTTEMPLATE       0x00004000
                    507: #define PD_ENABLESETUPTEMPLATE       0x00008000
                    508: #define PD_ENABLEPRINTTEMPLATEHANDLE 0x00010000
                    509: #define PD_ENABLESETUPTEMPLATEHANDLE 0x00020000
                    510: #define PD_USEDEVMODECOPIES          0x00040000
                    511: #define PD_DISABLEPRINTTOFILE        0x00080000
1.1.1.2   root      512: #define PD_HIDEPRINTTOFILE           0x00100000
1.1       root      513: 
1.1.1.3 ! root      514: typedef struct tagDEVNAMES {
        !           515:    WORD wDriverOffset;
        !           516:    WORD wDeviceOffset;
        !           517:    WORD wOutputOffset;
        !           518:    WORD wDefault;
        !           519: }   DEVNAMES;
1.1       root      520: 
1.1.1.3 ! root      521: typedef DEVNAMES * LPDEVNAMES;
1.1       root      522: 
1.1.1.3 ! root      523: #define DN_DEFAULTPRN      0x0001
1.1       root      524: 
                    525: DWORD APIENTRY     CommDlgExtendedError(VOID);
1.1.1.3 ! root      526: 
        !           527: #ifdef __cplusplus
        !           528: }
        !           529: #endif /* __cplusplus */
        !           530: 
        !           531: #ifndef RC_INVOKED
        !           532: #pragma pack()
        !           533: #endif  /* !RC_INVOKED */
        !           534: 
        !           535: #endif  /* !_INC_COMMDLG */

unix.superglobalmegacorp.com

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