1 /*
2  * compstui.h
3  *
4  * This file is part of the ReactOS PSDK package.
5  *
6  * Contributors:
7  *   Created by Amine Khaldi.
8  *
9  * THIS SOFTWARE IS NOT COPYRIGHTED
10  *
11  * This source code is offered for use in the public domain. You may
12  * use, modify or distribute it freely.
13  *
14  * This code is distributed in the hope that it will be useful but
15  * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
16  * DISCLAIMED. This includes but is not limited to warranties of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18  *
19  */
20 
21 #pragma once
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27 #define IDI_CPSUI_ICONID_FIRST          64000
28 
29 #define IDI_CPSUI_EMPTY                 64000
30 #define IDI_CPSUI_SEL_NONE              64001
31 #define IDI_CPSUI_WARNING               64002
32 #define IDI_CPSUI_NO                    64003
33 #define IDI_CPSUI_YES                   64004
34 #define IDI_CPSUI_FALSE                 64005
35 #define IDI_CPSUI_TRUE                  64006
36 #define IDI_CPSUI_OFF                   64007
37 #define IDI_CPSUI_ON                    64008
38 #define IDI_CPSUI_PAPER_OUTPUT          64009
39 #define IDI_CPSUI_ENVELOPE              64010
40 #define IDI_CPSUI_MEM                   64011
41 #define IDI_CPSUI_FONTCARTHDR           64012
42 #define IDI_CPSUI_FONTCART              64013
43 #define IDI_CPSUI_STAPLER_ON            64014
44 #define IDI_CPSUI_STAPLER_OFF           64015
45 #define IDI_CPSUI_HT_HOST               64016
46 #define IDI_CPSUI_HT_DEVICE             64017
47 #define IDI_CPSUI_TT_PRINTASGRAPHIC     64018
48 #define IDI_CPSUI_TT_DOWNLOADSOFT       64019
49 #define IDI_CPSUI_TT_DOWNLOADVECT       64020
50 #define IDI_CPSUI_TT_SUBDEV             64021
51 #define IDI_CPSUI_PORTRAIT              64022
52 #define IDI_CPSUI_LANDSCAPE             64023
53 #define IDI_CPSUI_ROT_LAND              64024
54 #define IDI_CPSUI_AUTOSEL               64025
55 #define IDI_CPSUI_PAPER_TRAY            64026
56 #define IDI_CPSUI_PAPER_TRAY2           64027
57 #define IDI_CPSUI_PAPER_TRAY3           64028
58 #define IDI_CPSUI_TRANSPARENT           64029
59 #define IDI_CPSUI_COLLATE               64030
60 #define IDI_CPSUI_DUPLEX_NONE           64031
61 #define IDI_CPSUI_DUPLEX_HORZ           64032
62 #define IDI_CPSUI_DUPLEX_VERT           64033
63 #define IDI_CPSUI_RES_DRAFT             64034
64 #define IDI_CPSUI_RES_LOW               64035
65 #define IDI_CPSUI_RES_MEDIUM            64036
66 #define IDI_CPSUI_RES_HIGH              64037
67 #define IDI_CPSUI_RES_PRESENTATION      64038
68 #define IDI_CPSUI_MONO                  64039
69 #define IDI_CPSUI_COLOR                 64040
70 #define IDI_CPSUI_DITHER_NONE           64041
71 #define IDI_CPSUI_DITHER_COARSE         64042
72 #define IDI_CPSUI_DITHER_FINE           64043
73 #define IDI_CPSUI_DITHER_LINEART        64044
74 #define IDI_CPSUI_SCALING               64045
75 #define IDI_CPSUI_COPY                  64046
76 #define IDI_CPSUI_HTCLRADJ              64047
77 #define IDI_CPSUI_HALFTONE_SETUP        64048
78 #define IDI_CPSUI_WATERMARK             64049
79 #define IDI_CPSUI_ERROR                 64050
80 #define IDI_CPSUI_ICM_OPTION            64051
81 #define IDI_CPSUI_ICM_METHOD            64052
82 #define IDI_CPSUI_ICM_INTENT            64053
83 #define IDI_CPSUI_STD_FORM              64054
84 #define IDI_CPSUI_OUTBIN                64055
85 #define IDI_CPSUI_OUTPUT                64056
86 #define IDI_CPSUI_GRAPHIC               64057
87 #define IDI_CPSUI_ADVANCE               64058
88 #define IDI_CPSUI_DOCUMENT              64059
89 #define IDI_CPSUI_DEVICE                64060
90 #define IDI_CPSUI_DEVICE2               64061
91 #define IDI_CPSUI_PRINTER               64062
92 #define IDI_CPSUI_PRINTER2              64063
93 #define IDI_CPSUI_PRINTER3              64064
94 #define IDI_CPSUI_PRINTER4              64065
95 #define IDI_CPSUI_OPTION                64066
96 #define IDI_CPSUI_OPTION2               64067
97 #define IDI_CPSUI_STOP                  64068
98 #define IDI_CPSUI_NOTINSTALLED          64069
99 #define IDI_CPSUI_WARNING_OVERLAY       64070
100 #define IDI_CPSUI_STOP_WARNING_OVERLAY  64071
101 #define IDI_CPSUI_GENERIC_OPTION        64072
102 #define IDI_CPSUI_GENERIC_ITEM          64073
103 #define IDI_CPSUI_RUN_DIALOG            64074
104 #define IDI_CPSUI_QUESTION              64075
105 #define IDI_CPSUI_FORMTRAYASSIGN        64076
106 #define IDI_CPSUI_PRINTER_FOLDER        64077
107 #define IDI_CPSUI_INSTALLABLE_OPTION    64078
108 #define IDI_CPSUI_PRINTER_FEATURE       64079
109 #define IDI_CPSUI_DEVICE_FEATURE        64080
110 #define IDI_CPSUI_FONTSUB               64081
111 #define IDI_CPSUI_POSTSCRIPT            64082
112 #define IDI_CPSUI_TELEPHONE             64083
113 #define IDI_CPSUI_DUPLEX_NONE_L         64084
114 #define IDI_CPSUI_DUPLEX_HORZ_L         64085
115 #define IDI_CPSUI_DUPLEX_VERT_L         64086
116 #define IDI_CPSUI_LF_PEN_PLOTTER        64087
117 #define IDI_CPSUI_SF_PEN_PLOTTER        64088
118 #define IDI_CPSUI_LF_RASTER_PLOTTER     64089
119 #define IDI_CPSUI_SF_RASTER_PLOTTER     64090
120 #define IDI_CPSUI_ROLL_PAPER            64091
121 #define IDI_CPSUI_PEN_CARROUSEL         64092
122 #define IDI_CPSUI_PLOTTER_PEN           64093
123 #define IDI_CPSUI_MANUAL_FEED           64094
124 #define IDI_CPSUI_FAX                   64095
125 #define IDI_CPSUI_PAGE_PROTECT          64096
126 #define IDI_CPSUI_ENVELOPE_FEED         64097
127 #define IDI_CPSUI_FONTCART_SLOT         64098
128 #define IDI_CPSUI_LAYOUT_BMP_PORTRAIT   64099
129 #define IDI_CPSUI_LAYOUT_BMP_ARROWL     64100
130 #define IDI_CPSUI_LAYOUT_BMP_ARROWS     64101
131 #define IDI_CPSUI_LAYOUT_BMP_BOOKLETL   64102
132 #define IDI_CPSUI_LAYOUT_BMP_BOOKLETP   64103
133 #if (NTDDI_VERSION >= NTDDI_VISTA)
134 #define IDI_CPSUI_LAYOUT_BMP_ARROWLR    64104
135 #define IDI_CPSUI_LAYOUT_BMP_ROT_PORT   64105
136 #define IDI_CPSUI_LAYOUT_BMP_BOOKLETL_NB 64106
137 #define IDI_CPSUI_LAYOUT_BMP_BOOKLETP_NB 64107
138 #define IDI_CPSUI_ROT_PORT              64110
139 #define IDI_CPSUI_NUP_BORDER            64111
140 #define IDI_CPSUI_ICONID_LAST           64111
141 #else
142 #define IDI_CPSUI_ICONID_LAST           64103
143 #endif
144 
145 #define IDS_CPSUI_STRID_FIRST           64700
146 
147 #define IDS_CPSUI_SETUP                 64700
148 #define IDS_CPSUI_MORE                  64701
149 #define IDS_CPSUI_CHANGE                64702
150 #define IDS_CPSUI_OPTION                64703
151 #define IDS_CPSUI_OF                    64704
152 #define IDS_CPSUI_RANGE_FROM            64705
153 #define IDS_CPSUI_TO                    64706
154 #define IDS_CPSUI_COLON_SEP             64707
155 #define IDS_CPSUI_LEFT_ANGLE            64708
156 #define IDS_CPSUI_RIGHT_ANGLE           64709
157 #define IDS_CPSUI_SLASH_SEP             64710
158 #define IDS_CPSUI_PERCENT               64711
159 #define IDS_CPSUI_LBCB_NOSEL            64712
160 #define IDS_CPSUI_PROPERTIES            64713
161 #define IDS_CPSUI_DEFAULTDOCUMENT       64714
162 #define IDS_CPSUI_DOCUMENT              64715
163 #define IDS_CPSUI_ADVANCEDOCUMENT       64716
164 #define IDS_CPSUI_PRINTER               64717
165 #define IDS_CPSUI_AUTOSELECT            64718
166 #define IDS_CPSUI_PAPER_OUTPUT          64719
167 #define IDS_CPSUI_GRAPHIC               64720
168 #define IDS_CPSUI_OPTIONS               64721
169 #define IDS_CPSUI_ADVANCED              64722
170 #define IDS_CPSUI_STDDOCPROPTAB         64723
171 #define IDS_CPSUI_STDDOCPROPTVTAB       64724
172 #define IDS_CPSUI_DEVICEOPTIONS         64725
173 #define IDS_CPSUI_FALSE                 64726
174 #define IDS_CPSUI_TRUE                  64727
175 #define IDS_CPSUI_NO                    64728
176 #define IDS_CPSUI_YES                   64729
177 #define IDS_CPSUI_OFF                   64730
178 #define IDS_CPSUI_ON                    64731
179 #define IDS_CPSUI_DEFAULT               64732
180 #define IDS_CPSUI_ERROR                 64733
181 #define IDS_CPSUI_NONE                  64734
182 #define IDS_CPSUI_NOT                   64735
183 #define IDS_CPSUI_EXIST                 64736
184 #define IDS_CPSUI_NOTINSTALLED          64737
185 #define IDS_CPSUI_ORIENTATION           64738
186 #define IDS_CPSUI_SCALING               64739
187 #define IDS_CPSUI_NUM_OF_COPIES         64740
188 #define IDS_CPSUI_SOURCE                64741
189 #define IDS_CPSUI_PRINTQUALITY          64742
190 #define IDS_CPSUI_RESOLUTION            64743
191 #define IDS_CPSUI_COLOR_APPERANCE       64744
192 #define IDS_CPSUI_DUPLEX                64745
193 #define IDS_CPSUI_TTOPTION              64746
194 #define IDS_CPSUI_FORMNAME              64747
195 #define IDS_CPSUI_ICM                   64748
196 #define IDS_CPSUI_ICMMETHOD             64749
197 #define IDS_CPSUI_ICMINTENT             64750
198 #define IDS_CPSUI_MEDIA                 64751
199 #define IDS_CPSUI_DITHERING             64752
200 #define IDS_CPSUI_PORTRAIT              64753
201 #define IDS_CPSUI_LANDSCAPE             64754
202 #define IDS_CPSUI_ROT_LAND              64755
203 #define IDS_CPSUI_COLLATE               64756
204 #define IDS_CPSUI_COLLATED              64757
205 #define IDS_CPSUI_PRINTFLDSETTING       64758
206 #define IDS_CPSUI_DRAFT                 64759
207 #define IDS_CPSUI_LOW                   64760
208 #define IDS_CPSUI_MEDIUM                64761
209 #define IDS_CPSUI_HIGH                  64762
210 #define IDS_CPSUI_PRESENTATION          64763
211 #define IDS_CPSUI_COLOR                 64764
212 #define IDS_CPSUI_GRAYSCALE             64765
213 #define IDS_CPSUI_MONOCHROME            64766
214 #define IDS_CPSUI_SIMPLEX               64767
215 #define IDS_CPSUI_HORIZONTAL            64768
216 #define IDS_CPSUI_VERTICAL              64769
217 #define IDS_CPSUI_LONG_SIDE             64770
218 #define IDS_CPSUI_SHORT_SIDE            64771
219 #define IDS_CPSUI_TT_PRINTASGRAPHIC     64772
220 #define IDS_CPSUI_TT_DOWNLOADSOFT       64773
221 #define IDS_CPSUI_TT_DOWNLOADVECT       64774
222 #define IDS_CPSUI_TT_SUBDEV             64775
223 #define IDS_CPSUI_ICM_BLACKWHITE        64776
224 #define IDS_CPSUI_ICM_NO                64777
225 #define IDS_CPSUI_ICM_YES               64778
226 #define IDS_CPSUI_ICM_SATURATION        64779
227 #define IDS_CPSUI_ICM_CONTRAST          64780
228 #define IDS_CPSUI_ICM_COLORMETRIC       64781
229 #define IDS_CPSUI_STANDARD              64782
230 #define IDS_CPSUI_GLOSSY                64783
231 #define IDS_CPSUI_TRANSPARENCY          64784
232 #define IDS_CPSUI_REGULAR               64785
233 #define IDS_CPSUI_BOND                  64786
234 #define IDS_CPSUI_COARSE                64787
235 #define IDS_CPSUI_FINE                  64788
236 #define IDS_CPSUI_LINEART               64789
237 #define IDS_CPSUI_ERRDIFFUSE            64790
238 #define IDS_CPSUI_HALFTONE              64791
239 #define IDS_CPSUI_HTCLRADJ              64792
240 #define IDS_CPSUI_USE_HOST_HT           64793
241 #define IDS_CPSUI_USE_DEVICE_HT         64794
242 #define IDS_CPSUI_USE_PRINTER_HT        64795
243 #define IDS_CPSUI_OUTBINASSIGN          64796
244 #define IDS_CPSUI_WATERMARK             64797
245 #define IDS_CPSUI_FORMTRAYASSIGN        64798
246 #define IDS_CPSUI_UPPER_TRAY            64799
247 #define IDS_CPSUI_ONLYONE               64800
248 #define IDS_CPSUI_LOWER_TRAY            64801
249 #define IDS_CPSUI_MIDDLE_TRAY           64802
250 #define IDS_CPSUI_MANUAL_TRAY           64803
251 #define IDS_CPSUI_ENVELOPE_TRAY         64804
252 #define IDS_CPSUI_ENVMANUAL_TRAY        64805
253 #define IDS_CPSUI_TRACTOR_TRAY          64806
254 #define IDS_CPSUI_SMALLFMT_TRAY         64807
255 #define IDS_CPSUI_LARGEFMT_TRAY         64808
256 #define IDS_CPSUI_LARGECAP_TRAY         64809
257 #define IDS_CPSUI_CASSETTE_TRAY         64810
258 #define IDS_CPSUI_DEFAULT_TRAY          64811
259 #define IDS_CPSUI_FORMSOURCE            64812
260 #define IDS_CPSUI_MANUALFEED            64813
261 #define IDS_CPSUI_PRINTERMEM_KB         64814
262 #define IDS_CPSUI_PRINTERMEM_MB         64815
263 #define IDS_CPSUI_PAGEPROTECT           64816
264 #define IDS_CPSUI_HALFTONE_SETUP        64817
265 #define IDS_CPSUI_INSTFONTCART          64818
266 #define IDS_CPSUI_SLOT1                 64819
267 #define IDS_CPSUI_SLOT2                 64820
268 #define IDS_CPSUI_SLOT3                 64821
269 #define IDS_CPSUI_SLOT4                 64822
270 #define IDS_CPSUI_LEFT_SLOT             64823
271 #define IDS_CPSUI_RIGHT_SLOT            64824
272 #define IDS_CPSUI_STAPLER               64825
273 #define IDS_CPSUI_STAPLER_ON            64826
274 #define IDS_CPSUI_STAPLER_OFF           64827
275 #define IDS_CPSUI_STACKER               64828
276 #define IDS_CPSUI_MAILBOX               64829
277 #define IDS_CPSUI_COPY                  64830
278 #define IDS_CPSUI_COPIES                64831
279 #define IDS_CPSUI_TOTAL                 64832
280 #define IDS_CPSUI_MAKE                  64833
281 #define IDS_CPSUI_PRINT                 64834
282 #define IDS_CPSUI_FAX                   64835
283 #define IDS_CPSUI_PLOT                  64836
284 #define IDS_CPSUI_SLOW                  64837
285 #define IDS_CPSUI_FAST                  64838
286 #define IDS_CPSUI_ROTATED               64839
287 #define IDS_CPSUI_RESET                 64840
288 #define IDS_CPSUI_ALL                   64841
289 #define IDS_CPSUI_DEVICE                64842
290 #define IDS_CPSUI_SETTINGS              64843
291 #define IDS_CPSUI_REVERT                64844
292 #define IDS_CPSUI_CHANGES               64845
293 #define IDS_CPSUI_CHANGED               64846
294 #define IDS_CPSUI_WARNING               64847
295 #define IDS_CPSUI_ABOUT                 64848
296 #define IDS_CPSUI_VERSION               64849
297 #define IDS_CPSUI_NO_NAME               64850
298 #define IDS_CPSUI_SETTING               64851
299 #define IDS_CPSUI_DEVICE_SETTINGS       64852
300 #define IDS_CPSUI_STDDOCPROPTAB1        64853
301 #define IDS_CPSUI_STDDOCPROPTAB2        64854
302 #define IDS_CPSUI_PAGEORDER             64855
303 #define IDS_CPSUI_FRONTTOBACK           64856
304 #define IDS_CPSUI_BACKTOFRONT           64857
305 #define IDS_CPSUI_QUALITY_SETTINGS      64858
306 #define IDS_CPSUI_QUALITY_DRAFT         64859
307 #define IDS_CPSUI_QUALITY_BETTER        64860
308 #define IDS_CPSUI_QUALITY_BEST          64861
309 #define IDS_CPSUI_QUALITY_CUSTOM        64862
310 #define IDS_CPSUI_OUTPUTBIN             64863
311 #define IDS_CPSUI_NUP                   64864
312 #define IDS_CPSUI_NUP_NORMAL            64865
313 #define IDS_CPSUI_NUP_TWOUP             64866
314 #define IDS_CPSUI_NUP_FOURUP            64867
315 #define IDS_CPSUI_NUP_SIXUP             64868
316 #define IDS_CPSUI_NUP_NINEUP            64869
317 #define IDS_CPSUI_NUP_SIXTEENUP         64870
318 #define IDS_CPSUI_SIDE1                 64871
319 #define IDS_CPSUI_SIDE2                 64872
320 #define IDS_CPSUI_BOOKLET               64873
321 #if (NTDDI_VERSION >= NTDDI_VISTA)
322 #define IDS_CPSUI_POSTER                64874
323 #define IDS_CPSUI_POSTER_2x2            64875
324 #define IDS_CPSUI_POSTER_3x3            64876
325 #define IDS_CPSUI_POSTER_4x4            64877
326 #define IDS_CPSUI_NUP_DIRECTION         64878
327 #define IDS_CPSUI_RIGHT_THEN_DOWN       64879
328 #define IDS_CPSUI_DOWN_THEN_RIGHT       64880
329 #define IDS_CPSUI_LEFT_THEN_DOWN        64881
330 #define IDS_CPSUI_DOWN_THEN_LEFT        64882
331 #define IDS_CPSUI_MANUAL_DUPLEX         64883
332 #define IDS_CPSUI_MANUAL_DUPLEX_ON      64884
333 #define IDS_CPSUI_MANUAL_DUPLEX_OFF     64885
334 #define IDS_CPSUI_ROT_PORT              64886
335 #define IDS_CPSUI_STAPLE                64887
336 #define IDS_CPSUI_BOOKLET_EDGE          64888
337 #define IDS_CPSUI_BOOKLET_EDGE_LEFT     64889
338 #define IDS_CPSUI_BOOKLET_EDGE_RIGHT    64890
339 #define IDS_CPSUI_NUP_BORDER            64891
340 #define IDS_CPSUI_NUP_BORDERED          64892
341 #define IDS_CPSUI_STRID_LAST            64892
342 #else
343 #define IDS_CPSUI_STRID_LAST            64873
344 #endif
345 
346 #if (!defined(RC_INVOKED))
347 
348 /* DEFINES */
349 
350 #define TVOT_2STATES                   0
351 #define TVOT_3STATES                   1
352 #define TVOT_UDARROW                   2
353 #define TVOT_TRACKBAR                  3
354 #define TVOT_SCROLLBAR                 4
355 #define TVOT_LISTBOX                   5
356 #define TVOT_COMBOBOX                  6
357 #define TVOT_EDITBOX                   7
358 #define TVOT_PUSHBUTTON                8
359 #define TVOT_CHKBOX                    9
360 #if (NTDDI_VERSION >= NTDDI_VISTA)
361 #define TVOT_NSTATES_EX                10
362 #define TVOT_LAST                      TVOT_NSTATES_EX
363 #else
364 #define TVOT_LAST                      TVOT_CHKBOX
365 #endif
366 #define TVOT_NONE                      (TVOT_LAST + 1)
367 
368 #define CHKBOXS_FALSE_TRUE             0
369 #define CHKBOXS_NO_YES                 1
370 #define CHKBOXS_OFF_ON                 2
371 #define CHKBOXS_FALSE_PDATA            3
372 #define CHKBOXS_NO_PDATA               4
373 #define CHKBOXS_OFF_PDATA              5
374 #define CHKBOXS_NONE_PDATA             6
375 
376 #define PUSHBUTTON_TYPE_DLGPROC        0
377 #define PUSHBUTTON_TYPE_CALLBACK       1
378 #define PUSHBUTTON_TYPE_HTCLRADJ       2
379 #define PUSHBUTTON_TYPE_HTSETUP        3
380 
381 #define MAX_RES_STR_CHARS              160
382 
383 #define OPTPF_HIDE                     0x01
384 #define OPTPF_DISABLED                 0x02
385 #define OPTPF_ICONID_AS_HICON          0x04
386 #define OPTPF_OVERLAY_WARNING_ICON     0x08
387 #define OPTPF_OVERLAY_STOP_ICON        0x10
388 #define OPTPF_OVERLAY_NO_ICON          0x20
389 #define OPTPF_USE_HDLGTEMPLATE         0x40
390 
391 #if (NTDDI_VERSION >= NTDDI_VISTA)
392 #define OPTPF_MASK                     0x7f
393 #endif
394 
395 #if (NTDDI_VERSION >= NTDDI_VISTA)
396 #define OPTCF_HIDE                     0x01
397 #define OPTCF_MASK                     0x01
398 #endif
399 
400 #define OPTTF_TYPE_DISABLED            0x01
401 #define OPTTF_NOSPACE_BEFORE_POSTFIX   0x02
402 
403 #if (NTDDI_VERSION >= NTDDI_VISTA)
404 #define OPTTF_MASK                     0x03
405 #endif
406 
407 #define OTS_LBCB_SORT                  0x0001
408 #define OTS_LBCB_PROPPAGE_LBUSECB      0x0002
409 #define OTS_LBCB_PROPPAGE_CBUSELB      0x0004
410 #define OTS_LBCB_INCL_ITEM_NONE        0x0008
411 #define OTS_LBCB_NO_ICON16_IN_ITEM     0x0010
412 #define OTS_PUSH_INCL_SETUP_TITLE      0x0020
413 #define OTS_PUSH_NO_DOT_DOT_DOT        0x0040
414 #define OTS_PUSH_ENABLE_ALWAYS         0x0080
415 
416 #if (NTDDI_VERSION >= NTDDI_VISTA)
417 #define OTS_MASK                       0x00ff
418 #endif
419 
420 #define EPF_PUSH_TYPE_DLGPROC          0x0001
421 #define EPF_INCL_SETUP_TITLE           0x0002
422 #define EPF_NO_DOT_DOT_DOT             0x0004
423 #define EPF_ICONID_AS_HICON            0x0008
424 #define EPF_OVERLAY_WARNING_ICON       0x0010
425 #define EPF_OVERLAY_STOP_ICON          0x0020
426 #define EPF_OVERLAY_NO_ICON            0x0040
427 #define EPF_USE_HDLGTEMPLATE           0x0080
428 
429 #if (NTDDI_VERSION >= NTDDI_VISTA)
430 #define EPF_MASK                       0x00ff
431 #endif
432 
433 #define ECBF_CHECKNAME_AT_FRONT           0x0001
434 #define ECBF_CHECKNAME_ONLY_ENABLED       0x0002
435 #define ECBF_ICONID_AS_HICON              0x0004
436 #define ECBF_OVERLAY_WARNING_ICON         0x0008
437 #define ECBF_OVERLAY_ECBICON_IF_CHECKED   0x0010
438 #define ECBF_OVERLAY_STOP_ICON            0x0020
439 #define ECBF_OVERLAY_NO_ICON              0x0040
440 #define ECBF_CHECKNAME_ONLY               0x0080
441 
442 #if (NTDDI_VERSION >= NTDDI_VISTA)
443 #define ECBF_MASK                         0x00ff
444 #endif
445 
446 #define OPTIF_COLLAPSE                 __MSABI_LONG(0x00000001)
447 #define OPTIF_HIDE                     __MSABI_LONG(0x00000002)
448 #define OPTIF_CALLBACK                 __MSABI_LONG(0x00000004)
449 #define OPTIF_CHANGED                  __MSABI_LONG(0x00000008)
450 #define OPTIF_CHANGEONCE               __MSABI_LONG(0x00000010)
451 #define OPTIF_DISABLED                 __MSABI_LONG(0x00000020)
452 #define OPTIF_ECB_CHECKED              __MSABI_LONG(0x00000040)
453 #define OPTIF_EXT_HIDE                 __MSABI_LONG(0x00000080)
454 #define OPTIF_EXT_DISABLED             __MSABI_LONG(0x00000100)
455 #define OPTIF_SEL_AS_HICON             __MSABI_LONG(0x00000200)
456 #define OPTIF_EXT_IS_EXTPUSH           __MSABI_LONG(0x00000400)
457 #define OPTIF_NO_GROUPBOX_NAME         __MSABI_LONG(0x00000800)
458 #define OPTIF_OVERLAY_WARNING_ICON     __MSABI_LONG(0x00001000)
459 #define OPTIF_OVERLAY_STOP_ICON        __MSABI_LONG(0x00002000)
460 #define OPTIF_OVERLAY_NO_ICON          __MSABI_LONG(0x00004000)
461 #define OPTIF_INITIAL_TVITEM           __MSABI_LONG(0x00008000)
462 #define OPTIF_HAS_POIEXT               __MSABI_LONG(0x00010000)
463 
464 #define OPTIF_MASK                     __MSABI_LONG(0x0001ffff)
465 
466 
467 #define DMPUB_NONE                     0
468 #define DMPUB_FIRST                    1
469 
470 #define DMPUB_ORIENTATION              1
471 #define DMPUB_SCALE                    2
472 #define DMPUB_COPIES_COLLATE           3
473 #define DMPUB_DEFSOURCE                4
474 #define DMPUB_PRINTQUALITY             5
475 #define DMPUB_COLOR                    6
476 #define DMPUB_DUPLEX                   7
477 #define DMPUB_TTOPTION                 8
478 #define DMPUB_FORMNAME                 9
479 #define DMPUB_ICMMETHOD                10
480 #define DMPUB_ICMINTENT                11
481 #define DMPUB_MEDIATYPE                12
482 #define DMPUB_DITHERTYPE               13
483 #define DMPUB_OUTPUTBIN                14
484 #define DMPUB_QUALITY                  15
485 #define DMPUB_NUP                      16
486 #define DMPUB_PAGEORDER                17
487 #if (NTDDI_VERSION >= NTDDI_VISTA)
488 #define DMPUB_NUP_DIRECTION            18
489 #define DMPUB_MANUAL_DUPLEX            19
490 #define DMPUB_STAPLE                   20
491 #define DMPUB_BOOKLET_EDGE             21
492 #define DMPUB_LAST                     21
493 #else
494 #define DMPUB_LAST                     17
495 #endif
496 
497 #define DMPUB_OEM_PAPER_ITEM           97
498 #define DMPUB_OEM_GRAPHIC_ITEM         98
499 #define DMPUB_OEM_ROOT_ITEM            99
500 #define DMPUB_USER                     100
501 
502 #define MAKE_DMPUB_HIDEBIT(DMPub) (DWORD)(((DWORD)0x01 << ((DMPub) - 1)))
503 #define IS_DMPUB_HIDDEN(dw, DMPub) (WINBOOL)((DWORD)(dw) & MAKE_DMPUB_HIDEBIT(DMPub))
504 
505 #define OIEXTF_ANSI_STRING             0x0001
506 
507 #define CPSUICB_REASON_SEL_CHANGED      0
508 #define CPSUICB_REASON_PUSHBUTTON       1
509 #define CPSUICB_REASON_ECB_CHANGED      2
510 #define CPSUICB_REASON_DLGPROC          3
511 #define CPSUICB_REASON_UNDO_CHANGES     4
512 #define CPSUICB_REASON_EXTPUSH          5
513 #define CPSUICB_REASON_APPLYNOW         6
514 #define CPSUICB_REASON_OPTITEM_SETFOCUS 7
515 #define CPSUICB_REASON_ITEMS_REVERTED   8
516 #define CPSUICB_REASON_ABOUT            9
517 #define CPSUICB_REASON_SETACTIVE        10
518 #define CPSUICB_REASON_KILLACTIVE       11
519 
520 #define CPSUICB_ACTION_NONE             0
521 #define CPSUICB_ACTION_OPTIF_CHANGED    1
522 #define CPSUICB_ACTION_REINIT_ITEMS     2
523 #define CPSUICB_ACTION_NO_APPLY_EXIT    3
524 #define CPSUICB_ACTION_ITEMS_APPLIED    4
525 
526 #define DP_STD_TREEVIEWPAGE             0xFFFF
527 #define DP_STD_DOCPROPPAGE2             0xFFFE
528 #define DP_STD_DOCPROPPAGE1             0XFFFD
529 #define DP_STD_RESERVED_START           0xFFF0
530 
531 #define MAX_DLGPAGE_COUNT               64
532 
533 #define DPF_ICONID_AS_HICON             0x0001
534 #define DPF_USE_HDLGTEMPLATE            0x0002
535 
536 #define CPSUIF_UPDATE_PERMISSION        0x0001
537 #define CPSUIF_ICONID_AS_HICON          0x0002
538 #define CPSUIF_ABOUT_CALLBACK           0x0004
539 
540 #define CPSUI_PDLGPAGE_DOCPROP          (PDLGPAGE)1
541 #define CPSUI_PDLGPAGE_ADVDOCPROP       (PDLGPAGE)2
542 #define CPSUI_PDLGPAGE_PRINTERPROP      (PDLGPAGE)3
543 #define CPSUI_PDLGPAGE_TREEVIEWONLY     (PDLGPAGE)4
544 
545 #define CPSUI_PDLGPAGE_TREEVIWONLY      CPSUI_PDLGPAGE_TREEVIEWONLY
546 
547 #define CPSFUNC_ADD_HPROPSHEETPAGE          0
548 #define CPSFUNC_ADD_PROPSHEETPAGEW          1
549 #define CPSFUNC_ADD_PCOMPROPSHEETUIA        2
550 #define CPSFUNC_ADD_PCOMPROPSHEETUIW        3
551 #define CPSFUNC_ADD_PFNPROPSHEETUIA         4
552 #define CPSFUNC_ADD_PFNPROPSHEETUIW         5
553 #define CPSFUNC_DELETE_HCOMPROPSHEET        6
554 #define CPSFUNC_SET_HSTARTPAGE              7
555 #define CPSFUNC_GET_PAGECOUNT               8
556 #define CPSFUNC_SET_RESULT                  9
557 #define CPSFUNC_GET_HPSUIPAGES              10
558 #define CPSFUNC_LOAD_CPSUI_STRINGA          11
559 #define CPSFUNC_LOAD_CPSUI_STRINGW          12
560 #define CPSFUNC_LOAD_CPSUI_ICON             13
561 #define CPSFUNC_GET_PFNPROPSHEETUI_ICON     14
562 #define CPSFUNC_ADD_PROPSHEETPAGEA          15
563 #define CPSFUNC_INSERT_PSUIPAGEA            16
564 #define CPSFUNC_INSERT_PSUIPAGEW            17
565 #define CPSFUNC_SET_PSUIPAGE_TITLEA         18
566 #define CPSFUNC_SET_PSUIPAGE_TITLEW         19
567 #define CPSFUNC_SET_PSUIPAGE_ICON           20
568 #define CPSFUNC_SET_DATABLOCK               21
569 #define CPSFUNC_QUERY_DATABLOCK             22
570 #define CPSFUNC_SET_DMPUB_HIDEBITS          23
571 #define CPSFUNC_IGNORE_CPSUI_PSN_APPLY      24
572 #define CPSFUNC_DO_APPLY_CPSUI              25
573 
574 #if (NTDDI_VERSION >= NTDDI_WINXP)
575 #define CPSFUNC_SET_FUSION_CONTEXT          26
576 #define MAX_CPSFUNC_INDEX                   26
577 #else
578 #define MAX_CPSFUNC_INDEX                   25
579 #endif
580 
581 #ifdef UNICODE
582 #define CPSFUNC_ADD_PCOMPROPSHEETUI         CPSFUNC_ADD_PCOMPROPSHEETUIW
583 #define CPSFUNC_ADD_PFNPROPSHEETUI          CPSFUNC_ADD_PFNPROPSHEETUIW
584 #define CPSFUNC_LOAD_CPSUI_STRING           CPSFUNC_LOAD_CPSUI_STRINGW
585 #define CPSFUNC_ADD_PROPSHEETPAGE           CPSFUNC_ADD_PROPSHEETPAGEW
586 #define CPSFUNC_INSERT_PSUIPAGE             CPSFUNC_INSERT_PSUIPAGEW
587 #define CPSFUNC_SET_PSUIPAGE_TITLE          CPSFUNC_SET_PSUIPAGE_TITLEW
588 
589 #else
590 #define CPSFUNC_ADD_PCOMPROPSHEETUI         CPSFUNC_ADD_PCOMPROPSHEETUIA
591 #define CPSFUNC_ADD_PFNPROPSHEETUI          CPSFUNC_ADD_PFNPROPSHEETUIA
592 #define CPSFUNC_LOAD_CPSUI_STRING           CPSFUNC_LOAD_CPSUI_STRINGA
593 #define CPSFUNC_ADD_PROPSHEETPAGE           CPSFUNC_ADD_PROPSHEETPAGEA
594 #define CPSFUNC_INSERT_PSUIPAGE             CPSFUNC_INSERT_PSUIPAGEA
595 #define CPSFUNC_SET_PSUIPAGE_TITLE          CPSFUNC_SET_PSUIPAGE_TITLEA
596 
597 #endif
598 
599 #define SR_OWNER            0
600 #define SR_OWNER_PARENT     1
601 
602 #define HINSPSUIPAGE_FIRST              (HANDLE)0xFFFFFFFE
603 #define HINSPSUIPAGE_LAST               (HANDLE)0xFFFFFFFF
604 #define HINSPSUIPAGE_INDEX(i)           (HANDLE)MAKELONG(i, 0);
605 
606 #define PSUIPAGEINSERT_GROUP_PARENT     0
607 #define PSUIPAGEINSERT_PCOMPROPSHEETUI  1
608 #define PSUIPAGEINSERT_PFNPROPSHEETUI   2
609 #define PSUIPAGEINSERT_PROPSHEETPAGE    3
610 #define PSUIPAGEINSERT_HPROPSHEETPAGE   4
611 #define PSUIPAGEINSERT_DLL              5
612 #define MAX_PSUIPAGEINSERT_INDEX        5
613 
614 #define INSPSUIPAGE_MODE_BEFORE         0
615 #define INSPSUIPAGE_MODE_AFTER          1
616 #define INSPSUIPAGE_MODE_FIRST_CHILD    2
617 #define INSPSUIPAGE_MODE_LAST_CHILD     3
618 #define INSPSUIPAGE_MODE_INDEX          4
619 
620 #define SSP_TVPAGE          10000
621 #define SSP_STDPAGE1        10001
622 #define SSP_STDPAGE2        10002
623 
624 #define APPLYCPSUI_NO_NEWDEF        0x00000001
625 #define APPLYCPSUI_OK_CANCEL_BUTTON 0x00000002
626 
627 #define PROPSHEETUI_REASON_INIT             0
628 #define PROPSHEETUI_REASON_GET_INFO_HEADER  1
629 #define PROPSHEETUI_REASON_DESTROY          2
630 #define PROPSHEETUI_REASON_SET_RESULT       3
631 #define PROPSHEETUI_REASON_GET_ICON         4
632 #define MAX_PROPSHEETUI_REASON_INDEX        4
633 
634 #define PROPSHEETUI_INFO_VERSION            0x0100
635 
636 #define PSUIINFO_UNICODE                    0x0001
637 
638 /* return-values for CommonPropertySheetUI on success */
639 #define CPSUI_CANCEL                        0
640 #define CPSUI_OK                            1
641 #define CPSUI_RESTARTWINDOWS                2
642 #define CPSUI_REBOOTSYSTEM                  3
643 
644 #define ERR_CPSUI_GETLASTERROR              -1
645 #define ERR_CPSUI_ALLOCMEM_FAILED           -2
646 #define ERR_CPSUI_INVALID_PDATA             -3
647 #define ERR_CPSUI_INVALID_LPARAM            -4
648 #define ERR_CPSUI_NULL_HINST                -5
649 #define ERR_CPSUI_NULL_CALLERNAME           -6
650 #define ERR_CPSUI_NULL_OPTITEMNAME          -7
651 #define ERR_CPSUI_NO_PROPSHEETPAGE          -8
652 #define ERR_CPSUI_TOO_MANY_PROPSHEETPAGES   -9
653 #define ERR_CPSUI_CREATEPROPPAGE_FAILED     -10
654 #define ERR_CPSUI_MORE_THAN_ONE_TVPAGE      -11
655 #define ERR_CPSUI_MORE_THAN_ONE_STDPAGE     -12
656 #define ERR_CPSUI_INVALID_PDLGPAGE          -13
657 #define ERR_CPSUI_INVALID_DLGPAGE_CBSIZE    -14
658 #define ERR_CPSUI_TOO_MANY_DLGPAGES         -15
659 #define ERR_CPSUI_INVALID_DLGPAGEIDX        -16
660 #define ERR_CPSUI_SUBITEM_DIFF_DLGPAGEIDX   -17
661 #define ERR_CPSUI_NULL_POPTITEM             -18
662 #define ERR_CPSUI_INVALID_OPTITEM_CBSIZE    -19
663 #define ERR_CPSUI_INVALID_OPTTYPE_CBSIZE    -20
664 #define ERR_CPSUI_INVALID_OPTTYPE_COUNT     -21
665 #define ERR_CPSUI_NULL_POPTPARAM            -22
666 #define ERR_CPSUI_INVALID_OPTPARAM_CBSIZE   -23
667 #define ERR_CPSUI_INVALID_EDITBOX_PSEL      -24
668 #define ERR_CPSUI_INVALID_EDITBOX_BUF_SIZE  -25
669 #define ERR_CPSUI_INVALID_ECB_CBSIZE        -26
670 #define ERR_CPSUI_NULL_ECB_PTITLE           -27
671 #define ERR_CPSUI_NULL_ECB_PCHECKEDNAME     -28
672 #define ERR_CPSUI_INVALID_DMPUBID           -29
673 #define ERR_CPSUI_INVALID_DMPUB_TVOT        -30
674 #define ERR_CPSUI_CREATE_TRACKBAR_FAILED    -31
675 #define ERR_CPSUI_CREATE_UDARROW_FAILED     -32
676 #define ERR_CPSUI_CREATE_IMAGELIST_FAILED   -33
677 #define ERR_CPSUI_INVALID_TVOT_TYPE         -34
678 #define ERR_CPSUI_INVALID_LBCB_TYPE         -35
679 #define ERR_CPSUI_SUBITEM_DIFF_OPTIF_HIDE   -36
680 #define ERR_CPSUI_INVALID_PUSHBUTTON_TYPE   -38
681 #define ERR_CPSUI_INVALID_EXTPUSH_CBSIZE    -39
682 #define ERR_CPSUI_NULL_EXTPUSH_DLGPROC      -40
683 #define ERR_CPSUI_NO_EXTPUSH_DLGTEMPLATEID  -41
684 #define ERR_CPSUI_NULL_EXTPUSH_CALLBACK     -42
685 #define ERR_CPSUI_DMCOPIES_USE_EXTPUSH      -43
686 #define ERR_CPSUI_ZERO_OPTITEM              -44
687 
688 #define ERR_CPSUI_FUNCTION_NOT_IMPLEMENTED  -9999
689 #define ERR_CPSUI_INTERNAL_ERROR            -10000
690 
691 #define PSUIHDRF_OBSOLETE       0x0001
692 #define PSUIHDRF_NOAPPLYNOW     0x0002
693 #define PSUIHDRF_PROPTITLE      0x0004
694 #define PSUIHDRF_USEHICON       0x0008
695 #define PSUIHDRF_DEFTITLE       0x0010
696 #define PSUIHDRF_EXACT_PTITLE   0x0020
697 
698 /* TYPES */
699 
700 typedef struct _OPTPARAM {
701   WORD cbSize;
702   BYTE Flags;
703   BYTE Style;
704   LPTSTR pData;
705   ULONG_PTR IconID;
706   LPARAM lParam;
707   ULONG_PTR dwReserved[2];
708 } OPTPARAM, *POPTPARAM;
709 
710 #if (NTDDI_VERSION >= NTDDI_VISTA)
711 typedef struct _OPTCOMBO {
712   WORD cbSize;
713   BYTE Flags;
714   WORD cListItem;
715   POPTPARAM pListItem;
716   LONG Sel;
717   DWORD dwReserved[3];
718 } OPTCOMBO, *POPTCOMBO;
719 #endif
720 
721 typedef struct _OPTTYPE {
722   WORD cbSize;
723   BYTE Type;
724   BYTE Flags;
725   WORD Count;
726   WORD BegCtrlID;
727   POPTPARAM pOptParam;
728   WORD Style;
729   WORD wReserved[3];
730   ULONG_PTR dwReserved[3];
731 } OPTTYPE, *POPTTYPE;
732 
733 typedef struct _EXTPUSH {
734   WORD cbSize;
735   WORD Flags;
736   LPTSTR pTitle;
737   __C89_NAMELESS union {
738     DLGPROC DlgProc;
739     FARPROC pfnCallBack;
740   } DUMMYUNIONNAME;
741   ULONG_PTR IconID;
742   __C89_NAMELESS union {
743     WORD DlgTemplateID;
744     HANDLE hDlgTemplate;
745   } DUMMYUNIONNAME2;
746   ULONG_PTR dwReserved[3];
747 } EXTPUSH, *PEXTPUSH;
748 
749 typedef struct _EXTCHKBOX {
750   WORD cbSize;
751   WORD Flags;
752   LPTSTR pTitle;
753   LPTSTR pSeparator;
754   LPTSTR pCheckedName;
755   ULONG_PTR IconID;
756   WORD wReserved[4];
757   ULONG_PTR dwReserved[2];
758 } EXTCHKBOX, *PEXTCHKBOX;
759 
760 typedef struct _OIEXT {
761   WORD cbSize;
762   WORD Flags;
763   HINSTANCE hInstCaller;
764   LPTSTR pHelpFile;
765   ULONG_PTR dwReserved[4];
766 } OIEXT, *POIEXT;
767 
768 typedef struct _OPTITEM {
769   WORD cbSize;
770   BYTE Level;
771   BYTE DlgPageIdx;
772   DWORD Flags;
773   ULONG_PTR UserData;
774   LPTSTR pName;
775   __C89_NAMELESS union {
776     LONG Sel;
777     LPTSTR pSel;
778   } DUMMYUNIONNAME;
779   __C89_NAMELESS union {
780     PEXTCHKBOX pExtChkBox;
781     PEXTPUSH pExtPush;
782   } DUMMYUNIONNAME2;
783   POPTTYPE pOptType;
784   DWORD HelpIndex;
785   BYTE DMPubID;
786   BYTE UserItemID;
787   WORD wReserved;
788   POIEXT pOIExt;
789   ULONG_PTR dwReserved[3];
790 } OPTITEM, *POPTITEM;
791 
792 typedef struct _CPSUICBPARAM {
793   WORD cbSize;
794   WORD Reason;
795   HWND hDlg;
796   POPTITEM pOptItem;
797   WORD cOptItem;
798   WORD Flags;
799   POPTITEM pCurItem;
800   __C89_NAMELESS union {
801     LONG OldSel;
802     LPTSTR pOldSel;
803   } DUMMYUNIONNAME;
804   ULONG_PTR UserData;
805   ULONG_PTR Result;
806 } CPSUICBPARAM, *PCPSUICBPARAM;
807 
808 typedef LONG
809 (APIENTRY *_CPSUICALLBACK)(
810   PCPSUICBPARAM pCPSUICBParam);
811 
812 #define CPSUICALLBACK        LONG APIENTRY
813 
814 typedef struct _DLGPAGE {
815   WORD cbSize;
816   WORD Flags;
817   DLGPROC DlgProc;
818   LPTSTR pTabName;
819   ULONG_PTR IconID;
820   __C89_NAMELESS union {
821     WORD DlgTemplateID;
822     HANDLE hDlgTemplate;
823   } DUMMYUNIONNAME;
824 } DLGPAGE, *PDLGPAGE;
825 
826 typedef struct _COMPROPSHEETUI {
827   WORD cbSize;
828   WORD Flags;
829   HINSTANCE hInstCaller;
830   LPTSTR pCallerName;
831   ULONG_PTR UserData;
832   LPTSTR pHelpFile;
833   _CPSUICALLBACK pfnCallBack;
834   POPTITEM pOptItem;
835   PDLGPAGE pDlgPage;
836   WORD cOptItem;
837   WORD cDlgPage;
838   ULONG_PTR IconID;
839   LPTSTR pOptItemName;
840   WORD CallerVersion;
841   WORD OptItemVersion;
842   ULONG_PTR dwReserved[4];
843 } COMPROPSHEETUI, *PCOMPROPSHEETUI;
844 
845 typedef struct _SETRESULT_INFO {
846   WORD cbSize;
847   WORD wReserved;
848   HANDLE hSetResult;
849   LRESULT Result;
850 } SETRESULT_INFO, *PSETRESULT_INFO;
851 
852 typedef struct _INSERTPSUIPAGE_INFO {
853   WORD cbSize;
854   BYTE Type;
855   BYTE Mode;
856   ULONG_PTR dwData1;
857   ULONG_PTR dwData2;
858   ULONG_PTR dwData3;
859 } INSERTPSUIPAGE_INFO, *PINSERTPSUIPAGE_INFO;
860 
861 typedef LONG_PTR
862 (CALLBACK *PFNCOMPROPSHEET)(
863   HANDLE hComPropSheet,
864   UINT Function,
865   LPARAM lParam1,
866   LPARAM lParam2);
867 
868 typedef struct _PSPINFO {
869   WORD cbSize;
870   WORD wReserved;
871   HANDLE hComPropSheet;
872   HANDLE hCPSUIPage;
873   PFNCOMPROPSHEET pfnComPropSheet;
874 } PSPINFO, *PPSPINFO;
875 
876 #define PPSPINFO_FROM_WM_INITDIALOG_LPARAM(lParam)  \
877                 (PPSPINFO)((LPBYTE)lParam + ((LPPROPSHEETPAGE)lParam)->dwSize)
878 
879 typedef struct _CPSUIDATABLOCK {
880   DWORD cbData;
881   LPBYTE pbData;
882 } CPSUIDATABLOCK, *PCPSUIDATABLOCK;
883 
884 typedef struct _PROPSHEETUI_INFO {
885   WORD cbSize;
886   WORD Version;
887   WORD Flags;
888   WORD Reason;
889   HANDLE hComPropSheet;
890   PFNCOMPROPSHEET pfnComPropSheet;
891   LPARAM lParamInit;
892   ULONG_PTR UserData;
893   ULONG_PTR Result;
894 } PROPSHEETUI_INFO, *PPROPSHEETUI_INFO;
895 
896 typedef struct _PROPSHEETUI_GETICON_INFO {
897   WORD cbSize;
898   WORD Flags;
899   WORD cxIcon;
900   WORD cyIcon;
901   HICON hIcon;
902 } PROPSHEETUI_GETICON_INFO, *PPROPSHEETUI_GETICON_INFO;
903 
904 typedef LONG
905 (FAR *PFNPROPSHEETUI)(
906   PPROPSHEETUI_INFO pPSUIInfo,
907   LPARAM lParam);
908 
909 typedef struct _PROPSHEETUI_INFO_HEADER {
910   WORD cbSize;
911   WORD Flags;
912   LPTSTR pTitle;
913   HWND hWndParent;
914   HINSTANCE hInst;
915   __C89_NAMELESS union {
916     HICON hIcon;
917     ULONG_PTR IconID;
918   } DUMMYUNIONNAME;
919 } PROPSHEETUI_INFO_HEADER, *PPROPSHEETUI_INFO_HEADER;
920 
921 /* FUNCTIONS */
922 
923 LONG
924 APIENTRY
925 CommonPropertySheetUIA(
926   HWND hWndOwner,
927   PFNPROPSHEETUI pfnPropSheetUI,
928   LPARAM lParam,
929   LPDWORD pResult);
930 
931 LONG
932 APIENTRY
933 CommonPropertySheetUIW(
934   HWND hWndOwner,
935   PFNPROPSHEETUI pfnPropSheetUI,
936   LPARAM lParam,
937   LPDWORD pResult);
938 
939 #ifdef UNICODE
940 #define CommonPropertySheetUI CommonPropertySheetUIW
941 #else
942 #define CommonPropertySheetUI CommonPropertySheetUIA
943 #endif
944 
945 ULONG_PTR
946 APIENTRY
947 GetCPSUIUserData(
948   HWND hDlg);
949 
950 WINBOOL
951 APIENTRY
952 SetCPSUIUserData(
953   HWND hDlg,
954   ULONG_PTR CPSUIUserData);
955 
956 #endif /* (!defined(RC_INVOKED)) */
957 
958 /* FIXME : These declarations doesn't exist in the official header */
959 ULONG_PTR WINAPI GetPSTUIUserData(HWND);
960 WINBOOL WINAPI SetPSTUIUserData(HWND, ULONG_PTR);
961 
962 
963 #ifdef __cplusplus
964 } /* extern "C" */
965 #endif
966 
967