push ada2d4f150af430b0cf01adcbe8b6d3e34deeeb1
[wine/hacks.git] / dlls / comdlg32 / printdlg.h
blob77a39f9ec848cd9ecaa40856144df3107abf52ae
1 /*
2 * COMMDLG - Print Dialog
4 * Copyright 1994 Martin Ayotte
5 * Copyright 1996 Albrecht Kleine
6 * Copyright 1999 Klaas van Gend
7 * Copyright 2000 Huw D M Davies
9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Lesser General Public
11 * License as published by the Free Software Foundation; either
12 * version 2.1 of the License, or (at your option) any later version.
14 * This library is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * Lesser General Public License for more details.
19 * You should have received a copy of the GNU Lesser General Public
20 * License along with this library; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
24 #ifndef _WINE_PRINTDLG_H
25 #define _WINE_PRINTDLG_H
27 #include "cdlg.h"
29 /* This PRINTDLGA internal structure stores
30 * pointers to several throughout useful structures.
33 typedef struct
35 LPDEVMODEA lpDevMode;
36 LPPRINTDLGA lpPrintDlg;
37 LPPRINTER_INFO_2A lpPrinterInfo;
38 LPDRIVER_INFO_3A lpDriverInfo;
39 UINT HelpMessageID;
40 HICON hCollateIcon; /* PrintDlg only */
41 HICON hNoCollateIcon; /* PrintDlg only */
42 HICON hPortraitIcon; /* PrintSetupDlg only */
43 HICON hLandscapeIcon; /* PrintSetupDlg only */
44 HWND hwndUpDown;
45 } PRINT_PTRA;
47 typedef struct
49 LPDEVMODEW lpDevMode;
50 LPPRINTDLGW lpPrintDlg;
51 LPPRINTER_INFO_2W lpPrinterInfo;
52 LPDRIVER_INFO_3W lpDriverInfo;
53 UINT HelpMessageID;
54 HICON hCollateIcon; /* PrintDlg only */
55 HICON hNoCollateIcon; /* PrintDlg only */
56 HICON hPortraitIcon; /* PrintSetupDlg only */
57 HICON hLandscapeIcon; /* PrintSetupDlg only */
58 HWND hwndUpDown;
59 } PRINT_PTRW;
61 /* Debugging info */
62 static const struct pd_flags {
63 DWORD flag;
64 LPCSTR name;
65 } pd_flags[] = {
66 {PD_SELECTION, "PD_SELECTION "},
67 {PD_PAGENUMS, "PD_PAGENUMS "},
68 {PD_NOSELECTION, "PD_NOSELECTION "},
69 {PD_NOPAGENUMS, "PD_NOPAGENUMS "},
70 {PD_COLLATE, "PD_COLLATE "},
71 {PD_PRINTTOFILE, "PD_PRINTTOFILE "},
72 {PD_PRINTSETUP, "PD_PRINTSETUP "},
73 {PD_NOWARNING, "PD_NOWARNING "},
74 {PD_RETURNDC, "PD_RETURNDC "},
75 {PD_RETURNIC, "PD_RETURNIC "},
76 {PD_RETURNDEFAULT, "PD_RETURNDEFAULT "},
77 {PD_SHOWHELP, "PD_SHOWHELP "},
78 {PD_ENABLEPRINTHOOK, "PD_ENABLEPRINTHOOK "},
79 {PD_ENABLESETUPHOOK, "PD_ENABLESETUPHOOK "},
80 {PD_ENABLEPRINTTEMPLATE, "PD_ENABLEPRINTTEMPLATE "},
81 {PD_ENABLESETUPTEMPLATE, "PD_ENABLESETUPTEMPLATE "},
82 {PD_ENABLEPRINTTEMPLATEHANDLE, "PD_ENABLEPRINTTEMPLATEHANDLE "},
83 {PD_ENABLESETUPTEMPLATEHANDLE, "PD_ENABLESETUPTEMPLATEHANDLE "},
84 {PD_USEDEVMODECOPIES, "PD_USEDEVMODECOPIES[ANDCOLLATE] "},
85 {PD_DISABLEPRINTTOFILE, "PD_DISABLEPRINTTOFILE "},
86 {PD_HIDEPRINTTOFILE, "PD_HIDEPRINTTOFILE "},
87 {PD_NONETWORKBUTTON, "PD_NONETWORKBUTTON "},
88 {-1, NULL}
91 /* Internal Functions
92 * Do not Export to other applications or dlls
95 INT PRINTDLG_SetUpPrinterListComboA(HWND hDlg, UINT id, LPCSTR name);
96 BOOL PRINTDLG_ChangePrinterA(HWND hDlg, char *name,
97 PRINT_PTRA *PrintStructures);
98 BOOL PRINTDLG_OpenDefaultPrinter(HANDLE *hprn);
99 LRESULT PRINTDLG_WMCommandA(HWND hDlg, WPARAM wParam,
100 LPARAM lParam, PRINT_PTRA* PrintStructures);
102 #endif /* _WINE_PRINTDLG_H */