Sync with trunk 48067
[reactos.git] / include / psdk / commdlg.h
1 #ifndef _COMMDLG_H
2 #define _COMMDLG_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 #ifndef _WIN64
9 #pragma pack(push,1)
10 #endif
11
12 #define SAVE_DIALOG 1
13 #define OPEN_DIALOG 2
14
15 #define LBSELCHSTRINGA "commdlg_LBSelChangedNotify"
16 #define SHAREVISTRINGA "commdlg_ShareViolation"
17 #define FILEOKSTRINGA "commdlg_FileNameOK"
18 #define COLOROKSTRINGA "commdlg_ColorOK"
19 #define SETRGBSTRINGA "commdlg_SetRGBColor"
20 #define HELPMSGSTRINGA "commdlg_help"
21 #define FINDMSGSTRINGA "commdlg_FindReplace"
22 #define LBSELCHSTRINGW L"commdlg_LBSelChangedNotify"
23 #define SHAREVISTRINGW L"commdlg_ShareViolation"
24 #define FILEOKSTRINGW L"commdlg_FileNameOK"
25 #define COLOROKSTRINGW L"commdlg_ColorOK"
26 #define SETRGBSTRINGW L"commdlg_SetRGBColor"
27 #define HELPMSGSTRINGW L"commdlg_help"
28 #define FINDMSGSTRINGW L"commdlg_FindReplace"
29 #ifndef CDN_FIRST
30 #define CDN_FIRST ((UINT)-601) /* also in commctrl.h */
31 #define CDN_LAST ((UINT)-699)
32 #endif
33 #define CDN_INITDONE CDN_FIRST
34 #define CDN_SELCHANGE (CDN_FIRST-1U)
35 #define CDN_FOLDERCHANGE (CDN_FIRST-2U)
36 #define CDN_SHAREVIOLATION (CDN_FIRST-3U)
37 #define CDN_HELP (CDN_FIRST-4U)
38 #define CDN_FILEOK (CDN_FIRST-5U)
39 #define CDN_TYPECHANGE (CDN_FIRST-6U)
40 #define CDN_INCLUDEITEM (CDN_FIRST-7U)
41 #define CDM_FIRST (WM_USER+100)
42 #define CDM_LAST (WM_USER+200)
43 #define CDM_GETSPEC CDM_FIRST
44 #define CDM_GETFILEPATH (CDM_FIRST+1)
45 #define CDM_GETFOLDERPATH (CDM_FIRST+2)
46 #define CDM_GETFOLDERIDLIST (CDM_FIRST+3)
47 #define CDM_SETCONTROLTEXT (CDM_FIRST+4)
48 #define CDM_HIDECONTROL (CDM_FIRST+5)
49 #define CDM_SETDEFEXT (CDM_FIRST+6)
50 #define CC_RGBINIT 1
51 #define CC_FULLOPEN 2
52 #define CC_PREVENTFULLOPEN 4
53 #define CC_SHOWHELP 8
54 #define CC_ENABLEHOOK 16
55 #define CC_ENABLETEMPLATE 32
56 #define CC_ENABLETEMPLATEHANDLE 64
57 #define CC_SOLIDCOLOR 128
58 #define CC_ANYCOLOR 256
59 #define CF_SCREENFONTS 1
60 #define CF_PRINTERFONTS 2
61 #define CF_BOTH 3
62 #define CF_SHOWHELP 4
63 #define CF_ENABLEHOOK 8
64 #define CF_ENABLETEMPLATE 16
65 #define CF_ENABLETEMPLATEHANDLE 32
66 #define CF_INITTOLOGFONTSTRUCT 64
67 #define CF_USESTYLE 128
68 #define CF_EFFECTS 256
69 #define CF_APPLY 512
70 #define CF_ANSIONLY 1024
71 #define CF_SCRIPTSONLY CF_ANSIONLY
72 #define CF_NOVECTORFONTS 2048
73 #define CF_NOOEMFONTS 2048
74 #define CF_NOSIMULATIONS 4096
75 #define CF_LIMITSIZE 8192
76 #define CF_FIXEDPITCHONLY 16384
77 #define CF_WYSIWYG 32768
78 #define CF_FORCEFONTEXIST 65536
79 #define CF_SCALABLEONLY 131072
80 #define CF_TTONLY 262144
81 #define CF_NOFACESEL 524288
82 #define CF_NOSTYLESEL 1048576
83 #define CF_NOSIZESEL 2097152
84 #define CF_SELECTSCRIPT 4194304
85 #define CF_NOSCRIPTSEL 8388608
86 #define CF_NOVERTFONTS 0x1000000
87 #define SIMULATED_FONTTYPE 0x8000
88 #define PRINTER_FONTTYPE 0x4000
89 #define SCREEN_FONTTYPE 0x2000
90 #define BOLD_FONTTYPE 0x100
91 #define ITALIC_FONTTYPE 0x0200
92 #define REGULAR_FONTTYPE 0x0400
93 #define WM_CHOOSEFONT_GETLOGFONT (WM_USER+1)
94 #define WM_CHOOSEFONT_SETLOGFONT (WM_USER+101)
95 #define WM_CHOOSEFONT_SETFLAGS (WM_USER+102)
96 #define OFN_ALLOWMULTISELECT 512
97 #define OFN_CREATEPROMPT 0x2000
98 #define OFN_ENABLEHOOK 32
99 #define OFN_ENABLESIZING 0x800000
100 #define OFN_ENABLETEMPLATE 64
101 #define OFN_ENABLETEMPLATEHANDLE 128
102 #define OFN_EXPLORER 0x80000
103 #define OFN_EXTENSIONDIFFERENT 0x400
104 #define OFN_FILEMUSTEXIST 0x1000
105 #define OFN_HIDEREADONLY 4
106 #define OFN_LONGNAMES 0x200000
107 #define OFN_NOCHANGEDIR 8
108 #define OFN_NODEREFERENCELINKS 0x100000
109 #define OFN_NOLONGNAMES 0x40000
110 #define OFN_NONETWORKBUTTON 0x20000
111 #define OFN_NOREADONLYRETURN 0x8000
112 #define OFN_NOTESTFILECREATE 0x10000
113 #define OFN_NOVALIDATE 256
114 #define OFN_OVERWRITEPROMPT 2
115 #define OFN_PATHMUSTEXIST 0x800
116 #define OFN_READONLY 1
117 #define OFN_SHAREAWARE 0x4000
118 #define OFN_SHOWHELP 16
119 #define OFN_SHAREFALLTHROUGH 2
120 #define OFN_SHARENOWARN 1
121 #define OFN_SHAREWARN 0
122 #define OFN_NODEREFERENCELINKS 0x100000
123 #define FR_DIALOGTERM 64
124 #define FR_DOWN 1
125 #define FR_ENABLEHOOK 256
126 #define FR_ENABLETEMPLATE 512
127 #define FR_ENABLETEMPLATEHANDLE 0x2000
128 #define FR_FINDNEXT 8
129 #define FR_HIDEUPDOWN 0x4000
130 #define FR_HIDEMATCHCASE 0x8000
131 #define FR_HIDEWHOLEWORD 0x10000
132 #define FR_MATCHALEFHAMZA 0x80000000
133 #define FR_MATCHCASE 4
134 #define FR_MATCHDIAC 0x20000000
135 #define FR_MATCHKASHIDA 0x40000000
136 #define FR_NOMATCHCASE 0x800
137 #define FR_NOUPDOWN 0x400
138 #define FR_NOWHOLEWORD 4096
139 #define FR_REPLACE 16
140 #define FR_REPLACEALL 32
141 #define FR_SHOWHELP 128
142 #define FR_WHOLEWORD 2
143 #define PD_ALLPAGES 0
144 #define PD_SELECTION 1
145 #define PD_PAGENUMS 2
146 #define PD_NOSELECTION 4
147 #define PD_NOPAGENUMS 8
148 #define PD_COLLATE 16
149 #define PD_PRINTTOFILE 32
150 #define PD_PRINTSETUP 64
151 #define PD_NOWARNING 128
152 #define PD_RETURNDC 256
153 #define PD_RETURNIC 512
154 #define PD_RETURNDEFAULT 1024
155 #define PD_SHOWHELP 2048
156 #define PD_ENABLEPRINTHOOK 4096
157 #define PD_ENABLESETUPHOOK 8192
158 #define PD_ENABLEPRINTTEMPLATE 16384
159 #define PD_ENABLESETUPTEMPLATE 32768
160 #define PD_ENABLEPRINTTEMPLATEHANDLE 65536
161 #define PD_ENABLESETUPTEMPLATEHANDLE 0x20000
162 #define PD_USEDEVMODECOPIES 0x40000
163 #define PD_USEDEVMODECOPIESANDCOLLATE 0x40000
164 #define PD_DISABLEPRINTTOFILE 0x80000
165 #define PD_HIDEPRINTTOFILE 0x100000
166 #define PD_NONETWORKBUTTON 0x200000
167 #define PSD_DEFAULTMINMARGINS 0
168 #define PSD_INWININIINTLMEASURE 0
169 #define PSD_MINMARGINS 1
170 #define PSD_MARGINS 2
171 #define PSD_INTHOUSANDTHSOFINCHES 4
172 #define PSD_INHUNDREDTHSOFMILLIMETERS 8
173 #define PSD_DISABLEMARGINS 16
174 #define PSD_DISABLEPRINTER 32
175 #define PSD_NOWARNING 128
176 #define PSD_DISABLEORIENTATION 256
177 #define PSD_DISABLEPAPER 512
178 #define PSD_RETURNDEFAULT 1024
179 #define PSD_SHOWHELP 2048
180 #define PSD_ENABLEPAGESETUPHOOK 8192
181 #define PSD_ENABLEPAGESETUPTEMPLATE 0x8000
182 #define PSD_ENABLEPAGESETUPTEMPLATEHANDLE 0x20000
183 #define PSD_ENABLEPAGEPAINTHOOK 0x40000
184 #define PSD_DISABLEPAGEPAINTING 0x80000
185 #define WM_PSD_PAGESETUPDLG WM_USER
186 #define WM_PSD_FULLPAGERECT (WM_USER+1)
187 #define WM_PSD_MINMARGINRECT (WM_USER+2)
188 #define WM_PSD_MARGINRECT (WM_USER+3)
189 #define WM_PSD_GREEKTEXTRECT (WM_USER+4)
190 #define WM_PSD_ENVSTAMPRECT (WM_USER+5)
191 #define WM_PSD_YAFULLPAGERECT (WM_USER+6)
192 #define CD_LBSELNOITEMS (-1)
193 #define CD_LBSELCHANGE 0
194 #define CD_LBSELSUB 1
195 #define CD_LBSELADD 2
196 #define DN_DEFAULTPRN 1
197
198 #ifndef SNDMSG
199 #ifdef __cplusplus
200 #define SNDMSG ::SendMessage
201 #else
202 #define SNDMSG SendMessage
203 #endif
204 #endif /* ifndef SNDMSG */
205
206 #define CommDlg_OpenSave_GetSpec(d,s,m) ((int)SNDMSG((d),CDM_GETSPEC,(m),(LPARAM)(s)))
207 #define CommDlg_OpenSave_GetSpecA CommDlg_OpenSave_GetSpec
208 #define CommDlg_OpenSave_GetSpecW CommDlg_OpenSave_GetSpec
209 #define CommDlg_OpenSave_GetFilePath(d,s,m) ((int)SNDMSG((d),CDM_GETFILEPATH,(m),(LPARAM)(s)))
210 #define CommDlg_OpenSave_GetFilePathA CommDlg_OpenSave_GetFilePath
211 #define CommDlg_OpenSave_GetFilePathW CommDlg_OpenSave_GetFilePath
212 #define CommDlg_OpenSave_GetFolderPath(d,s,m) ((int)SNDMSG((d),CDM_GETFOLDERPATH,(m),(LPARAM)(LPSTR)(s)))
213 #define CommDlg_OpenSave_GetFolderPathA CommDlg_OpenSave_GetFolderPath
214 #define CommDlg_OpenSave_GetFolderPathW CommDlg_OpenSave_GetFolderPath
215 #define CommDlg_OpenSave_GetFolderIDList(d,i,m) ((int)SNDMSG((d),CDM_GETFOLDERIDLIST,(m),(LPARAM)(i)))
216 #define CommDlg_OpenSave_SetControlText(d,i,t) ((void)SNDMSG((d),CDM_SETCONTROLTEXT,(i),(LPARAM)(t)))
217 #define CommDlg_OpenSave_HideControl(d,i) ((void)SNDMSG((d),CDM_HIDECONTROL,(i),0))
218 #define CommDlg_OpenSave_SetDefExt(d,e) ((void)SNDMSG((d),CDM_SETDEFEXT,0,(LPARAM)(e)))
219
220 typedef UINT_PTR (APIENTRY *__CDHOOKPROC)(HWND,UINT,WPARAM,LPARAM);
221 typedef __CDHOOKPROC LPCCHOOKPROC;
222 typedef __CDHOOKPROC LPCFHOOKPROC;
223 typedef __CDHOOKPROC LPFRHOOKPROC;
224 typedef __CDHOOKPROC LPOFNHOOKPROC;
225 typedef __CDHOOKPROC LPPAGEPAINTHOOK;
226 typedef __CDHOOKPROC LPPAGESETUPHOOK;
227 typedef __CDHOOKPROC LPSETUPHOOKPROC;
228 typedef __CDHOOKPROC LPPRINTHOOKPROC;
229 typedef struct tagCHOOSECOLORA {
230 DWORD lStructSize;
231 HWND hwndOwner;
232 HWND hInstance;
233 COLORREF rgbResult;
234 COLORREF* lpCustColors;
235 DWORD Flags;
236 LPARAM lCustData;
237 LPCCHOOKPROC lpfnHook;
238 LPCSTR lpTemplateName;
239 } CHOOSECOLORA,*LPCHOOSECOLORA;
240 typedef struct tagCHOOSECOLORW {
241 DWORD lStructSize;
242 HWND hwndOwner;
243 HWND hInstance;
244 COLORREF rgbResult;
245 COLORREF* lpCustColors;
246 DWORD Flags;
247 LPARAM lCustData;
248 LPCCHOOKPROC lpfnHook;
249 LPCWSTR lpTemplateName;
250 } CHOOSECOLORW,*LPCHOOSECOLORW;
251 typedef struct tagCHOOSEFONTA {
252 DWORD lStructSize;
253 HWND hwndOwner;
254 HDC hDC;
255 LPLOGFONTA lpLogFont;
256 INT iPointSize;
257 DWORD Flags;
258 DWORD rgbColors;
259 LPARAM lCustData;
260 LPCFHOOKPROC lpfnHook;
261 LPCSTR lpTemplateName;
262 HINSTANCE hInstance;
263 LPSTR lpszStyle;
264 WORD nFontType;
265 WORD ___MISSING_ALIGNMENT__;
266 INT nSizeMin;
267 INT nSizeMax;
268 } CHOOSEFONTA,*LPCHOOSEFONTA;
269 typedef struct tagCHOOSEFONTW {
270 DWORD lStructSize;
271 HWND hwndOwner;
272 HDC hDC;
273 LPLOGFONTW lpLogFont;
274 INT iPointSize;
275 DWORD Flags;
276 DWORD rgbColors;
277 LPARAM lCustData;
278 LPCFHOOKPROC lpfnHook;
279 LPCWSTR lpTemplateName;
280 HINSTANCE hInstance;
281 LPWSTR lpszStyle;
282 WORD nFontType;
283 WORD ___MISSING_ALIGNMENT__;
284 INT nSizeMin;
285 INT nSizeMax;
286 } CHOOSEFONTW,*LPCHOOSEFONTW;
287 typedef struct tagDEVNAMES {
288 WORD wDriverOffset;
289 WORD wDeviceOffset;
290 WORD wOutputOffset;
291 WORD wDefault;
292 } DEVNAMES,*LPDEVNAMES;
293 typedef struct {
294 DWORD lStructSize;
295 HWND hwndOwner;
296 HINSTANCE hInstance;
297 DWORD Flags;
298 LPSTR lpstrFindWhat;
299 LPSTR lpstrReplaceWith;
300 WORD wFindWhatLen;
301 WORD wReplaceWithLen;
302 LPARAM lCustData;
303 LPFRHOOKPROC lpfnHook;
304 LPCSTR lpTemplateName;
305 } FINDREPLACEA,*LPFINDREPLACEA;
306 typedef struct {
307 DWORD lStructSize;
308 HWND hwndOwner;
309 HINSTANCE hInstance;
310 DWORD Flags;
311 LPWSTR lpstrFindWhat;
312 LPWSTR lpstrReplaceWith;
313 WORD wFindWhatLen;
314 WORD wReplaceWithLen;
315 LPARAM lCustData;
316 LPFRHOOKPROC lpfnHook;
317 LPCWSTR lpTemplateName;
318 } FINDREPLACEW,*LPFINDREPLACEW;
319 typedef struct tagOFNA {
320 DWORD lStructSize;
321 HWND hwndOwner;
322 HINSTANCE hInstance;
323 LPCSTR lpstrFilter;
324 LPSTR lpstrCustomFilter;
325 DWORD nMaxCustFilter;
326 DWORD nFilterIndex;
327 LPSTR lpstrFile;
328 DWORD nMaxFile;
329 LPSTR lpstrFileTitle;
330 DWORD nMaxFileTitle;
331 LPCSTR lpstrInitialDir;
332 LPCSTR lpstrTitle;
333 DWORD Flags;
334 WORD nFileOffset;
335 WORD nFileExtension;
336 LPCSTR lpstrDefExt;
337 LPARAM lCustData;
338 LPOFNHOOKPROC lpfnHook;
339 LPCSTR lpTemplateName;
340 #ifdef _MAC
341 LPEDITMENU lpEditInfo;
342 LPCSTR lpstrPrompt;
343 #endif
344 #if (_WIN32_WINNT >= 0x0500)
345 void *pvReserved;
346 DWORD dwReserved;
347 DWORD FlagsEx;
348 #endif
349 } OPENFILENAMEA,*LPOPENFILENAMEA;
350 typedef struct tagOFNW {
351 DWORD lStructSize;
352 HWND hwndOwner;
353 HINSTANCE hInstance;
354 LPCWSTR lpstrFilter;
355 LPWSTR lpstrCustomFilter;
356 DWORD nMaxCustFilter;
357 DWORD nFilterIndex;
358 LPWSTR lpstrFile;
359 DWORD nMaxFile;
360 LPWSTR lpstrFileTitle;
361 DWORD nMaxFileTitle;
362 LPCWSTR lpstrInitialDir;
363 LPCWSTR lpstrTitle;
364 DWORD Flags;
365 WORD nFileOffset;
366 WORD nFileExtension;
367 LPCWSTR lpstrDefExt;
368 LPARAM lCustData;
369 LPOFNHOOKPROC lpfnHook;
370 LPCWSTR lpTemplateName;
371 #ifdef _MAC
372 LPEDITMENU lpEditInfo;
373 LPCSTR lpstrPrompt;
374 #endif
375 #if (_WIN32_WINNT >= 0x0500)
376 void *pvReserved;
377 DWORD dwReserved;
378 DWORD FlagsEx;
379 #endif
380 } OPENFILENAMEW,*LPOPENFILENAMEW;
381 typedef struct _OFNOTIFYA {
382 NMHDR hdr;
383 LPOPENFILENAMEA lpOFN;
384 LPSTR pszFile;
385 } OFNOTIFYA,*LPOFNOTIFYA;
386 typedef struct _OFNOTIFYW {
387 NMHDR hdr;
388 LPOPENFILENAMEW lpOFN;
389 LPWSTR pszFile;
390 } OFNOTIFYW,*LPOFNOTIFYW;
391
392 typedef struct _OFNOTIFYEXA
393 {
394 NMHDR hdr;
395 LPOPENFILENAMEA lpOFN;
396 LPVOID psf;
397 LPVOID pidl;
398 } OFNOTIFYEXA, *LPOFNOTIFYEXA;
399
400 typedef struct _OFNOTIFYEXW
401 {
402 NMHDR hdr;
403 LPOPENFILENAMEW lpOFN;
404 LPVOID psf;
405 LPVOID pidl;
406 } OFNOTIFYEXW, *LPOFNOTIFYEXW;
407
408 typedef struct tagPSDA {
409 DWORD lStructSize;
410 HWND hwndOwner;
411 HGLOBAL hDevMode;
412 HGLOBAL hDevNames;
413 DWORD Flags;
414 POINT ptPaperSize;
415 RECT rtMinMargin;
416 RECT rtMargin;
417 HINSTANCE hInstance;
418 LPARAM lCustData;
419 LPPAGESETUPHOOK lpfnPageSetupHook;
420 LPPAGEPAINTHOOK lpfnPagePaintHook;
421 LPCSTR lpPageSetupTemplateName;
422 HGLOBAL hPageSetupTemplate;
423 } PAGESETUPDLGA,*LPPAGESETUPDLGA;
424 typedef struct tagPSDW {
425 DWORD lStructSize;
426 HWND hwndOwner;
427 HGLOBAL hDevMode;
428 HGLOBAL hDevNames;
429 DWORD Flags;
430 POINT ptPaperSize;
431 RECT rtMinMargin;
432 RECT rtMargin;
433 HINSTANCE hInstance;
434 LPARAM lCustData;
435 LPPAGESETUPHOOK lpfnPageSetupHook;
436 LPPAGEPAINTHOOK lpfnPagePaintHook;
437 LPCWSTR lpPageSetupTemplateName;
438 HGLOBAL hPageSetupTemplate;
439 } PAGESETUPDLGW,*LPPAGESETUPDLGW;
440 typedef struct tagPDA {
441 DWORD lStructSize;
442 HWND hwndOwner;
443 HANDLE hDevMode;
444 HANDLE hDevNames;
445 HDC hDC;
446 DWORD Flags;
447 WORD nFromPage;
448 WORD nToPage;
449 WORD nMinPage;
450 WORD nMaxPage;
451 WORD nCopies;
452 HINSTANCE hInstance;
453 DWORD lCustData;
454 LPPRINTHOOKPROC lpfnPrintHook;
455 LPSETUPHOOKPROC lpfnSetupHook;
456 LPCSTR lpPrintTemplateName;
457 LPCSTR lpSetupTemplateName;
458 HANDLE hPrintTemplate;
459 HANDLE hSetupTemplate;
460 } PRINTDLGA,*LPPRINTDLGA;
461 typedef struct tagPDW {
462 DWORD lStructSize;
463 HWND hwndOwner;
464 HANDLE hDevMode;
465 HANDLE hDevNames;
466 HDC hDC;
467 DWORD Flags;
468 WORD nFromPage;
469 WORD nToPage;
470 WORD nMinPage;
471 WORD nMaxPage;
472 WORD nCopies;
473 HINSTANCE hInstance;
474 DWORD lCustData;
475 LPPRINTHOOKPROC lpfnPrintHook;
476 LPSETUPHOOKPROC lpfnSetupHook;
477 LPCWSTR lpPrintTemplateName;
478 LPCWSTR lpSetupTemplateName;
479 HANDLE hPrintTemplate;
480 HANDLE hSetupTemplate;
481 } PRINTDLGW,*LPPRINTDLGW;
482 #if (WINVER >= 0x0500) && !defined (__OBJC__)
483 #include <prsht.h> /* for HPROPSHEETPAGE */
484 typedef struct tagPRINTPAGERANGE {
485 DWORD nFromPage;
486 DWORD nToPage;
487 } PRINTPAGERANGE, *LPPRINTPAGERANGE;
488 typedef struct tagPDEXA {
489 DWORD lStructSize;
490 HWND hwndOwner;
491 HGLOBAL hDevMode;
492 HGLOBAL hDevNames;
493 HDC hDC;
494 DWORD Flags;
495 DWORD Flags2;
496 DWORD ExclusionFlags;
497 DWORD nPageRanges;
498 DWORD nMaxPageRanges;
499 LPPRINTPAGERANGE lpPageRanges;
500 DWORD nMinPage;
501 DWORD nMaxPage;
502 DWORD nCopies;
503 HINSTANCE hInstance;
504 LPCSTR lpPrintTemplateName;
505 void* /*LPUNKNOWN*/ lpCallback;
506 DWORD nPropertyPages;
507 HPROPSHEETPAGE *lphPropertyPages;
508 DWORD nStartPage;
509 DWORD dwResultAction;
510 } PRINTDLGEXA, *LPPRINTDLGEXA;
511 typedef struct tagPDEXW {
512 DWORD lStructSize;
513 HWND hwndOwner;
514 HGLOBAL hDevMode;
515 HGLOBAL hDevNames;
516 HDC hDC;
517 DWORD Flags;
518 DWORD Flags2;
519 DWORD ExclusionFlags;
520 DWORD nPageRanges;
521 DWORD nMaxPageRanges;
522 LPPRINTPAGERANGE lpPageRanges;
523 DWORD nMinPage;
524 DWORD nMaxPage;
525 DWORD nCopies;
526 HINSTANCE hInstance;
527 LPCWSTR lpPrintTemplateName;
528 void* /*LPUNKNOWN*/ lpCallback;
529 DWORD nPropertyPages;
530 HPROPSHEETPAGE *lphPropertyPages;
531 DWORD nStartPage;
532 DWORD dwResultAction;
533 } PRINTDLGEXW, *LPPRINTDLGEXW;
534 #endif /* WINVER >= 0x0500 */
535
536 BOOL WINAPI ChooseColorA(LPCHOOSECOLORA);
537 BOOL WINAPI ChooseColorW(LPCHOOSECOLORW);
538 BOOL WINAPI ChooseFontA(LPCHOOSEFONTA);
539 BOOL WINAPI ChooseFontW(LPCHOOSEFONTW);
540 DWORD WINAPI CommDlgExtendedError(void);
541 HWND WINAPI FindTextA(LPFINDREPLACEA);
542 HWND WINAPI FindTextW(LPFINDREPLACEW);
543 short WINAPI GetFileTitleA(LPCSTR,LPSTR,WORD);
544 short WINAPI GetFileTitleW(LPCWSTR,LPWSTR,WORD);
545 BOOL WINAPI GetOpenFileNameA(LPOPENFILENAMEA);
546 BOOL WINAPI GetOpenFileNameW(LPOPENFILENAMEW);
547 BOOL WINAPI GetSaveFileNameA(LPOPENFILENAMEA);
548 BOOL WINAPI GetSaveFileNameW(LPOPENFILENAMEW);
549 BOOL WINAPI PageSetupDlgA(LPPAGESETUPDLGA);
550 BOOL WINAPI PageSetupDlgW(LPPAGESETUPDLGW);
551 BOOL WINAPI PrintDlgA(LPPRINTDLGA);
552 BOOL WINAPI PrintDlgW(LPPRINTDLGW);
553 HWND WINAPI ReplaceTextA(LPFINDREPLACEA);
554 HWND WINAPI ReplaceTextW(LPFINDREPLACEW);
555 #if (WINVER >= 0x0500) && !defined (__OBJC__)
556 HRESULT WINAPI PrintDlgExA(LPPRINTDLGEXA);
557 HRESULT WINAPI PrintDlgExW(LPPRINTDLGEXW);
558 #endif /* WINVER >= 0x0500 */
559
560 #ifdef UNICODE
561 #define LBSELCHSTRING LBSELCHSTRINGW
562 #define SHAREVISTRING SHAREVISTRINGW
563 #define FILEOKSTRING FILEOKSTRINGW
564 #define COLOROKSTRING COLOROKSTRINGW
565 #define SETRGBSTRING SETRGBSTRINGW
566 #define HELPMSGSTRING HELPMSGSTRINGW
567 #define FINDMSGSTRING FINDMSGSTRINGW
568 typedef CHOOSECOLORW CHOOSECOLOR,*LPCHOOSECOLOR;
569 typedef CHOOSEFONTW CHOOSEFONT,*LPCHOOSEFONT;
570 typedef FINDREPLACEW FINDREPLACE,*LPFINDREPLACE;
571 typedef OPENFILENAMEW OPENFILENAME,*LPOPENFILENAME;
572 typedef OFNOTIFYW OFNOTIFY,*LPOFNOTIFY;
573 typedef PAGESETUPDLGW PAGESETUPDLG,*LPPAGESETUPDLG;
574 typedef PRINTDLGW PRINTDLG,*LPPRINTDLG;
575 #define ChooseColor ChooseColorW
576 #define ChooseFont ChooseFontW
577 #define FindText FindTextW
578 #define GetFileTitle GetFileTitleW
579 #define GetOpenFileName GetOpenFileNameW
580 #define GetSaveFileName GetSaveFileNameW
581 #define PageSetupDlg PageSetupDlgW
582 #define PrintDlg PrintDlgW
583 #define ReplaceText ReplaceTextW
584 #if (WINVER >= 0x0500) && !defined (__OBJC__)
585 typedef PRINTDLGEXW PRINTDLGEX, *LPPRINTDLGEX;
586 #define PrintDlgEx PrintDlgExW
587 #endif /* WINVER >= 0x0500 */
588 #else /* UNICODE */
589 #define LBSELCHSTRING LBSELCHSTRINGA
590 #define SHAREVISTRING SHAREVISTRINGA
591 #define FILEOKSTRING FILEOKSTRINGA
592 #define COLOROKSTRING COLOROKSTRINGA
593 #define SETRGBSTRING SETRGBSTRINGA
594 #define HELPMSGSTRING HELPMSGSTRINGA
595 #define FINDMSGSTRING FINDMSGSTRINGA
596 typedef CHOOSECOLORA CHOOSECOLOR,*LPCHOOSECOLOR;
597 typedef CHOOSEFONTA CHOOSEFONT,*LPCHOOSEFONT;
598 typedef FINDREPLACEA FINDREPLACE,*LPFINDREPLACE;
599 typedef OPENFILENAMEA OPENFILENAME,*LPOPENFILENAME;
600 typedef OFNOTIFYA OFNOTIFY,*LPOFNOTIFY;
601 typedef PAGESETUPDLGA PAGESETUPDLG,*LPPAGESETUPDLG;
602 typedef PRINTDLGA PRINTDLG,*LPPRINTDLG;
603 #define ChooseColor ChooseColorA
604 #define ChooseFont ChooseFontA
605 #define FindText FindTextA
606 #define GetFileTitle GetFileTitleA
607 #define GetOpenFileName GetOpenFileNameA
608 #define GetSaveFileName GetSaveFileNameA
609 #define PageSetupDlg PageSetupDlgA
610 #define PrintDlg PrintDlgA
611 #define ReplaceText ReplaceTextA
612 #if (WINVER >= 0x0500) && !defined (__OBJC__)
613 typedef PRINTDLGEXA PRINTDLGEX, *LPPRINTDLGEX;
614 #define PrintDlgEx PrintDlgExA
615 #endif /* WINVER >= 0x0500 */
616 #endif /* UNICODE */
617 #ifndef _WIN64
618 #pragma pack(pop)
619 #endif
620 #ifdef __cplusplus
621 }
622 #endif
623 #endif