1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _PRSHT_H_ 7 #define _PRSHT_H_ 8 9 #include <_mingw_unicode.h> 10 11 #ifndef _WINRESRC_ 12 #ifndef _WIN32_IE 13 #define _WIN32_IE 0x0501 14 #endif 15 #endif 16 17 #ifndef WINCOMMCTRLAPI 18 #ifndef _COMCTL32_ 19 #define WINCOMMCTRLAPI DECLSPEC_IMPORT 20 #else 21 #define WINCOMMCTRLAPI 22 #endif 23 #endif 24 25 #ifndef CCSIZEOF_STRUCT 26 #define CCSIZEOF_STRUCT(structname,member) (((int)((LPBYTE)(&((structname*)0)->member) - ((LPBYTE)((structname*)0)))) + sizeof(((structname*)0)->member)) 27 #endif 28 29 #ifdef _WIN64 30 #include <pshpack8.h> 31 #else 32 #include <pshpack4.h> 33 #endif 34 35 #ifdef __cplusplus 36 extern "C" { 37 #endif 38 39 #ifndef SNDMSG 40 #ifdef __cplusplus 41 #define SNDMSG ::SendMessage 42 #else 43 #define SNDMSG SendMessage 44 #endif 45 #endif 46 47 #define MAXPROPPAGES 100 48 49 struct _PSP; 50 struct _PROPSHEETPAGEA; 51 struct _PROPSHEETPAGEW; 52 53 typedef struct _PSP *HPROPSHEETPAGE; 54 typedef UINT (CALLBACK *LPFNPSPCALLBACKA)(HWND hwnd,UINT uMsg,struct _PROPSHEETPAGEA *ppsp); 55 typedef UINT (CALLBACK *LPFNPSPCALLBACKW)(HWND hwnd,UINT uMsg,struct _PROPSHEETPAGEW *ppsp); 56 57 #define LPFNPSPCALLBACK __MINGW_NAME_AW(LPFNPSPCALLBACK) 58 59 #define PSP_DEFAULT 0x00000000 60 #define PSP_DLGINDIRECT 0x00000001 61 #define PSP_USEHICON 0x00000002 62 #define PSP_USEICONID 0x00000004 63 #define PSP_USETITLE 0x00000008 64 #define PSP_RTLREADING 0x00000010 65 66 #define PSP_HASHELP 0x00000020 67 #define PSP_USEREFPARENT 0x00000040 68 #define PSP_USECALLBACK 0x00000080 69 #define PSP_PREMATURE 0x00000400 70 71 #define PSP_HIDEHEADER 0x00000800 72 #define PSP_USEHEADERTITLE 0x00001000 73 #define PSP_USEHEADERSUBTITLE 0x00002000 74 #define PSP_USEFUSIONCONTEXT 0x00004000 75 76 #define PSPCB_ADDREF 0 77 #define PSPCB_RELEASE 1 78 #define PSPCB_CREATE 2 79 80 #define PROPSHEETPAGEA_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEA,pcRefParent) 81 #define PROPSHEETPAGEW_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEW,pcRefParent) 82 83 #define PROPSHEETPAGEA_V2_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEA,pszHeaderSubTitle) 84 #define PROPSHEETPAGEW_V2_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEW,pszHeaderSubTitle) 85 86 typedef LPCDLGTEMPLATE PROPSHEETPAGE_RESOURCE; 87 88 #define PROPSHEETPAGEA_V1_FIELDS \ 89 DWORD dwSize,dwFlags; \ 90 HINSTANCE hInstance; \ 91 __C89_NAMELESS union { \ 92 LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; \ 93 } DUMMYUNIONNAME; \ 94 __C89_NAMELESS union { \ 95 HICON hIcon; LPCSTR pszIcon; \ 96 } DUMMYUNIONNAME2; \ 97 LPCSTR pszTitle; \ 98 DLGPROC pfnDlgProc; \ 99 LPARAM lParam; \ 100 LPFNPSPCALLBACKA pfnCallback; \ 101 UINT *pcRefParent; 102 103 #define PROPSHEETPAGEW_V1_FIELDS \ 104 DWORD dwSize, dwFlags; \ 105 HINSTANCE hInstance; \ 106 __C89_NAMELESS union { \ 107 LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; \ 108 } DUMMYUNIONNAME; \ 109 __C89_NAMELESS union { \ 110 HICON hIcon; LPCWSTR pszIcon; \ 111 } DUMMYUNIONNAME2; \ 112 LPCWSTR pszTitle; \ 113 DLGPROC pfnDlgProc; \ 114 LPARAM lParam; \ 115 LPFNPSPCALLBACKW pfnCallback; \ 116 UINT *pcRefParent; 117 118 #define _PROPSHEETPAGEA_V3 _PROPSHEETPAGEA 119 #define _PROPSHEETPAGEW_V3 _PROPSHEETPAGEW 120 121 typedef struct _PROPSHEETPAGEA_V1 { 122 PROPSHEETPAGEA_V1_FIELDS 123 } PROPSHEETPAGEA_V1,*LPPROPSHEETPAGEA_V1; 124 125 typedef const PROPSHEETPAGEA_V1 *LPCPROPSHEETPAGEA_V1; 126 127 typedef struct _PROPSHEETPAGEA_V2 { 128 PROPSHEETPAGEA_V1_FIELDS 129 130 LPCSTR pszHeaderTitle; 131 LPCSTR pszHeaderSubTitle; 132 } PROPSHEETPAGEA_V2,*LPPROPSHEETPAGEA_V2; 133 134 typedef const PROPSHEETPAGEA_V2 *LPCPROPSHEETPAGEA_V2; 135 136 typedef struct _PROPSHEETPAGEA_V3 { 137 PROPSHEETPAGEA_V1_FIELDS 138 LPCSTR pszHeaderTitle; 139 LPCSTR pszHeaderSubTitle; 140 HANDLE hActCtx; 141 } PROPSHEETPAGEA_V3,*LPPROPSHEETPAGEA_V3; 142 143 typedef const PROPSHEETPAGEA_V3 *LPCPROPSHEETPAGEA_V3; 144 145 typedef struct _PROPSHEETPAGEW_V1 { 146 PROPSHEETPAGEW_V1_FIELDS 147 } PROPSHEETPAGEW_V1,*LPPROPSHEETPAGEW_V1; 148 149 typedef const PROPSHEETPAGEW_V1 *LPCPROPSHEETPAGEW_V1; 150 151 typedef struct _PROPSHEETPAGEW_V2 { 152 PROPSHEETPAGEW_V1_FIELDS 153 LPCWSTR pszHeaderTitle; 154 LPCWSTR pszHeaderSubTitle; 155 } PROPSHEETPAGEW_V2,*LPPROPSHEETPAGEW_V2; 156 157 typedef const PROPSHEETPAGEW_V2 *LPCPROPSHEETPAGEW_V2; 158 159 typedef struct _PROPSHEETPAGEW_V3 { 160 PROPSHEETPAGEW_V1_FIELDS 161 LPCWSTR pszHeaderTitle; 162 LPCWSTR pszHeaderSubTitle; 163 HANDLE hActCtx; 164 } PROPSHEETPAGEW_V3,*LPPROPSHEETPAGEW_V3; 165 166 typedef const PROPSHEETPAGEW_V3 *LPCPROPSHEETPAGEW_V3; 167 typedef PROPSHEETPAGEA_V3 PROPSHEETPAGEA_LATEST; 168 typedef PROPSHEETPAGEW_V3 PROPSHEETPAGEW_LATEST; 169 typedef LPPROPSHEETPAGEA_V3 LPPROPSHEETPAGEA_LATEST; 170 typedef LPPROPSHEETPAGEW_V3 LPPROPSHEETPAGEW_LATEST; 171 typedef LPCPROPSHEETPAGEA_V3 LPCPROPSHEETPAGEA_LATEST; 172 typedef LPCPROPSHEETPAGEW_V3 LPCPROPSHEETPAGEW_LATEST; 173 174 typedef PROPSHEETPAGEA_V3 PROPSHEETPAGEA; 175 typedef PROPSHEETPAGEW_V3 PROPSHEETPAGEW; 176 typedef LPPROPSHEETPAGEA_V3 LPPROPSHEETPAGEA; 177 typedef LPPROPSHEETPAGEW_V3 LPPROPSHEETPAGEW; 178 typedef LPCPROPSHEETPAGEA_V3 LPCPROPSHEETPAGEA; 179 typedef LPCPROPSHEETPAGEW_V3 LPCPROPSHEETPAGEW; 180 181 #define PROPSHEETPAGE __MINGW_NAME_AW(PROPSHEETPAGE) 182 #define LPPROPSHEETPAGE __MINGW_NAME_AW(LPPROPSHEETPAGE) 183 #define LPCPROPSHEETPAGE __MINGW_NAME_AW(LPCPROPSHEETPAGE) 184 185 #define PROPSHEETPAGE_V1_SIZE __MINGW_NAME_AW_EXT(PROPSHEETPAGE,_V1_SIZE) 186 #define PROPSHEETPAGE_V2_SIZE __MINGW_NAME_AW_EXT(PROPSHEETPAGE,_V2_SIZE) 187 #define PROPSHEETPAGE_V1 __MINGW_NAME_AW_EXT(PROPSHEETPAGE,_V1) 188 #define LPPROPSHEETPAGE_V1 __MINGW_NAME_AW_EXT(LPPROPSHEETPAGE,_V1) 189 #define LPCPROPSHEETPAGE_V1 __MINGW_NAME_AW_EXT(LPCPROPSHEETPAGE,_V1) 190 #define PROPSHEETPAGE_V2 __MINGW_NAME_AW_EXT(PROPSHEETPAGE,_V2) 191 #define LPPROPSHEETPAGE_V2 __MINGW_NAME_AW_EXT(LPPROPSHEETPAGE,_V2) 192 #define LPCPROPSHEETPAGE_V2 __MINGW_NAME_AW_EXT(LPCPROPSHEETPAGE,_V2) 193 #define PROPSHEETPAGE_V3 __MINGW_NAME_AW_EXT(PROPSHEETPAGE,_V3) 194 #define LPPROPSHEETPAGE_V3 __MINGW_NAME_AW_EXT(LPPROPSHEETPAGE,_V3) 195 #define LPCPROPSHEETPAGE_V3 __MINGW_NAME_AW_EXT(LPCPROPSHEETPAGE,_V3) 196 #define PROPSHEETPAGE_LATEST __MINGW_NAME_AW_EXT(PROPSHEETPAGE,_LATEST) 197 #define LPPROPSHEETPAGE_LATEST __MINGW_NAME_AW_EXT(LPPROPSHEETPAGE,_LATEST) 198 #define LPCPROPSHEETPAGE_LATEST __MINGW_NAME_AW_EXT(LPCPROPSHEETPAGE,_LATEST) 199 200 #define PSH_DEFAULT 0x00000000 201 #define PSH_PROPTITLE 0x00000001 202 #define PSH_USEHICON 0x00000002 203 #define PSH_USEICONID 0x00000004 204 #define PSH_PROPSHEETPAGE 0x00000008 205 #define PSH_WIZARDHASFINISH 0x00000010 206 #define PSH_WIZARD 0x00000020 207 #define PSH_USEPSTARTPAGE 0x00000040 208 #define PSH_NOAPPLYNOW 0x00000080 209 #define PSH_USECALLBACK 0x00000100 210 #define PSH_HASHELP 0x00000200 211 #define PSH_MODELESS 0x00000400 212 #define PSH_RTLREADING 0x00000800 213 #define PSH_WIZARDCONTEXTHELP 0x00001000 214 215 #define PSH_WIZARD97 0x01000000 216 #define PSH_WATERMARK 0x00008000 217 #define PSH_USEHBMWATERMARK 0x00010000 218 #define PSH_USEHPLWATERMARK 0x00020000 219 #define PSH_STRETCHWATERMARK 0x00040000 220 #define PSH_HEADER 0x00080000 221 #define PSH_USEHBMHEADER 0x00100000 222 #define PSH_USEPAGELANG 0x00200000 223 224 #define PSH_WIZARD_LITE 0x00400000 225 #define PSH_NOCONTEXTHELP 0x02000000 226 227 typedef int (CALLBACK *PFNPROPSHEETCALLBACK)(HWND,UINT,LPARAM); 228 229 #define PROPSHEETHEADERA_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETHEADERA,pfnCallback) 230 #define PROPSHEETHEADERW_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETHEADERW,pfnCallback) 231 232 #define PROPSHEETHEADERA_V2_SIZE CCSIZEOF_STRUCT(PROPSHEETHEADERA,DUMMYUNION5_MEMBER(hbmHeader)) 233 #define PROPSHEETHEADERW_V2_SIZE CCSIZEOF_STRUCT(PROPSHEETHEADERW,DUMMYUNION5_MEMBER(hbmHeader)) 234 235 typedef struct _PROPSHEETHEADERA { 236 DWORD dwSize; 237 DWORD dwFlags; 238 HWND hwndParent; 239 HINSTANCE hInstance; 240 __C89_NAMELESS union { 241 HICON hIcon; 242 LPCSTR pszIcon; 243 } DUMMYUNIONNAME; 244 LPCSTR pszCaption; 245 UINT nPages; 246 __C89_NAMELESS union { 247 UINT nStartPage; 248 LPCSTR pStartPage; 249 } DUMMYUNIONNAME2; 250 __C89_NAMELESS union { 251 LPCPROPSHEETPAGEA ppsp; 252 HPROPSHEETPAGE *phpage; 253 } DUMMYUNIONNAME3; 254 PFNPROPSHEETCALLBACK pfnCallback; 255 __C89_NAMELESS union { 256 HBITMAP hbmWatermark; 257 LPCSTR pszbmWatermark; 258 } DUMMYUNIONNAME4; 259 HPALETTE hplWatermark; 260 __C89_NAMELESS union { 261 HBITMAP hbmHeader; 262 LPCSTR pszbmHeader; 263 } DUMMYUNIONNAME5; 264 } PROPSHEETHEADERA,*LPPROPSHEETHEADERA; 265 266 typedef const PROPSHEETHEADERA *LPCPROPSHEETHEADERA; 267 268 typedef struct _PROPSHEETHEADERW { 269 DWORD dwSize; 270 DWORD dwFlags; 271 HWND hwndParent; 272 HINSTANCE hInstance; 273 __C89_NAMELESS union { 274 HICON hIcon; 275 LPCWSTR pszIcon; 276 } DUMMYUNIONNAME; 277 LPCWSTR pszCaption; 278 UINT nPages; 279 __C89_NAMELESS union { 280 UINT nStartPage; 281 LPCWSTR pStartPage; 282 } DUMMYUNIONNAME2; 283 __C89_NAMELESS union { 284 LPCPROPSHEETPAGEW ppsp; 285 HPROPSHEETPAGE *phpage; 286 } DUMMYUNIONNAME3; 287 PFNPROPSHEETCALLBACK pfnCallback; 288 __C89_NAMELESS union { 289 HBITMAP hbmWatermark; 290 LPCWSTR pszbmWatermark; 291 } DUMMYUNIONNAME4; 292 HPALETTE hplWatermark; 293 __C89_NAMELESS union { 294 HBITMAP hbmHeader; 295 LPCWSTR pszbmHeader; 296 } DUMMYUNIONNAME5; 297 } PROPSHEETHEADERW,*LPPROPSHEETHEADERW; 298 299 typedef const PROPSHEETHEADERW *LPCPROPSHEETHEADERW; 300 301 #define PROPSHEETHEADER __MINGW_NAME_AW(PROPSHEETHEADER) 302 #define LPPROPSHEETHEADER __MINGW_NAME_AW(LPPROPSHEETHEADER) 303 #define LPCPROPSHEETHEADER __MINGW_NAME_AW(LPCPROPSHEETHEADER) 304 305 #define PROPSHEETHEADER_V1_SIZE __MINGW_NAME_AW_EXT(PROPSHEETHEADER,_V1_SIZE) 306 #define PROPSHEETHEADER_V2_SIZE __MINGW_NAME_AW_EXT(PROPSHEETHEADER,_V2_SIZE) 307 308 #define PSCB_INITIALIZED 1 309 #define PSCB_PRECREATE 2 310 #define PSCB_BUTTONPRESSED 3 311 312 WINCOMMCTRLAPI HPROPSHEETPAGE WINAPI CreatePropertySheetPageA(LPCPROPSHEETPAGEA constPropSheetPagePointer); 313 WINCOMMCTRLAPI HPROPSHEETPAGE WINAPI CreatePropertySheetPageW(LPCPROPSHEETPAGEW constPropSheetPagePointer); 314 WINCOMMCTRLAPI WINBOOL WINAPI DestroyPropertySheetPage(HPROPSHEETPAGE); 315 WINCOMMCTRLAPI INT_PTR WINAPI PropertySheetA(LPCPROPSHEETHEADERA); 316 WINCOMMCTRLAPI INT_PTR WINAPI PropertySheetW(LPCPROPSHEETHEADERW); 317 318 #define CreatePropertySheetPage __MINGW_NAME_AW(CreatePropertySheetPage) 319 #define PropertySheet __MINGW_NAME_AW(PropertySheet) 320 321 typedef WINBOOL (CALLBACK *LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE,LPARAM); 322 typedef WINBOOL (CALLBACK *LPFNADDPROPSHEETPAGES)(LPVOID,LPFNADDPROPSHEETPAGE,LPARAM); 323 324 typedef struct _PSHNOTIFY { 325 NMHDR hdr; 326 LPARAM lParam; 327 } PSHNOTIFY,*LPPSHNOTIFY; 328 329 #define PSN_FIRST (0U-200U) 330 #define PSN_LAST (0U-299U) 331 332 #define PSN_SETACTIVE (PSN_FIRST-0) 333 #define PSN_KILLACTIVE (PSN_FIRST-1) 334 #define PSN_APPLY (PSN_FIRST-2) 335 #define PSN_RESET (PSN_FIRST-3) 336 #define PSN_HELP (PSN_FIRST-5) 337 #define PSN_WIZBACK (PSN_FIRST-6) 338 #define PSN_WIZNEXT (PSN_FIRST-7) 339 #define PSN_WIZFINISH (PSN_FIRST-8) 340 #define PSN_QUERYCANCEL (PSN_FIRST-9) 341 #define PSN_GETOBJECT (PSN_FIRST-10) 342 #define PSN_TRANSLATEACCELERATOR (PSN_FIRST-12) 343 #define PSN_QUERYINITIALFOCUS (PSN_FIRST-13) 344 345 #define PSNRET_NOERROR 0 346 #define PSNRET_INVALID 1 347 #define PSNRET_INVALID_NOCHANGEPAGE 2 348 #define PSNRET_MESSAGEHANDLED 3 349 350 #define PSM_SETCURSEL (WM_USER + 101) 351 #define PropSheet_SetCurSel(hDlg,hpage,index) SNDMSG(hDlg,PSM_SETCURSEL,(WPARAM)index,(LPARAM)hpage) 352 353 #define PSM_REMOVEPAGE (WM_USER + 102) 354 #define PropSheet_RemovePage(hDlg,index,hpage) SNDMSG(hDlg,PSM_REMOVEPAGE,index,(LPARAM)hpage) 355 356 #define PSM_ADDPAGE (WM_USER + 103) 357 #define PropSheet_AddPage(hDlg,hpage) SNDMSG(hDlg,PSM_ADDPAGE,0,(LPARAM)hpage) 358 359 #define PSM_CHANGED (WM_USER + 104) 360 #define PropSheet_Changed(hDlg,hwnd) SNDMSG(hDlg,PSM_CHANGED,(WPARAM)hwnd,(LPARAM)0) 361 362 #define PSM_RESTARTWINDOWS (WM_USER + 105) 363 #define PropSheet_RestartWindows(hDlg) SNDMSG(hDlg,PSM_RESTARTWINDOWS,(WPARAM)0,(LPARAM)0) 364 365 #define PSM_REBOOTSYSTEM (WM_USER + 106) 366 #define PropSheet_RebootSystem(hDlg) SNDMSG(hDlg,PSM_REBOOTSYSTEM,(WPARAM)0,(LPARAM)0) 367 368 #define PSM_CANCELTOCLOSE (WM_USER + 107) 369 #define PropSheet_CancelToClose(hDlg) PostMessage(hDlg,PSM_CANCELTOCLOSE,(WPARAM)0,(LPARAM)0) 370 371 #define PSM_QUERYSIBLINGS (WM_USER + 108) 372 #define PropSheet_QuerySiblings(hDlg,wParam,lParam) SNDMSG(hDlg,PSM_QUERYSIBLINGS,wParam,lParam) 373 374 #define PSM_UNCHANGED (WM_USER + 109) 375 #define PropSheet_UnChanged(hDlg,hwnd) SNDMSG(hDlg,PSM_UNCHANGED,(WPARAM)hwnd,(LPARAM)0) 376 377 #define PSM_APPLY (WM_USER + 110) 378 #define PropSheet_Apply(hDlg) SNDMSG(hDlg,PSM_APPLY,(WPARAM)0,(LPARAM)0) 379 380 #define PSM_SETTITLEA (WM_USER + 111) 381 #define PSM_SETTITLEW (WM_USER + 120) 382 383 #define PSM_SETTITLE __MINGW_NAME_AW(PSM_SETTITLE) 384 385 #define PropSheet_SetTitle(hDlg,wStyle,lpszText) SNDMSG(hDlg,PSM_SETTITLE,wStyle,(LPARAM)(LPCTSTR)(lpszText)) 386 387 #define PSM_SETWIZBUTTONS (WM_USER + 112) 388 #define PropSheet_SetWizButtons(hDlg,dwFlags) PostMessage(hDlg,PSM_SETWIZBUTTONS,(WPARAM)0,(LPARAM)dwFlags) 389 390 #define PSWIZB_BACK 0x00000001 391 #define PSWIZB_NEXT 0x00000002 392 #define PSWIZB_FINISH 0x00000004 393 #define PSWIZB_DISABLEDFINISH 0x00000008 394 395 #define PSM_PRESSBUTTON (WM_USER + 113) 396 #define PropSheet_PressButton(hDlg,iButton) PostMessage(hDlg,PSM_PRESSBUTTON,(WPARAM)iButton,(LPARAM)0) 397 398 #define PSBTN_BACK 0 399 #define PSBTN_NEXT 1 400 #define PSBTN_FINISH 2 401 #define PSBTN_OK 3 402 #define PSBTN_APPLYNOW 4 403 #define PSBTN_CANCEL 5 404 #define PSBTN_HELP 6 405 #define PSBTN_MAX 6 406 407 #define PSM_SETCURSELID (WM_USER + 114) 408 #define PropSheet_SetCurSelByID(hDlg,id) SNDMSG(hDlg,PSM_SETCURSELID,0,(LPARAM)id) 409 410 #define PSM_SETFINISHTEXTA (WM_USER + 115) 411 #define PSM_SETFINISHTEXTW (WM_USER + 121) 412 413 #define PSM_SETFINISHTEXT __MINGW_NAME_AW(PSM_SETFINISHTEXT) 414 415 #define PropSheet_SetFinishText(hDlg,lpszText) SNDMSG(hDlg,PSM_SETFINISHTEXT,0,(LPARAM)lpszText) 416 417 #define PSM_GETTABCONTROL (WM_USER + 116) 418 #define PropSheet_GetTabControl(hDlg) (HWND)SNDMSG(hDlg,PSM_GETTABCONTROL,0,0) 419 420 #define PSM_ISDIALOGMESSAGE (WM_USER + 117) 421 #define PropSheet_IsDialogMessage(hDlg,pMsg) (WINBOOL)SNDMSG(hDlg,PSM_ISDIALOGMESSAGE,0,(LPARAM)pMsg) 422 423 #define PSM_GETCURRENTPAGEHWND (WM_USER + 118) 424 #define PropSheet_GetCurrentPageHwnd(hDlg) (HWND)SNDMSG(hDlg,PSM_GETCURRENTPAGEHWND,(WPARAM)0,(LPARAM)0) 425 426 #define PSM_INSERTPAGE (WM_USER + 119) 427 #define PropSheet_InsertPage(hDlg,index,hpage) SNDMSG(hDlg,PSM_INSERTPAGE,(WPARAM)(index),(LPARAM)(hpage)) 428 429 #define PSM_SETHEADERTITLEA (WM_USER + 125) 430 #define PSM_SETHEADERTITLEW (WM_USER + 126) 431 432 #define PSM_SETHEADERTITLE __MINGW_NAME_AW(PSM_SETHEADERTITLE) 433 434 #define PropSheet_SetHeaderTitle(hDlg,index,lpszText) SNDMSG(hDlg,PSM_SETHEADERTITLE,(WPARAM)(index),(LPARAM)(lpszText)) 435 436 #define PSM_SETHEADERSUBTITLEA (WM_USER + 127) 437 #define PSM_SETHEADERSUBTITLEW (WM_USER + 128) 438 439 #define PSM_SETHEADERSUBTITLE __MINGW_NAME_AW(PSM_SETHEADERSUBTITLE) 440 441 #define PropSheet_SetHeaderSubTitle(hDlg,index,lpszText) SNDMSG(hDlg,PSM_SETHEADERSUBTITLE,(WPARAM)(index),(LPARAM)(lpszText)) 442 443 #define PSM_HWNDTOINDEX (WM_USER + 129) 444 #define PropSheet_HwndToIndex(hDlg,hwnd) (int)SNDMSG(hDlg,PSM_HWNDTOINDEX,(WPARAM)(hwnd),0) 445 #define PSM_INDEXTOHWND (WM_USER + 130) 446 #define PropSheet_IndexToHwnd(hDlg,i) (HWND)SNDMSG(hDlg,PSM_INDEXTOHWND,(WPARAM)(i),0) 447 #define PSM_PAGETOINDEX (WM_USER + 131) 448 #define PropSheet_PageToIndex(hDlg,hpage) (int)SNDMSG(hDlg,PSM_PAGETOINDEX,0,(LPARAM)(hpage)) 449 #define PSM_INDEXTOPAGE (WM_USER + 132) 450 #define PropSheet_IndexToPage(hDlg,i) (HPROPSHEETPAGE)SNDMSG(hDlg,PSM_INDEXTOPAGE,(WPARAM)(i),0) 451 #define PSM_IDTOINDEX (WM_USER + 133) 452 #define PropSheet_IdToIndex(hDlg,id) (int)SNDMSG(hDlg,PSM_IDTOINDEX,0,(LPARAM)(id)) 453 #define PSM_INDEXTOID (WM_USER + 134) 454 #define PropSheet_IndexToId(hDlg,i) SNDMSG(hDlg,PSM_INDEXTOID,(WPARAM)(i),0) 455 #define PSM_GETRESULT (WM_USER + 135) 456 #define PropSheet_GetResult(hDlg) SNDMSG(hDlg,PSM_GETRESULT,0,0) 457 #define PSM_RECALCPAGESIZES (WM_USER + 136) 458 #define PropSheet_RecalcPageSizes(hDlg) SNDMSG(hDlg,PSM_RECALCPAGESIZES,0,0) 459 460 #define ID_PSRESTARTWINDOWS 0x2 461 #define ID_PSREBOOTSYSTEM (ID_PSRESTARTWINDOWS | 0x1) 462 463 #define WIZ_CXDLG 276 464 #define WIZ_CYDLG 140 465 466 #define WIZ_CXBMP 80 467 468 #define WIZ_BODYX 92 469 #define WIZ_BODYCX 184 470 471 #define PROP_SM_CXDLG 212 472 #define PROP_SM_CYDLG 188 473 474 #define PROP_MED_CXDLG 227 475 #define PROP_MED_CYDLG 215 476 477 #define PROP_LG_CXDLG 252 478 #define PROP_LG_CYDLG 218 479 480 #ifdef __cplusplus 481 } 482 #endif 483 484 #include <poppack.h> 485 #endif 486