0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0a 2a 20 20 20 20 20 ********\.*
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0060: 20 20 20 20 20 20 20 20 20 20 20 70 72 73 68 74 prsht
0070: 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .d
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0090: 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 *.*
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 *.*
00e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00f0: 20 20 20 20 20 20 57 69 6e 64 6f 77 73 20 41 50 Windows AP
0100: 49 20 68 65 61 64 65 72 20 6d 6f 64 75 6c 65 20 I header module
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0120: 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 *.*
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0170: 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 *.*
0180: 20 20 20 20 54 72 61 6e 73 6c 61 74 65 64 20 66 Translated f
0190: 72 6f 6d 20 4d 69 6e 47 57 20 57 69 6e 64 6f 77 rom MinGW Window
01a0: 73 20 68 65 61 64 65 72 73 20 20 20 20 20 20 20 s headers
01b0: 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20 *.*
01c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
01d0: 20 20 20 20 20 20 20 20 62 79 20 56 6c 61 64 69 by Vladi
01e0: 6d 69 72 20 56 6c 61 73 6f 76 20 20 20 20 20 20 mir Vlasov
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0200: 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 *.*
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a *.
0250: 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 *
0260: 20 20 20 20 20 20 20 20 50 6c 61 63 65 64 20 69 Placed i
0270: 6e 74 6f 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 nto public domai
0280: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n
0290: 20 20 20 20 20 20 20 20 2a 0a 5c 2a 2a 2a 2a 2a *.\*****
02a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02e0: 2a 2a 2f 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 **/.module win32
02f0: 2e 70 72 73 68 74 3b 0a 70 72 61 67 6d 61 28 6c .prsht;.pragma(l
0300: 69 62 2c 20 22 63 6f 6d 63 74 6c 33 32 2e 6c 69 ib, "comctl32.li
0310: 62 22 29 3b 0a 0a 70 72 69 76 61 74 65 20 69 6d b");..private im
0320: 70 6f 72 74 20 77 69 6e 33 32 2e 77 33 32 61 70 port win32.w32ap
0330: 69 2c 20 77 69 6e 33 32 2e 77 69 6e 64 65 66 2c i, win32.windef,
0340: 20 77 69 6e 33 32 2e 77 69 6e 75 73 65 72 3b 0a win32.winuser;.
0350: 0a 63 6f 6e 73 74 20 4d 41 58 50 52 4f 50 50 41 .const MAXPROPPA
0360: 47 45 53 20 3d 20 31 30 30 3b 0a 0a 65 6e 75 6d GES = 100;..enum
0370: 20 7b 0a 09 50 53 50 5f 44 45 46 41 55 4c 54 20 {..PSP_DEFAULT
0380: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
0390: 30 2c 0a 09 50 53 50 5f 44 4c 47 49 4e 44 49 52 0,..PSP_DLGINDIR
03a0: 45 43 54 20 20 3d 20 30 78 30 30 30 30 30 30 30 ECT = 0x0000000
03b0: 31 2c 0a 09 50 53 50 5f 55 53 45 48 49 43 4f 4e 1,..PSP_USEHICON
03c0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
03d0: 32 2c 0a 09 50 53 50 5f 55 53 45 49 43 4f 4e 49 2,..PSP_USEICONI
03e0: 44 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 D = 0x0000000
03f0: 34 2c 0a 09 50 53 50 5f 55 53 45 54 49 54 4c 45 4,..PSP_USETITLE
0400: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
0410: 38 2c 0a 09 50 53 50 5f 52 54 4c 52 45 41 44 49 8,..PSP_RTLREADI
0420: 4e 47 20 20 20 3d 20 30 78 30 30 30 30 30 30 31 NG = 0x0000001
0430: 30 2c 0a 09 50 53 50 5f 48 41 53 48 45 4c 50 20 0,..PSP_HASHELP
0440: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 = 0x0000002
0450: 30 2c 0a 09 50 53 50 5f 55 53 45 52 45 46 50 41 0,..PSP_USEREFPA
0460: 52 45 4e 54 20 3d 20 30 78 30 30 30 30 30 30 34 RENT = 0x0000004
0470: 30 2c 0a 09 50 53 50 5f 55 53 45 43 41 4c 4c 42 0,..PSP_USECALLB
0480: 41 43 4b 20 20 3d 20 30 78 30 30 30 30 30 30 38 ACK = 0x0000008
0490: 30 2c 0a 09 50 53 50 5f 50 52 45 4d 41 54 55 52 0,..PSP_PREMATUR
04a0: 45 20 20 20 20 3d 20 30 78 30 30 30 30 30 34 30 E = 0x0000040
04b0: 30 0a 7d 0a 0a 73 74 61 74 69 63 20 69 66 20 28 0.}..static if (
04c0: 5f 57 49 4e 33 32 5f 49 45 20 3e 3d 20 30 78 30 _WIN32_IE >= 0x0
04d0: 34 30 30 29 20 7b 0a 09 65 6e 75 6d 20 7b 0a 09 400) {..enum {..
04e0: 09 50 53 50 5f 48 49 44 45 48 45 41 44 45 52 20 .PSP_HIDEHEADER
04f0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 = 0x00000
0500: 38 30 30 2c 0a 09 09 50 53 50 5f 55 53 45 48 45 800,...PSP_USEHE
0510: 41 44 45 52 54 49 54 4c 45 20 20 20 20 3d 20 30 ADERTITLE = 0
0520: 78 30 30 30 30 31 30 30 30 2c 0a 09 09 50 53 50 x00001000,...PSP
0530: 5f 55 53 45 48 45 41 44 45 52 53 55 42 54 49 54 _USEHEADERSUBTIT
0540: 4c 45 20 3d 20 30 78 30 30 30 30 32 30 30 30 0a LE = 0x00002000.
0550: 09 7d 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 09 50 53 .}.}..enum {..PS
0560: 50 43 42 5f 52 45 4c 45 41 53 45 20 3d 20 31 2c PCB_RELEASE = 1,
0570: 0a 09 50 53 50 43 42 5f 43 52 45 41 54 45 0a 7d ..PSPCB_CREATE.}
0580: 0a 0a 65 6e 75 6d 20 7b 0a 09 50 53 48 5f 44 45 ..enum {..PSH_DE
0590: 46 41 55 4c 54 20 20 20 20 20 20 20 20 20 20 20 FAULT
05a0: 3d 20 30 78 30 30 30 30 30 30 30 30 2c 0a 09 50 = 0x00000000,..P
05b0: 53 48 5f 50 52 4f 50 54 49 54 4c 45 20 20 20 20 SH_PROPTITLE
05c0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
05d0: 31 2c 0a 09 50 53 48 5f 55 53 45 48 49 43 4f 4e 1,..PSH_USEHICON
05e0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
05f0: 30 30 30 30 30 32 2c 0a 09 50 53 48 5f 55 53 45 000002,..PSH_USE
0600: 49 43 4f 4e 49 44 20 20 20 20 20 20 20 20 20 3d ICONID =
0610: 20 30 78 30 30 30 30 30 30 30 34 2c 0a 09 50 53 0x00000004,..PS
0620: 48 5f 50 52 4f 50 53 48 45 45 54 50 41 47 45 20 H_PROPSHEETPAGE
0630: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 38 = 0x00000008
0640: 2c 0a 09 50 53 48 5f 57 49 5a 41 52 44 48 41 53 ,..PSH_WIZARDHAS
0650: 46 49 4e 49 53 48 20 20 20 3d 20 30 78 30 30 30 FINISH = 0x000
0660: 30 30 30 31 30 2c 0a 09 50 53 48 5f 57 49 5a 41 00010,..PSH_WIZA
0670: 52 44 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 RD =
0680: 30 78 30 30 30 30 30 30 32 30 2c 0a 09 50 53 48 0x00000020,..PSH
0690: 5f 55 53 45 50 53 54 41 52 54 50 41 47 45 20 20 _USEPSTARTPAGE
06a0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 34 30 2c = 0x00000040,
06b0: 0a 09 50 53 48 5f 4e 4f 41 50 50 4c 59 4e 4f 57 ..PSH_NOAPPLYNOW
06c0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
06d0: 30 30 38 30 2c 0a 09 50 53 48 5f 55 53 45 43 41 0080,..PSH_USECA
06e0: 4c 4c 42 41 43 4b 20 20 20 20 20 20 20 3d 20 30 LLBACK = 0
06f0: 78 30 30 30 30 30 31 30 30 2c 0a 09 50 53 48 5f x00000100,..PSH_
0700: 48 41 53 48 45 4c 50 20 20 20 20 20 20 20 20 20 HASHELP
0710: 20 20 3d 20 30 78 30 30 30 30 30 32 30 30 2c 0a = 0x00000200,.
0720: 09 50 53 48 5f 4d 4f 44 45 4c 45 53 53 20 20 20 .PSH_MODELESS
0730: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 = 0x00000
0740: 34 30 30 2c 0a 09 50 53 48 5f 52 54 4c 52 45 41 400,..PSH_RTLREA
0750: 44 49 4e 47 20 20 20 20 20 20 20 20 3d 20 30 78 DING = 0x
0760: 30 30 30 30 30 38 30 30 2c 0a 09 50 53 48 5f 57 00000800,..PSH_W
0770: 49 5a 41 52 44 43 4f 4e 54 45 58 54 48 45 4c 50 IZARDCONTEXTHELP
0780: 20 3d 20 30 78 30 30 30 30 31 30 30 30 0a 7d 0a = 0x00001000.}.
0790: 0a 73 74 61 74 69 63 20 69 66 20 28 5f 57 49 4e .static if (_WIN
07a0: 33 32 5f 49 45 20 3e 3d 20 30 78 30 34 30 30 29 32_IE >= 0x0400)
07b0: 20 7b 0a 09 65 6e 75 6d 20 7b 0a 09 09 50 53 48 {..enum {...PSH
07c0: 5f 57 41 54 45 52 4d 41 52 4b 20 20 20 20 20 20 _WATERMARK
07d0: 20 20 3d 20 30 78 30 30 30 30 38 30 30 30 2c 0a = 0x00008000,.
07e0: 09 09 50 53 48 5f 55 53 45 48 42 4d 57 41 54 45 ..PSH_USEHBMWATE
07f0: 52 4d 41 52 4b 20 20 3d 20 30 78 30 30 30 31 30 RMARK = 0x00010
0800: 30 30 30 2c 0a 09 09 50 53 48 5f 55 53 45 48 50 000,...PSH_USEHP
0810: 4c 57 41 54 45 52 4d 41 52 4b 20 20 3d 20 30 78 LWATERMARK = 0x
0820: 30 30 30 32 30 30 30 30 2c 0a 09 09 50 53 48 5f 00020000,...PSH_
0830: 53 54 52 45 54 43 48 57 41 54 45 52 4d 41 52 4b STRETCHWATERMARK
0840: 20 3d 20 30 78 30 30 30 34 30 30 30 30 2c 0a 09 = 0x00040000,..
0850: 09 50 53 48 5f 48 45 41 44 45 52 20 20 20 20 20 .PSH_HEADER
0860: 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 30 30 = 0x000800
0870: 30 30 2c 0a 09 09 50 53 48 5f 55 53 45 48 42 4d 00,...PSH_USEHBM
0880: 48 45 41 44 45 52 20 20 20 20 20 3d 20 30 78 30 HEADER = 0x0
0890: 30 31 30 30 30 30 30 2c 0a 09 09 50 53 48 5f 55 0100000,...PSH_U
08a0: 53 45 50 41 47 45 4c 41 4e 47 20 20 20 20 20 20 SEPAGELANG
08b0: 3d 20 30 78 30 30 32 30 30 30 30 30 0a 09 7d 0a = 0x00200000..}.
08c0: 09 73 74 61 74 69 63 20 69 66 20 28 5f 57 49 4e .static if (_WIN
08d0: 33 32 5f 49 45 20 3c 20 30 78 30 35 30 30 29 20 32_IE < 0x0500)
08e0: 7b 0a 09 09 65 6e 75 6d 20 7b 0a 09 09 09 50 53 {...enum {....PS
08f0: 48 5f 57 49 5a 41 52 44 39 37 20 3d 20 30 78 30 H_WIZARD97 = 0x0
0900: 30 30 30 32 30 30 30 0a 09 09 7d 0a 09 7d 20 65 0002000...}..} e
0910: 6c 73 65 20 7b 0a 09 09 65 6e 75 6d 20 7b 0a 09 lse {...enum {..
0920: 09 09 50 53 48 5f 57 49 5a 41 52 44 39 37 20 3d ..PSH_WIZARD97 =
0930: 20 30 78 30 31 30 30 30 30 30 30 0a 09 09 7d 0a 0x01000000...}.
0940: 09 7d 0a 7d 0a 0a 73 74 61 74 69 63 20 69 66 20 .}.}..static if
0950: 28 5f 57 49 4e 33 32 5f 49 45 20 3e 3d 20 30 78 (_WIN32_IE >= 0x
0960: 30 35 30 30 29 20 7b 0a 09 65 6e 75 6d 20 7b 0a 0500) {..enum {.
0970: 09 09 50 53 48 5f 57 49 5a 41 52 44 5f 4c 49 54 ..PSH_WIZARD_LIT
0980: 45 20 20 20 3d 20 30 78 30 30 34 30 30 30 30 30 E = 0x00400000
0990: 2c 0a 09 09 50 53 48 5f 4e 4f 43 4f 4e 54 45 58 ,...PSH_NOCONTEX
09a0: 54 48 45 4c 50 20 3d 20 30 78 30 32 30 30 30 30 THELP = 0x020000
09b0: 30 30 0a 09 7d 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 00..}.}..enum {.
09c0: 09 50 53 43 42 5f 49 4e 49 54 49 41 4c 49 5a 45 .PSCB_INITIALIZE
09d0: 44 20 3d 20 31 2c 0a 09 50 53 43 42 5f 50 52 45 D = 1,..PSCB_PRE
09e0: 43 52 45 41 54 45 0a 7d 0a 0a 65 6e 75 6d 20 7b CREATE.}..enum {
09f0: 0a 09 50 53 4e 5f 46 49 52 53 54 20 20 20 20 20 ..PSN_FIRST
0a00: 20 20 3d 20 28 2d 32 30 30 29 2c 0a 09 50 53 4e = (-200),..PSN
0a10: 5f 4c 41 53 54 20 20 20 20 20 20 20 20 3d 20 28 _LAST = (
0a20: 2d 32 39 39 29 2c 0a 09 50 53 4e 5f 53 45 54 41 -299),..PSN_SETA
0a30: 43 54 49 56 45 20 20 20 3d 20 28 2d 32 30 30 29 CTIVE = (-200)
0a40: 2c 0a 09 50 53 4e 5f 4b 49 4c 4c 41 43 54 49 56 ,..PSN_KILLACTIV
0a50: 45 20 20 3d 20 28 2d 32 30 31 29 2c 0a 09 50 53 E = (-201),..PS
0a60: 4e 5f 41 50 50 4c 59 20 20 20 20 20 20 20 3d 20 N_APPLY =
0a70: 28 2d 32 30 32 29 2c 0a 09 50 53 4e 5f 52 45 53 (-202),..PSN_RES
0a80: 45 54 20 20 20 20 20 20 20 3d 20 28 2d 32 30 33 ET = (-203
0a90: 29 2c 0a 09 50 53 4e 5f 48 45 4c 50 20 20 20 20 ),..PSN_HELP
0aa0: 20 20 20 20 3d 20 28 2d 32 30 35 29 2c 0a 09 50 = (-205),..P
0ab0: 53 4e 5f 57 49 5a 42 41 43 4b 20 20 20 20 20 3d SN_WIZBACK =
0ac0: 20 28 2d 32 30 36 29 2c 0a 09 50 53 4e 5f 57 49 (-206),..PSN_WI
0ad0: 5a 4e 45 58 54 20 20 20 20 20 3d 20 28 2d 32 30 ZNEXT = (-20
0ae0: 37 29 2c 0a 09 50 53 4e 5f 57 49 5a 46 49 4e 49 7),..PSN_WIZFINI
0af0: 53 48 20 20 20 3d 20 28 2d 32 30 38 29 2c 0a 09 SH = (-208),..
0b00: 50 53 4e 5f 51 55 45 52 59 43 41 4e 43 45 4c 20 PSN_QUERYCANCEL
0b10: 3d 20 28 2d 32 30 39 29 0a 7d 0a 73 74 61 74 69 = (-209).}.stati
0b20: 63 20 69 66 20 28 5f 57 49 4e 33 32 5f 49 45 20 c if (_WIN32_IE
0b30: 3e 3d 20 30 78 30 34 30 30 29 20 7b 0a 09 65 6e >= 0x0400) {..en
0b40: 75 6d 20 7b 0a 09 09 50 53 4e 5f 47 45 54 4f 42 um {...PSN_GETOB
0b50: 4a 45 43 54 20 3d 20 28 2d 32 31 30 29 0a 09 7d JECT = (-210)..}
0b60: 0a 7d 0a 73 74 61 74 69 63 20 69 66 20 28 5f 57 .}.static if (_W
0b70: 49 4e 33 32 5f 49 45 20 3e 3d 20 30 78 30 35 30 IN32_IE >= 0x050
0b80: 30 29 20 7b 0a 09 65 6e 75 6d 20 7b 0a 09 09 50 0) {..enum {...P
0b90: 53 4e 5f 54 52 41 4e 53 4c 41 54 45 41 43 43 45 SN_TRANSLATEACCE
0ba0: 4c 45 52 41 54 4f 52 20 3d 20 28 2d 32 31 32 29 LERATOR = (-212)
0bb0: 2c 0a 09 09 50 53 4e 5f 51 55 45 52 59 49 4e 49 ,...PSN_QUERYINI
0bc0: 54 49 41 4c 46 4f 43 55 53 20 20 20 20 3d 20 28 TIALFOCUS = (
0bd0: 2d 32 31 33 29 0a 09 7d 0a 7d 0a 0a 65 6e 75 6d -213)..}.}..enum
0be0: 20 7b 0a 09 50 53 4e 52 45 54 5f 4e 4f 45 52 52 {..PSNRET_NOERR
0bf0: 4f 52 2c 0a 09 50 53 4e 52 45 54 5f 49 4e 56 41 OR,..PSNRET_INVA
0c00: 4c 49 44 2c 0a 09 50 53 4e 52 45 54 5f 49 4e 56 LID,..PSNRET_INV
0c10: 41 4c 49 44 5f 4e 4f 43 48 41 4e 47 45 50 41 47 ALID_NOCHANGEPAG
0c20: 45 2c 0a 09 50 53 4e 52 45 54 5f 4d 45 53 53 41 E,..PSNRET_MESSA
0c30: 47 45 48 41 4e 44 4c 45 44 0a 7d 0a 0a 65 6e 75 GEHANDLED.}..enu
0c40: 6d 20 7b 0a 09 49 44 5f 50 53 52 45 53 54 41 52 m {..ID_PSRESTAR
0c50: 54 57 49 4e 44 4f 57 53 20 3d 20 30 78 32 2c 0a TWINDOWS = 0x2,.
0c60: 09 49 44 5f 50 53 52 45 42 4f 4f 54 53 59 53 54 .ID_PSREBOOTSYST
0c70: 45 4d 20 20 20 3d 20 49 44 5f 50 53 52 45 53 54 EM = ID_PSREST
0c80: 41 52 54 57 49 4e 44 4f 57 53 20 7c 20 30 78 31 ARTWINDOWS | 0x1
0c90: 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 09 57 49 5a 5f .}..enum {..WIZ_
0ca0: 43 58 44 4c 47 20 20 3d 20 32 37 36 2c 0a 09 57 CXDLG = 276,..W
0cb0: 49 5a 5f 43 59 44 4c 47 20 20 3d 20 31 34 30 2c IZ_CYDLG = 140,
0cc0: 0a 09 57 49 5a 5f 43 58 42 4d 50 20 20 3d 20 38 ..WIZ_CXBMP = 8
0cd0: 30 2c 0a 09 57 49 5a 5f 42 4f 44 59 58 20 20 3d 0,..WIZ_BODYX =
0ce0: 20 39 32 2c 0a 09 57 49 5a 5f 42 4f 44 59 43 58 92,..WIZ_BODYCX
0cf0: 20 3d 20 31 38 34 0a 7d 0a 0a 65 6e 75 6d 20 7b = 184.}..enum {
0d00: 0a 09 50 52 4f 50 5f 53 4d 5f 43 58 44 4c 47 20 ..PROP_SM_CXDLG
0d10: 20 3d 20 32 31 32 2c 0a 09 50 52 4f 50 5f 53 4d = 212,..PROP_SM
0d20: 5f 43 59 44 4c 47 20 20 3d 20 31 38 38 2c 0a 09 _CYDLG = 188,..
0d30: 50 52 4f 50 5f 4d 45 44 5f 43 58 44 4c 47 20 3d PROP_MED_CXDLG =
0d40: 20 32 32 37 2c 0a 09 50 52 4f 50 5f 4d 45 44 5f 227,..PROP_MED_
0d50: 43 59 44 4c 47 20 3d 20 32 31 35 2c 0a 09 50 52 CYDLG = 215,..PR
0d60: 4f 50 5f 4c 47 5f 43 58 44 4c 47 20 20 3d 20 32 OP_LG_CXDLG = 2
0d70: 35 32 2c 0a 09 50 52 4f 50 5f 4c 47 5f 43 59 44 52,..PROP_LG_CYD
0d80: 4c 47 20 20 3d 20 32 31 38 0a 7d 0a 0a 65 6e 75 LG = 218.}..enu
0d90: 6d 20 7b 0a 09 50 53 42 54 4e 5f 42 41 43 4b 2c m {..PSBTN_BACK,
0da0: 0a 09 50 53 42 54 4e 5f 4e 45 58 54 2c 0a 09 50 ..PSBTN_NEXT,..P
0db0: 53 42 54 4e 5f 46 49 4e 49 53 48 2c 0a 09 50 53 SBTN_FINISH,..PS
0dc0: 42 54 4e 5f 4f 4b 2c 0a 09 50 53 42 54 4e 5f 41 BTN_OK,..PSBTN_A
0dd0: 50 50 4c 59 4e 4f 57 2c 0a 09 50 53 42 54 4e 5f PPLYNOW,..PSBTN_
0de0: 43 41 4e 43 45 4c 2c 0a 09 50 53 42 54 4e 5f 48 CANCEL,..PSBTN_H
0df0: 45 4c 50 2c 0a 09 50 53 42 54 4e 5f 4d 41 58 20 ELP,..PSBTN_MAX
0e00: 3d 20 36 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 09 50 = 6.}..enum {..P
0e10: 53 57 49 5a 42 5f 42 41 43 4b 20 20 20 20 20 20 SWIZB_BACK
0e20: 20 20 20 20 20 3d 20 31 2c 0a 09 50 53 57 49 5a = 1,..PSWIZ
0e30: 42 5f 4e 45 58 54 20 20 20 20 20 20 20 20 20 20 B_NEXT
0e40: 20 3d 20 32 2c 0a 09 50 53 57 49 5a 42 5f 46 49 = 2,..PSWIZB_FI
0e50: 4e 49 53 48 20 20 20 20 20 20 20 20 20 3d 20 34 NISH = 4
0e60: 2c 0a 09 50 53 57 49 5a 42 5f 44 49 53 41 42 4c ,..PSWIZB_DISABL
0e70: 45 44 46 49 4e 49 53 48 20 3d 20 38 0a 7d 0a 0a EDFINISH = 8.}..
0e80: 65 6e 75 6d 20 7b 0a 09 50 53 4d 5f 53 45 54 43 enum {..PSM_SETC
0e90: 55 52 53 45 4c 20 3d 20 57 4d 5f 55 53 45 52 20 URSEL = WM_USER
0ea0: 2b 20 31 30 31 2c 0a 09 50 53 4d 5f 52 45 4d 4f + 101,..PSM_REMO
0eb0: 56 45 50 41 47 45 2c 0a 09 50 53 4d 5f 41 44 44 VEPAGE,..PSM_ADD
0ec0: 50 41 47 45 2c 0a 09 50 53 4d 5f 43 48 41 4e 47 PAGE,..PSM_CHANG
0ed0: 45 44 2c 0a 09 50 53 4d 5f 52 45 53 54 41 52 54 ED,..PSM_RESTART
0ee0: 57 49 4e 44 4f 57 53 2c 0a 09 50 53 4d 5f 52 45 WINDOWS,..PSM_RE
0ef0: 42 4f 4f 54 53 59 53 54 45 4d 2c 0a 09 50 53 4d BOOTSYSTEM,..PSM
0f00: 5f 43 41 4e 43 45 4c 54 4f 43 4c 4f 53 45 2c 0a _CANCELTOCLOSE,.
0f10: 09 50 53 4d 5f 51 55 45 52 59 53 49 42 4c 49 4e .PSM_QUERYSIBLIN
0f20: 47 53 2c 0a 09 50 53 4d 5f 55 4e 43 48 41 4e 47 GS,..PSM_UNCHANG
0f30: 45 44 2c 0a 09 50 53 4d 5f 41 50 50 4c 59 2c 0a ED,..PSM_APPLY,.
0f40: 09 50 53 4d 5f 53 45 54 54 49 54 4c 45 41 2c 0a .PSM_SETTITLEA,.
0f50: 09 50 53 4d 5f 53 45 54 57 49 5a 42 55 54 54 4f .PSM_SETWIZBUTTO
0f60: 4e 53 2c 0a 09 50 53 4d 5f 50 52 45 53 53 42 55 NS,..PSM_PRESSBU
0f70: 54 54 4f 4e 2c 0a 09 50 53 4d 5f 53 45 54 43 55 TTON,..PSM_SETCU
0f80: 52 53 45 4c 49 44 2c 0a 09 50 53 4d 5f 53 45 54 RSELID,..PSM_SET
0f90: 46 49 4e 49 53 48 54 45 58 54 41 2c 0a 09 50 53 FINISHTEXTA,..PS
0fa0: 4d 5f 47 45 54 54 41 42 43 4f 4e 54 52 4f 4c 2c M_GETTABCONTROL,
0fb0: 0a 09 50 53 4d 5f 49 53 44 49 41 4c 4f 47 4d 45 ..PSM_ISDIALOGME
0fc0: 53 53 41 47 45 2c 0a 09 50 53 4d 5f 47 45 54 43 SSAGE,..PSM_GETC
0fd0: 55 52 52 45 4e 54 50 41 47 45 48 57 4e 44 2c 0a URRENTPAGEHWND,.
0fe0: 09 50 53 4d 5f 49 4e 53 45 52 54 50 41 47 45 2c .PSM_INSERTPAGE,
0ff0: 0a 09 50 53 4d 5f 53 45 54 54 49 54 4c 45 57 2c ..PSM_SETTITLEW,
1000: 0a 09 50 53 4d 5f 53 45 54 46 49 4e 49 53 48 54 ..PSM_SETFINISHT
1010: 45 58 54 57 20 2f 2f 20 3d 20 57 4d 5f 55 53 45 EXTW // = WM_USE
1020: 52 20 2b 20 31 32 31 2c 0a 7d 0a 0a 61 6c 69 61 R + 121,.}..alia
1030: 73 20 55 49 4e 54 20 66 75 6e 63 74 69 6f 6e 28 s UINT function(
1040: 48 57 4e 44 2c 20 55 49 4e 54 2c 20 4c 50 50 52 HWND, UINT, LPPR
1050: 4f 50 53 48 45 45 54 50 41 47 45 41 29 20 4c 50 OPSHEETPAGEA) LP
1060: 46 4e 50 53 50 43 41 4c 4c 42 41 43 4b 41 3b 0a FNPSPCALLBACKA;.
1070: 61 6c 69 61 73 20 55 49 4e 54 20 66 75 6e 63 74 alias UINT funct
1080: 69 6f 6e 28 48 57 4e 44 2c 20 55 49 4e 54 2c 20 ion(HWND, UINT,
1090: 4c 50 50 52 4f 50 53 48 45 45 54 50 41 47 45 57 LPPROPSHEETPAGEW
10a0: 29 20 4c 50 46 4e 50 53 50 43 41 4c 4c 42 41 43 ) LPFNPSPCALLBAC
10b0: 4b 57 3b 0a 61 6c 69 61 73 20 69 6e 74 20 66 75 KW;.alias int fu
10c0: 6e 63 74 69 6f 6e 28 48 57 4e 44 2c 20 55 49 4e nction(HWND, UIN
10d0: 54 2c 20 4c 50 41 52 41 4d 29 20 50 46 4e 50 52 T, LPARAM) PFNPR
10e0: 4f 50 53 48 45 45 54 43 41 4c 4c 42 41 43 4b 3b OPSHEETCALLBACK;
10f0: 0a 0a 61 6c 69 67 6e 28 34 29 3a 0a 0a 73 74 72 ..align(4):..str
1100: 75 63 74 20 50 52 4f 50 53 48 45 45 54 50 41 47 uct PROPSHEETPAG
1110: 45 41 20 7b 0a 09 44 57 4f 52 44 20 64 77 53 69 EA {..DWORD dwSi
1120: 7a 65 20 3d 20 50 52 4f 50 53 48 45 45 54 50 41 ze = PROPSHEETPA
1130: 47 45 41 2e 73 69 7a 65 6f 66 3b 0a 09 44 57 4f GEA.sizeof;..DWO
1140: 52 44 20 64 77 46 6c 61 67 73 3b 0a 09 48 49 4e RD dwFlags;..HIN
1150: 53 54 41 4e 43 45 20 68 49 6e 73 74 61 6e 63 65 STANCE hInstance
1160: 3b 0a 09 75 6e 69 6f 6e 20 7b 0a 09 09 4c 50 43 ;..union {...LPC
1170: 53 54 52 20 20 20 20 20 20 20 20 20 70 73 7a 54 STR pszT
1180: 65 6d 70 6c 61 74 65 3b 0a 09 09 4c 50 43 44 4c emplate;...LPCDL
1190: 47 54 45 4d 50 4c 41 54 45 20 70 52 65 73 6f 75 GTEMPLATE pResou
11a0: 72 63 65 3b 0a 09 7d 0a 09 75 6e 69 6f 6e 20 7b rce;..}..union {
11b0: 0a 09 09 48 49 43 4f 4e 20 20 68 49 63 6f 6e 3b ...HICON hIcon;
11c0: 0a 09 09 4c 50 43 53 54 52 20 70 73 7a 49 63 6f ...LPCSTR pszIco
11d0: 6e 3b 0a 09 7d 0a 09 4c 50 43 53 54 52 20 20 70 n;..}..LPCSTR p
11e0: 73 7a 54 69 74 6c 65 3b 0a 09 44 4c 47 50 52 4f szTitle;..DLGPRO
11f0: 43 20 70 66 6e 44 6c 67 50 72 6f 63 3b 0a 09 4c C pfnDlgProc;..L
1200: 50 41 52 41 4d 20 20 6c 50 61 72 61 6d 3b 0a 09 PARAM lParam;..
1210: 4c 50 46 4e 50 53 50 43 41 4c 4c 42 41 43 4b 41 LPFNPSPCALLBACKA
1220: 20 70 66 6e 43 61 6c 6c 62 61 63 6b 3b 0a 09 55 pfnCallback;..U
1230: 49 4e 54 2a 20 20 20 20 20 70 63 52 65 66 50 61 INT* pcRefPa
1240: 72 65 6e 74 3b 0a 09 73 74 61 74 69 63 20 69 66 rent;..static if
1250: 20 28 5f 57 49 4e 33 32 5f 49 45 20 3e 3d 20 30 (_WIN32_IE >= 0
1260: 78 30 34 30 30 29 20 7b 0a 09 09 4c 50 43 53 54 x0400) {...LPCST
1270: 52 20 70 73 7a 48 65 61 64 65 72 54 69 74 6c 65 R pszHeaderTitle
1280: 3b 0a 09 09 4c 50 43 53 54 52 20 70 73 7a 48 65 ;...LPCSTR pszHe
1290: 61 64 65 72 53 75 62 54 69 74 6c 65 3b 0a 09 7d aderSubTitle;..}
12a0: 0a 7d 0a 61 6c 69 61 73 20 50 52 4f 50 53 48 45 .}.alias PROPSHE
12b0: 45 54 50 41 47 45 41 2a 20 20 20 20 20 20 20 4c ETPAGEA* L
12c0: 50 50 52 4f 50 53 48 45 45 54 50 41 47 45 41 3b PPROPSHEETPAGEA;
12d0: 0a 61 6c 69 61 73 20 43 50 74 72 21 28 50 52 4f .alias CPtr!(PRO
12e0: 50 53 48 45 45 54 50 41 47 45 41 29 20 4c 50 43 PSHEETPAGEA) LPC
12f0: 50 52 4f 50 53 48 45 45 54 50 41 47 45 41 3b 0a PROPSHEETPAGEA;.
1300: 0a 73 74 72 75 63 74 20 50 52 4f 50 53 48 45 45 .struct PROPSHEE
1310: 54 50 41 47 45 57 20 7b 0a 09 44 57 4f 52 44 20 TPAGEW {..DWORD
1320: 20 20 20 20 64 77 53 69 7a 65 20 3d 20 50 52 4f dwSize = PRO
1330: 50 53 48 45 45 54 50 41 47 45 57 2e 73 69 7a 65 PSHEETPAGEW.size
1340: 6f 66 3b 0a 09 44 57 4f 52 44 20 20 20 20 20 64 of;..DWORD d
1350: 77 46 6c 61 67 73 3b 0a 09 48 49 4e 53 54 41 4e wFlags;..HINSTAN
1360: 43 45 20 68 49 6e 73 74 61 6e 63 65 3b 0a 09 75 CE hInstance;..u
1370: 6e 69 6f 6e 20 7b 0a 09 09 4c 50 43 57 53 54 52 nion {...LPCWSTR
1380: 20 20 20 20 20 20 20 20 70 73 7a 54 65 6d 70 6c pszTempl
1390: 61 74 65 3b 0a 09 09 4c 50 43 44 4c 47 54 45 4d ate;...LPCDLGTEM
13a0: 50 4c 41 54 45 20 70 52 65 73 6f 75 72 63 65 3b PLATE pResource;
13b0: 0a 09 7d 0a 09 75 6e 69 6f 6e 20 7b 0a 09 09 48 ..}..union {...H
13c0: 49 43 4f 4e 20 20 20 68 49 63 6f 6e 3b 0a 09 09 ICON hIcon;...
13d0: 4c 50 43 57 53 54 52 20 70 73 7a 49 63 6f 6e 3b LPCWSTR pszIcon;
13e0: 0a 09 7d 0a 09 4c 50 43 57 53 54 52 20 20 20 70 ..}..LPCWSTR p
13f0: 73 7a 54 69 74 6c 65 3b 0a 09 44 4c 47 50 52 4f szTitle;..DLGPRO
1400: 43 20 20 20 70 66 6e 44 6c 67 50 72 6f 63 3b 0a C pfnDlgProc;.
1410: 09 4c 50 41 52 41 4d 20 20 20 20 6c 50 61 72 61 .LPARAM lPara
1420: 6d 3b 0a 09 4c 50 46 4e 50 53 50 43 41 4c 4c 42 m;..LPFNPSPCALLB
1430: 41 43 4b 57 20 70 66 6e 43 61 6c 6c 62 61 63 6b ACKW pfnCallback
1440: 3b 0a 09 55 49 4e 54 2a 20 20 20 20 20 70 63 52 ;..UINT* pcR
1450: 65 66 50 61 72 65 6e 74 3b 0a 09 73 74 61 74 69 efParent;..stati
1460: 63 20 69 66 20 28 5f 57 49 4e 33 32 5f 49 45 20 c if (_WIN32_IE
1470: 3e 3d 20 30 78 30 34 30 30 29 20 7b 0a 09 09 4c >= 0x0400) {...L
1480: 50 43 57 53 54 52 20 70 73 7a 48 65 61 64 65 72 PCWSTR pszHeader
1490: 54 69 74 6c 65 3b 0a 09 09 4c 50 43 57 53 54 52 Title;...LPCWSTR
14a0: 20 70 73 7a 48 65 61 64 65 72 53 75 62 54 69 74 pszHeaderSubTit
14b0: 6c 65 3b 0a 09 7d 0a 7d 0a 61 6c 69 61 73 20 50 le;..}.}.alias P
14c0: 52 4f 50 53 48 45 45 54 50 41 47 45 57 2a 20 20 ROPSHEETPAGEW*
14d0: 20 20 20 20 20 4c 50 50 52 4f 50 53 48 45 45 54 LPPROPSHEET
14e0: 50 41 47 45 57 3b 0a 61 6c 69 61 73 20 43 50 74 PAGEW;.alias CPt
14f0: 72 21 28 50 52 4f 50 53 48 45 45 54 50 41 47 45 r!(PROPSHEETPAGE
1500: 57 29 20 4c 50 43 50 52 4f 50 53 48 45 45 54 50 W) LPCPROPSHEETP
1510: 41 47 45 57 3b 0a 0a 61 6c 69 61 73 20 48 41 4e AGEW;..alias HAN
1520: 44 4c 45 20 48 50 52 4f 50 53 48 45 45 54 50 41 DLE HPROPSHEETPA
1530: 47 45 3b 0a 0a 73 74 72 75 63 74 20 50 52 4f 50 GE;..struct PROP
1540: 53 48 45 45 54 48 45 41 44 45 52 41 20 7b 0a 09 SHEETHEADERA {..
1550: 44 57 4f 52 44 20 64 77 53 69 7a 65 20 3d 20 50 DWORD dwSize = P
1560: 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 41 2e ROPSHEETHEADERA.
1570: 73 69 7a 65 6f 66 3b 0a 09 44 57 4f 52 44 20 64 sizeof;..DWORD d
1580: 77 46 6c 61 67 73 3b 0a 09 48 57 4e 44 20 20 68 wFlags;..HWND h
1590: 77 6e 64 50 61 72 65 6e 74 3b 0a 09 48 49 4e 53 wndParent;..HINS
15a0: 54 41 4e 43 45 20 68 49 6e 73 74 61 6e 63 65 3b TANCE hInstance;
15b0: 0a 09 75 6e 69 6f 6e 20 7b 0a 09 09 48 49 43 4f ..union {...HICO
15c0: 4e 20 20 20 68 49 63 6f 6e 3b 0a 09 09 4c 50 43 N hIcon;...LPC
15d0: 53 54 52 20 20 70 73 7a 49 63 6f 6e 3b 0a 09 7d STR pszIcon;..}
15e0: 0a 09 4c 50 43 53 54 52 20 70 73 7a 43 61 70 74 ..LPCSTR pszCapt
15f0: 69 6f 6e 3b 0a 09 55 49 4e 54 20 20 20 6e 50 61 ion;..UINT nPa
1600: 67 65 73 3b 0a 09 75 6e 69 6f 6e 20 7b 0a 09 09 ges;..union {...
1610: 55 49 4e 54 20 20 20 6e 53 74 61 72 74 50 61 67 UINT nStartPag
1620: 65 3b 0a 09 09 4c 50 43 53 54 52 20 70 53 74 61 e;...LPCSTR pSta
1630: 72 74 50 61 67 65 3b 0a 09 7d 0a 09 75 6e 69 6f rtPage;..}..unio
1640: 6e 20 7b 0a 09 09 4c 50 43 50 52 4f 50 53 48 45 n {...LPCPROPSHE
1650: 45 54 50 41 47 45 41 20 70 70 73 70 3b 0a 09 09 ETPAGEA ppsp;...
1660: 48 50 52 4f 50 53 48 45 45 54 50 41 47 45 2a 20 HPROPSHEETPAGE*
1670: 20 20 70 68 70 61 67 65 3b 0a 09 7d 0a 09 50 46 phpage;..}..PF
1680: 4e 50 52 4f 50 53 48 45 45 54 43 41 4c 4c 42 41 NPROPSHEETCALLBA
1690: 43 4b 20 70 66 6e 43 61 6c 6c 62 61 63 6b 3b 0a CK pfnCallback;.
16a0: 09 73 74 61 74 69 63 20 69 66 20 28 5f 57 49 4e .static if (_WIN
16b0: 33 32 5f 49 45 20 3e 3d 20 30 78 30 34 30 30 29 32_IE >= 0x0400)
16c0: 20 7b 0a 09 09 75 6e 69 6f 6e 20 7b 0a 09 09 09 {...union {....
16d0: 48 42 49 54 4d 41 50 20 68 62 6d 57 61 74 65 72 HBITMAP hbmWater
16e0: 6d 61 72 6b 3b 0a 09 09 09 4c 50 43 53 54 52 20 mark;....LPCSTR
16f0: 20 70 73 7a 62 6d 57 61 74 65 72 6d 61 72 6b 3b pszbmWatermark;
1700: 0a 09 09 7d 0a 09 09 48 50 41 4c 45 54 54 45 20 ...}...HPALETTE
1710: 68 70 6c 57 61 74 65 72 6d 61 72 6b 3b 0a 09 09 hplWatermark;...
1720: 75 6e 69 6f 6e 20 7b 0a 09 09 09 48 42 49 54 4d union {....HBITM
1730: 41 50 20 68 62 6d 48 65 61 64 65 72 3b 0a 09 09 AP hbmHeader;...
1740: 09 4c 50 43 53 54 52 20 20 70 73 7a 62 6d 48 65 .LPCSTR pszbmHe
1750: 61 64 65 72 3b 0a 09 09 7d 0a 09 7d 0a 7d 0a 61 ader;...}..}.}.a
1760: 6c 69 61 73 20 50 52 4f 50 53 48 45 45 54 48 45 lias PROPSHEETHE
1770: 41 44 45 52 41 2a 20 20 20 20 20 20 20 4c 50 50 ADERA* LPP
1780: 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 41 3b ROPSHEETHEADERA;
1790: 0a 61 6c 69 61 73 20 43 50 74 72 21 28 50 52 4f .alias CPtr!(PRO
17a0: 50 53 48 45 45 54 48 45 41 44 45 52 41 29 20 4c PSHEETHEADERA) L
17b0: 50 43 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 PCPROPSHEETHEADE
17c0: 52 41 3b 0a 0a 73 74 72 75 63 74 20 50 52 4f 50 RA;..struct PROP
17d0: 53 48 45 45 54 48 45 41 44 45 52 57 20 7b 0a 09 SHEETHEADERW {..
17e0: 44 57 4f 52 44 20 20 20 20 20 64 77 53 69 7a 65 DWORD dwSize
17f0: 20 3d 20 50 52 4f 50 53 48 45 45 54 48 45 41 44 = PROPSHEETHEAD
1800: 45 52 57 2e 73 69 7a 65 6f 66 3b 0a 09 44 57 4f ERW.sizeof;..DWO
1810: 52 44 20 20 20 20 20 64 77 46 6c 61 67 73 3b 0a RD dwFlags;.
1820: 09 48 57 4e 44 20 20 20 20 20 20 68 77 6e 64 50 .HWND hwndP
1830: 61 72 65 6e 74 3b 0a 09 48 49 4e 53 54 41 4e 43 arent;..HINSTANC
1840: 45 20 68 49 6e 73 74 61 6e 63 65 3b 0a 09 75 6e E hInstance;..un
1850: 69 6f 6e 20 7b 0a 09 09 48 49 43 4f 4e 20 20 20 ion {...HICON
1860: 68 49 63 6f 6e 3b 0a 09 09 4c 50 43 57 53 54 52 hIcon;...LPCWSTR
1870: 20 70 73 7a 49 63 6f 6e 3b 0a 09 7d 0a 09 4c 50 pszIcon;..}..LP
1880: 43 57 53 54 52 20 20 20 70 73 7a 43 61 70 74 69 CWSTR pszCapti
1890: 6f 6e 3b 0a 09 55 49 4e 54 20 20 20 20 20 20 6e on;..UINT n
18a0: 50 61 67 65 73 3b 0a 09 75 6e 69 6f 6e 20 7b 0a Pages;..union {.
18b0: 09 09 55 49 4e 54 20 20 20 20 6e 53 74 61 72 74 ..UINT nStart
18c0: 50 61 67 65 3b 0a 09 09 4c 50 43 57 53 54 52 20 Page;...LPCWSTR
18d0: 70 53 74 61 72 74 50 61 67 65 3b 0a 09 7d 0a 09 pStartPage;..}..
18e0: 75 6e 69 6f 6e 20 7b 0a 09 09 4c 50 43 50 52 4f union {...LPCPRO
18f0: 50 53 48 45 45 54 50 41 47 45 57 20 70 70 73 70 PSHEETPAGEW ppsp
1900: 3b 0a 09 09 48 50 52 4f 50 53 48 45 45 54 50 41 ;...HPROPSHEETPA
1910: 47 45 2a 20 20 20 70 68 70 61 67 65 3b 0a 09 7d GE* phpage;..}
1920: 0a 09 50 46 4e 50 52 4f 50 53 48 45 45 54 43 41 ..PFNPROPSHEETCA
1930: 4c 4c 42 41 43 4b 20 70 66 6e 43 61 6c 6c 62 61 LLBACK pfnCallba
1940: 63 6b 3b 0a 09 73 74 61 74 69 63 20 69 66 20 28 ck;..static if (
1950: 5f 57 49 4e 33 32 5f 49 45 20 3e 3d 20 30 78 30 _WIN32_IE >= 0x0
1960: 34 30 30 29 20 7b 0a 09 09 75 6e 69 6f 6e 20 7b 400) {...union {
1970: 0a 09 09 09 48 42 49 54 4d 41 50 20 68 62 6d 57 ....HBITMAP hbmW
1980: 61 74 65 72 6d 61 72 6b 3b 0a 09 09 09 4c 50 43 atermark;....LPC
1990: 57 53 54 52 20 70 73 7a 62 6d 57 61 74 65 72 6d WSTR pszbmWaterm
19a0: 61 72 6b 3b 0a 09 09 7d 0a 09 09 48 50 41 4c 45 ark;...}...HPALE
19b0: 54 54 45 20 68 70 6c 57 61 74 65 72 6d 61 72 6b TTE hplWatermark
19c0: 3b 0a 09 09 75 6e 69 6f 6e 20 7b 0a 09 09 09 48 ;...union {....H
19d0: 42 49 54 4d 41 50 20 68 62 6d 48 65 61 64 65 72 BITMAP hbmHeader
19e0: 3b 0a 09 09 09 4c 50 43 57 53 54 52 20 70 73 7a ;....LPCWSTR psz
19f0: 62 6d 48 65 61 64 65 72 3b 0a 09 09 7d 0a 09 7d bmHeader;...}..}
1a00: 0a 7d 0a 61 6c 69 61 73 20 50 52 4f 50 53 48 45 .}.alias PROPSHE
1a10: 45 54 48 45 41 44 45 52 57 2a 20 20 20 20 20 20 ETHEADERW*
1a20: 20 4c 50 50 52 4f 50 53 48 45 45 54 48 45 41 44 LPPROPSHEETHEAD
1a30: 45 52 57 3b 0a 61 6c 69 61 73 20 43 50 74 72 21 ERW;.alias CPtr!
1a40: 28 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 (PROPSHEETHEADER
1a50: 57 29 20 4c 50 43 50 52 4f 50 53 48 45 45 54 48 W) LPCPROPSHEETH
1a60: 45 41 44 45 52 57 3b 0a 0a 61 6c 69 61 73 20 42 EADERW;..alias B
1a70: 4f 4f 4c 20 66 75 6e 63 74 69 6f 6e 28 48 50 52 OOL function(HPR
1a80: 4f 50 53 48 45 45 54 50 41 47 45 2c 20 4c 50 41 OPSHEETPAGE, LPA
1a90: 52 41 4d 29 20 4c 50 46 4e 41 44 44 50 52 4f 50 RAM) LPFNADDPROP
1aa0: 53 48 45 45 54 50 41 47 45 3b 0a 61 6c 69 61 73 SHEETPAGE;.alias
1ab0: 20 42 4f 4f 4c 20 66 75 6e 63 74 69 6f 6e 28 4c BOOL function(L
1ac0: 50 56 4f 49 44 2c 20 4c 50 46 4e 41 44 44 50 52 PVOID, LPFNADDPR
1ad0: 4f 50 53 48 45 45 54 50 41 47 45 2c 20 4c 50 41 OPSHEETPAGE, LPA
1ae0: 52 41 4d 29 0a 20 20 4c 50 46 4e 41 44 44 50 52 RAM). LPFNADDPR
1af0: 4f 50 53 48 45 45 54 50 41 47 45 53 3b 0a 0a 73 OPSHEETPAGES;..s
1b00: 74 72 75 63 74 20 50 53 48 4e 4f 54 49 46 59 20 truct PSHNOTIFY
1b10: 7b 0a 09 4e 4d 48 44 52 20 20 68 64 72 3b 0a 09 {..NMHDR hdr;..
1b20: 4c 50 41 52 41 4d 20 6c 50 61 72 61 6d 3b 0a 7d LPARAM lParam;.}
1b30: 0a 61 6c 69 61 73 20 50 53 48 4e 4f 54 49 46 59 .alias PSHNOTIFY
1b40: 2a 20 4c 50 50 53 48 4e 4f 54 49 46 59 3b 0a 0a * LPPSHNOTIFY;..
1b50: 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77 73 29 extern (Windows)
1b60: 20 7b 0a 09 48 50 52 4f 50 53 48 45 45 54 50 41 {..HPROPSHEETPA
1b70: 47 45 20 43 72 65 61 74 65 50 72 6f 70 65 72 74 GE CreatePropert
1b80: 79 53 68 65 65 74 50 61 67 65 41 28 4c 50 43 50 ySheetPageA(LPCP
1b90: 52 4f 50 53 48 45 45 54 50 41 47 45 41 29 3b 0a ROPSHEETPAGEA);.
1ba0: 09 48 50 52 4f 50 53 48 45 45 54 50 41 47 45 20 .HPROPSHEETPAGE
1bb0: 43 72 65 61 74 65 50 72 6f 70 65 72 74 79 53 68 CreatePropertySh
1bc0: 65 65 74 50 61 67 65 57 28 4c 50 43 50 52 4f 50 eetPageW(LPCPROP
1bd0: 53 48 45 45 54 50 41 47 45 57 29 3b 0a 09 42 4f SHEETPAGEW);..BO
1be0: 4f 4c 20 44 65 73 74 72 6f 79 50 72 6f 70 65 72 OL DestroyProper
1bf0: 74 79 53 68 65 65 74 50 61 67 65 28 48 50 52 4f tySheetPage(HPRO
1c00: 50 53 48 45 45 54 50 41 47 45 29 3b 0a 09 69 6e PSHEETPAGE);..in
1c10: 74 20 50 72 6f 70 65 72 74 79 53 68 65 65 74 41 t PropertySheetA
1c20: 28 4c 50 43 50 52 4f 50 53 48 45 45 54 48 45 41 (LPCPROPSHEETHEA
1c30: 44 45 52 41 29 3b 0a 09 69 6e 74 20 50 72 6f 70 DERA);..int Prop
1c40: 65 72 74 79 53 68 65 65 74 57 28 4c 50 43 50 52 ertySheetW(LPCPR
1c50: 4f 50 53 48 45 45 54 48 45 41 44 45 52 57 29 3b OPSHEETHEADERW);
1c60: 0a 7d 0a 0a 76 65 72 73 69 6f 6e 20 28 55 6e 69 .}..version (Uni
1c70: 63 6f 64 65 29 20 7b 0a 09 61 6c 69 61 73 20 4c code) {..alias L
1c80: 50 46 4e 50 53 50 43 41 4c 4c 42 41 43 4b 57 20 PFNPSPCALLBACKW
1c90: 20 20 20 20 20 20 20 20 4c 50 46 4e 50 53 50 43 LPFNPSPC
1ca0: 41 4c 4c 42 41 43 4b 3b 0a 09 61 6c 69 61 73 20 ALLBACK;..alias
1cb0: 50 52 4f 50 53 48 45 45 54 50 41 47 45 57 20 20 PROPSHEETPAGEW
1cc0: 20 20 20 20 20 20 20 20 20 50 52 4f 50 53 48 45 PROPSHE
1cd0: 45 54 50 41 47 45 3b 0a 09 61 6c 69 61 73 20 4c ETPAGE;..alias L
1ce0: 50 50 52 4f 50 53 48 45 45 54 50 41 47 45 57 20 PPROPSHEETPAGEW
1cf0: 20 20 20 20 20 20 20 20 4c 50 50 52 4f 50 53 48 LPPROPSH
1d00: 45 45 54 50 41 47 45 3b 0a 09 61 6c 69 61 73 20 EETPAGE;..alias
1d10: 4c 50 43 50 52 4f 50 53 48 45 45 54 50 41 47 45 LPCPROPSHEETPAGE
1d20: 57 20 20 20 20 20 20 20 20 4c 50 43 50 52 4f 50 W LPCPROP
1d30: 53 48 45 45 54 50 41 47 45 3b 0a 09 61 6c 69 61 SHEETPAGE;..alia
1d40: 73 20 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 s PROPSHEETHEADE
1d50: 52 57 20 20 20 20 20 20 20 20 20 50 52 4f 50 53 RW PROPS
1d60: 48 45 45 54 48 45 41 44 45 52 3b 0a 09 61 6c 69 HEETHEADER;..ali
1d70: 61 73 20 4c 50 50 52 4f 50 53 48 45 45 54 48 45 as LPPROPSHEETHE
1d80: 41 44 45 52 57 20 20 20 20 20 20 20 4c 50 50 52 ADERW LPPR
1d90: 4f 50 53 48 45 45 54 48 45 41 44 45 52 3b 0a 09 OPSHEETHEADER;..
1da0: 61 6c 69 61 73 20 4c 50 43 50 52 4f 50 53 48 45 alias LPCPROPSHE
1db0: 45 54 48 45 41 44 45 52 57 20 20 20 20 20 20 4c ETHEADERW L
1dc0: 50 43 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 PCPROPSHEETHEADE
1dd0: 52 3b 0a 09 61 6c 69 61 73 20 50 53 4d 5f 53 45 R;..alias PSM_SE
1de0: 54 54 49 54 4c 45 57 20 20 20 20 20 20 20 20 20 TTITLEW
1df0: 20 20 20 50 53 4d 5f 53 45 54 54 49 54 4c 45 3b PSM_SETTITLE;
1e00: 0a 09 61 6c 69 61 73 20 50 53 4d 5f 53 45 54 46 ..alias PSM_SETF
1e10: 49 4e 49 53 48 54 45 58 54 57 20 20 20 20 20 20 INISHTEXTW
1e20: 20 50 53 4d 5f 53 45 54 46 49 4e 49 53 48 54 45 PSM_SETFINISHTE
1e30: 58 54 3b 0a 09 61 6c 69 61 73 20 43 72 65 61 74 XT;..alias Creat
1e40: 65 50 72 6f 70 65 72 74 79 53 68 65 65 74 50 61 ePropertySheetPa
1e50: 67 65 57 20 43 72 65 61 74 65 50 72 6f 70 65 72 geW CreateProper
1e60: 74 79 53 68 65 65 74 50 61 67 65 3b 0a 09 61 6c tySheetPage;..al
1e70: 69 61 73 20 50 72 6f 70 65 72 74 79 53 68 65 65 ias PropertyShee
1e80: 74 57 20 20 20 20 20 20 20 20 20 20 20 50 72 6f tW Pro
1e90: 70 65 72 74 79 53 68 65 65 74 3b 0a 7d 20 65 6c pertySheet;.} el
1ea0: 73 65 20 7b 0a 09 61 6c 69 61 73 20 4c 50 46 4e se {..alias LPFN
1eb0: 50 53 50 43 41 4c 4c 42 41 43 4b 41 20 20 20 20 PSPCALLBACKA
1ec0: 20 20 20 20 20 4c 50 46 4e 50 53 50 43 41 4c 4c LPFNPSPCALL
1ed0: 42 41 43 4b 3b 0a 09 61 6c 69 61 73 20 50 52 4f BACK;..alias PRO
1ee0: 50 53 48 45 45 54 50 41 47 45 41 20 20 20 20 20 PSHEETPAGEA
1ef0: 20 20 20 20 20 20 50 52 4f 50 53 48 45 45 54 50 PROPSHEETP
1f00: 41 47 45 3b 0a 09 61 6c 69 61 73 20 4c 50 50 52 AGE;..alias LPPR
1f10: 4f 50 53 48 45 45 54 50 41 47 45 41 20 20 20 20 OPSHEETPAGEA
1f20: 20 20 20 20 20 4c 50 50 52 4f 50 53 48 45 45 54 LPPROPSHEET
1f30: 50 41 47 45 3b 0a 09 61 6c 69 61 73 20 4c 50 43 PAGE;..alias LPC
1f40: 50 52 4f 50 53 48 45 45 54 50 41 47 45 41 20 20 PROPSHEETPAGEA
1f50: 20 20 20 20 20 20 4c 50 43 50 52 4f 50 53 48 45 LPCPROPSHE
1f60: 45 54 50 41 47 45 3b 0a 09 61 6c 69 61 73 20 50 ETPAGE;..alias P
1f70: 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 41 20 ROPSHEETHEADERA
1f80: 20 20 20 20 20 20 20 20 50 52 4f 50 53 48 45 45 PROPSHEE
1f90: 54 48 45 41 44 45 52 3b 0a 09 61 6c 69 61 73 20 THEADER;..alias
1fa0: 4c 50 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 LPPROPSHEETHEADE
1fb0: 52 41 20 20 20 20 20 20 20 4c 50 50 52 4f 50 53 RA LPPROPS
1fc0: 48 45 45 54 48 45 41 44 45 52 3b 0a 09 61 6c 69 HEETHEADER;..ali
1fd0: 61 73 20 4c 50 43 50 52 4f 50 53 48 45 45 54 48 as LPCPROPSHEETH
1fe0: 45 41 44 45 52 41 20 20 20 20 20 20 4c 50 43 50 EADERA LPCP
1ff0: 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 3b 0a ROPSHEETHEADER;.
2000: 09 61 6c 69 61 73 20 50 53 4d 5f 53 45 54 54 49 .alias PSM_SETTI
2010: 54 4c 45 41 20 20 20 20 20 20 20 20 20 20 20 20 TLEA
2020: 50 53 4d 5f 53 45 54 54 49 54 4c 45 3b 0a 09 61 PSM_SETTITLE;..a
2030: 6c 69 61 73 20 50 53 4d 5f 53 45 54 46 49 4e 49 lias PSM_SETFINI
2040: 53 48 54 45 58 54 41 20 20 20 20 20 20 20 50 53 SHTEXTA PS
2050: 4d 5f 53 45 54 46 49 4e 49 53 48 54 45 58 54 3b M_SETFINISHTEXT;
2060: 0a 09 61 6c 69 61 73 20 43 72 65 61 74 65 50 72 ..alias CreatePr
2070: 6f 70 65 72 74 79 53 68 65 65 74 50 61 67 65 41 opertySheetPageA
2080: 20 43 72 65 61 74 65 50 72 6f 70 65 72 74 79 53 CreatePropertyS
2090: 68 65 65 74 50 61 67 65 3b 0a 09 61 6c 69 61 73 heetPage;..alias
20a0: 20 50 72 6f 70 65 72 74 79 53 68 65 65 74 41 20 PropertySheetA
20b0: 20 20 20 20 20 20 20 20 20 20 50 72 6f 70 65 72 Proper
20c0: 74 79 53 68 65 65 74 3b 0a 7d 0a 0a 42 4f 4f 4c tySheet;.}..BOOL
20d0: 20 50 72 6f 70 53 68 65 65 74 5f 53 65 74 43 75 PropSheet_SetCu
20e0: 72 53 65 6c 28 48 57 4e 44 20 68 50 72 6f 70 53 rSel(HWND hPropS
20f0: 68 65 65 74 44 6c 67 2c 20 48 50 52 4f 50 53 48 heetDlg, HPROPSH
2100: 45 45 54 50 41 47 45 20 68 70 61 67 65 2c 0a 09 EETPAGE hpage,..
2110: 20 20 48 50 52 4f 50 53 48 45 45 54 50 41 47 45 HPROPSHEETPAGE
2120: 20 69 6e 64 65 78 29 20 7b 0a 09 72 65 74 75 72 index) {..retur
2130: 6e 20 63 61 73 74 28 42 4f 4f 4c 29 20 53 65 6e n cast(BOOL) Sen
2140: 64 4d 65 73 73 61 67 65 28 68 50 72 6f 70 53 68 dMessage(hPropSh
2150: 65 65 74 44 6c 67 2c 20 50 53 4d 5f 53 45 54 43 eetDlg, PSM_SETC
2160: 55 52 53 45 4c 2c 0a 09 20 20 63 61 73 74 28 57 URSEL,.. cast(W
2170: 50 41 52 41 4d 29 20 69 6e 64 65 78 2c 20 63 61 PARAM) index, ca
2180: 73 74 28 4c 50 41 52 41 4d 29 20 68 70 61 67 65 st(LPARAM) hpage
2190: 29 3b 0a 7d 0a 0a 56 4f 49 44 20 50 72 6f 70 53 );.}..VOID PropS
21a0: 68 65 65 74 5f 52 65 6d 6f 76 65 50 61 67 65 28 heet_RemovePage(
21b0: 48 57 4e 44 20 68 50 72 6f 70 53 68 65 65 74 44 HWND hPropSheetD
21c0: 6c 67 2c 20 69 6e 74 20 69 6e 64 65 78 2c 20 48 lg, int index, H
21d0: 50 52 4f 50 53 48 45 45 54 50 41 47 45 20 68 70 PROPSHEETPAGE hp
21e0: 61 67 65 29 20 7b 0a 09 53 65 6e 64 4d 65 73 73 age) {..SendMess
21f0: 61 67 65 28 68 50 72 6f 70 53 68 65 65 74 44 6c age(hPropSheetDl
2200: 67 2c 20 50 53 4d 5f 52 45 4d 4f 56 45 50 41 47 g, PSM_REMOVEPAG
2210: 45 2c 20 69 6e 64 65 78 2c 20 63 61 73 74 28 4c E, index, cast(L
2220: 50 41 52 41 4d 29 20 68 70 61 67 65 29 3b 0a 7d PARAM) hpage);.}
2230: 0a 0a 42 4f 4f 4c 20 50 72 6f 70 53 68 65 65 74 ..BOOL PropSheet
2240: 5f 41 64 64 50 61 67 65 28 48 57 4e 44 20 68 50 _AddPage(HWND hP
2250: 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 48 50 52 ropSheetDlg, HPR
2260: 4f 50 53 48 45 45 54 50 41 47 45 20 68 70 61 67 OPSHEETPAGE hpag
2270: 65 29 20 7b 0a 09 09 72 65 74 75 72 6e 20 63 61 e) {...return ca
2280: 73 74 28 42 4f 4f 4c 29 20 53 65 6e 64 4d 65 73 st(BOOL) SendMes
2290: 73 61 67 65 28 68 50 72 6f 70 53 68 65 65 74 44 sage(hPropSheetD
22a0: 6c 67 2c 20 50 53 4d 5f 41 44 44 50 41 47 45 2c lg, PSM_ADDPAGE,
22b0: 0a 09 09 20 20 30 2c 20 63 61 73 74 28 4c 50 41 ... 0, cast(LPA
22c0: 52 41 4d 29 20 68 70 61 67 65 29 3b 0a 7d 0a 0a RAM) hpage);.}..
22d0: 56 4f 49 44 20 50 72 6f 70 53 68 65 65 74 5f 43 VOID PropSheet_C
22e0: 68 61 6e 67 65 64 28 48 57 4e 44 20 68 50 72 6f hanged(HWND hPro
22f0: 70 53 68 65 65 74 44 6c 67 2c 20 48 57 4e 44 20 pSheetDlg, HWND
2300: 68 77 6e 64 50 61 67 65 29 20 7b 0a 09 53 65 6e hwndPage) {..Sen
2310: 64 4d 65 73 73 61 67 65 28 68 50 72 6f 70 53 68 dMessage(hPropSh
2320: 65 65 74 44 6c 67 2c 20 50 53 4d 5f 43 48 41 4e eetDlg, PSM_CHAN
2330: 47 45 44 2c 20 63 61 73 74 28 57 50 41 52 41 4d GED, cast(WPARAM
2340: 29 20 68 77 6e 64 50 61 67 65 2c 20 30 29 3b 0a ) hwndPage, 0);.
2350: 7d 0a 0a 56 4f 49 44 20 50 72 6f 70 53 68 65 65 }..VOID PropShee
2360: 74 5f 52 65 73 74 61 72 74 57 69 6e 64 6f 77 73 t_RestartWindows
2370: 28 48 57 4e 44 20 68 50 72 6f 70 53 68 65 65 74 (HWND hPropSheet
2380: 44 6c 67 29 20 7b 0a 09 53 65 6e 64 4d 65 73 73 Dlg) {..SendMess
2390: 61 67 65 28 68 50 72 6f 70 53 68 65 65 74 44 6c age(hPropSheetDl
23a0: 67 2c 20 50 53 4d 5f 52 45 53 54 41 52 54 57 49 g, PSM_RESTARTWI
23b0: 4e 44 4f 57 53 2c 20 30 2c 20 30 29 3b 0a 7d 0a NDOWS, 0, 0);.}.
23c0: 0a 56 4f 49 44 20 50 72 6f 70 53 68 65 65 74 5f .VOID PropSheet_
23d0: 52 65 62 6f 6f 74 53 79 73 74 65 6d 28 48 57 4e RebootSystem(HWN
23e0: 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 29 D hPropSheetDlg)
23f0: 20 7b 0a 09 53 65 6e 64 4d 65 73 73 61 67 65 28 {..SendMessage(
2400: 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 50 hPropSheetDlg, P
2410: 53 4d 5f 52 45 42 4f 4f 54 53 59 53 54 45 4d 2c SM_REBOOTSYSTEM,
2420: 20 30 2c 20 30 29 3b 0a 7d 0a 0a 56 4f 49 44 20 0, 0);.}..VOID
2430: 50 72 6f 70 53 68 65 65 74 5f 43 61 6e 63 65 6c PropSheet_Cancel
2440: 54 6f 43 6c 6f 73 65 28 48 57 4e 44 20 68 50 72 ToClose(HWND hPr
2450: 6f 70 53 68 65 65 74 44 6c 67 29 20 7b 0a 09 53 opSheetDlg) {..S
2460: 65 6e 64 4d 65 73 73 61 67 65 28 68 50 72 6f 70 endMessage(hProp
2470: 53 68 65 65 74 44 6c 67 2c 20 50 53 4d 5f 43 41 SheetDlg, PSM_CA
2480: 4e 43 45 4c 54 4f 43 4c 4f 53 45 2c 20 30 2c 20 NCELTOCLOSE, 0,
2490: 30 29 3b 0a 7d 0a 0a 69 6e 74 20 50 72 6f 70 53 0);.}..int PropS
24a0: 68 65 65 74 5f 51 75 65 72 79 53 69 62 6c 69 6e heet_QuerySiblin
24b0: 67 73 28 48 57 4e 44 20 68 50 72 6f 70 53 68 65 gs(HWND hPropShe
24c0: 65 74 44 6c 67 2c 20 57 50 41 52 41 4d 20 70 61 etDlg, WPARAM pa
24d0: 72 61 6d 31 2c 20 4c 50 41 52 41 4d 20 70 61 72 ram1, LPARAM par
24e0: 61 6d 32 29 20 7b 0a 09 72 65 74 75 72 6e 20 53 am2) {..return S
24f0: 65 6e 64 4d 65 73 73 61 67 65 28 68 50 72 6f 70 endMessage(hProp
2500: 53 68 65 65 74 44 6c 67 2c 20 50 53 4d 5f 51 55 SheetDlg, PSM_QU
2510: 45 52 59 53 49 42 4c 49 4e 47 53 2c 20 70 61 72 ERYSIBLINGS, par
2520: 61 6d 31 2c 20 70 61 72 61 6d 32 29 3b 0a 7d 0a am1, param2);.}.
2530: 0a 56 4f 49 44 20 50 72 6f 70 53 68 65 65 74 5f .VOID PropSheet_
2540: 55 6e 43 68 61 6e 67 65 64 28 48 57 4e 44 20 68 UnChanged(HWND h
2550: 50 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 48 57 PropSheetDlg, HW
2560: 4e 44 20 68 77 6e 64 50 61 67 65 29 20 7b 0a 09 ND hwndPage) {..
2570: 53 65 6e 64 4d 65 73 73 61 67 65 28 68 50 72 6f SendMessage(hPro
2580: 70 53 68 65 65 74 44 6c 67 2c 20 50 53 4d 5f 55 pSheetDlg, PSM_U
2590: 4e 43 48 41 4e 47 45 44 2c 20 63 61 73 74 28 57 NCHANGED, cast(W
25a0: 50 41 52 41 4d 29 20 68 77 6e 64 50 61 67 65 2c PARAM) hwndPage,
25b0: 20 30 29 3b 0a 7d 0a 0a 42 4f 4f 4c 20 50 72 6f 0);.}..BOOL Pro
25c0: 70 53 68 65 65 74 5f 41 70 70 6c 79 28 48 57 4e pSheet_Apply(HWN
25d0: 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 29 D hPropSheetDlg)
25e0: 20 7b 0a 09 72 65 74 75 72 6e 20 63 61 73 74 28 {..return cast(
25f0: 42 4f 4f 4c 29 20 53 65 6e 64 4d 65 73 73 61 67 BOOL) SendMessag
2600: 65 28 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c e(hPropSheetDlg,
2610: 20 50 53 4d 5f 41 50 50 4c 59 2c 20 30 2c 20 30 PSM_APPLY, 0, 0
2620: 29 3b 0a 7d 0a 0a 56 4f 49 44 20 50 72 6f 70 53 );.}..VOID PropS
2630: 68 65 65 74 5f 53 65 74 54 69 74 6c 65 28 48 57 heet_SetTitle(HW
2640: 4e 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 ND hPropSheetDlg
2650: 2c 20 44 57 4f 52 44 20 77 53 74 79 6c 65 2c 20 , DWORD wStyle,
2660: 4c 50 54 53 54 52 20 6c 70 73 7a 54 65 78 74 29 LPTSTR lpszText)
2670: 20 7b 0a 09 53 65 6e 64 4d 65 73 73 61 67 65 28 {..SendMessage(
2680: 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 50 hPropSheetDlg, P
2690: 53 4d 5f 53 45 54 54 49 54 4c 45 2c 20 77 53 74 SM_SETTITLE, wSt
26a0: 79 6c 65 2c 20 63 61 73 74 28 4c 50 41 52 41 4d yle, cast(LPARAM
26b0: 29 20 6c 70 73 7a 54 65 78 74 29 3b 0a 7d 0a 0a ) lpszText);.}..
26c0: 56 4f 49 44 20 50 72 6f 70 53 68 65 65 74 5f 53 VOID PropSheet_S
26d0: 65 74 57 69 7a 42 75 74 74 6f 6e 73 28 48 57 4e etWizButtons(HWN
26e0: 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c D hPropSheetDlg,
26f0: 20 44 57 4f 52 44 20 64 77 46 6c 61 67 73 29 20 DWORD dwFlags)
2700: 7b 0a 09 50 6f 73 74 4d 65 73 73 61 67 65 28 68 {..PostMessage(h
2710: 50 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 50 53 PropSheetDlg, PS
2720: 4d 5f 53 45 54 57 49 5a 42 55 54 54 4f 4e 53 2c M_SETWIZBUTTONS,
2730: 20 30 2c 20 63 61 73 74 28 4c 50 41 52 41 4d 29 0, cast(LPARAM)
2740: 20 64 77 46 6c 61 67 73 29 3b 0a 7d 0a 0a 42 4f dwFlags);.}..BO
2750: 4f 4c 20 50 72 6f 70 53 68 65 65 74 5f 50 72 65 OL PropSheet_Pre
2760: 73 73 42 75 74 74 6f 6e 28 48 57 4e 44 20 68 50 ssButton(HWND hP
2770: 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 69 6e 74 ropSheetDlg, int
2780: 20 69 42 75 74 74 6f 6e 29 20 7b 0a 09 72 65 74 iButton) {..ret
2790: 75 72 6e 20 63 61 73 74 28 42 4f 4f 4c 29 20 53 urn cast(BOOL) S
27a0: 65 6e 64 4d 65 73 73 61 67 65 28 68 50 72 6f 70 endMessage(hProp
27b0: 53 68 65 65 74 44 6c 67 2c 20 50 53 4d 5f 50 52 SheetDlg, PSM_PR
27c0: 45 53 53 42 55 54 54 4f 4e 2c 20 69 42 75 74 74 ESSBUTTON, iButt
27d0: 6f 6e 2c 20 30 29 3b 0a 7d 0a 0a 42 4f 4f 4c 20 on, 0);.}..BOOL
27e0: 50 72 6f 70 53 68 65 65 74 5f 53 65 74 43 75 72 PropSheet_SetCur
27f0: 53 65 6c 42 79 49 44 28 48 57 4e 44 20 68 50 72 SelByID(HWND hPr
2800: 6f 70 53 68 65 65 74 44 6c 67 2c 20 69 6e 74 20 opSheetDlg, int
2810: 69 64 29 20 7b 0a 09 72 65 74 75 72 6e 20 63 61 id) {..return ca
2820: 73 74 28 42 4f 4f 4c 29 20 53 65 6e 64 4d 65 73 st(BOOL) SendMes
2830: 73 61 67 65 28 68 50 72 6f 70 53 68 65 65 74 44 sage(hPropSheetD
2840: 6c 67 2c 20 50 53 4d 5f 53 45 54 43 55 52 53 45 lg, PSM_SETCURSE
2850: 4c 49 44 2c 20 30 2c 20 69 64 29 3b 0a 7d 0a 0a LID, 0, id);.}..
2860: 56 4f 49 44 20 50 72 6f 70 53 68 65 65 74 5f 53 VOID PropSheet_S
2870: 65 74 46 69 6e 69 73 68 54 65 78 74 28 48 57 4e etFinishText(HWN
2880: 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c D hPropSheetDlg,
2890: 20 4c 50 54 53 54 52 20 6c 70 73 7a 54 65 78 74 LPTSTR lpszText
28a0: 29 20 7b 0a 09 53 65 6e 64 4d 65 73 73 61 67 65 ) {..SendMessage
28b0: 28 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 (hPropSheetDlg,
28c0: 50 53 4d 5f 53 45 54 46 49 4e 49 53 48 54 45 58 PSM_SETFINISHTEX
28d0: 54 2c 20 30 2c 20 63 61 73 74 28 4c 50 41 52 41 T, 0, cast(LPARA
28e0: 4d 29 20 6c 70 73 7a 54 65 78 74 29 3b 0a 7d 0a M) lpszText);.}.
28f0: 0a 48 57 4e 44 20 50 72 6f 70 53 68 65 65 74 5f .HWND PropSheet_
2900: 47 65 74 54 61 62 43 6f 6e 74 72 6f 6c 28 48 57 GetTabControl(HW
2910: 4e 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 ND hPropSheetDlg
2920: 29 20 7b 0a 09 72 65 74 75 72 6e 20 63 61 73 74 ) {..return cast
2930: 28 48 57 4e 44 29 20 53 65 6e 64 4d 65 73 73 61 (HWND) SendMessa
2940: 67 65 28 68 50 72 6f 70 53 68 65 65 74 44 6c 67 ge(hPropSheetDlg
2950: 2c 20 50 53 4d 5f 47 45 54 54 41 42 43 4f 4e 54 , PSM_GETTABCONT
2960: 52 4f 4c 2c 20 30 2c 20 30 29 3b 0a 7d 0a 0a 42 ROL, 0, 0);.}..B
2970: 4f 4f 4c 20 50 72 6f 70 53 68 65 65 74 5f 49 73 OOL PropSheet_Is
2980: 44 69 61 6c 6f 67 4d 65 73 73 61 67 65 28 48 57 DialogMessage(HW
2990: 4e 44 20 68 44 6c 67 2c 20 4c 50 4d 53 47 20 70 ND hDlg, LPMSG p
29a0: 4d 73 67 29 20 7b 0a 09 72 65 74 75 72 6e 20 63 Msg) {..return c
29b0: 61 73 74 28 42 4f 4f 4c 29 20 53 65 6e 64 4d 65 ast(BOOL) SendMe
29c0: 73 73 61 67 65 28 68 44 6c 67 2c 20 50 53 4d 5f ssage(hDlg, PSM_
29d0: 49 53 44 49 41 4c 4f 47 4d 45 53 53 41 47 45 2c ISDIALOGMESSAGE,
29e0: 0a 09 20 20 30 2c 20 63 61 73 74 28 4c 50 41 52 .. 0, cast(LPAR
29f0: 41 4d 29 20 70 4d 73 67 29 3b 0a 7d 0a 0a 48 57 AM) pMsg);.}..HW
2a00: 4e 44 20 50 72 6f 70 53 68 65 65 74 5f 47 65 74 ND PropSheet_Get
2a10: 43 75 72 72 65 6e 74 50 61 67 65 48 77 6e 64 28 CurrentPageHwnd(
2a20: 48 57 4e 44 20 68 44 6c 67 29 20 7b 0a 09 72 65 HWND hDlg) {..re
2a30: 74 75 72 6e 20 63 61 73 74 28 48 57 4e 44 29 20 turn cast(HWND)
2a40: 53 65 6e 64 4d 65 73 73 61 67 65 28 68 44 6c 67 SendMessage(hDlg
2a50: 2c 20 50 53 4d 5f 47 45 54 43 55 52 52 45 4e 54 , PSM_GETCURRENT
2a60: 50 41 47 45 48 57 4e 44 2c 20 30 2c 20 30 29 3b PAGEHWND, 0, 0);
2a70: 0a 7d 0a 0a 42 4f 4f 4c 20 50 72 6f 70 53 68 65 .}..BOOL PropShe
2a80: 65 74 5f 49 6e 73 65 72 74 50 61 67 65 28 48 57 et_InsertPage(HW
2a90: 4e 44 20 68 50 72 6f 70 53 68 65 65 74 44 6c 67 ND hPropSheetDlg
2aa0: 2c 20 57 50 41 52 41 4d 20 77 49 6e 73 65 72 74 , WPARAM wInsert
2ab0: 41 66 74 65 72 2c 0a 09 20 20 48 50 52 4f 50 53 After,.. HPROPS
2ac0: 48 45 45 54 50 41 47 45 20 68 70 61 67 65 29 20 HEETPAGE hpage)
2ad0: 7b 0a 09 72 65 74 75 72 6e 20 63 61 73 74 28 42 {..return cast(B
2ae0: 4f 4f 4c 29 20 53 65 6e 64 4d 65 73 73 61 67 65 OOL) SendMessage
2af0: 28 68 50 72 6f 70 53 68 65 65 74 44 6c 67 2c 20 (hPropSheetDlg,
2b00: 50 53 4d 5f 49 4e 53 45 52 54 50 41 47 45 2c 0a PSM_INSERTPAGE,.
2b10: 09 20 20 77 49 6e 73 65 72 74 41 66 74 65 72 2c . wInsertAfter,
2b20: 20 63 61 73 74 28 4c 50 41 52 41 4d 29 20 68 70 cast(LPARAM) hp
2b30: 61 67 65 29 3b 0a 7d 0a age);.}.