Added binary compatible __EH_prolog.
[wine/hacks.git] / include / commdlg.h
blobadf8ac7a3cb090c945a36788a49d46e70641c249
1 /*
2 * COMMDLG - Common Wine Dialog ... :-)
3 */
5 #ifndef __WINE_COMMDLG_H
6 #define __WINE_COMMDLG_H
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
12 #include "prsht.h"
13 #include "pshpack1.h"
15 #define OFN_READONLY 0x00000001
16 #define OFN_OVERWRITEPROMPT 0x00000002
17 #define OFN_HIDEREADONLY 0x00000004
18 #define OFN_NOCHANGEDIR 0x00000008
19 #define OFN_SHOWHELP 0x00000010
20 #define OFN_ENABLEHOOK 0x00000020
21 #define OFN_ENABLETEMPLATE 0x00000040
22 #define OFN_ENABLETEMPLATEHANDLE 0x00000080
23 #define OFN_NOVALIDATE 0x00000100
24 #define OFN_ALLOWMULTISELECT 0x00000200
25 #define OFN_EXTENSIONDIFFERENT 0x00000400
26 #define OFN_PATHMUSTEXIST 0x00000800
27 #define OFN_FILEMUSTEXIST 0x00001000
28 #define OFN_CREATEPROMPT 0x00002000
29 #define OFN_SHAREAWARE 0x00004000
30 #define OFN_NOREADONLYRETURN 0x00008000
31 #define OFN_NOTESTFILECREATE 0x00010000
32 #define OFN_NONETWORKBUTTON 0x00020000
33 #define OFN_NOLONGNAMES 0x00040000
34 #define OFN_EXPLORER 0x00080000
35 #define OFN_NODEREFERENCELINKS 0x00100000
36 #define OFN_LONGNAMES 0x00200000
37 #define OFN_ENABLEINCLUDENOTIFY 0x00400000
38 #define OFN_ENABLESIZING 0x00800000
39 #define OFN_DONTADDTORECENT 0x02000000
40 #define OFN_FORCESHOWHIDDEN 0x10000000
42 /* WINE internal flags */
43 #define OFN_UNICODE 0x40000000 /*to differ between 32W/A hook*/
44 #define OFN_WINE 0x80000000 /* comdlg32 */
46 #define OFN_SHAREFALLTHROUGH 2
47 #define OFN_SHARENOWARN 1
48 #define OFN_SHAREWARN 0
50 #define SAVE_DIALOG 1
51 #define OPEN_DIALOG 2
53 typedef UINT CALLBACK (*LPOFNHOOKPROC)(HWND,UINT,WPARAM,LPARAM);
55 typedef struct {
56 DWORD lStructSize;
57 HWND hwndOwner;
58 HINSTANCE hInstance;
59 LPCSTR lpstrFilter;
60 LPSTR lpstrCustomFilter;
61 DWORD nMaxCustFilter;
62 DWORD nFilterIndex;
63 LPSTR lpstrFile;
64 DWORD nMaxFile;
65 LPSTR lpstrFileTitle;
66 DWORD nMaxFileTitle;
67 LPCSTR lpstrInitialDir;
68 LPCSTR lpstrTitle;
69 DWORD Flags;
70 WORD nFileOffset;
71 WORD nFileExtension;
72 LPCSTR lpstrDefExt;
73 LPARAM lCustData;
74 LPOFNHOOKPROC lpfnHook;
75 LPCSTR lpTemplateName;
76 } OPENFILENAMEA,*LPOPENFILENAMEA;
78 typedef struct {
79 DWORD lStructSize;
80 HWND hwndOwner;
81 HINSTANCE hInstance;
82 LPCWSTR lpstrFilter;
83 LPWSTR lpstrCustomFilter;
84 DWORD nMaxCustFilter;
85 DWORD nFilterIndex;
86 LPWSTR lpstrFile;
87 DWORD nMaxFile;
88 LPWSTR lpstrFileTitle;
89 DWORD nMaxFileTitle;
90 LPCWSTR lpstrInitialDir;
91 LPCWSTR lpstrTitle;
92 DWORD Flags;
93 WORD nFileOffset;
94 WORD nFileExtension;
95 LPCWSTR lpstrDefExt;
96 LPARAM lCustData;
97 LPOFNHOOKPROC lpfnHook;
98 LPCWSTR lpTemplateName;
99 } OPENFILENAMEW,*LPOPENFILENAMEW;
101 DECL_WINELIB_TYPE_AW(OPENFILENAME)
102 DECL_WINELIB_TYPE_AW(LPOPENFILENAME)
104 typedef struct
106 NMHDR hdr;
107 LPOPENFILENAMEA lpOFN;
108 LPSTR pszFile;
109 } OFNOTIFYA, *LPOFNOTIFYA;
111 typedef struct
113 NMHDR hdr;
114 LPOPENFILENAMEW lpOFN;
115 LPWSTR pszFile;
116 } OFNOTIFYW, *LPOFNOTIFYW;
118 DECL_WINELIB_TYPE_AW(OFNOTIFY)
119 DECL_WINELIB_TYPE_AW(LPOFNOTIFY)
121 typedef UINT CALLBACK (*LPCCHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
123 typedef struct {
124 DWORD lStructSize;
125 HWND hwndOwner;
126 HWND hInstance; /* Should be an HINSTANCE but MS made a typo */
127 DWORD rgbResult;
128 LPDWORD lpCustColors;
129 DWORD Flags;
130 DWORD lCustData;
131 LPCCHOOKPROC lpfnHook;
132 LPCSTR lpTemplateName;
133 } CHOOSECOLORA;
134 typedef CHOOSECOLORA *LPCHOOSECOLORA;
136 typedef struct {
137 DWORD lStructSize;
138 HWND hwndOwner;
139 HWND hInstance; /* Should be an HINSTANCE but MS made a typo */
140 DWORD rgbResult;
141 LPDWORD lpCustColors;
142 DWORD Flags;
143 DWORD lCustData;
144 LPCCHOOKPROC lpfnHook;
145 LPCWSTR lpTemplateName;
146 } CHOOSECOLORW;
147 typedef CHOOSECOLORW *LPCHOOSECOLORW;
149 DECL_WINELIB_TYPE_AW(CHOOSECOLOR)
150 DECL_WINELIB_TYPE_AW(LPCHOOSECOLOR)
153 #define CC_RGBINIT 0x00000001
154 #define CC_FULLOPEN 0x00000002
155 #define CC_PREVENTFULLOPEN 0x00000004
156 #define CC_SHOWHELP 0x00000008
157 #define CC_ENABLEHOOK 0x00000010
158 #define CC_ENABLETEMPLATE 0x00000020
159 #define CC_ENABLETEMPLATEHANDLE 0x00000040
160 #define CC_SOLIDCOLOR 0x00000080
161 #define CC_ANYCOLOR 0x00000100
163 typedef UINT CALLBACK (*LPFRHOOKPROC)(HWND,UINT,WPARAM,LPARAM);
165 typedef struct {
166 DWORD lStructSize;
167 HWND hwndOwner;
168 HINSTANCE hInstance;
169 DWORD Flags;
170 LPSTR lpstrFindWhat;
171 LPSTR lpstrReplaceWith;
172 WORD wFindWhatLen;
173 WORD wReplaceWithLen;
174 LPARAM lCustData;
175 LPFRHOOKPROC lpfnHook;
176 LPCSTR lpTemplateName;
177 } FINDREPLACEA, *LPFINDREPLACEA;
179 typedef struct {
180 DWORD lStructSize;
181 HWND hwndOwner;
182 HINSTANCE hInstance;
183 DWORD Flags;
184 LPWSTR lpstrFindWhat;
185 LPWSTR lpstrReplaceWith;
186 WORD wFindWhatLen;
187 WORD wReplaceWithLen;
188 LPARAM lCustData;
189 LPFRHOOKPROC lpfnHook;
190 LPCWSTR lpTemplateName;
191 } FINDREPLACEW, *LPFINDREPLACEW;
193 DECL_WINELIB_TYPE_AW(FINDREPLACE)
194 DECL_WINELIB_TYPE_AW(LPFINDREPLACE)
196 #define FR_DOWN 0x00000001
197 #define FR_WHOLEWORD 0x00000002
198 #define FR_MATCHCASE 0x00000004
199 #define FR_FINDNEXT 0x00000008
200 #define FR_REPLACE 0x00000010
201 #define FR_REPLACEALL 0x00000020
202 #define FR_DIALOGTERM 0x00000040
203 #define FR_SHOWHELP 0x00000080
204 #define FR_ENABLEHOOK 0x00000100
205 #define FR_ENABLETEMPLATE 0x00000200
206 #define FR_NOUPDOWN 0x00000400
207 #define FR_NOMATCHCASE 0x00000800
208 #define FR_NOWHOLEWORD 0x00001000
209 #define FR_ENABLETEMPLATEHANDLE 0x00002000
210 #define FR_HIDEUPDOWN 0x00004000
211 #define FR_HIDEMATCHCASE 0x00008000
212 #define FR_HIDEWHOLEWORD 0x00010000
214 typedef UINT CALLBACK (*LPCFHOOKPROC)(HWND,UINT,WPARAM,LPARAM);
216 typedef struct
218 UINT lStructSize;
219 HWND hwndOwner;
220 HDC hDC;
221 LPLOGFONTA lpLogFont;
222 INT iPointSize;
223 DWORD Flags;
224 COLORREF rgbColors;
225 LPARAM lCustData;
226 LPCFHOOKPROC lpfnHook;
227 LPCSTR lpTemplateName;
228 HINSTANCE hInstance;
229 LPSTR lpszStyle;
230 WORD nFontType;
231 WORD ___MISSING_ALIGNMENT__;
232 INT nSizeMin;
233 INT nSizeMax;
234 } CHOOSEFONTA, *LPCHOOSEFONTA;
236 typedef struct
238 UINT lStructSize;
239 HWND hwndOwner;
240 HDC hDC;
241 LPLOGFONTW lpLogFont;
242 INT iPointSize;
243 DWORD Flags;
244 COLORREF rgbColors;
245 LPARAM lCustData;
246 LPCFHOOKPROC lpfnHook;
247 LPCWSTR lpTemplateName;
248 HINSTANCE hInstance;
249 LPWSTR lpszStyle;
250 WORD nFontType;
251 WORD ___MISSING_ALIGNMENT__;
252 INT nSizeMin;
253 INT nSizeMax;
254 } CHOOSEFONTW, *LPCHOOSEFONTW;
256 DECL_WINELIB_TYPE_AW(CHOOSEFONT)
257 DECL_WINELIB_TYPE_AW(LPCHOOSEFONT)
259 #define CF_SCREENFONTS 0x00000001
260 #define CF_PRINTERFONTS 0x00000002
261 #define CF_BOTH (CF_SCREENFONTS | CF_PRINTERFONTS)
262 #define CF_SHOWHELP 0x00000004L
263 #define CF_ENABLEHOOK 0x00000008L
264 #define CF_ENABLETEMPLATE 0x00000010L
265 #define CF_ENABLETEMPLATEHANDLE 0x00000020L
266 #define CF_INITTOLOGFONTSTRUCT 0x00000040L
267 #define CF_USESTYLE 0x00000080L
268 #define CF_EFFECTS 0x00000100L
269 #define CF_APPLY 0x00000200L
270 #define CF_ANSIONLY 0x00000400L
271 #define CF_SCRIPTSONLY CF_ANSIONLY
272 #define CF_NOVECTORFONTS 0x00000800L
273 #define CF_NOOEMFONTS CF_NOVECTORFONTS
274 #define CF_NOSIMULATIONS 0x00001000L
275 #define CF_LIMITSIZE 0x00002000L
276 #define CF_FIXEDPITCHONLY 0x00004000L
277 #define CF_WYSIWYG 0x00008000L /* use with CF_SCREENFONTS & CF_PRINTERFONTS */
278 #define CF_FORCEFONTEXIST 0x00010000L
279 #define CF_SCALABLEONLY 0x00020000L
280 #define CF_TTONLY 0x00040000L
281 #define CF_NOFACESEL 0x00080000L
282 #define CF_NOSTYLESEL 0x00100000L
283 #define CF_NOSIZESEL 0x00200000L
284 #define CF_SELECTSCRIPT 0x00400000L
285 #define CF_NOSCRIPTSEL 0x00800000L
286 #define CF_NOVERTFONTS 0x01000000L
288 #define SIMULATED_FONTTYPE 0x8000
289 #define PRINTER_FONTTYPE 0x4000
290 #define SCREEN_FONTTYPE 0x2000
291 #define BOLD_FONTTYPE 0x0100
292 #define ITALIC_FONTTYPE 0x0200
293 #define REGULAR_FONTTYPE 0x0400
295 #define WM_CHOOSEFONT_GETLOGFONT (WM_USER + 1)
296 #define WM_CHOOSEFONT_SETLOGFONT (WM_USER + 101)
297 #define WM_CHOOSEFONT_SETFLAGS (WM_USER + 102)
299 #define LBSELCHSTRING "commdlg_LBSelChangedNotify"
300 #define SHAREVISTRING "commdlg_ShareViolation"
301 #define FILEOKSTRING "commdlg_FileNameOK"
302 #define COLOROKSTRING "commdlg_ColorOK"
303 #define SETRGBSTRING "commdlg_SetRGBColor"
304 #define FINDMSGSTRING "commdlg_FindReplace"
305 #define HELPMSGSTRING "commdlg_help"
307 #define CD_LBSELNOITEMS -1
308 #define CD_LBSELCHANGE 0
309 #define CD_LBSELSUB 1
310 #define CD_LBSELADD 2
312 #define CDN_FIRST (0U-601U)
313 #define CDN_LAST (0U-699U)
315 #define CDN_INITDONE (CDN_FIRST - 0x0000)
316 #define CDN_SELCHANGE (CDN_FIRST - 0x0001)
317 #define CDN_FOLDERCHANGE (CDN_FIRST - 0x0002)
318 #define CDN_SHAREVIOLATION (CDN_FIRST - 0x0003)
319 #define CDN_HELP (CDN_FIRST - 0x0004)
320 #define CDN_FILEOK (CDN_FIRST - 0x0005)
321 #define CDN_TYPECHANGE (CDN_FIRST - 0x0006)
323 #define CDM_FIRST (WM_USER + 100)
324 #define CDM_LAST (WM_USER + 200)
326 #define CDM_GETSPEC (CDM_FIRST + 0x0000)
327 #define CDM_GETFILEPATH (CDM_FIRST + 0x0001)
328 #define CDM_GETFOLDERPATH (CDM_FIRST + 0x0002)
329 #define CDM_GETFOLDERLIST (CDM_FIRST + 0x0003)
330 #define CDM_SETCONTROLTEXT (CDM_FIRST + 0x0004)
331 #define CDM_HIDECONTROL (CDM_FIRST + 0x0005)
332 #define CDM_SETDEFEXT (CDM_FIRST + 0x0006)
335 /* Messages to query information from the open or save dialogs */
337 #define CommDlg_OpenSave_GetSpecA(_hdlg, _psz, _cbmax) \
338 (int)SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
339 #define CommDlg_OpenSave_GetSpecW(_hdlg, _psz, _cbmax) \
340 (int)SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
341 #define CommDlg_OpenSave_GetSpec WINELIB_NAME_AW(CommDlg_OpenSave_GetSpec)
343 #define CommDlg_OpenSave_GetFilePathA(_hdlg, _psz, _cbmax) \
344 (int)SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
345 #define CommDlg_OpenSave_GetFilePathW(_hdlg, _psz, _cbmax) \
346 (int)SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
347 #define CommDlg_OpenSave_GetFilePath WINELIB_NAME_AW(CommDlg_OpenSave_GetFilePath)
349 #define CommDlg_OpenSave_GetFolderPathA(_hdlg, _psz, _cbmax) \
350 (int)SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
351 #define CommDlg_OpenSave_GetFolderPathW(_hdlg, _psz, _cbmax) \
352 (int)SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
353 #define CommDlg_OpenSave_GetFolderPath WINELIB_NAME_AW(CommDlg_OpenSave_GetFolderPath)
355 #define CommDlg_OpenSave_GetFolderIDList(_hdlg, _pidl, _cbmax) \
356 (int)SNDMSG(_hdlg, CDM_GETFOLDERIDLIST, (WPARAM)_cbmax, (LPARAM)(LPVOID)_pidl)
358 #define CommDlg_OpenSave_SetControlText(_hdlg, _id, _text) \
359 (void)SNDMSG(_hdlg, CDM_SETCONTROLTEXT, (WPARAM)_id, (LPARAM)(LPSTR)_text)
361 #define CommDlg_OpenSave_HideControl(_hdlg, _id) \
362 (void)SNDMSG(_hdlg, CDM_HIDECONTROL, (WPARAM)_id, 0)
364 #define CommDlg_OpenSave_SetDefExt(_hdlg, _pszext) \
365 (void)SNDMSG(_hdlg, CDM_SETDEFEXT, 0, (LPARAM)(LPSTR)_pszext)
367 #define CommDlg_OpenSave_GetSpecA(_hdlg, _psz, _cbmax) \
368 (int)SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
369 #define CommDlg_OpenSave_GetSpecW(_hdlg, _psz, _cbmax) \
370 (int)SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
371 #define CommDlg_OpenSave_GetSpec WINELIB_NAME_AW(CommDlg_OpenSave_GetSpec)
373 #define CommDlg_OpenSave_GetFilePathA(_hdlg, _psz, _cbmax) \
374 (int)SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
375 #define CommDlg_OpenSave_GetFilePathW(_hdlg, _psz, _cbmax) \
376 (int)SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
377 #define CommDlg_OpenSave_GetFilePath WINELIB_NAME_AW(CommDlg_OpenSave_GetFilePath)
379 #define CommDlg_OpenSave_GetFolderPathA(_hdlg, _psz, _cbmax) \
380 (int)SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
381 #define CommDlg_OpenSave_GetFolderPathW(_hdlg, _psz, _cbmax) \
382 (int)SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
383 #define CommDlg_OpenSave_GetFolderPath WINELIB_NAME_AW(CommDlg_OpenSave_GetFolderPath)
385 #define CommDlg_OpenSave_GetFolderIDList(_hdlg, _pidl, _cbmax) \
386 (int)SNDMSG(_hdlg, CDM_GETFOLDERIDLIST, (WPARAM)_cbmax, (LPARAM)(LPVOID)_pidl)
388 #define CommDlg_OpenSave_SetControlText(_hdlg, _id, _text) \
389 (void)SNDMSG(_hdlg, CDM_SETCONTROLTEXT, (WPARAM)_id, (LPARAM)(LPSTR)_text)
391 #define CommDlg_OpenSave_HideControl(_hdlg, _id) \
392 (void)SNDMSG(_hdlg, CDM_HIDECONTROL, (WPARAM)_id, 0)
394 #define CommDlg_OpenSave_SetDefExt(_hdlg, _pszext) \
395 (void)SNDMSG(_hdlg, CDM_SETDEFEXT, 0, (LPARAM)(LPSTR)_pszext)
398 typedef UINT CALLBACK (*LPPRINTHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
399 typedef UINT CALLBACK (*LPSETUPHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
401 typedef struct tagPDA
403 DWORD lStructSize;
404 HWND hwndOwner;
405 HGLOBAL hDevMode;
406 HGLOBAL hDevNames;
407 HDC hDC;
408 DWORD Flags;
409 WORD nFromPage;
410 WORD nToPage;
411 WORD nMinPage;
412 WORD nMaxPage;
413 WORD nCopies;
414 HINSTANCE hInstance;
415 LPARAM lCustData;
416 LPPRINTHOOKPROC lpfnPrintHook;
417 LPSETUPHOOKPROC lpfnSetupHook;
418 LPCSTR lpPrintTemplateName;
419 LPCSTR lpSetupTemplateName;
420 HGLOBAL hPrintTemplate;
421 HGLOBAL hSetupTemplate;
422 } PRINTDLGA, *LPPRINTDLGA;
424 typedef struct tagPDW
426 DWORD lStructSize;
427 HWND hwndOwner;
428 HGLOBAL hDevMode;
429 HGLOBAL hDevNames;
430 HDC hDC;
431 DWORD Flags;
432 WORD nFromPage;
433 WORD nToPage;
434 WORD nMinPage;
435 WORD nMaxPage;
436 WORD nCopies;
437 HINSTANCE hInstance;
438 LPARAM lCustData;
439 LPPRINTHOOKPROC lpfnPrintHook;
440 LPSETUPHOOKPROC lpfnSetupHook;
441 LPCWSTR lpPrintTemplateName;
442 LPCWSTR lpSetupTemplateName;
443 HGLOBAL hPrintTemplate;
444 HGLOBAL hSetupTemplate;
445 } PRINTDLGW, *LPPRINTDLGW;
447 DECL_WINELIB_TYPE_AW(PRINTDLG)
448 DECL_WINELIB_TYPE_AW(LPPRINTDLG)
450 #define PD_ALLPAGES 0x00000000
451 #define PD_SELECTION 0x00000001
452 #define PD_PAGENUMS 0x00000002
453 #define PD_NOSELECTION 0x00000004
454 #define PD_NOPAGENUMS 0x00000008
455 #define PD_COLLATE 0x00000010
456 #define PD_PRINTTOFILE 0x00000020
457 #define PD_PRINTSETUP 0x00000040
458 #define PD_NOWARNING 0x00000080
459 #define PD_RETURNDC 0x00000100
460 #define PD_RETURNIC 0x00000200
461 #define PD_RETURNDEFAULT 0x00000400
462 #define PD_SHOWHELP 0x00000800
463 #define PD_ENABLEPRINTHOOK 0x00001000
464 #define PD_ENABLESETUPHOOK 0x00002000
465 #define PD_ENABLEPRINTTEMPLATE 0x00004000
466 #define PD_ENABLESETUPTEMPLATE 0x00008000
467 #define PD_ENABLEPRINTTEMPLATEHANDLE 0x00010000
468 #define PD_ENABLESETUPTEMPLATEHANDLE 0x00020000
469 #define PD_USEDEVMODECOPIES 0x00040000
470 #define PD_USEDEVMODECOPIESANDCOLLATE 0x00040000
471 #define PD_DISABLEPRINTTOFILE 0x00080000
472 #define PD_HIDEPRINTTOFILE 0x00100000
473 #define PD_NONETWORKBUTTON 0x00200000
475 typedef struct
477 WORD wDriverOffset;
478 WORD wDeviceOffset;
479 WORD wOutputOffset;
480 WORD wDefault;
481 } DEVNAMES;
482 typedef DEVNAMES * LPDEVNAMES;
484 #define DN_DEFAULTPRN 0x0001
486 /* PageSetupDlg stuff ... */
487 #define WM_PSD_PAGESETUPDLG (WM_USER )
488 #define WM_PSD_FULLPAGERECT (WM_USER+1)
489 #define WM_PSD_MINMARGINRECT (WM_USER+2)
490 #define WM_PSD_MARGINRECT (WM_USER+3)
491 #define WM_PSD_GREEKTEXTRECT (WM_USER+4)
492 #define WM_PSD_ENVSTAMPRECT (WM_USER+5)
493 #define WM_PSD_YAFULLPAGERECT (WM_USER+6)
495 typedef UINT CALLBACK (*LPPAGEPAINTHOOK)( HWND, UINT, WPARAM, LPARAM );
496 typedef UINT CALLBACK (*LPPAGESETUPHOOK)( HWND, UINT, WPARAM, LPARAM );
498 typedef struct tagPSDA
500 DWORD lStructSize;
501 HWND hwndOwner;
502 HGLOBAL hDevMode;
503 HGLOBAL hDevNames;
504 DWORD Flags;
505 POINT ptPaperSize;
506 RECT rtMinMargin;
507 RECT rtMargin;
508 HINSTANCE hInstance;
509 LPARAM lCustData;
510 LPPAGESETUPHOOK lpfnPageSetupHook;
511 LPPAGEPAINTHOOK lpfnPagePaintHook;
512 LPCSTR lpPageSetupTemplateName;
513 HGLOBAL hPageSetupTemplate;
514 } PAGESETUPDLGA,*LPPAGESETUPDLGA;
516 typedef struct tagPSDW
518 DWORD lStructSize;
519 HWND hwndOwner;
520 HGLOBAL hDevMode;
521 HGLOBAL hDevNames;
522 DWORD Flags;
523 POINT ptPaperSize;
524 RECT rtMinMargin;
525 RECT rtMargin;
526 HINSTANCE hInstance;
527 LPARAM lCustData;
528 LPPAGESETUPHOOK lpfnPageSetupHook;
529 LPPAGEPAINTHOOK lpfnPagePaintHook;
530 LPCWSTR lpPageSetupTemplateName;
531 HGLOBAL hPageSetupTemplate;
532 } PAGESETUPDLGW,*LPPAGESETUPDLGW;
533 DECL_WINELIB_TYPE_AW(PAGESETUPDLG)
534 DECL_WINELIB_TYPE_AW(LPPAGESETUPDLG)
536 #define PSD_DEFAULTMINMARGINS 0x00000000
537 #define PSD_INWININIINTLMEASURE 0x00000000
539 #define PSD_MINMARGINS 0x00000001
540 #define PSD_MARGINS 0x00000002
541 #define PSD_INTHOUSANDTHSOFINCHES 0x00000004
542 #define PSD_INHUNDREDTHSOFMILLIMETERS 0x00000008
543 #define PSD_DISABLEMARGINS 0x00000010
544 #define PSD_DISABLEPRINTER 0x00000020
545 #define PSD_NOWARNING 0x00000080
546 #define PSD_DISABLEORIENTATION 0x00000100
547 #define PSD_RETURNDEFAULT 0x00000400
548 #define PSD_DISABLEPAPER 0x00000200
549 #define PSD_SHOWHELP 0x00000800
550 #define PSD_ENABLEPAGESETUPHOOK 0x00002000
551 #define PSD_ENABLEPAGESETUPTEMPLATE 0x00008000
552 #define PSD_ENABLEPAGESETUPTEMPLATEHANDLE 0x00020000
553 #define PSD_ENABLEPAGEPAINTHOOK 0x00040000
554 #define PSD_DISABLEPAGEPAINTING 0x00080000
557 BOOL WINAPI ChooseColorA(LPCHOOSECOLORA lpChCol);
558 BOOL WINAPI ChooseColorW(LPCHOOSECOLORW lpChCol);
559 #define ChooseColor WINELIB_NAME_AW(ChooseColor)
560 DWORD WINAPI CommDlgExtendedError(void);
561 HWND WINAPI FindTextA(LPFINDREPLACEA lpFind);
562 HWND WINAPI FindTextW(LPFINDREPLACEW lpFind);
563 #define FindText WINELIB_NAME_AW(FindText)
564 short WINAPI GetFileTitleA(LPCSTR lpFile, LPSTR lpTitle, UINT cbBuf);
565 short WINAPI GetFileTitleW(LPCWSTR lpFile, LPWSTR lpTitle, UINT cbBuf);
566 #define GetFileTitle WINELIB_NAME_AW(GetFileTitle)
567 BOOL WINAPI GetOpenFileNameA(LPOPENFILENAMEA ofn);
568 BOOL WINAPI GetOpenFileNameW(LPOPENFILENAMEW ofn);
569 #define GetOpenFileName WINELIB_NAME_AW(GetOpenFileName)
570 BOOL WINAPI GetSaveFileNameA(LPOPENFILENAMEA ofn);
571 BOOL WINAPI GetSaveFileNameW(LPOPENFILENAMEW ofn);
572 #define GetSaveFileName WINELIB_NAME_AW(GetSaveFileName)
573 BOOL WINAPI PageSetupDlgA( LPPAGESETUPDLGA );
574 BOOL WINAPI PageSetupDlgW( LPPAGESETUPDLGW );
575 #define PageSetupDlg WINELIB_NAME_AW(PageSetupDlg)
576 BOOL WINAPI PrintDlgA( LPPRINTDLGA printdlg);
577 BOOL WINAPI PrintDlgW( LPPRINTDLGW printdlg);
578 #define PrintDlg WINELIB_NAME_AW(PrintDlg)
579 HWND WINAPI ReplaceTextA( LPFINDREPLACEA lpFind);
580 HWND WINAPI ReplaceTextW( LPFINDREPLACEW lpFind);
581 #define ReplaceText WINELIB_NAME_AW(ReplaceText)
582 BOOL WINAPI ChooseFontA(LPCHOOSEFONTA);
583 BOOL WINAPI ChooseFontW(LPCHOOSEFONTW);
584 #define ChooseFont WINELIB_NAME_AW(ChooseFont)
586 void COMDLG32_SetCommDlgExtendedError(DWORD err);
589 #include "poppack.h"
591 #ifdef __cplusplus
593 #endif
595 #endif /* __WINE_COMMDLG_H */