1 /*
2  This Software is provided under the Zope Public License (ZPL) Version 2.1.
3 
4  Copyright (C) 2011 Piotr Caban for CodeWeavers
5 
6  See the AUTHORS file for the list of contributors to the mingw-w64 project.
7 
8  This license has been certified as open source. It has also been designated
9  as GPL compatible by the Free Software Foundation (FSF).
10 
11  Redistribution and use in source and binary forms, with or without
12  modification, are permitted provided that the following conditions are met:
13 
14    1. Redistributions in source code must retain the accompanying copyright
15       notice, this list of conditions, and the following disclaimer.
16    2. Redistributions in binary form must reproduce the accompanying
17       copyright notice, this list of conditions, and the following disclaimer
18       in the documentation and/or other materials provided with the
19       distribution.
20    3. Names of the copyright holders must not be used to endorse or promote
21       products derived from this software without prior written permission
22       from the copyright holders.
23    4. The right to distribute this software or to use it for any purpose does
24       not give you the right to use Servicemarks (sm) or Trademarks (tm) of
25       the copyright holders.  Use of them is covered by separate agreement
26       with the copyright holders.
27    5. If any files are modified, you must cause the modified files to carry
28       prominent notices stating that you changed the files and the date of
29       any change.
30 
31  Disclaimer
32 
33  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY EXPRESSED
34  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
35  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
36  EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
37  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
38  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
39  OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
40  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
41  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
42  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
43 */
44 
45 #ifndef __VSSTYLE_H__
46 #define __VSSTYLE_H__
47 
48 
49 #define TMTVS_RESERVEDLOW 100000
50 #define TMTVS_RESERVEDHIGH 19999
51 
52 /* AEROWIZARDSTYLE class */
53 #if defined(__GNUC__)
54 #define VSCLASS_AEROWIZARDSTYLE (const WCHAR []){'A','E','R','O','W','I','Z','A','R','D','S','T','Y','L','E',0}
55 #define VSCLASS_AEROWIZARD (const WCHAR []){'A','E','R','O','W','I','Z','A','R','D',0}
56 #elif defined(_MSC_VER)
57 #define VSCLASS_AEROWIZARDSTYLE L"AEROWIZARDSTYLE"
58 #define VSCLASS_AEROWIZARD L"AEROWIZARD"
59 #else
60 static const WCHAR VSCLASS_AEROWIZARDSTYLE[] = {'A','E','R','O','W','I','Z','A','R','D','S','T','Y','L','E',0};
61 static const WCHAR VSCLASS_AEROWIZARD [] = {'A','E','R','O','W','I','Z','A','R','D',0};
62 #endif
63 
64 enum AEROWIZARDPARTS {
65     AW_TITLEBAR = 1,
66     AW_HEADERAREA = 2,
67     AW_CONTENTAREA = 3,
68     AW_COMMANDAREA = 4,
69     AW_BUTTON = 5,
70 };
71 
72 #define AEROWIZARDSTYLEPARTS AEROWIZARDPARTS;
73 
74 enum TITLEBARSTATES {
75     AW_S_TITLEBAR_ACTIVE = 1,
76     AW_S_TITLEBAR_INACTIVE = 2,
77 };
78 
79 enum HEADERAREASTATES {
80     AW_S_HEADERAREA_NOMARGIN = 1,
81 };
82 
83 enum CONTENTAREASTATES {
84     AW_S_CONTENTAREA_NOMARGIN = 1,
85 };
86 
87 /* BUTTONSTYLE class */
88 #if defined(__GNUC__)
89 #define VSCLASS_BUTTONSTYLE (const WCHAR []){'B','U','T','T','O','N','S','T','Y','L','E',0}
90 #define VSCLASS_BUTTON (const WCHAR []){'B','U','T','T','O','N',0}
91 #elif defined(_MSC_VER)
92 #define VSCLASS_BUTTONSTYLE L"BUTTONSTYLE"
93 #define VSCLASS_BUTTON L"BUTTON"
94 #else
95 static const WCHAR VSCLASS_BUTTONSTYLE [] = {'B','U','T','T','O','N','S','T','Y','L','E',0};
96 static const WCHAR VSCLASS_BUTTON [] = {'B','U','T','T','O','N',0};
97 #endif
98 
99 enum BUTTONPARTS {
100     BP_PUSHBUTTON = 1,
101     BP_RADIOBUTTON = 2,
102     BP_CHECKBOX = 3,
103     BP_GROUPBOX = 4,
104     BP_USERBUTTON = 5,
105     BP_COMMANDLINK = 6,
106     BP_COMMANDLINKGLYPH = 7,
107 };
108 
109 #define BUTTONSTYLEPARTS BUTTONPARTS;
110 
111 enum PUSHBUTTONSTATES {
112     PBS_NORMAL = 1,
113     PBS_HOT = 2,
114     PBS_PRESSED = 3,
115     PBS_DISABLED = 4,
116     PBS_DEFAULTED = 5,
117     PBS_DEFAULTED_ANIMATING = 6,
118 };
119 
120 enum RADIOBUTTONSTATES {
121     RBS_UNCHECKEDNORMAL = 1,
122     RBS_UNCHECKEDHOT = 2,
123     RBS_UNCHECKEDPRESSED = 3,
124     RBS_UNCHECKEDDISABLED = 4,
125     RBS_CHECKEDNORMAL = 5,
126     RBS_CHECKEDHOT = 6,
127     RBS_CHECKEDPRESSED = 7,
128     RBS_CHECKEDDISABLED = 8,
129 };
130 
131 enum CHECKBOXSTATES {
132     CBS_UNCHECKEDNORMAL = 1,
133     CBS_UNCHECKEDHOT = 2,
134     CBS_UNCHECKEDPRESSED = 3,
135     CBS_UNCHECKEDDISABLED = 4,
136     CBS_CHECKEDNORMAL = 5,
137     CBS_CHECKEDHOT = 6,
138     CBS_CHECKEDPRESSED = 7,
139     CBS_CHECKEDDISABLED = 8,
140     CBS_MIXEDNORMAL = 9,
141     CBS_MIXEDHOT = 10,
142     CBS_MIXEDPRESSED = 11,
143     CBS_MIXEDDISABLED = 12,
144     CBS_IMPLICITNORMAL = 13,
145     CBS_IMPLICITHOT = 14,
146     CBS_IMPLICITPRESSED = 15,
147     CBS_IMPLICITDISABLED = 16,
148     CBS_EXCLUDEDNORMAL = 17,
149     CBS_EXCLUDEDHOT = 18,
150     CBS_EXCLUDEDPRESSED = 19,
151     CBS_EXCLUDEDDISABLED = 20,
152 };
153 
154 enum GROUPBOXSTATES {
155     GBS_NORMAL = 1,
156     GBS_DISABLED = 2,
157 };
158 
159 enum COMMANDLINKSTATES {
160     CMDLS_NORMAL = 1,
161     CMDLS_HOT = 2,
162     CMDLS_PRESSED = 3,
163     CMDLS_DISABLED = 4,
164     CMDLS_DEFAULTED = 5,
165     CMDLS_DEFAULTED_ANIMATING = 6,
166 };
167 
168 enum COMMANDLINKGLYPHSTATES {
169     CMDLGS_NORMAL = 1,
170     CMDLGS_HOT = 2,
171     CMDLGS_PRESSED = 3,
172     CMDLGS_DISABLED = 4,
173     CMDLGS_DEFAULTED = 5,
174 };
175 
176 /* COMBOBOXSTYLE class */
177 #if defined(__GNUC__)
178 #define VSCLASS_COMBOBOXSTYLE (const WCHAR []){'C','O','M','B','O','B','O','X','S','T','Y','L','E',0}
179 #define VSCLASS_COMBOBOX (const WCHAR []){'C','O','M','B','O','B','O','X',0}
180 #elif defined(_MSC_VER)
181 #define VSCLASS_COMBOBOXSTYLE L"COMBOBOXSTYLE"
182 #define VSCLASS_COMBOBOX L"COMBOBOX"
183 #else
184 static const WCHAR VSCLASS_COMBOBOXSTYLE [] = {'C','O','M','B','O','B','O','X','S','T','Y','L','E',0};
185 static const WCHAR VSCLASS_COMBOBOX [] = {'C','O','M','B','O','B','O','X',0};
186 #endif
187 
188 enum COMBOBOXPARTS {
189     CP_DROPDOWNBUTTON = 1,
190     CP_BACKGROUND = 2,
191     CP_TRANSPARENTBACKGROUND = 3,
192     CP_BORDER = 4,
193     CP_READONLY = 5,
194     CP_DROPDOWNBUTTONRIGHT = 6,
195     CP_DROPDOWNBUTTONLEFT = 7,
196     CP_CUEBANNER = 8,
197 };
198 
199 #define COMBOBOXSTYLEPARTS COMBOBOXPARTS;
200 
201 enum COMBOBOXSTYLESTATES {
202     CBXS_NORMAL = 1,
203     CBXS_HOT = 2,
204     CBXS_PRESSED = 3,
205     CBXS_DISABLED = 4,
206 };
207 
208 enum DROPDOWNBUTTONRIGHTSTATES {
209     CBXSR_NORMAL = 1,
210     CBXSR_HOT = 2,
211     CBXSR_PRESSED = 3,
212     CBXSR_DISABLED = 4,
213 };
214 
215 enum DROPDOWNBUTTONLEFTSTATES {
216     CBXSL_NORMAL = 1,
217     CBXSL_HOT = 2,
218     CBXSL_PRESSED = 3,
219     CBXSL_DISABLED = 4,
220 };
221 
222 enum TRANSPARENTBACKGROUNDSTATES {
223     CBTBS_NORMAL = 1,
224     CBTBS_HOT = 2,
225     CBTBS_DISABLED = 3,
226     CBTBS_FOCUSED = 4,
227 };
228 
229 enum BORDERSTATES {
230     CBB_NORMAL = 1,
231     CBB_HOT = 2,
232     CBB_FOCUSED = 3,
233     CBB_DISABLED = 4,
234 };
235 
236 enum READONLYSTATES {
237     CBRO_NORMAL = 1,
238     CBRO_HOT = 2,
239     CBRO_PRESSED = 3,
240     CBRO_DISABLED = 4,
241 };
242 
243 enum CUEBANNERSTATES {
244     CBCB_NORMAL = 1,
245     CBCB_HOT = 2,
246     CBCB_PRESSED = 3,
247     CBCB_DISABLED = 4,
248 };
249 
250 /* COMMUNICATIONSSTYLE class */
251 #if defined(__GNUC__)
252 #define VSCLASS_COMMUNICATIONSSTYLE (const WCHAR []){'C','O','M','M','U','N','I','C','A','T','I','O','N','S','S','T','Y','L','E',0}
253 #define VSCLASS_COMMUNICATIONS (const WCHAR []){'C','O','M','M','U','N','I','C','A','T','I','O','N','S',0}
254 #elif defined(_MSC_VER)
255 #define VSCLASS_COMMUNICATIONSSTYLE L"COMMUNICATIONSSTYLE"
256 #define VSCLASS_COMMUNICATIONS L"COMMUNICATIONS"
257 #else
258 static const WCHAR VSCLASS_COMMUNICATIONSSTYLE [] = {'C','O','M','M','U','N','I','C','A','T','I','O','N','S','S','T','Y','L','E',0};
259 static const WCHAR VSCLASS_COMMUNICATIONS [] = {'C','O','M','M','U','N','I','C','A','T','I','O','N','S',0};
260 #endif
261 
262 enum COMMUNICATIONSPARTS {
263     CSST_TAB = 1,
264 };
265 
266 #define COMMUNICATIONSSTYLEPARTS COMMUNICATIONSPARTS;
267 
268 enum TABSTATES {
269     CSTB_NORMAL = 1,
270     CSTB_HOT = 2,
271     CSTB_SELECTED = 3,
272 };
273 
274 /* CONTROLPANELSTYLE class */
275 #if defined(__GNUC__)
276 #define VSCLASS_CONTROLPANELSTYLE (const WCHAR []){'C','O','N','T','R','O','L','P','A','N','E','L','S','T','Y','L','E',0}
277 #define VSCLASS_CONTROLPANEL (const WCHAR []){'C','O','N','T','R','O','L','P','A','N','E','L',0}
278 #elif defined(_MSC_VER)
279 #define VSCLASS_CONTROLPANELSTYLE L"CONTROLPANELSTYLE"
280 #define VSCLASS_CONTROLPANEL L"CONTROLPANEL"
281 #else
282 static const WCHAR VSCLASS_CONTROLPANELSTYLE [] = {'C','O','N','T','R','O','L','P','A','N','E','L','S','T','Y','L','E',0};
283 static const WCHAR VSCLASS_CONTROLPANEL [] = {'C','O','N','T','R','O','L','P','A','N','E','L',0};
284 #endif
285 
286 enum CONTROLPANELPARTS {
287     CPANEL_NAVIGATIONPANE = 1,
288     CPANEL_CONTENTPANE = 2,
289     CPANEL_NAVIGATIONPANELABEL = 3,
290     CPANEL_CONTENTPANELABEL = 4,
291     CPANEL_TITLE = 5,
292     CPANEL_BODYTEXT = 6,
293     CPANEL_HELPLINK = 7,
294     CPANEL_TASKLINK = 8,
295     CPANEL_GROUPTEXT = 9,
296     CPANEL_CONTENTLINK = 10,
297     CPANEL_SECTIONTITLELINK = 11,
298     CPANEL_LARGECOMMANDAREA = 12,
299     CPANEL_SMALLCOMMANDAREA = 13,
300     CPANEL_BUTTON = 14,
301     CPANEL_MESSAGETEXT = 15,
302     CPANEL_NAVIGATIONPANELINE = 16,
303     CPANEL_CONTENTPANELINE = 17,
304     CPANEL_BANNERAREA = 18,
305     CPANEL_BODYTITLE = 19,
306 };
307 
308 #define CONTROLPANELSTYLEPARTS CONTROLPANELPARTS;
309 
310 enum HELPLINKSTATES {
311     CPHL_NORMAL = 1,
312     CPHL_HOT = 2,
313     CPHL_PRESSED = 3,
314     CPHL_DISABLED = 4,
315 };
316 
317 enum TASKLINKSTATES {
318     CPTL_NORMAL = 1,
319     CPTL_HOT = 2,
320     CPTL_PRESSED = 3,
321     CPTL_DISABLED = 4,
322     CPTL_PAGE = 5,
323 };
324 
325 enum CONTENTLINKSTATES {
326     CPCL_NORMAL = 1,
327     CPCL_HOT = 2,
328     CPCL_PRESSED = 3,
329     CPCL_DISABLED = 4,
330 };
331 
332 enum SECTIONTITLELINKSTATES {
333     CPSTL_NORMAL = 1,
334     CPSTL_HOT = 2,
335 };
336 
337 /* DATEPICKERSTYLE class */
338 #if defined(__GNUC__)
339 #define VSCLASS_DATEPICKERSTYLE (const WCHAR []){'D','A','T','E','P','I','C','K','E','R','S','T','Y','L','E',0}
340 #define VSCLASS_DATEPICKER (const WCHAR []){'D','A','T','E','P','I','C','K','E','R',0}
341 #elif defined(_MSC_VER)
342 #define VSCLASS_DATEPICKERSTYLE L"DATEPICKERSTYLE"
343 #define VSCLASS_DATEPICKER L"DATEPICKER"
344 #else
345 static const WCHAR VSCLASS_DATEPICKERSTYLE[] = {'D','A','T','E','P','I','C','K','E','R','S','T','Y','L','E',0};
346 static const WCHAR VSCLASS_DATEPICKER [] = {'D','A','T','E','P','I','C','K','E','R',0};
347 #endif
348 
349 enum DATEPICKERPARTS {
350     DP_DATETEXT = 1,
351     DP_DATEBORDER = 2,
352     DP_SHOWCALENDARBUTTONRIGHT = 3,
353 };
354 
355 #define DATEPICKERSTYLEPARTS DATEPICKERPARTS;
356 
357 enum DATETEXTSTATES {
358     DPDT_NORMAL = 1,
359     DPDT_DISABLED = 2,
360     DPDT_SELECTED = 3,
361 };
362 
363 enum DATEBORDERSTATES {
364     DPDB_NORMAL = 1,
365     DPDB_HOT = 2,
366     DPDB_FOCUSED = 3,
367     DPDB_DISABLED = 4,
368 };
369 
370 enum SHOWCALENDARBUTTONRIGHTSTATES {
371     DPSCBR_NORMAL = 1,
372     DPSCBR_HOT = 2,
373     DPSCBR_PRESSED = 3,
374     DPSCBR_DISABLED = 4,
375 };
376 
377 /* DRAGDROPSTYLE class */
378 #if defined(__GNUC__)
379 #define VSCLASS_DRAGDROPSTYLE (const WCHAR []){'D','R','A','G','D','R','O','P','S','T','Y','L','E',0}
380 #define VSCLASS_DRAGDROP (const WCHAR []){'D','R','A','G','D','R','O','P',0}
381 #elif defined(_MSC_VER)
382 #define VSCLASS_DRAGDROPSTYLE L"DRAGDROPSTYLE"
383 #define VSCLASS_DRAGDROP L"DRAGDROP"
384 #else
385 static const WCHAR VSCLASS_DRAGDROPSTYLE [] = {'D','R','A','G','D','R','O','P','S','T','Y','L','E',0};
386 static const WCHAR VSCLASS_DRAGDROP [] = {'D','R','A','G','D','R','O','P',0};
387 #endif
388 
389 enum DRAGDROPPARTS {
390     DD_COPY = 1,
391     DD_MOVE = 2,
392     DD_UPDATEMETADATA = 3,
393     DD_CREATELINK = 4,
394     DD_WARNING = 5,
395     DD_NONE = 6,
396     DD_IMAGEBG = 7,
397     DD_TEXTBG = 8,
398 };
399 
400 #define DRAGDROPSTYLEPARTS DRAGDROPPARTS;
401 
402 enum COPYSTATES {
403     DDCOPY_HIGHLIGHT = 1,
404     DDCOPY_NOHIGHLIGHT = 2,
405 };
406 
407 enum MOVESTATES {
408     DDMOVE_HIGHLIGHT = 1,
409     DDMOVE_NOHIGHLIGHT = 2,
410 };
411 
412 enum UPDATEMETADATASTATES {
413     DDUPDATEMETADATA_HIGHLIGHT = 1,
414     DDUPDATEMETADATA_NOHIGHLIGHT = 2,
415 };
416 
417 enum CREATELINKSTATES {
418     DDCREATELINK_HIGHLIGHT = 1,
419     DDCREATELINK_NOHIGHLIGHT = 2,
420 };
421 
422 enum WARNINGSTATES {
423     DDWARNING_HIGHLIGHT = 1,
424     DDWARNING_NOHIGHLIGHT = 2,
425 };
426 
427 enum NONESTATES {
428     DDNONE_HIGHLIGHT = 1,
429     DDNONE_NOHIGHLIGHT = 2,
430 };
431 
432 /* EDITSTYLE class */
433 #if defined(__GNUC__)
434 #define VSCLASS_EDITSTYLE (const WCHAR []){'E','D','I','T','S','T','Y','L','E',0}
435 #define VSCLASS_EDIT (const WCHAR []){'E','D','I','T',0}
436 #elif defined(_MSC_VER)
437 #define VSCLASS_EDITSTYLE L"EDITSTYLE"
438 #define VSCLASS_EDIT L"EDIT"
439 #else
440 static const WCHAR VSCLASS_EDITSTYLE [] = {'E','D','I','T','S','T','Y','L','E',0};
441 static const WCHAR VSCLASS_EDIT [] = {'E','D','I','T',0};
442 #endif
443 
444 enum EDITPARTS {
445     EP_EDITTEXT = 1,
446     EP_CARET = 2,
447     EP_BACKGROUND = 3,
448     EP_PASSWORD = 4,
449     EP_BACKGROUNDWITHBORDER = 5,
450     EP_EDITBORDER_NOSCROLL = 6,
451     EP_EDITBORDER_HSCROLL = 7,
452     EP_EDITBORDER_VSCROLL = 8,
453     EP_EDITBORDER_HVSCROLL = 9,
454 };
455 
456 #define EDITSTYLEPARTS EDITPARTS;
457 
458 enum EDITTEXTSTATES {
459     ETS_NORMAL = 1,
460     ETS_HOT = 2,
461     ETS_SELECTED = 3,
462     ETS_DISABLED = 4,
463     ETS_FOCUSED = 5,
464     ETS_READONLY = 6,
465     ETS_ASSIST = 7,
466     ETS_CUEBANNER = 8,
467 };
468 
469 enum BACKGROUNDSTATES {
470     EBS_NORMAL = 1,
471     EBS_HOT = 2,
472     EBS_DISABLED = 3,
473     EBS_FOCUSED = 4,
474     EBS_READONLY = 5,
475     EBS_ASSIST = 6,
476 };
477 
478 enum BACKGROUNDWITHBORDERSTATES {
479     EBWBS_NORMAL = 1,
480     EBWBS_HOT = 2,
481     EBWBS_DISABLED = 3,
482     EBWBS_FOCUSED = 4,
483 };
484 
485 enum EDITBORDER_NOSCROLLSTATES {
486     EPSN_NORMAL = 1,
487     EPSN_HOT = 2,
488     EPSN_FOCUSED = 3,
489     EPSN_DISABLED = 4,
490 };
491 
492 enum EDITBORDER_HSCROLLSTATES {
493     EPSH_NORMAL = 1,
494     EPSH_HOT = 2,
495     EPSH_FOCUSED = 3,
496     EPSH_DISABLED = 4,
497 };
498 
499 enum EDITBORDER_VSCROLLSTATES {
500     EPSV_NORMAL = 1,
501     EPSV_HOT = 2,
502     EPSV_FOCUSED = 3,
503     EPSV_DISABLED = 4,
504 };
505 
506 enum EDITBORDER_HVSCROLLSTATES {
507     EPSHV_NORMAL = 1,
508     EPSHV_HOT = 2,
509     EPSHV_FOCUSED = 3,
510     EPSHV_DISABLED = 4,
511 };
512 
513 /* EXPLORERBARSTYLE class */
514 #if defined(__GNUC__)
515 #define VSCLASS_EXPLORERBARSTYLE (const WCHAR []){'E','X','P','L','O','R','E','R','B','A','R','S','T','Y','L','E',0}
516 #define VSCLASS_EXPLORERBAR (const WCHAR []){'E','X','P','L','O','R','E','R','B','A','R',0}
517 #elif defined(_MSC_VER)
518 #define VSCLASS_EXPLORERBARSTYLE L"EXPLORERBARSTYLE"
519 #define VSCLASS_EXPLORERBAR L"EXPLORERBAR"
520 #else
521 static const WCHAR VSCLASS_EXPLORERBARSTYLE [] = {'E','X','P','L','O','R','E','R','B','A','R','S','T','Y','L','E',0};
522 static const WCHAR VSCLASS_EXPLORERBAR [] = {'E','X','P','L','O','R','E','R','B','A','R',0};
523 #endif
524 
525 enum EXPLORERBARPARTS {
526     EBP_HEADERBACKGROUND = 1,
527     EBP_HEADERCLOSE = 2,
528     EBP_HEADERPIN = 3,
529     EBP_IEBARMENU = 4,
530     EBP_NORMALGROUPBACKGROUND = 5,
531     EBP_NORMALGROUPCOLLAPSE = 6,
532     EBP_NORMALGROUPEXPAND = 7,
533     EBP_NORMALGROUPHEAD = 8,
534     EBP_SPECIALGROUPBACKGROUND = 9,
535     EBP_SPECIALGROUPCOLLAPSE = 10,
536     EBP_SPECIALGROUPEXPAND = 11,
537     EBP_SPECIALGROUPHEAD = 12,
538 };
539 
540 #define EXPLORERBARSTYLEPARTS EXPLORERBARPARTS;
541 
542 enum HEADERCLOSESTATES {
543     EBHC_NORMAL = 1,
544     EBHC_HOT = 2,
545     EBHC_PRESSED = 3,
546 };
547 
548 enum HEADERPINSTATES {
549     EBHP_NORMAL = 1,
550     EBHP_HOT = 2,
551     EBHP_PRESSED = 3,
552     EBHP_SELECTEDNORMAL = 4,
553     EBHP_SELECTEDHOT = 5,
554     EBHP_SELECTEDPRESSED = 6,
555 };
556 
557 enum IEBARMENUSTATES {
558     EBM_NORMAL = 1,
559     EBM_HOT = 2,
560     EBM_PRESSED = 3,
561 };
562 
563 enum NORMALGROUPCOLLAPSESTATES {
564     EBNGC_NORMAL = 1,
565     EBNGC_HOT = 2,
566     EBNGC_PRESSED = 3,
567 };
568 
569 enum NORMALGROUPEXPANDSTATES {
570     EBNGE_NORMAL = 1,
571     EBNGE_HOT = 2,
572     EBNGE_PRESSED = 3,
573 };
574 
575 enum SPECIALGROUPCOLLAPSESTATES {
576     EBSGC_NORMAL = 1,
577     EBSGC_HOT = 2,
578     EBSGC_PRESSED = 3,
579 };
580 
581 enum SPECIALGROUPEXPANDSTATES {
582     EBSGE_NORMAL = 1,
583     EBSGE_HOT = 2,
584     EBSGE_PRESSED = 3,
585 };
586 
587 /* FLYOUTSTYLE class */
588 #if defined(__GNUC__)
589 #define VSCLASS_FLYOUTSTYLE (const WCHAR []){'F','L','Y','O','U','T','S','T','Y','L','E',0}
590 #define VSCLASS_FLYOUT (const WCHAR []){'F','L','Y','O','U','T',0}
591 #elif defined(_MSC_VER)
592 #define VSCLASS_FLYOUTSTYLE L"FLYOUTSTYLE"
593 #define VSCLASS_FLYOUT L"FLYOUT"
594 #else
595 static const WCHAR VSCLASS_FLYOUTSTYLE [] = {'F','L','Y','O','U','T','S','T','Y','L','E',0};
596 static const WCHAR VSCLASS_FLYOUT [] = {'F','L','Y','O','U','T',0};
597 #endif
598 
599 enum FLYOUTPARTS {
600     FLYOUT_HEADER = 1,
601     FLYOUT_BODY = 2,
602     FLYOUT_LABEL = 3,
603     FLYOUT_LINK = 4,
604     FLYOUT_DIVIDER = 5,
605     FLYOUT_WINDOW = 6,
606     FLYOUT_LINKAREA = 7,
607     FLYOUT_LINKHEADER = 8,
608 };
609 
610 #define FLYOUTSTYLEPARTS FLYOUTPARTS;
611 
612 enum LABELSTATES {
613     FLS_NORMAL = 1,
614     FLS_SELECTED = 2,
615     FLS_EMPHASIZED = 3,
616     FLS_DISABLED = 4,
617 };
618 
619 enum LINKSTATES {
620     FLYOUTLINK_NORMAL = 1,
621     FLYOUTLINK_HOVER = 2,
622 };
623 
624 enum BODYSTATES {
625     FBS_NORMAL = 1,
626     FBS_EMPHASIZED = 2,
627 };
628 
629 enum LINKHEADERSTATES {
630     FLH_NORMAL = 1,
631     FLH_HOVER = 2,
632 };
633 
634 /* HEADERSTYLE class */
635 #if defined(__GNUC__)
636 #define VSCLASS_HEADERSTYLE (const WCHAR []){'H','E','A','D','E','R','S','T','Y','L','E',0}
637 #define VSCLASS_HEADER (const WCHAR []){'H','E','A','D','E','R',0}
638 #elif defined(_MSC_VER)
639 #define VSCLASS_HEADERSTYLE L"HEADERSTYLE"
640 #define VSCLASS_HEADER L"HEADER"
641 #else
642 static const WCHAR VSCLASS_HEADERSTYLE [] = {'H','E','A','D','E','R','S','T','Y','L','E',0};
643 static const WCHAR VSCLASS_HEADER [] = {'H','E','A','D','E','R',0};
644 #endif
645 
646 enum HEADERPARTS {
647     HP_HEADERITEM = 1,
648     HP_HEADERITEMLEFT = 2,
649     HP_HEADERITEMRIGHT = 3,
650     HP_HEADERSORTARROW = 4,
651     HP_HEADERDROPDOWN = 5,
652     HP_HEADERDROPDOWNFILTER = 6,
653     HP_HEADEROVERFLOW = 7,
654 };
655 
656 #define HEADERSTYLEPARTS HEADERPARTS;
657 
658 enum HEADERSTYLESTATES {
659     HBG_DETAILS = 1,
660     HBG_ICON = 2,
661 };
662 
663 enum HEADERITEMSTATES {
664     HIS_NORMAL = 1,
665     HIS_HOT = 2,
666     HIS_PRESSED = 3,
667     HIS_SORTEDNORMAL = 4,
668     HIS_SORTEDHOT = 5,
669     HIS_SORTEDPRESSED = 6,
670     HIS_ICONNORMAL = 7,
671     HIS_ICONHOT = 8,
672     HIS_ICONPRESSED = 9,
673     HIS_ICONSORTEDNORMAL = 10,
674     HIS_ICONSORTEDHOT = 11,
675     HIS_ICONSORTEDPRESSED = 12,
676 };
677 
678 enum HEADERITEMLEFTSTATES {
679     HILS_NORMAL = 1,
680     HILS_HOT = 2,
681     HILS_PRESSED = 3,
682 };
683 
684 enum HEADERITEMRIGHTSTATES {
685     HIRS_NORMAL = 1,
686     HIRS_HOT = 2,
687     HIRS_PRESSED = 3,
688 };
689 
690 enum HEADERSORTARROWSTATES {
691     HSAS_SORTEDUP = 1,
692     HSAS_SORTEDDOWN = 2,
693 };
694 
695 enum HEADERDROPDOWNSTATES {
696     HDDS_NORMAL = 1,
697     HDDS_SOFTHOT = 2,
698     HDDS_HOT = 3,
699 };
700 
701 enum HEADERDROPDOWNFILTERSTATES {
702     HDDFS_NORMAL = 1,
703     HDDFS_SOFTHOT = 2,
704     HDDFS_HOT = 3,
705 };
706 
707 enum HEADEROVERFLOWSTATES {
708     HOFS_NORMAL = 1,
709     HOFS_HOT = 2,
710 };
711 
712 /* LISTBOXSTYLE class */
713 #if defined(__GNUC__)
714 #define VSCLASS_LISTBOXSTYLE (const WCHAR []){'L','I','S','T','B','O','X','S','T','Y','L','E',0}
715 #define VSCLASS_LISTBOX (const WCHAR []){'L','I','S','T','B','O','X',0}
716 #elif defined(_MSC_VER)
717 #define VSCLASS_LISTBOXSTYLE L"LISTBOXSTYLE"
718 #define VSCLASS_LISTBOX L"LISTBOX"
719 #else
720 static const WCHAR VSCLASS_LISTBOXSTYLE [] = {'L','I','S','T','B','O','X','S','T','Y','L','E',0};
721 static const WCHAR VSCLASS_LISTBOX[] = {'L','I','S','T','B','O','X',0};
722 #endif
723 
724 enum LISTBOXPARTS {
725     LBCP_BORDER_HSCROLL = 1,
726     LBCP_BORDER_HVSCROLL = 2,
727     LBCP_BORDER_NOSCROLL = 3,
728     LBCP_BORDER_VSCROLL = 4,
729     LBCP_ITEM = 5,
730 };
731 
732 #define LISTBOXSTYLEPARTS LISTBOXPARTS;
733 
734 enum BORDER_HSCROLLSTATES {
735     LBPSH_NORMAL = 1,
736     LBPSH_FOCUSED = 2,
737     LBPSH_HOT = 3,
738     LBPSH_DISABLED = 4,
739 };
740 
741 enum BORDER_HVSCROLLSTATES {
742     LBPSHV_NORMAL = 1,
743     LBPSHV_FOCUSED = 2,
744     LBPSHV_HOT = 3,
745     LBPSHV_DISABLED = 4,
746 };
747 
748 enum BORDER_NOSCROLLSTATES {
749     LBPSN_NORMAL = 1,
750     LBPSN_FOCUSED = 2,
751     LBPSN_HOT = 3,
752     LBPSN_DISABLED = 4,
753 };
754 
755 enum BORDER_VSCROLLSTATES {
756     LBPSV_NORMAL = 1,
757     LBPSV_FOCUSED = 2,
758     LBPSV_HOT = 3,
759     LBPSV_DISABLED = 4,
760 };
761 
762 enum ITEMSTATES {
763     LBPSI_HOT = 1,
764     LBPSI_HOTSELECTED = 2,
765     LBPSI_SELECTED = 3,
766     LBPSI_SELECTEDNOTFOCUS = 4,
767 };
768 
769 /* LISTVIEWSTYLE class */
770 #if defined(__GNUC__)
771 #define VSCLASS_LISTVIEWSTYLE (const WCHAR []){'L','I','S','T','V','I','E','W','S','T','Y','L','E',0}
772 #define VSCLASS_LISTVIEW (const WCHAR []){'L','I','S','T','V','I','E','W',0}
773 #elif defined(_MSC_VER)
774 #define VSCLASS_LISTVIEWSTYLE L"LISTVIEWSTYLE"
775 #define VSCLASS_LISTVIEW L"LISTVIEW"
776 #else
777 static const WCHAR VSCLASS_LISTVIEWSTYLE [] = {'L','I','S','T','V','I','E','W','S','T','Y','L','E',0};
778 static const WCHAR VSCLASS_LISTVIEW [] = {'L','I','S','T','V','I','E','W',0};
779 #endif
780 
781 enum LISTVIEWPARTS {
782     LVP_LISTITEM = 1,
783     LVP_LISTGROUP = 2,
784     LVP_LISTDETAIL = 3,
785     LVP_LISTSORTEDDETAIL = 4,
786     LVP_EMPTYTEXT = 5,
787     LVP_GROUPHEADER = 6,
788     LVP_GROUPHEADERLINE = 7,
789     LVP_EXPANDBUTTON = 8,
790     LVP_COLLAPSEBUTTON = 9,
791     LVP_COLUMNDETAIL = 10,
792 };
793 
794 #define LISTVIEWSTYLEPARTS LISTVIEWPARTS;
795 
796 enum LISTITEMSTATES {
797     LISS_NORMAL = 1,
798     LISS_HOT = 2,
799     LISS_SELECTED = 3,
800     LISS_DISABLED = 4,
801     LISS_SELECTEDNOTFOCUS = 5,
802     LISS_HOTSELECTED = 6,
803 };
804 
805 enum GROUPHEADERSTATES {
806     LVGH_OPEN = 1,
807     LVGH_OPENHOT = 2,
808     LVGH_OPENSELECTED = 3,
809     LVGH_OPENSELECTEDHOT = 4,
810     LVGH_OPENSELECTEDNOTFOCUSED = 5,
811     LVGH_OPENSELECTEDNOTFOCUSEDHOT = 6,
812     LVGH_OPENMIXEDSELECTION = 7,
813     LVGH_OPENMIXEDSELECTIONHOT = 8,
814     LVGH_CLOSE = 9,
815     LVGH_CLOSEHOT = 10,
816     LVGH_CLOSESELECTED = 11,
817     LVGH_CLOSESELECTEDHOT = 12,
818     LVGH_CLOSESELECTEDNOTFOCUSED = 13,
819     LVGH_CLOSESELECTEDNOTFOCUSEDHOT = 14,
820     LVGH_CLOSEMIXEDSELECTION = 15,
821     LVGH_CLOSEMIXEDSELECTIONHOT = 16,
822 };
823 
824 enum GROUPHEADERLINESTATES {
825     LVGHL_OPEN = 1,
826     LVGHL_OPENHOT = 2,
827     LVGHL_OPENSELECTED = 3,
828     LVGHL_OPENSELECTEDHOT = 4,
829     LVGHL_OPENSELECTEDNOTFOCUSED = 5,
830     LVGHL_OPENSELECTEDNOTFOCUSEDHOT = 6,
831     LVGHL_OPENMIXEDSELECTION = 7,
832     LVGHL_OPENMIXEDSELECTIONHOT = 8,
833     LVGHL_CLOSE = 9,
834     LVGHL_CLOSEHOT = 10,
835     LVGHL_CLOSESELECTED = 11,
836     LVGHL_CLOSESELECTEDHOT = 12,
837     LVGHL_CLOSESELECTEDNOTFOCUSED = 13,
838     LVGHL_CLOSESELECTEDNOTFOCUSEDHOT = 14,
839     LVGHL_CLOSEMIXEDSELECTION = 15,
840     LVGHL_CLOSEMIXEDSELECTIONHOT = 16,
841 };
842 
843 enum EXPANDBUTTONSTATES {
844     LVEB_NORMAL = 1,
845     LVEB_HOVER = 2,
846     LVEB_PUSHED = 3,
847 };
848 
849 enum COLLAPSEBUTTONSTATES {
850     LVCB_NORMAL = 1,
851     LVCB_HOVER = 2,
852     LVCB_PUSHED = 3,
853 };
854 
855 /* MENUSTYLE class */
856 #if defined(__GNUC__)
857 #define VSCLASS_MENUSTYLE (const WCHAR []){'M','E','N','U','S','T','Y','L','E',0}
858 #define VSCLASS_MENU (const WCHAR []){'M','E','N','U',0}
859 #elif defined(_MSC_VER)
860 #define VSCLASS_MENUSTYLE L"MENUSTYLE"
861 #define VSCLASS_MENU L"MENU"
862 #else
863 static const WCHAR VSCLASS_MENUSTYLE [] = {'M','E','N','U','S','T','Y','L','E',0};
864 static const WCHAR VSCLASS_MENU [] = {'M','E','N','U',0};
865 #endif
866 
867 enum MENUPARTS {
868     MENU_MENUITEM_TMSCHEMA = 1,
869     MENU_MENUDROPDOWN_TMSCHEMA = 2,
870     MENU_MENUBARITEM_TMSCHEMA = 3,
871     MENU_MENUBARDROPDOWN_TMSCHEMA = 4,
872     MENU_CHEVRON_TMSCHEMA = 5,
873     MENU_SEPARATOR_TMSCHEMA = 6,
874     MENU_BARBACKGROUND = 7,
875     MENU_BARITEM = 8,
876     MENU_POPUPBACKGROUND = 9,
877     MENU_POPUPBORDERS = 10,
878     MENU_POPUPCHECK = 11,
879     MENU_POPUPCHECKBACKGROUND = 12,
880     MENU_POPUPGUTTER = 13,
881     MENU_POPUPITEM = 14,
882     MENU_POPUPSEPARATOR = 15,
883     MENU_POPUPSUBMENU = 16,
884     MENU_SYSTEMCLOSE = 17,
885     MENU_SYSTEMMAXIMIZE = 18,
886     MENU_SYSTEMMINIMIZE = 19,
887     MENU_SYSTEMRESTORE = 20,
888 };
889 
890 #define MENUSTYLEPARTS MENUPARTS;
891 
892 enum BARBACKGROUNDSTATES {
893     MB_ACTIVE = 1,
894     MB_INACTIVE = 2,
895 };
896 
897 enum BARITEMSTATES {
898     MBI_NORMAL = 1,
899     MBI_HOT = 2,
900     MBI_PUSHED = 3,
901     MBI_DISABLED = 4,
902     MBI_DISABLEDHOT = 5,
903     MBI_DISABLEDPUSHED = 6,
904 };
905 
906 enum POPUPCHECKSTATES {
907     MC_CHECKMARKNORMAL = 1,
908     MC_CHECKMARKDISABLED = 2,
909     MC_BULLETNORMAL = 3,
910     MC_BULLETDISABLED = 4,
911 };
912 
913 enum POPUPCHECKBACKGROUNDSTATES {
914     MCB_DISABLED = 1,
915     MCB_NORMAL = 2,
916     MCB_BITMAP = 3,
917 };
918 
919 enum POPUPITEMSTATES {
920     MPI_NORMAL = 1,
921     MPI_HOT = 2,
922     MPI_DISABLED = 3,
923     MPI_DISABLEDHOT = 4,
924 };
925 
926 enum POPUPSUBMENUSTATES {
927     MSM_NORMAL = 1,
928     MSM_DISABLED = 2,
929 };
930 
931 enum SYSTEMCLOSESTATES {
932     MSYSC_NORMAL = 1,
933     MSYSC_DISABLED = 2,
934 };
935 
936 enum SYSTEMMAXIMIZESTATES {
937     MSYSMX_NORMAL = 1,
938     MSYSMX_DISABLED = 2,
939 };
940 
941 enum SYSTEMMINIMIZESTATES {
942     MSYSMN_NORMAL = 1,
943     MSYSMN_DISABLED = 2,
944 };
945 
946 enum SYSTEMRESTORESTATES {
947     MSYSR_NORMAL = 1,
948     MSYSR_DISABLED = 2,
949 };
950 
951 /* NAVIGATION class */
952 #if defined(__GNUC__)
953 #define VSCLASS_NAVIGATION (const WCHAR []){'N','A','V','I','G','A','T','I','O','N',0}
954 #elif defined(_MSC_VER)
955 #define VSCLASS_NAVIGATION L"NAVIGATION"
956 #else
957 static const WCHAR VSCLASS_NAVIGATION [] = {'N','A','V','I','G','A','T','I','O','N',0};
958 #endif
959 
960 enum NAVIGATIONPARTS {
961     NAV_BACKBUTTON = 1,
962     NAV_FORWARDBUTTON = 2,
963     NAV_MENUBUTTON = 3,
964 };
965 
966 enum NAV_BACKBUTTONSTATES {
967     NAV_BB_NORMAL = 1,
968     NAV_BB_HOT = 2,
969     NAV_BB_PRESSED = 3,
970     NAV_BB_DISABLED = 4,
971 };
972 
973 enum NAV_FORWARDBUTTONSTATES {
974     NAV_FB_NORMAL = 1,
975     NAV_FB_HOT = 2,
976     NAV_FB_PRESSED = 3,
977     NAV_FB_DISABLED = 4,
978 };
979 
980 enum NAV_MENUBUTTONSTATES {
981     NAV_MB_NORMAL = 1,
982     NAV_MB_HOT = 2,
983     NAV_MB_PRESSED = 3,
984     NAV_MB_DISABLED = 4,
985 };
986 
987 /* PROGRESSSTYLE class */
988 #if defined(__GNUC__)
989 #define VSCLASS_PROGRESSSTYLE (const WCHAR []){'P','R','O','G','R','E','S','S','S','T','Y','L','E',0}
990 #define VSCLASS_PROGRESS (const WCHAR []){'P','R','O','G','R','E','S','S',0}
991 #elif defined(_MSC_VER)
992 #define VSCLASS_PROGRESSSTYLE L"PROGRESSSTYLE"
993 #define VSCLASS_PROGRESS L"PROGRESS"
994 #else
995 static const WCHAR VSCLASS_PROGRESSSTYLE [] = {'P','R','O','G','R','E','S','S','S','T','Y','L','E',0};
996 static const WCHAR VSCLASS_PROGRESS [] = {'P','R','O','G','R','E','S','S',0};
997 #endif
998 
999 enum PROGRESSPARTS {
1000     PP_BAR = 1,
1001     PP_BARVERT = 2,
1002     PP_CHUNK = 3,
1003     PP_CHUNKVERT = 4,
1004     PP_FILL = 5,
1005     PP_FILLVERT = 6,
1006     PP_PULSEOVERLAY = 7,
1007     PP_MOVEOVERLAY = 8,
1008     PP_PULSEOVERLAYVERT = 9,
1009     PP_MOVEOVERLAYVERT = 10,
1010     PP_TRANSPARENTBAR = 11,
1011     PP_TRANSPARENTBARVERT = 12,
1012 };
1013 
1014 #define PROGRESSSTYLEPARTS PROGRESSPARTS;
1015 
1016 enum TRANSPARENTBARSTATES {
1017     PBBS_NORMAL = 1,
1018     PBBS_PARTIAL = 2,
1019 };
1020 
1021 enum TRANSPARENTBARVERTSTATES {
1022     PBBVS_NORMAL = 1,
1023     PBBVS_PARTIAL = 2,
1024 };
1025 
1026 enum FILLSTATES {
1027     PBFS_NORMAL = 1,
1028     PBFS_ERROR = 2,
1029     PBFS_PAUSED = 3,
1030     PBFS_PARTIAL = 4,
1031 };
1032 
1033 enum FILLVERTSTATES {
1034     PBFVS_NORMAL = 1,
1035     PBFVS_ERROR = 2,
1036     PBFVS_PAUSED = 3,
1037     PBFVS_PARTIAL = 4,
1038 };
1039 
1040 /* REBARSTYLE class */
1041 #if defined(__GNUC__)
1042 #define VSCLASS_REBARSTYLE (const WCHAR []){'R','E','B','A','R','S','T','Y','L','E',0}
1043 #define VSCLASS_REBAR (const WCHAR []){'R','E','B','A','R',0}
1044 #elif defined(_MSC_VER)
1045 #define VSCLASS_REBARSTYLE L"REBARSTYLE"
1046 #define VSCLASS_REBAR L"REBAR"
1047 #else
1048 static const WCHAR VSCLASS_REBARSTYLE [] = {'R','E','B','A','R','S','T','Y','L','E',0};
1049 static const WCHAR VSCLASS_REBAR [] = {'R','E','B','A','R',0};
1050 #endif
1051 
1052 enum REBARPARTS {
1053     RP_GRIPPER = 1,
1054     RP_GRIPPERVERT = 2,
1055     RP_BAND = 3,
1056     RP_CHEVRON = 4,
1057     RP_CHEVRONVERT = 5,
1058     RP_BACKGROUND = 6,
1059     RP_SPLITTER = 7,
1060     RP_SPLITTERVERT = 8,
1061 };
1062 
1063 #define REBARSTYLEPARTS REBARPARTS;
1064 
1065 enum CHEVRONSTATES {
1066     CHEVS_NORMAL = 1,
1067     CHEVS_HOT = 2,
1068     CHEVS_PRESSED = 3,
1069 };
1070 
1071 enum CHEVRONVERTSTATES {
1072     CHEVSV_NORMAL = 1,
1073     CHEVSV_HOT = 2,
1074     CHEVSV_PRESSED = 3,
1075 };
1076 
1077 enum SPLITTERSTATES {
1078     SPLITS_NORMAL = 1,
1079     SPLITS_HOT = 2,
1080     SPLITS_PRESSED = 3,
1081 };
1082 
1083 enum SPLITTERVERTSTATES {
1084     SPLITSV_NORMAL = 1,
1085     SPLITSV_HOT = 2,
1086     SPLITSV_PRESSED = 3,
1087 };
1088 
1089 /* SCROLLBARSTYLE class */
1090 #if defined(__GNUC__)
1091 #define VSCLASS_SCROLLBARSTYLE (const WCHAR []){'S','C','R','O','L','L','B','A','R','S','T','Y','L','E',0}
1092 #define VSCLASS_SCROLLBAR (const WCHAR []){'S','C','R','O','L','L','B','A','R',0}
1093 #elif defined(_MSC_VER)
1094 #define VSCLASS_SCROLLBARSTYLE L"SCROLLBARSTYLE"
1095 #define VSCLASS_SCROLLBAR L"SCROLLBAR"
1096 #else
1097 static const WCHAR VSCLASS_SCROLLBARSTYLE [] = {'S','C','R','O','L','L','B','A','R','S','T','Y','L','E',0};
1098 static const WCHAR VSCLASS_SCROLLBAR [] = {'S','C','R','O','L','L','B','A','R',0};
1099 #endif
1100 
1101 enum SCROLLBARPARTS {
1102     SBP_ARROWBTN = 1,
1103     SBP_THUMBBTNHORZ = 2,
1104     SBP_THUMBBTNVERT = 3,
1105     SBP_LOWERTRACKHORZ = 4,
1106     SBP_UPPERTRACKHORZ = 5,
1107     SBP_LOWERTRACKVERT = 6,
1108     SBP_UPPERTRACKVERT = 7,
1109     SBP_GRIPPERHORZ = 8,
1110     SBP_GRIPPERVERT = 9,
1111     SBP_SIZEBOX = 10,
1112 };
1113 
1114 #define SCROLLBARSTYLEPARTS SCROLLBARPARTS;
1115 
1116 enum ARROWBTNSTATES {
1117     ABS_UPNORMAL = 1,
1118     ABS_UPHOT = 2,
1119     ABS_UPPRESSED = 3,
1120     ABS_UPDISABLED = 4,
1121     ABS_DOWNNORMAL = 5,
1122     ABS_DOWNHOT = 6,
1123     ABS_DOWNPRESSED = 7,
1124     ABS_DOWNDISABLED = 8,
1125     ABS_LEFTNORMAL = 9,
1126     ABS_LEFTHOT = 10,
1127     ABS_LEFTPRESSED = 11,
1128     ABS_LEFTDISABLED = 12,
1129     ABS_RIGHTNORMAL = 13,
1130     ABS_RIGHTHOT = 14,
1131     ABS_RIGHTPRESSED = 15,
1132     ABS_RIGHTDISABLED = 16,
1133     ABS_UPHOVER = 17,
1134     ABS_DOWNHOVER = 18,
1135     ABS_LEFTHOVER = 19,
1136     ABS_RIGHTHOVER = 20,
1137 };
1138 
1139 enum SCROLLBARSTYLESTATES {
1140     SCRBS_NORMAL = 1,
1141     SCRBS_HOT = 2,
1142     SCRBS_PRESSED = 3,
1143     SCRBS_DISABLED = 4,
1144     SCRBS_HOVER = 5,
1145 };
1146 
1147 enum SIZEBOXSTATES {
1148     SZB_RIGHTALIGN = 1,
1149     SZB_LEFTALIGN = 2,
1150     SZB_TOPRIGHTALIGN = 3,
1151     SZB_TOPLEFTALIGN = 4,
1152     SZB_HALFBOTTOMRIGHTALIGN = 5,
1153     SZB_HALFBOTTOMLEFTALIGN = 6,
1154     SZB_HALFTOPRIGHTALIGN = 7,
1155     SZB_HALFTOPLEFTALIGN = 8,
1156 };
1157 
1158 /* SPINSTYLE class */
1159 #if defined(__GNUC__)
1160 #define VSCLASS_SPINSTYLE (const WCHAR []){'S','P','I','N','S','T','Y','L','E',0}
1161 #elif defined(_MSC_VER)
1162 #define VSCLASS_SPINSTYLE L"SPINSTYLE"
1163 #else
1164 static const WCHAR VSCLASS_SPINSTYLE [] = {'S','P','I','N','S','T','Y','L','E',0};
1165 #endif
1166 #if defined(__GNUC__)
1167 #define VSCLASS_SPIN (const WCHAR []){'S','P','I','N',0}
1168 #elif defined(_MSC_VER)
1169 #define VSCLASS_SPIN L"SPIN"
1170 #else
1171 static const WCHAR VSCLASS_SPIN [] = {'S','P','I','N',0};
1172 #endif
1173 
1174 enum SPINPARTS {
1175     SPNP_UP = 1,
1176     SPNP_DOWN = 2,
1177     SPNP_UPHORZ = 3,
1178     SPNP_DOWNHORZ = 4,
1179 };
1180 
1181 #define SPINSTYLEPARTS SPINPARTS;
1182 
1183 enum UPSTATES {
1184     UPS_NORMAL = 1,
1185     UPS_HOT = 2,
1186     UPS_PRESSED = 3,
1187     UPS_DISABLED = 4,
1188 };
1189 
1190 enum DOWNSTATES {
1191     DNS_NORMAL = 1,
1192     DNS_HOT = 2,
1193     DNS_PRESSED = 3,
1194     DNS_DISABLED = 4,
1195 };
1196 
1197 enum UPHORZSTATES {
1198     UPHZS_NORMAL = 1,
1199     UPHZS_HOT = 2,
1200     UPHZS_PRESSED = 3,
1201     UPHZS_DISABLED = 4,
1202 };
1203 
1204 enum DOWNHORZSTATES {
1205     DNHZS_NORMAL = 1,
1206     DNHZS_HOT = 2,
1207     DNHZS_PRESSED = 3,
1208     DNHZS_DISABLED = 4,
1209 };
1210 
1211 /* STATUSSTYLE class */
1212 #if defined(__GNUC__)
1213 #define VSCLASS_STATUSSTYLE (const WCHAR []){'S','T','A','T','U','S','S','T','Y','L','E',0}
1214 #define VSCLASS_STATUS (const WCHAR []){'S','T','A','T','U','S',0}
1215 #elif defined(_MSC_VER)
1216 #define VSCLASS_STATUSSTYLE L"STATUSSTYLE"
1217 #define VSCLASS_STATUS L"STATUS"
1218 #else
1219 static const WCHAR VSCLASS_STATUSSTYLE [] = {'S','T','A','T','U','S','S','T','Y','L','E',0};
1220 static const WCHAR VSCLASS_STATUS [] = {'S','T','A','T','U','S',0};
1221 #endif
1222 
1223 enum STATUSPARTS {
1224     SP_PANE = 1,
1225     SP_GRIPPERPANE = 2,
1226     SP_GRIPPER = 3,
1227 };
1228 
1229 #define STATUSSTYLEPARTS STATUSPARTS;
1230 
1231 /* TABSTYLE class */
1232 #if defined(__GNUC__)
1233 #define VSCLASS_TABSTYLE (const WCHAR []){'T','A','B','S','T','Y','L','E',0}
1234 #define VSCLASS_TAB (const WCHAR []){'T','A','B',0}
1235 #elif defined(_MSC_VER)
1236 #define VSCLASS_TABSTYLE L"TABSTYLE"
1237 #define VSCLASS_TAB L"TAB"
1238 #else
1239 static const WCHAR VSCLASS_TABSTYLE [] = {'T','A','B','S','T','Y','L','E',0};
1240 static const WCHAR VSCLASS_TAB [] = {'T','A','B',0};
1241 #endif
1242 
1243 enum TABPARTS {
1244     TABP_TABITEM = 1,
1245     TABP_TABITEMLEFTEDGE = 2,
1246     TABP_TABITEMRIGHTEDGE = 3,
1247     TABP_TABITEMBOTHEDGE = 4,
1248     TABP_TOPTABITEM = 5,
1249     TABP_TOPTABITEMLEFTEDGE = 6,
1250     TABP_TOPTABITEMRIGHTEDGE = 7,
1251     TABP_TOPTABITEMBOTHEDGE = 8,
1252     TABP_PANE = 9,
1253     TABP_BODY = 10,
1254     TABP_AEROWIZARDBODY = 11,
1255 };
1256 
1257 #define TABSTYLEPARTS TABPARTS;
1258 
1259 enum TABITEMSTATES {
1260     TIS_NORMAL = 1,
1261     TIS_HOT = 2,
1262     TIS_SELECTED = 3,
1263     TIS_DISABLED = 4,
1264     TIS_FOCUSED = 5,
1265 };
1266 
1267 enum TABITEMLEFTEDGESTATES {
1268     TILES_NORMAL = 1,
1269     TILES_HOT = 2,
1270     TILES_SELECTED = 3,
1271     TILES_DISABLED = 4,
1272     TILES_FOCUSED = 5,
1273 };
1274 
1275 enum TABITEMRIGHTEDGESTATES {
1276     TIRES_NORMAL = 1,
1277     TIRES_HOT = 2,
1278     TIRES_SELECTED = 3,
1279     TIRES_DISABLED = 4,
1280     TIRES_FOCUSED = 5,
1281 };
1282 
1283 enum TABITEMBOTHEDGESTATES {
1284     TIBES_NORMAL = 1,
1285     TIBES_HOT = 2,
1286     TIBES_SELECTED = 3,
1287     TIBES_DISABLED = 4,
1288     TIBES_FOCUSED = 5,
1289 };
1290 
1291 enum TOPTABITEMSTATES {
1292     TTIS_NORMAL = 1,
1293     TTIS_HOT = 2,
1294     TTIS_SELECTED = 3,
1295     TTIS_DISABLED = 4,
1296     TTIS_FOCUSED = 5,
1297 };
1298 
1299 enum TOPTABITEMLEFTEDGESTATES {
1300     TTILES_NORMAL = 1,
1301     TTILES_HOT = 2,
1302     TTILES_SELECTED = 3,
1303     TTILES_DISABLED = 4,
1304     TTILES_FOCUSED = 5,
1305 };
1306 
1307 enum TOPTABITEMRIGHTEDGESTATES {
1308     TTIRES_NORMAL = 1,
1309     TTIRES_HOT = 2,
1310     TTIRES_SELECTED = 3,
1311     TTIRES_DISABLED = 4,
1312     TTIRES_FOCUSED = 5,
1313 };
1314 
1315 enum TOPTABITEMBOTHEDGESTATES {
1316     TTIBES_NORMAL = 1,
1317     TTIBES_HOT = 2,
1318     TTIBES_SELECTED = 3,
1319     TTIBES_DISABLED = 4,
1320     TTIBES_FOCUSED = 5,
1321 };
1322 
1323 /* TASKDIALOGSTYLE class */
1324 #if defined(__GNUC__)
1325 #define VSCLASS_TASKDIALOGSTYLE (const WCHAR []){'T','A','S','K','D','I','A','L','O','G','S','T','Y','L','E',0}
1326 #define VSCLASS_TASKDIALOG (const WCHAR []){'T','A','S','K','D','I','A','L','O','G',0}
1327 #elif defined(_MSC_VER)
1328 #define VSCLASS_TASKDIALOGSTYLE L"TASKDIALOGSTYLE"
1329 #define VSCLASS_TASKDIALOG L"TASKDIALOG"
1330 #else
1331 static const WCHAR VSCLASS_TASKDIALOGSTYLE[] = {'T','A','S','K','D','I','A','L','O','G','S','T','Y','L','E',0};
1332 static const WCHAR VSCLASS_TASKDIALOG [] = {'T','A','S','K','D','I','A','L','O','G',0};
1333 #endif
1334 
1335 enum TASKDIALOGPARTS {
1336     TDLG_PRIMARYPANEL = 1,
1337     TDLG_MAININSTRUCTIONPANE = 2,
1338     TDLG_MAINICON = 3,
1339     TDLG_CONTENTPANE = 4,
1340     TDLG_CONTENTICON = 5,
1341     TDLG_EXPANDEDCONTENT = 6,
1342     TDLG_COMMANDLINKPANE = 7,
1343     TDLG_SECONDARYPANEL = 8,
1344     TDLG_CONTROLPANE = 9,
1345     TDLG_BUTTONSECTION = 10,
1346     TDLG_BUTTONWRAPPER = 11,
1347     TDLG_EXPANDOTEXT = 12,
1348     TDLG_EXPANDOBUTTON = 13,
1349     TDLG_VERIFICATIONTEXT = 14,
1350     TDLG_FOOTNOTEPANE = 15,
1351     TDLG_FOOTNOTEAREA = 16,
1352     TDLG_FOOTNOTESEPARATOR = 17,
1353     TDLG_EXPANDEDFOOTERAREA = 18,
1354     TDLG_PROGRESSBAR = 19,
1355     TDLG_IMAGEALIGNMENT = 20,
1356     TDLG_RADIOBUTTONPANE = 21,
1357 };
1358 
1359 #define TASKDIALOGSTYLEPARTS TASKDIALOGPARTS;
1360 
1361 enum CONTENTPANESTATES {
1362     TDLGCPS_STANDALONE = 1,
1363 };
1364 
1365 enum EXPANDOBUTTONSTATES {
1366     TDLGEBS_NORMAL = 1,
1367     TDLGEBS_HOVER = 2,
1368     TDLGEBS_PRESSED = 3,
1369     TDLGEBS_EXPANDEDNORMAL = 4,
1370     TDLGEBS_EXPANDEDHOVER = 5,
1371     TDLGEBS_EXPANDEDPRESSED = 6,
1372 };
1373 
1374 /* TEXTSTYLE class */
1375 #if defined(__GNUC__)
1376 #define VSCLASS_TEXTSTYLE (const WCHAR []){'T','E','X','T','S','T','Y','L','E',0}
1377 #elif defined(_MSC_VER)
1378 #define VSCLASS_TEXTSTYLE L"TEXTSTYLE"
1379 #else
1380 static const WCHAR VSCLASS_TEXTSTYLE [] = {'T','E','X','T','S','T','Y','L','E',0};
1381 #endif
1382 
1383 enum TEXTSTYLEPARTS {
1384     TEXT_MAININSTRUCTION = 1,
1385     TEXT_INSTRUCTION = 2,
1386     TEXT_BODYTITLE = 3,
1387     TEXT_BODYTEXT = 4,
1388     TEXT_SECONDARYTEXT = 5,
1389     TEXT_HYPERLINKTEXT = 6,
1390     TEXT_EXPANDED = 7,
1391     TEXT_LABEL = 8,
1392     TEXT_CONTROLLABEL = 9,
1393 };
1394 
1395 enum HYPERLINKTEXTSTATES {
1396     TS_HYPERLINK_NORMAL = 1,
1397     TS_HYPERLINK_HOT = 2,
1398     TS_HYPERLINK_PRESSED = 3,
1399     TS_HYPERLINK_DISABLED = 4,
1400 };
1401 
1402 enum CONTROLLABELSTATES {
1403     TS_CONTROLLABEL_NORMAL = 1,
1404     TS_CONTROLLABEL_DISABLED = 2,
1405 };
1406 
1407 /* TOOLBARSTYLE class */
1408 #if defined(__GNUC__)
1409 #define VSCLASS_TOOLBARSTYLE (const WCHAR []){'T','O','O','L','B','A','R','S','T','Y','L','E',0}
1410 #define VSCLASS_TOOLBAR (const WCHAR []){'T','O','O','L','B','A','R',0}
1411 #elif defined(_MSC_VER)
1412 #define VSCLASS_TOOLBARSTYLE L"TOOLBARSTYLE"
1413 #define VSCLASS_TOOLBAR L"TOOLBAR"
1414 #else
1415 static const WCHAR VSCLASS_TOOLBARSTYLE [] = {'T','O','O','L','B','A','R','S','T','Y','L','E',0};
1416 static const WCHAR VSCLASS_TOOLBAR[] = {'T','O','O','L','B','A','R',0};
1417 #endif
1418 
1419 enum TOOLBARPARTS {
1420     TP_BUTTON = 1,
1421     TP_DROPDOWNBUTTON = 2,
1422     TP_SPLITBUTTON = 3,
1423     TP_SPLITBUTTONDROPDOWN = 4,
1424     TP_SEPARATOR = 5,
1425     TP_SEPARATORVERT = 6,
1426     TP_DROPDOWNBUTTONGLYPH = 7,
1427 };
1428 
1429 #define TOOLBARSTYLEPARTS TOOLBARPARTS;
1430 
1431 enum TOOLBARSTYLESTATES {
1432     TS_NORMAL = 1,
1433     TS_HOT = 2,
1434     TS_PRESSED = 3,
1435     TS_DISABLED = 4,
1436     TS_CHECKED = 5,
1437     TS_HOTCHECKED = 6,
1438     TS_NEARHOT = 7,
1439     TS_OTHERSIDEHOT = 8,
1440 };
1441 
1442 /* TOOLTIPSTYLE class */
1443 #if defined(__GNUC__)
1444 #define VSCLASS_TOOLTIPSTYLE (const WCHAR []){'T','O','O','L','T','I','P','S','T','Y','L','E',0}
1445 #define VSCLASS_TOOLTIP (const WCHAR []){'T','O','O','L','T','I','P',0}
1446 #elif defined(_MSC_VER)
1447 #define VSCLASS_TOOLTIPSTYLE L"TOOLTIPSTYLE"
1448 #define VSCLASS_TOOLTIP L"TOOLTIP"
1449 #else
1450 static const WCHAR VSCLASS_TOOLTIPSTYLE [] = {'T','O','O','L','T','I','P','S','T','Y','L','E',0};
1451 static const WCHAR VSCLASS_TOOLTIP[] = {'T','O','O','L','T','I','P',0};
1452 #endif
1453 
1454 enum TOOLTIPPARTS {
1455     TTP_STANDARD = 1,
1456     TTP_STANDARDTITLE = 2,
1457     TTP_BALLOON = 3,
1458     TTP_BALLOONTITLE = 4,
1459     TTP_CLOSE = 5,
1460     TTP_BALLOONSTEM = 6,
1461     TTP_WRENCH = 7,
1462 };
1463 
1464 #define TOOLTIPSTYLEPARTS TOOLTIPPARTS;
1465 
1466 enum CLOSESTATES {
1467     TTCS_NORMAL = 1,
1468     TTCS_HOT = 2,
1469     TTCS_PRESSED = 3,
1470 };
1471 
1472 enum STANDARDSTATES {
1473     TTSS_NORMAL = 1,
1474     TTSS_LINK = 2,
1475 };
1476 
1477 enum BALLOONSTATES {
1478     TTBS_NORMAL = 1,
1479     TTBS_LINK = 2,
1480 };
1481 
1482 enum BALLOONSTEMSTATES {
1483     TTBSS_POINTINGUPLEFTWALL = 1,
1484     TTBSS_POINTINGUPCENTERED = 2,
1485     TTBSS_POINTINGUPRIGHTWALL = 3,
1486     TTBSS_POINTINGDOWNRIGHTWALL = 4,
1487     TTBSS_POINTINGDOWNCENTERED = 5,
1488     TTBSS_POINTINGDOWNLEFTWALL = 6,
1489 };
1490 
1491 enum WRENCHSTATES {
1492     TTWS_NORMAL = 1,
1493     TTWS_HOT = 2,
1494     TTWS_PRESSED = 3,
1495 };
1496 
1497 /* TRACKBARSTYLE class */
1498 #if defined(__GNUC__)
1499 #define VSCLASS_TRACKBARSTYLE (const WCHAR []){'T','R','A','C','K','B','A','R','S','T','Y','L','E',0}
1500 #define VSCLASS_TRACKBAR (const WCHAR []){'T','R','A','C','K','B','A','R',0}
1501 #elif defined(_MSC_VER)
1502 #define VSCLASS_TRACKBARSTYLE L"TRACKBARSTYLE"
1503 #define VSCLASS_TRACKBAR L"TRACKBAR"
1504 #else
1505 static const WCHAR VSCLASS_TRACKBARSTYLE [] = {'T','R','A','C','K','B','A','R','S','T','Y','L','E',0};
1506 static const WCHAR VSCLASS_TRACKBAR [] = {'T','R','A','C','K','B','A','R',0};
1507 #endif
1508 
1509 enum TRACKBARPARTS {
1510     TKP_TRACK = 1,
1511     TKP_TRACKVERT = 2,
1512     TKP_THUMB = 3,
1513     TKP_THUMBBOTTOM = 4,
1514     TKP_THUMBTOP = 5,
1515     TKP_THUMBVERT = 6,
1516     TKP_THUMBLEFT = 7,
1517     TKP_THUMBRIGHT = 8,
1518     TKP_TICS = 9,
1519     TKP_TICSVERT = 10,
1520 };
1521 
1522 #define TRACKBARSTYLEPARTS TRACKBARPARTS;
1523 
1524 enum TRACKBARSTYLESTATES {
1525     TKS_NORMAL = 1,
1526 };
1527 
1528 enum TRACKSTATES {
1529     TRS_NORMAL = 1,
1530 };
1531 
1532 enum TRACKVERTSTATES {
1533     TRVS_NORMAL = 1,
1534 };
1535 
1536 enum THUMBSTATES {
1537     TUS_NORMAL = 1,
1538     TUS_HOT = 2,
1539     TUS_PRESSED = 3,
1540     TUS_FOCUSED = 4,
1541     TUS_DISABLED = 5,
1542 };
1543 
1544 enum THUMBBOTTOMSTATES {
1545     TUBS_NORMAL = 1,
1546     TUBS_HOT = 2,
1547     TUBS_PRESSED = 3,
1548     TUBS_FOCUSED = 4,
1549     TUBS_DISABLED = 5,
1550 };
1551 
1552 enum THUMBTOPSTATES {
1553     TUTS_NORMAL = 1,
1554     TUTS_HOT = 2,
1555     TUTS_PRESSED = 3,
1556     TUTS_FOCUSED = 4,
1557     TUTS_DISABLED = 5,
1558 };
1559 
1560 enum THUMBVERTSTATES {
1561     TUVS_NORMAL = 1,
1562     TUVS_HOT = 2,
1563     TUVS_PRESSED = 3,
1564     TUVS_FOCUSED = 4,
1565     TUVS_DISABLED = 5,
1566 };
1567 
1568 enum THUMBLEFTSTATES {
1569     TUVLS_NORMAL = 1,
1570     TUVLS_HOT = 2,
1571     TUVLS_PRESSED = 3,
1572     TUVLS_FOCUSED = 4,
1573     TUVLS_DISABLED = 5,
1574 };
1575 
1576 enum THUMBRIGHTSTATES {
1577     TUVRS_NORMAL = 1,
1578     TUVRS_HOT = 2,
1579     TUVRS_PRESSED = 3,
1580     TUVRS_FOCUSED = 4,
1581     TUVRS_DISABLED = 5,
1582 };
1583 
1584 enum TICSSTATES {
1585     TSS_NORMAL = 1,
1586 };
1587 
1588 enum TICSVERTSTATES {
1589     TSVS_NORMAL = 1,
1590 };
1591 
1592 /* TREEVIEWSTYLE class */
1593 #if defined(__GNUC__)
1594 #define VSCLASS_TREEVIEWSTYLE (const WCHAR []){'T','R','E','E','V','I','E','W','S','T','Y','L','E',0}
1595 #define VSCLASS_TREEVIEW (const WCHAR []){'T','R','E','E','V','I','E','W',0}
1596 #elif defined(_MSC_VER)
1597 #define VSCLASS_TREEVIEWSTYLE L"TREEVIEWSTYLE"
1598 #define VSCLASS_TREEVIEW L"TREEVIEW"
1599 #else
1600 static const WCHAR VSCLASS_TREEVIEWSTYLE [] = {'T','R','E','E','V','I','E','W','S','T','Y','L','E',0};
1601 static const WCHAR VSCLASS_TREEVIEW [] = {'T','R','E','E','V','I','E','W',0};
1602 #endif
1603 
1604 enum TREEVIEWPARTS {
1605     TVP_TREEITEM = 1,
1606     TVP_GLYPH = 2,
1607     TVP_BRANCH = 3,
1608     TVP_HOTGLYPH = 4,
1609 };
1610 
1611 #define TREEVIEWSTYLEPARTS TREEVIEWPARTS;
1612 
1613 enum TREEITEMSTATES {
1614     TREIS_NORMAL = 1,
1615     TREIS_HOT = 2,
1616     TREIS_SELECTED = 3,
1617     TREIS_DISABLED = 4,
1618     TREIS_SELECTEDNOTFOCUS = 5,
1619     TREIS_HOTSELECTED = 6,
1620 };
1621 
1622 enum GLYPHSTATES {
1623     GLPS_CLOSED = 1,
1624     GLPS_OPENED = 2,
1625 };
1626 
1627 enum HOTGLYPHSTATES {
1628     HGLPS_CLOSED = 1,
1629     HGLPS_OPENED = 2,
1630 };
1631 
1632 /* WINDOWSTYLE class */
1633 #if defined(__GNUC__)
1634 #define VSCLASS_WINDOWSTYLE (const WCHAR []){'W','I','N','D','O','W','S','T','Y','L','E',0}
1635 #define VSCLASS_WINDOW (const WCHAR []){'W','I','N','D','O','W',0}
1636 #elif defined(_MSC_VER)
1637 #define VSCLASS_WINDOWSTYLE L"WINDOWSTYLE"
1638 #define VSCLASS_WINDOW L"WINDOW"
1639 #else
1640 static const WCHAR VSCLASS_WINDOWSTYLE [] = {'W','I','N','D','O','W','S','T','Y','L','E',0};
1641 static const WCHAR VSCLASS_WINDOW [] = {'W','I','N','D','O','W',0};
1642 #endif
1643 
1644 enum WINDOWPARTS {
1645     WP_CAPTION = 1,
1646     WP_SMALLCAPTION = 2,
1647     WP_MINCAPTION = 3,
1648     WP_SMALLMINCAPTION = 4,
1649     WP_MAXCAPTION = 5,
1650     WP_SMALLMAXCAPTION = 6,
1651     WP_FRAMELEFT = 7,
1652     WP_FRAMERIGHT = 8,
1653     WP_FRAMEBOTTOM = 9,
1654     WP_SMALLFRAMELEFT = 10,
1655     WP_SMALLFRAMERIGHT = 11,
1656     WP_SMALLFRAMEBOTTOM = 12,
1657     WP_SYSBUTTON = 13,
1658     WP_MDISYSBUTTON = 14,
1659     WP_MINBUTTON = 15,
1660     WP_MDIMINBUTTON = 16,
1661     WP_MAXBUTTON = 17,
1662     WP_CLOSEBUTTON = 18,
1663     WP_SMALLCLOSEBUTTON = 19,
1664     WP_MDICLOSEBUTTON = 20,
1665     WP_RESTOREBUTTON = 21,
1666     WP_MDIRESTOREBUTTON = 22,
1667     WP_HELPBUTTON = 23,
1668     WP_MDIHELPBUTTON = 24,
1669     WP_HORZSCROLL = 25,
1670     WP_HORZTHUMB = 26,
1671     WP_VERTSCROLL = 27,
1672     WP_VERTTHUMB = 28,
1673     WP_DIALOG = 29,
1674     WP_CAPTIONSIZINGTEMPLATE = 30,
1675     WP_SMALLCAPTIONSIZINGTEMPLATE = 31,
1676     WP_FRAMELEFTSIZINGTEMPLATE = 32,
1677     WP_SMALLFRAMELEFTSIZINGTEMPLATE = 33,
1678     WP_FRAMERIGHTSIZINGTEMPLATE = 34,
1679     WP_SMALLFRAMERIGHTSIZINGTEMPLATE = 35,
1680     WP_FRAMEBOTTOMSIZINGTEMPLATE = 36,
1681     WP_SMALLFRAMEBOTTOMSIZINGTEMPLATE = 37,
1682     WP_FRAME = 38,
1683 };
1684 
1685 #define WINDOWSTYLEPARTS WINDOWPARTS;
1686 
1687 enum FRAMESTATES {
1688     FS_ACTIVE = 1,
1689     FS_INACTIVE = 2,
1690 };
1691 
1692 enum CAPTIONSTATES {
1693     CS_ACTIVE = 1,
1694     CS_INACTIVE = 2,
1695     CS_DISABLED = 3,
1696 };
1697 
1698 enum MAXCAPTIONSTATES {
1699     MXCS_ACTIVE = 1,
1700     MXCS_INACTIVE = 2,
1701     MXCS_DISABLED = 3,
1702 };
1703 
1704 enum MINCAPTIONSTATES {
1705     MNCS_ACTIVE = 1,
1706     MNCS_INACTIVE = 2,
1707     MNCS_DISABLED = 3,
1708 };
1709 
1710 enum HORZSCROLLSTATES {
1711     HSS_NORMAL = 1,
1712     HSS_HOT = 2,
1713     HSS_PUSHED = 3,
1714     HSS_DISABLED = 4,
1715 };
1716 
1717 enum HORZTHUMBSTATES {
1718     HTS_NORMAL = 1,
1719     HTS_HOT = 2,
1720     HTS_PUSHED = 3,
1721     HTS_DISABLED = 4,
1722 };
1723 
1724 enum VERTSCROLLSTATES {
1725     VSS_NORMAL = 1,
1726     VSS_HOT = 2,
1727     VSS_PUSHED = 3,
1728     VSS_DISABLED = 4,
1729 };
1730 
1731 enum VERTTHUMBSTATES {
1732     VTS_NORMAL = 1,
1733     VTS_HOT = 2,
1734     VTS_PUSHED = 3,
1735     VTS_DISABLED = 4,
1736 };
1737 
1738 enum SYSBUTTONSTATES {
1739     SBS_NORMAL = 1,
1740     SBS_HOT = 2,
1741     SBS_PUSHED = 3,
1742     SBS_DISABLED = 4,
1743 };
1744 
1745 enum MINBUTTONSTATES {
1746     MINBS_NORMAL = 1,
1747     MINBS_HOT = 2,
1748     MINBS_PUSHED = 3,
1749     MINBS_DISABLED = 4,
1750 };
1751 
1752 enum MAXBUTTONSTATES {
1753     MAXBS_NORMAL = 1,
1754     MAXBS_HOT = 2,
1755     MAXBS_PUSHED = 3,
1756     MAXBS_DISABLED = 4,
1757 };
1758 
1759 enum RESTOREBUTTONSTATES {
1760     RBS_NORMAL = 1,
1761     RBS_HOT = 2,
1762     RBS_PUSHED = 3,
1763     RBS_DISABLED = 4,
1764 };
1765 
1766 enum HELPBUTTONSTATES {
1767     HBS_NORMAL = 1,
1768     HBS_HOT = 2,
1769     HBS_PUSHED = 3,
1770     HBS_DISABLED = 4,
1771 };
1772 
1773 enum CLOSEBUTTONSTATES {
1774     CBS_NORMAL = 1,
1775     CBS_HOT = 2,
1776     CBS_PUSHED = 3,
1777     CBS_DISABLED = 4,
1778 };
1779 
1780 #endif /* __VSSTYLE_H__ */
1781