Install msysDVLPR-1.0.0-alpha-1
[msysgit.git] / include / prsht.h
blob296ea6bf1764f18c30c9ca9c052290aeefdf18dc
1 #ifndef _PRSHT_H
2 #define _PRSHT_H
3 #ifdef __cplusplus
4 extern "C" {
5 #endif
7 #define MAXPROPPAGES 100
8 #define PSP_DEFAULT 0
9 #define PSP_DLGINDIRECT 1
10 #define PSP_USEHICON 2
11 #define PSP_USEICONID 4
12 #define PSP_USETITLE 8
13 #define PSP_RTLREADING 16
14 #define PSP_HASHELP 32
15 #define PSP_USEREFPARENT 64
16 #define PSP_USECALLBACK 128
17 #define PSPCB_RELEASE 1
18 #define PSPCB_CREATE 2
19 #define PSH_DEFAULT 0
20 #define PSH_PROPTITLE 1
21 #define PSH_USEHICON 2
22 #define PSH_USEICONID 4
23 #define PSH_PROPSHEETPAGE 8
24 #define PSH_WIZARD 32
25 #define PSH_USEPSTARTPAGE 64
26 #define PSH_NOAPPLYNOW 128
27 #define PSH_USECALLBACK 256
28 #define PSH_HASHELP 512
29 #define PSH_MODELESS 1024
30 #define PSH_RTLREADING 2048
31 #define PSCB_INITIALIZED 1
32 #define PSCB_PRECREATE 2
33 #define PSM_GETTABCONTROL 1140
34 #define PSM_GETCURRENTPAGEHWND 1142
35 #define PSM_ISDIALOGMESSAGE 1141
36 #define PSM_PRESSBUTTON 1137
37 #define PSM_SETCURSELID 1138
38 #define PSM_SETFINISHTEXTW 1145
39 #define PSM_SETFINISHTEXTA 1139
40 #define PSN_FIRST (-200)
41 #define PSN_LAST (-299)
42 #define PSN_APPLY (-202)
43 #define PSN_HELP (-205)
44 #define PSN_KILLACTIVE (-201)
45 #define PSN_QUERYCANCEL (-209)
46 #define PSN_RESET (-203)
47 #define PSN_SETACTIVE (-200)
48 #define PSN_WIZBACK (-206)
49 #define PSN_WIZFINISH (-208)
50 #define PSN_WIZNEXT (-207)
51 #define PSNRET_NOERROR 0
52 #define PSNRET_INVALID 1
53 #define PSNRET_INVALID_NOCHANGEPAGE 2
54 #define ID_PSRESTARTWINDOWS 2
55 #define ID_PSREBOOTSYSTEM 3
56 #define WIZ_CXDLG 276
57 #define WIZ_CYDLG 140
58 #define WIZ_CXBMP 80
59 #define WIZ_BODYX 92
60 #define WIZ_BODYCX 184
61 #define PROP_SM_CXDLG 212
62 #define PROP_SM_CYDLG 188
63 #define PROP_MED_CXDLG 227
64 #define PROP_MED_CYDLG 215
65 #define PROP_LG_CXDLG 252
66 #define PROP_LG_CYDLG 218
67 #define PSBTN_MAX 6
68 #define PSBTN_BACK 0
69 #define PSBTN_NEXT 1
70 #define PSBTN_FINISH 2
71 #define PSBTN_OK 3
72 #define PSBTN_APPLYNOW 4
73 #define PSBTN_CANCEL 5
74 #define PSBTN_HELP 6
75 #define PSWIZB_BACK 1
76 #define PSWIZB_NEXT 2
77 #define PSWIZB_FINISH 4
78 #define PSWIZB_DISABLEDFINISH 8
79 #define PSM_SETWIZBUTTONS (WM_USER+112)
80 #define PSM_APPLY (WM_USER+110)
81 #define PSM_UNCHANGED (WM_USER+109)
82 #define PSM_QUERYSIBLINGS (WM_USER+108)
83 #define PSM_CANCELTOCLOSE (WM_USER+107)
84 #define PSM_REBOOTSYSTEM (WM_USER+106)
85 #define PSM_RESTARTWINDOWS (WM_USER+105)
86 #define PSM_CHANGED (WM_USER+104)
87 #define PSM_ADDPAGE (WM_USER+103)
88 #define PSM_REMOVEPAGE (WM_USER+102)
89 #define PSM_SETCURSEL (WM_USER+101)
90 #define PSM_SETTITLEA (WM_USER+111)
91 #define PSM_SETTITLEW (WM_USER+120)
93 #ifndef RC_INVOKED
95 #pragma pack(push,8)
96 typedef struct _PROPSHEETPAGEA {
97 DWORD dwSize;
98 DWORD dwFlags;
99 HINSTANCE hInstance;
100 _ANONYMOUS_UNION union {
101 LPCSTR pszTemplate;
102 LPCDLGTEMPLATE pResource;
103 } DUMMYUNIONNAME;
104 _ANONYMOUS_UNION union {
105 HICON hIcon;
106 LPCSTR pszIcon;
107 } DUMMYUNIONNAME2;
108 LPCSTR pszTitle;
109 DLGPROC pfnDlgProc;
110 LPARAM lParam;
111 UINT(CALLBACK *pfnCallback)(HWND,UINT,struct _PROPSHEETPAGEA*);
112 UINT *pcRefParent;
113 } PROPSHEETPAGEA,*LPPROPSHEETPAGEA;
114 typedef const PROPSHEETPAGEA *LPCPROPSHEETPAGEA;
115 typedef struct _PROPSHEETPAGEW {
116 DWORD dwSize;
117 DWORD dwFlags;
118 HINSTANCE hInstance;
119 _ANONYMOUS_UNION union {
120 LPCWSTR pszTemplate;
121 LPCDLGTEMPLATE pResource;
122 } DUMMYUNIONNAME;
123 _ANONYMOUS_UNION union {
124 HICON hIcon;
125 LPCWSTR pszIcon;
126 } DUMMYUNIONNAME2;
127 LPCWSTR pszTitle;
128 DLGPROC pfnDlgProc;
129 LPARAM lParam;
130 UINT(CALLBACK *pfnCallback)(HWND,UINT,struct _PROPSHEETPAGEW*);
131 UINT *pcRefParent;
132 } PROPSHEETPAGEW,*LPPROPSHEETPAGEW;
133 typedef const PROPSHEETPAGEA *LPCPROPSHEETPAGEW;
134 typedef UINT(CALLBACK *LPFNPSPCALLBACKA)(HWND,UINT,LPPROPSHEETPAGEA);
135 typedef UINT(CALLBACK *LPFNPSPCALLBACKW)(HWND,UINT,LPPROPSHEETPAGEW);
136 typedef int(CALLBACK *PFNPROPSHEETCALLBACK)(HWND,UINT,LPARAM);
137 DECLARE_HANDLE(HPROPSHEETPAGE);
138 typedef struct _PROPSHEETHEADERA {
139 DWORD dwSize;
140 DWORD dwFlags;
141 HWND hwndParent;
142 HINSTANCE hInstance;
143 _ANONYMOUS_UNION union {
144 HICON hIcon;
145 LPCSTR pszIcon;
146 }DUMMYUNIONNAME;
147 LPCSTR pszCaption;
148 UINT nPages;
149 _ANONYMOUS_UNION union {
150 UINT nStartPage;
151 LPCSTR pStartPage;
152 }DUMMYUNIONNAME2;
153 _ANONYMOUS_UNION union {
154 LPCPROPSHEETPAGEA ppsp;
155 HPROPSHEETPAGE *phpage;
156 }DUMMYUNIONNAME3;
157 PFNPROPSHEETCALLBACK pfnCallback;
158 } PROPSHEETHEADERA,*LPPROPSHEETHEADERA;
159 typedef const PROPSHEETHEADERA *LPCPROPSHEETHEADERA;
160 typedef struct _PROPSHEETHEADERW {
161 DWORD dwSize;
162 DWORD dwFlags;
163 HWND hwndParent;
164 HINSTANCE hInstance;
165 _ANONYMOUS_UNION union {
166 HICON hIcon;
167 LPCWSTR pszIcon;
168 }DUMMYUNIONNAME;
169 LPCWSTR pszCaption;
170 UINT nPages;
171 _ANONYMOUS_UNION union {
172 UINT nStartPage;
173 LPCWSTR pStartPage;
174 }DUMMYUNIONNAME2;
175 _ANONYMOUS_UNION union {
176 LPCPROPSHEETPAGEW ppsp;
177 HPROPSHEETPAGE *phpage;
178 }DUMMYUNIONNAME3;
179 PFNPROPSHEETCALLBACK pfnCallback;
180 } PROPSHEETHEADERW,*LPPROPSHEETHEADERW;
181 typedef const PROPSHEETHEADERW *LPCPROPSHEETHEADERW;
182 typedef BOOL(CALLBACK *LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE,LPARAM);
183 typedef BOOL(CALLBACK *LPFNADDPROPSHEETPAGES)(LPVOID,LPFNADDPROPSHEETPAGE,LPARAM);
184 typedef struct _PSHNOTIFY {
185 NMHDR hdr;
186 LPARAM lParam;
187 } PSHNOTIFY,*LPPSHNOTIFY;
189 #pragma pack(pop)
191 HPROPSHEETPAGE WINAPI CreatePropertySheetPageA(LPCPROPSHEETPAGEA);
192 HPROPSHEETPAGE WINAPI CreatePropertySheetPageW(LPCPROPSHEETPAGEW);
193 BOOL WINAPI DestroyPropertySheetPage(HPROPSHEETPAGE);
194 int WINAPI PropertySheetA(LPCPROPSHEETHEADERA);
195 int WINAPI PropertySheetW(LPCPROPSHEETHEADERW);
196 #define PropSheet_AddPage(d,p) SendMessage(d,PSM_ADDPAGE,0,(LPARAM)p)
197 #define PropSheet_Apply(d) SendMessage(d,PSM_APPLY,0,0)
198 #define PropSheet_CancelToClose(d) SendMessage(d,PSM_CANCELTOCLOSE,0,0)
199 #define PropSheet_Changed(d,w) SendMessage(d,PSM_CHANGED,(WPARAM)w,0)
200 #define PropSheet_GetCurrentPageHwnd(d) (HWND)SendMessage(d,PSM_GETCURRENTPAGEHWND,0,0)
201 #define PropSheet_GetTabControl(d) (HWND)SendMessage(d,PSM_GETTABCONTROL,0,0)
202 #define PropSheet_IsDialogMessage(d,m) (BOOL)SendMessage(d,PSM_ISDIALOGMESSAGE,0,(LPARAM)m)
203 #define PropSheet_PressButton(d,i) SendMessage(d,PSM_PRESSBUTTON,i,0)
204 #define PropSheet_QuerySiblings(d,w,l) SendMessage(d,PSM_QUERYSIBLINGS,w,l)
205 #define PropSheet_RebootSystem(d) SendMessage(d,PSM_REBOOTSYSTEM,0,0)
206 #define PropSheet_RemovePage(d,i,p) SendMessage(d,PSM_REMOVEPAGE,i,(LPARAM)p)
207 #define PropSheet_RestartWindows(d) SendMessage(d,PSM_RESTARTWINDOWS,0,0)
208 #define PropSheet_SetCurSel(d,p,i) SendMessage(d,PSM_SETCURSEL,i,(LPARAM)p)
209 #define PropSheet_SetCurSelByID(d,i) SendMessage(d,PSM_SETCURSELID,0,i)
210 #define PropSheet_SetFinishText(d,s) SendMessage(d,PSM_SETFINISHTEXT,0,(LPARAM)s)
211 #define PropSheet_SetTitle(d,w,s) SendMessage(d,PSM_SETTITLE,w,(LPARAM)s)
212 #define PropSheet_SetWizButtons(d,f) PostMessage(d,PSM_SETWIZBUTTONS,0,(LPARAM)f)
213 #define PropSheet_UnChanged(d,w) SendMessage(d,PSM_UNCHANGED,(WPARAM)w,0)
214 #endif
216 #ifdef UNICODE
217 #define LPFNPSPCALLBACK LPFNPSPCALLBACKW
218 #define PROPSHEETPAGE PROPSHEETPAGEW
219 #define LPPROPSHEETPAGE LPPROPSHEETPAGEW
220 #define LPCPROPSHEETPAGE LPCPROPSHEETPAGEW
221 #define PROPSHEETHEADER PROPSHEETHEADERW
222 #define LPPROPSHEETHEADER LPPROPSHEETHEADERW
223 #define LPCPROPSHEETHEADER LPCPROPSHEETHEADERW
224 #define PSM_SETTITLE PSM_SETTITLEW
225 #define PSM_SETFINISHTEXT PSM_SETFINISHTEXTW
226 #define CreatePropertySheetPage CreatePropertySheetPageW
227 #define PropertySheet PropertySheetW
228 #else
229 #define LPFNPSPCALLBACK LPFNPSPCALLBACKA
230 #define PROPSHEETPAGE PROPSHEETPAGEA
231 #define LPPROPSHEETPAGE LPPROPSHEETPAGEA
232 #define LPCPROPSHEETPAGE LPCPROPSHEETPAGEA
233 #define PROPSHEETHEADER PROPSHEETHEADERA
234 #define LPPROPSHEETHEADER LPPROPSHEETHEADERA
235 #define LPCPROPSHEETHEADER LPCPROPSHEETHEADERA
236 #define PSM_SETTITLE PSM_SETTITLEA
237 #define PSM_SETFINISHTEXT PSM_SETFINISHTEXTA
238 #define CreatePropertySheetPage CreatePropertySheetPageA
239 #define PropertySheet PropertySheetA
240 #endif
241 #ifdef __cplusplus
243 #endif
244 #endif