Something went wrong. Try again.
Reactos
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411#ifndef _PRSHT_H#define _PRSHT_H
#ifdef __cplusplusextern "C" {#endif
#ifdef _MSC_VER#pragma warning(push)#pragma warning(disable:4201)#endif
#ifndef SNDMSG#ifdef __cplusplus#define SNDMSG ::SendMessage#else#define SNDMSG SendMessage#endif#endif /* ifndef SNDMSG */
#define MAXPROPPAGES 100#define PSP_DEFAULT 0#define PSP_DLGINDIRECT 1#define PSP_USEHICON 2#define PSP_USEICONID 4#define PSP_USETITLE 8#define PSP_RTLREADING 16#define PSP_HASHELP 32#define PSP_USEREFPARENT 64#define PSP_USECALLBACK 128#define PSP_PREMATURE 1024#if (_WIN32_IE >= 0x0400)#define PSP_HIDEHEADER 2048#define PSP_USEHEADERTITLE 4096#define PSP_USEHEADERSUBTITLE 8192#endif#define PSPCB_RELEASE 1#define PSPCB_CREATE 2#define PSH_DEFAULT 0#define PSH_PROPTITLE 1#define PSH_USEHICON 2#define PSH_USEICONID 4#define PSH_PROPSHEETPAGE 8#define PSH_WIZARDHASFINISH 16#define PSH_WIZARD 32#define PSH_USEPSTARTPAGE 64#define PSH_NOAPPLYNOW 128#define PSH_USECALLBACK 256#define PSH_HASHELP 512#define PSH_MODELESS 1024#define PSH_RTLREADING 2048#define PSH_WIZARDCONTEXTHELP 4096#if (_WIN32_IE >= 0x0400)#define PSH_WATERMARK 32768#define PSH_USEHBMWATERMARK 65536#define PSH_USEHPLWATERMARK 131072#define PSH_STRETCHWATERMARK 262144#define PSH_HEADER 524288#define PSH_USEHBMHEADER 1048576#define PSH_USEPAGELANG 2097152#if (_WIN32_IE < 0x0500)#define PSH_WIZARD97 0x00002000#else#define PSH_WIZARD97 0x01000000#endif#ifdef _WINE#define PSH_WIZARD97_OLD 0x00002000#define PSH_WIZARD97_NEW 0x01000000#endif#endif /* _WIN32_IE >= 0x0400 */#if (_WIN32_IE >= 0x0500)#define PSH_WIZARD_LITE 0x400000#define PSH_NOCONTEXTHELP 0x2000000#endif#define PSCB_INITIALIZED 1#define PSCB_PRECREATE 2#if (_WIN32_IE >= 0x560)#define PSCB_BUTTONPRESSED 3#endif /* _WIN32_IE >= 0x560 */#define PSM_GETTABCONTROL 1140#define PSM_GETCURRENTPAGEHWND 1142#if (_WIN32_IE >= 0x0500)#define PSM_GETRESULT 1159#define PropSheet_GetResult(hDlg) SNDMSG(hDlg, PSM_GETRESULT, 0, 0)
#define PSM_HWNDTOINDEX 1153#define PropSheet_HwndToIndex(hDlg, hwnd) \ (int)SNDMSG(hDlg, PSM_HWNDTOINDEX, (WPARAM)(hwnd), 0)
#define PSM_IDTOINDEX 1157#define PSM_INDEXTOHWND 1154#define PSM_INDEXTOID 1158#define PSM_INDEXTOPAGE 1156#define PSM_INSERTPAGE 1143#endif /* _WIN32_IE >= 0x0500 */#define PSM_ISDIALOGMESSAGE 1141#if (_WIN32_IE >= 0x0500)#define PSM_PAGETOINDEX 1155#endif /* _WIN32_IE >= 0x0500 */#define PSM_PRESSBUTTON 1137#if (_WIN32_IE >= 0x0500)#define PSM_RECALCPAGESIZES 1160#endif /* _WIN32_IE >= 0x0500 */#define PSM_SETCURSELID 1138#define PSM_SETFINISHTEXTW 1145#define PSM_SETFINISHTEXTA 1139#if (_WIN32_IE >= 0x0500)#define PSM_SETHEADERTITLEA 1149#define PSM_SETHEADERTITLEW 1150#define PSM_SETHEADERSUBTITLEA 1151#define PSM_SETHEADERSUBTITLEW 1152#endif
#define PSN_FIRST (0U - 200U)#define PSN_SETACTIVE (PSN_FIRST - 0)#define PSN_KILLACTIVE (PSN_FIRST - 1)#define PSN_APPLY (PSN_FIRST - 2)#define PSN_RESET (PSN_FIRST - 3)#define PSN_HELP (PSN_FIRST - 5)#define PSN_WIZBACK (PSN_FIRST - 6)#define PSN_WIZNEXT (PSN_FIRST - 7)#define PSN_WIZFINISH (PSN_FIRST - 8)#define PSN_QUERYCANCEL (PSN_FIRST - 9)#define PSN_GETOBJECT (PSN_FIRST - 10)#define PSN_TRANSLATEACCELERATOR (PSN_FIRST - 12)#define PSN_QUERYINITIALFOCUS (PSN_FIRST - 13)#define PSN_LAST (PSN_FIRST - 99)
#define PSNRET_NOERROR 0#define PSNRET_INVALID 1#define PSNRET_INVALID_NOCHANGEPAGE 2#define ID_PSRESTARTWINDOWS 2#define ID_PSREBOOTSYSTEM 3#define WIZ_CXDLG 276#define WIZ_CYDLG 140#define WIZ_CXBMP 80#define WIZ_BODYX 92#define WIZ_BODYCX 184#define PROP_SM_CXDLG 212#define PROP_SM_CYDLG 188#define PROP_MED_CXDLG 227#define PROP_MED_CYDLG 215#define PROP_LG_CXDLG 252#define PROP_LG_CYDLG 218#define PSBTN_MAX 6#define PSBTN_BACK 0#define PSBTN_NEXT 1#define PSBTN_FINISH 2#define PSBTN_OK 3#define PSBTN_APPLYNOW 4#define PSBTN_CANCEL 5#define PSBTN_HELP 6#define PSWIZB_BACK 1#define PSWIZB_NEXT 2#define PSWIZB_FINISH 4#define PSWIZB_DISABLEDFINISH 8#define PSM_SETWIZBUTTONS (WM_USER+112)#define PSM_APPLY (WM_USER+110)#define PSM_UNCHANGED (WM_USER+109)#define PSM_QUERYSIBLINGS (WM_USER+108)#define PSM_CANCELTOCLOSE (WM_USER+107)#define PSM_REBOOTSYSTEM (WM_USER+106)#define PSM_RESTARTWINDOWS (WM_USER+105)#define PSM_CHANGED (WM_USER+104)#define PSM_ADDPAGE (WM_USER+103)#define PSM_REMOVEPAGE (WM_USER+102)#define PSM_SETCURSEL (WM_USER+101)#define PSM_SETTITLEA (WM_USER+111)#define PSM_SETTITLEW (WM_USER+120)
#define PSPCB_ADDREF 0
#ifndef RC_INVOKED
#pragma pack(push,8)typedef struct _PROPSHEETPAGEA { DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; _ANONYMOUS_UNION union { LPCSTR pszTemplate; LPCDLGTEMPLATE pResource; } DUMMYUNIONNAME; _ANONYMOUS_UNION union { HICON hIcon; LPCSTR pszIcon; } DUMMYUNIONNAME2; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; UINT(CALLBACK *pfnCallback)(HWND,UINT,struct _PROPSHEETPAGEA*); UINT *pcRefParent;#if (_WIN32_IE >= 0x0400) LPCSTR pszHeaderTitle; LPCSTR pszHeaderSubTitle;#endif#if (_WIN32_IE >= 0x0501) HANDLE hActCtx;#endif#if (_WIN32_IE >= 0x0600) _ANONYMOUS_UNION union { HBITMAP hbmHeader; LPCSTR pszbmHeader; } DUMMYUNIONNAME3;#endif} PROPSHEETPAGEA,*LPPROPSHEETPAGEA, PROPSHEETPAGEA_LATEST, *LPPROPSHEETPAGEA_LATEST;typedef const PROPSHEETPAGEA *LPCPROPSHEETPAGEA, *LPCPROPSHEETPAGEA_LATEST;#define PROPSHEETPAGEA_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEA, pcRefParent)#define PROPSHEETPAGEA_V2_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEA, pszHeaderSubTitle)#define PROPSHEETPAGEA_V3_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEA, hActCtx)#define PROPSHEETPAGEA_V4_SIZE sizeof(PROPSHEETPAGEA)typedef struct _PROPSHEETPAGEW { DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; _ANONYMOUS_UNION union { LPCWSTR pszTemplate; LPCDLGTEMPLATE pResource; } DUMMYUNIONNAME; _ANONYMOUS_UNION union { HICON hIcon; LPCWSTR pszIcon; } DUMMYUNIONNAME2; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; UINT(CALLBACK *pfnCallback)(HWND,UINT,struct _PROPSHEETPAGEW*); UINT *pcRefParent;#if (_WIN32_IE >= 0x0400) LPCWSTR pszHeaderTitle; LPCWSTR pszHeaderSubTitle;#endif#if (_WIN32_IE >= 0x0501) HANDLE hActCtx;#endif#if (_WIN32_IE >= 0x0600) _ANONYMOUS_UNION union { HBITMAP hbmHeader; LPCWSTR pszbmHeader; } DUMMYUNIONNAME3;#endif} PROPSHEETPAGEW,*LPPROPSHEETPAGEW, PROPSHEETPAGEW_LATEST, *LPPROPSHEETPAGEW_LATEST;typedef const PROPSHEETPAGEW *LPCPROPSHEETPAGEW, *LPCPROPSHEETPAGEW_LATEST;#define PROPSHEETPAGEW_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEW, pcRefParent)#define PROPSHEETPAGEW_V2_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEW, pszHeaderSubTitle)#define PROPSHEETPAGEW_V3_SIZE CCSIZEOF_STRUCT(PROPSHEETPAGEW, hActCtx)#define PROPSHEETPAGEW_V4_SIZE sizeof(PROPSHEETPAGEW)typedef UINT(CALLBACK *LPFNPSPCALLBACKA)(HWND,UINT,LPPROPSHEETPAGEA);typedef UINT(CALLBACK *LPFNPSPCALLBACKW)(HWND,UINT,LPPROPSHEETPAGEW);typedef int(CALLBACK *PFNPROPSHEETCALLBACK)(HWND,UINT,LPARAM);#ifndef _HPROPSHEETPAGE_DEFINED#define _HPROPSHEETPAGE_DEFINEDDECLARE_HANDLE(HPROPSHEETPAGE);#endif /* _HPROPSHEETPAGE_DEFINED */typedef struct _PROPSHEETHEADERA { DWORD dwSize; DWORD dwFlags; HWND hwndParent; HINSTANCE hInstance; _ANONYMOUS_UNION union { HICON hIcon; LPCSTR pszIcon; }DUMMYUNIONNAME; LPCSTR pszCaption; UINT nPages; _ANONYMOUS_UNION union { UINT nStartPage; LPCSTR pStartPage; }DUMMYUNIONNAME2; _ANONYMOUS_UNION union { LPCPROPSHEETPAGEA ppsp; HPROPSHEETPAGE *phpage; }DUMMYUNIONNAME3; PFNPROPSHEETCALLBACK pfnCallback;#if (_WIN32_IE >= 0x0400) _ANONYMOUS_UNION union { HBITMAP hbmWatermark; LPCSTR pszbmWatermark; } DUMMYUNIONNAME4; HPALETTE hplWatermark; _ANONYMOUS_UNION union { HBITMAP hbmHeader; LPCSTR pszbmHeader; } DUMMYUNIONNAME5;#endif} PROPSHEETHEADERA,*LPPROPSHEETHEADERA;typedef const PROPSHEETHEADERA *LPCPROPSHEETHEADERA;#define PROPSHEETHEADERA_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETHEADERA, pfnCallback)#define PROPSHEETHEADERA_V2_SIZE sizeof(PROPSHEETHEADERA)typedef struct _PROPSHEETHEADERW { DWORD dwSize; DWORD dwFlags; HWND hwndParent; HINSTANCE hInstance; _ANONYMOUS_UNION union { HICON hIcon; LPCWSTR pszIcon; }DUMMYUNIONNAME; LPCWSTR pszCaption; UINT nPages; _ANONYMOUS_UNION union { UINT nStartPage; LPCWSTR pStartPage; }DUMMYUNIONNAME2; _ANONYMOUS_UNION union { LPCPROPSHEETPAGEW ppsp; HPROPSHEETPAGE *phpage; }DUMMYUNIONNAME3; PFNPROPSHEETCALLBACK pfnCallback;#if (_WIN32_IE >= 0x0400) _ANONYMOUS_UNION union { HBITMAP hbmWatermark; LPCWSTR pszbmWatermark; } DUMMYUNIONNAME4; HPALETTE hplWatermark; _ANONYMOUS_UNION union { HBITMAP hbmHeader; LPCWSTR pszbmHeader; } DUMMYUNIONNAME5;#endif} PROPSHEETHEADERW,*LPPROPSHEETHEADERW;typedef const PROPSHEETHEADERW *LPCPROPSHEETHEADERW;#define PROPSHEETHEADERW_V1_SIZE CCSIZEOF_STRUCT(PROPSHEETHEADERW, pfnCallback)#define PROPSHEETHEADERW_V2_SIZE sizeof(PROPSHEETHEADERW)typedef BOOL(CALLBACK *LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE,LPARAM);typedef BOOL(CALLBACK *LPFNADDPROPSHEETPAGES)(LPVOID,LPFNADDPROPSHEETPAGE,LPARAM);typedef struct _PSHNOTIFY { NMHDR hdr; LPARAM lParam;} PSHNOTIFY,*LPPSHNOTIFY;
#pragma pack(pop)
HPROPSHEETPAGE WINAPI CreatePropertySheetPageA(LPCPROPSHEETPAGEA);HPROPSHEETPAGE WINAPI CreatePropertySheetPageW(LPCPROPSHEETPAGEW);BOOL WINAPI DestroyPropertySheetPage(HPROPSHEETPAGE);INT_PTR WINAPI PropertySheetA(LPCPROPSHEETHEADERA);INT_PTR WINAPI PropertySheetW(LPCPROPSHEETHEADERW);#define PropSheet_AddPage(d,p) SendMessage(d,PSM_ADDPAGE,0,(LPARAM)p)#define PropSheet_Apply(d) SendMessage(d,PSM_APPLY,0,0)#define PropSheet_CancelToClose(d) SendMessage(d,PSM_CANCELTOCLOSE,0,0)#define PropSheet_Changed(d,w) SendMessage(d,PSM_CHANGED,(WPARAM)w,0)#define PropSheet_GetCurrentPageHwnd(d) (HWND)SendMessage(d,PSM_GETCURRENTPAGEHWND,0,0)#define PropSheet_GetTabControl(d) (HWND)SendMessage(d,PSM_GETTABCONTROL,0,0)#define PropSheet_IsDialogMessage(d,m) (BOOL)SendMessage(d,PSM_ISDIALOGMESSAGE,0,(LPARAM)m)#define PropSheet_PressButton(d,i) SendMessage(d,PSM_PRESSBUTTON,i,0)#define PropSheet_QuerySiblings(d,w,l) SendMessage(d,PSM_QUERYSIBLINGS,w,l)#define PropSheet_RebootSystem(d) SendMessage(d,PSM_REBOOTSYSTEM,0,0)#define PropSheet_RemovePage(d,i,p) SendMessage(d,PSM_REMOVEPAGE,i,(LPARAM)p)#define PropSheet_RestartWindows(d) SendMessage(d,PSM_RESTARTWINDOWS,0,0)#define PropSheet_SetCurSel(d,p,i) SendMessage(d,PSM_SETCURSEL,i,(LPARAM)p)#define PropSheet_SetCurSelByID(d,i) SendMessage(d,PSM_SETCURSELID,0,i)#define PropSheet_SetFinishText(d,s) SendMessage(d,PSM_SETFINISHTEXT,0,(LPARAM)s)#define PropSheet_SetTitle(d,w,s) SendMessage(d,PSM_SETTITLE,w,(LPARAM)s)#define PropSheet_SetWizButtons(d,f) PostMessage(d,PSM_SETWIZBUTTONS,0,(LPARAM)f)#define PropSheet_UnChanged(d,w) SendMessage(d,PSM_UNCHANGED,(WPARAM)w,0)#define PropSheet_RecalcPageSizes(d) SendMessage(d,PSM_RECALCPAGESIZES,0,0)#endif
#define WC_PROPSHEETA "SysPropertySheet"#if defined(__GNUC__)# define WC_PROPSHEETW (const WCHAR []){ 'S','y','s', \ 'P','r','o','p','e','r','t','y','S','h','e','e','t',0 }#elif defined(_MSC_VER)# define WC_PROPSHEETW L"SysPropertySheet"#elsestatic const WCHAR WC_PROPSHEETW[] = { 'S','y','s', 'P','r','o','p','e','r','t','y','S','h','e','e','t',0 };#endif
#ifdef UNICODE#define LPFNPSPCALLBACK LPFNPSPCALLBACKW#define PROPSHEETPAGE PROPSHEETPAGEW#define LPPROPSHEETPAGE LPPROPSHEETPAGEW#define LPCPROPSHEETPAGE LPCPROPSHEETPAGEW#define PROPSHEETHEADER PROPSHEETHEADERW#define LPPROPSHEETHEADER LPPROPSHEETHEADERW#define LPCPROPSHEETHEADER LPCPROPSHEETHEADERW#define PSM_SETTITLE PSM_SETTITLEW#define PSM_SETFINISHTEXT PSM_SETFINISHTEXTW#define PSM_SETHEADERTITLE PSM_SETHEADERTITLEW#define PSM_SETHEADERSUBTITLE PSM_SETHEADERSUBTITLEW#define CreatePropertySheetPage CreatePropertySheetPageW#define PropertySheet PropertySheetW#else#define LPFNPSPCALLBACK LPFNPSPCALLBACKA#define PROPSHEETPAGE PROPSHEETPAGEA#define LPPROPSHEETPAGE LPPROPSHEETPAGEA#define LPCPROPSHEETPAGE LPCPROPSHEETPAGEA#define PROPSHEETHEADER PROPSHEETHEADERA#define LPPROPSHEETHEADER LPPROPSHEETHEADERA#define LPCPROPSHEETHEADER LPCPROPSHEETHEADERA#define PSM_SETTITLE PSM_SETTITLEA#define PSM_SETFINISHTEXT PSM_SETFINISHTEXTA#define PSM_SETHEADERTITLE PSM_SETHEADERTITLEA#define PSM_SETHEADERSUBTITLE PSM_SETHEADERSUBTITLEA#define CreatePropertySheetPage CreatePropertySheetPageA#define PropertySheet PropertySheetA#endif
#ifdef _MSC_VER#pragma warning(pop)#endif
#ifdef __cplusplus}#endif#endif