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 36extern "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