4 * Copyright (C) 2004 Kevin Koltzau
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
30 typedef struct _MSSTYLES_PROPERTY_MAP
{
33 WCHAR szPropertyName
[24];
34 } MSSTYLES_PROPERTY_MAP
, *PMSSTYLES_PROPERTY_MAP
;
36 typedef struct _MSSTYLES_ENUM_MAP
{
39 WCHAR szValueName
[18];
40 } MSSTYLES_ENUM_MAP
, *PMSSTYLES_ENUM_MAP
;
42 typedef struct _MSSTYLES_CLASS_MAP
{
46 } MSSTYLES_CLASS_MAP
, *PMSSTYLES_CLASS_MAP
;
48 typedef struct _MSSTYLES_CLASS_NAME
{
49 const MSSTYLES_CLASS_MAP
*lpMap
;
51 } MSSTYLES_CLASS_NAME
, *PMSSTYLES_CLASS_NAME
;
53 /***********************************************************************
54 * Map property names to IDs & primitive types
55 * PrimitiveType,PropertyID,PropertyName
57 static const MSSTYLES_PROPERTY_MAP mapProperty
[] = {
58 {TMT_STRING
, TMT_STRING
, L
"STRING"},
59 {TMT_INT
, TMT_INT
, L
"INT"},
60 {TMT_BOOL
, TMT_BOOL
, L
"BOOL"},
61 {TMT_COLOR
, TMT_COLOR
, L
"COLOR"},
62 {TMT_MARGINS
, TMT_MARGINS
, L
"MARGINS"},
63 {TMT_FILENAME
, TMT_FILENAME
, L
"FILENAME"},
64 {TMT_SIZE
, TMT_SIZE
, L
"SIZE"},
65 {TMT_POSITION
, TMT_POSITION
, L
"POSITION"},
66 {TMT_RECT
, TMT_RECT
, L
"RECT"},
67 {TMT_FONT
, TMT_FONT
, L
"FONT"},
68 {TMT_INTLIST
, TMT_INTLIST
, L
"INTLIST"},
69 {TMT_STRING
, TMT_COLORSCHEMES
, L
"COLORSCHEMES"},
70 {TMT_STRING
, TMT_SIZES
, L
"SIZES"},
71 {TMT_INT
, TMT_CHARSET
, L
"CHARSET"},
72 {TMT_STRING
, TMT_DISPLAYNAME
, L
"DISPLAYNAME"},
73 {TMT_STRING
, TMT_TOOLTIP
, L
"TOOLTIP"},
74 {TMT_STRING
, TMT_COMPANY
, L
"COMPANY"},
75 {TMT_STRING
, TMT_AUTHOR
, L
"AUTHOR"},
76 {TMT_STRING
, TMT_COPYRIGHT
, L
"COPYRIGHT"},
77 {TMT_STRING
, TMT_URL
, L
"URL"},
78 {TMT_STRING
, TMT_VERSION
, L
"VERSION"},
79 {TMT_STRING
, TMT_DESCRIPTION
, L
"DESCRIPTION"},
80 {TMT_FONT
, TMT_CAPTIONFONT
, L
"CAPTIONFONT"},
81 {TMT_FONT
, TMT_SMALLCAPTIONFONT
, L
"SMALLCAPTIONFONT"},
82 {TMT_FONT
, TMT_MENUFONT
, L
"MENUFONT"},
83 {TMT_FONT
, TMT_STATUSFONT
, L
"STATUSFONT"},
84 {TMT_FONT
, TMT_MSGBOXFONT
, L
"MSGBOXFONT"},
85 {TMT_FONT
, TMT_ICONTITLEFONT
, L
"ICONTITLEFONT"},
86 {TMT_FONT
, TMT_HEADING1FONT
, L
"HEADING1FONT"},
87 {TMT_FONT
, TMT_HEADING2FONT
, L
"HEADING2FONT"},
88 {TMT_FONT
, TMT_BODYFONT
, L
"BODYFONT"},
89 {TMT_BOOL
, TMT_FLATMENUS
, L
"FLATMENUS"},
90 {TMT_SIZE
, TMT_SIZINGBORDERWIDTH
, L
"SIZINGBORDERWIDTH"},
91 {TMT_SIZE
, TMT_SCROLLBARWIDTH
, L
"SCROLLBARWIDTH"},
92 {TMT_SIZE
, TMT_SCROLLBARHEIGHT
, L
"SCROLLBARHEIGHT"},
93 {TMT_SIZE
, TMT_CAPTIONBARWIDTH
, L
"CAPTIONBARWIDTH"},
94 {TMT_SIZE
, TMT_CAPTIONBARHEIGHT
, L
"CAPTIONBARHEIGHT"},
95 {TMT_SIZE
, TMT_SMCAPTIONBARWIDTH
, L
"SMCAPTIONBARWIDTH"},
96 {TMT_SIZE
, TMT_SMCAPTIONBARHEIGHT
, L
"SMCAPTIONBARHEIGHT"},
97 {TMT_SIZE
, TMT_MENUBARWIDTH
, L
"MENUBARWIDTH"},
98 {TMT_SIZE
, TMT_MENUBARHEIGHT
, L
"MENUBARHEIGHT"},
99 {TMT_INT
, TMT_MINCOLORDEPTH
, L
"MINCOLORDEPTH"},
100 {TMT_STRING
, TMT_CSSNAME
, L
"CSSNAME"},
101 {TMT_STRING
, TMT_XMLNAME
, L
"XMLNAME"},
102 {TMT_COLOR
, TMT_SCROLLBAR
, L
"SCROLLBAR"},
103 {TMT_COLOR
, TMT_BACKGROUND
, L
"BACKGROUND"},
104 {TMT_COLOR
, TMT_ACTIVECAPTION
, L
"ACTIVECAPTION"},
105 {TMT_COLOR
, TMT_INACTIVECAPTION
, L
"INACTIVECAPTION"},
106 {TMT_COLOR
, TMT_MENU
, L
"MENU"},
107 {TMT_COLOR
, TMT_WINDOW
, L
"WINDOW"},
108 {TMT_COLOR
, TMT_WINDOWFRAME
, L
"WINDOWFRAME"},
109 {TMT_COLOR
, TMT_MENUTEXT
, L
"MENUTEXT"},
110 {TMT_COLOR
, TMT_WINDOWTEXT
, L
"WINDOWTEXT"},
111 {TMT_COLOR
, TMT_CAPTIONTEXT
, L
"CAPTIONTEXT"},
112 {TMT_COLOR
, TMT_ACTIVEBORDER
, L
"ACTIVEBORDER"},
113 {TMT_COLOR
, TMT_INACTIVEBORDER
, L
"INACTIVEBORDER"},
114 {TMT_COLOR
, TMT_APPWORKSPACE
, L
"APPWORKSPACE"},
115 {TMT_COLOR
, TMT_HIGHLIGHT
, L
"HIGHLIGHT"},
116 {TMT_COLOR
, TMT_HIGHLIGHTTEXT
, L
"HIGHLIGHTTEXT"},
117 {TMT_COLOR
, TMT_BTNFACE
, L
"BTNFACE"},
118 {TMT_COLOR
, TMT_BTNSHADOW
, L
"BTNSHADOW"},
119 {TMT_COLOR
, TMT_GRAYTEXT
, L
"GRAYTEXT"},
120 {TMT_COLOR
, TMT_BTNTEXT
, L
"BTNTEXT"},
121 {TMT_COLOR
, TMT_INACTIVECAPTIONTEXT
, L
"INACTIVECAPTIONTEXT"},
122 {TMT_COLOR
, TMT_BTNHIGHLIGHT
, L
"BTNHIGHLIGHT"},
123 {TMT_COLOR
, TMT_DKSHADOW3D
, L
"DKSHADOW3D"},
124 {TMT_COLOR
, TMT_LIGHT3D
, L
"LIGHT3D"},
125 {TMT_COLOR
, TMT_INFOTEXT
, L
"INFOTEXT"},
126 {TMT_COLOR
, TMT_INFOBK
, L
"INFOBK"},
127 {TMT_COLOR
, TMT_BUTTONALTERNATEFACE
, L
"BUTTONALTERNATEFACE"},
128 {TMT_COLOR
, TMT_HOTTRACKING
, L
"HOTTRACKING"},
129 {TMT_COLOR
, TMT_GRADIENTACTIVECAPTION
, L
"GRADIENTACTIVECAPTION"},
130 {TMT_COLOR
, TMT_GRADIENTINACTIVECAPTION
, L
"GRADIENTINACTIVECAPTION"},
131 {TMT_COLOR
, TMT_MENUHILIGHT
, L
"MENUHILIGHT"},
132 {TMT_COLOR
, TMT_MENUBAR
, L
"MENUBAR"},
133 {TMT_INT
, TMT_FROMHUE1
, L
"FROMHUE1"},
134 {TMT_INT
, TMT_FROMHUE2
, L
"FROMHUE2"},
135 {TMT_INT
, TMT_FROMHUE3
, L
"FROMHUE3"},
136 {TMT_INT
, TMT_FROMHUE4
, L
"FROMHUE4"},
137 {TMT_INT
, TMT_FROMHUE5
, L
"FROMHUE5"},
138 {TMT_INT
, TMT_TOHUE1
, L
"TOHUE1"},
139 {TMT_INT
, TMT_TOHUE2
, L
"TOHUE2"},
140 {TMT_INT
, TMT_TOHUE3
, L
"TOHUE3"},
141 {TMT_INT
, TMT_TOHUE4
, L
"TOHUE4"},
142 {TMT_INT
, TMT_TOHUE5
, L
"TOHUE5"},
143 {TMT_COLOR
, TMT_FROMCOLOR1
, L
"FROMCOLOR1"},
144 {TMT_COLOR
, TMT_FROMCOLOR2
, L
"FROMCOLOR2"},
145 {TMT_COLOR
, TMT_FROMCOLOR3
, L
"FROMCOLOR3"},
146 {TMT_COLOR
, TMT_FROMCOLOR4
, L
"FROMCOLOR4"},
147 {TMT_COLOR
, TMT_FROMCOLOR5
, L
"FROMCOLOR5"},
148 {TMT_COLOR
, TMT_TOCOLOR1
, L
"TOCOLOR1"},
149 {TMT_COLOR
, TMT_TOCOLOR2
, L
"TOCOLOR2"},
150 {TMT_COLOR
, TMT_TOCOLOR3
, L
"TOCOLOR3"},
151 {TMT_COLOR
, TMT_TOCOLOR4
, L
"TOCOLOR4"},
152 {TMT_COLOR
, TMT_TOCOLOR5
, L
"TOCOLOR5"},
153 {TMT_BOOL
, TMT_TRANSPARENT
, L
"TRANSPARENT"},
154 {TMT_BOOL
, TMT_AUTOSIZE
, L
"AUTOSIZE"},
155 {TMT_BOOL
, TMT_BORDERONLY
, L
"BORDERONLY"},
156 {TMT_BOOL
, TMT_COMPOSITED
, L
"COMPOSITED"},
157 {TMT_BOOL
, TMT_BGFILL
, L
"BGFILL"},
158 {TMT_BOOL
, TMT_GLYPHTRANSPARENT
, L
"GLYPHTRANSPARENT"},
159 {TMT_BOOL
, TMT_GLYPHONLY
, L
"GLYPHONLY"},
160 {TMT_BOOL
, TMT_ALWAYSSHOWSIZINGBAR
, L
"ALWAYSSHOWSIZINGBAR"},
161 {TMT_BOOL
, TMT_MIRRORIMAGE
, L
"MIRRORIMAGE"},
162 {TMT_BOOL
, TMT_UNIFORMSIZING
, L
"UNIFORMSIZING"},
163 {TMT_BOOL
, TMT_INTEGRALSIZING
, L
"INTEGRALSIZING"},
164 {TMT_BOOL
, TMT_SOURCEGROW
, L
"SOURCEGROW"},
165 {TMT_BOOL
, TMT_SOURCESHRINK
, L
"SOURCESHRINK"},
166 {TMT_INT
, TMT_IMAGECOUNT
, L
"IMAGECOUNT"},
167 {TMT_INT
, TMT_ALPHALEVEL
, L
"ALPHALEVEL"},
168 {TMT_INT
, TMT_BORDERSIZE
, L
"BORDERSIZE"},
169 {TMT_INT
, TMT_ROUNDCORNERWIDTH
, L
"ROUNDCORNERWIDTH"},
170 {TMT_INT
, TMT_ROUNDCORNERHEIGHT
, L
"ROUNDCORNERHEIGHT"},
171 {TMT_INT
, TMT_GRADIENTRATIO1
, L
"GRADIENTRATIO1"},
172 {TMT_INT
, TMT_GRADIENTRATIO2
, L
"GRADIENTRATIO2"},
173 {TMT_INT
, TMT_GRADIENTRATIO3
, L
"GRADIENTRATIO3"},
174 {TMT_INT
, TMT_GRADIENTRATIO4
, L
"GRADIENTRATIO4"},
175 {TMT_INT
, TMT_GRADIENTRATIO5
, L
"GRADIENTRATIO5"},
176 {TMT_INT
, TMT_PROGRESSCHUNKSIZE
, L
"PROGRESSCHUNKSIZE"},
177 {TMT_INT
, TMT_PROGRESSSPACESIZE
, L
"PROGRESSSPACESIZE"},
178 {TMT_INT
, TMT_SATURATION
, L
"SATURATION"},
179 {TMT_INT
, TMT_TEXTBORDERSIZE
, L
"TEXTBORDERSIZE"},
180 {TMT_INT
, TMT_ALPHATHRESHOLD
, L
"ALPHATHRESHOLD"},
181 {TMT_SIZE
, TMT_WIDTH
, L
"WIDTH"},
182 {TMT_SIZE
, TMT_HEIGHT
, L
"HEIGHT"},
183 {TMT_INT
, TMT_GLYPHINDEX
, L
"GLYPHINDEX"},
184 {TMT_INT
, TMT_TRUESIZESTRETCHMARK
, L
"TRUESIZESTRETCHMARK"},
185 {TMT_INT
, TMT_MINDPI1
, L
"MINDPI1"},
186 {TMT_INT
, TMT_MINDPI2
, L
"MINDPI2"},
187 {TMT_INT
, TMT_MINDPI3
, L
"MINDPI3"},
188 {TMT_INT
, TMT_MINDPI4
, L
"MINDPI4"},
189 {TMT_INT
, TMT_MINDPI5
, L
"MINDPI5"},
190 {TMT_FONT
, TMT_GLYPHFONT
, L
"GLYPHFONT"},
191 {TMT_FILENAME
, TMT_IMAGEFILE
, L
"IMAGEFILE"},
192 {TMT_FILENAME
, TMT_IMAGEFILE1
, L
"IMAGEFILE1"},
193 {TMT_FILENAME
, TMT_IMAGEFILE2
, L
"IMAGEFILE2"},
194 {TMT_FILENAME
, TMT_IMAGEFILE3
, L
"IMAGEFILE3"},
195 {TMT_FILENAME
, TMT_IMAGEFILE4
, L
"IMAGEFILE4"},
196 {TMT_FILENAME
, TMT_IMAGEFILE5
, L
"IMAGEFILE5"},
197 {TMT_FILENAME
, TMT_STOCKIMAGEFILE
, L
"STOCKIMAGEFILE"},
198 {TMT_FILENAME
, TMT_GLYPHIMAGEFILE
, L
"GLYPHIMAGEFILE"},
199 {TMT_STRING
, TMT_TEXT
, L
"TEXT"},
200 {TMT_POSITION
, TMT_OFFSET
, L
"OFFSET"},
201 {TMT_POSITION
, TMT_TEXTSHADOWOFFSET
, L
"TEXTSHADOWOFFSET"},
202 {TMT_POSITION
, TMT_MINSIZE
, L
"MINSIZE"},
203 {TMT_POSITION
, TMT_MINSIZE1
, L
"MINSIZE1"},
204 {TMT_POSITION
, TMT_MINSIZE2
, L
"MINSIZE2"},
205 {TMT_POSITION
, TMT_MINSIZE3
, L
"MINSIZE3"},
206 {TMT_POSITION
, TMT_MINSIZE4
, L
"MINSIZE4"},
207 {TMT_POSITION
, TMT_MINSIZE5
, L
"MINSIZE5"},
208 {TMT_POSITION
, TMT_NORMALSIZE
, L
"NORMALSIZE"},
209 {TMT_MARGINS
, TMT_SIZINGMARGINS
, L
"SIZINGMARGINS"},
210 {TMT_MARGINS
, TMT_CONTENTMARGINS
, L
"CONTENTMARGINS"},
211 {TMT_MARGINS
, TMT_CAPTIONMARGINS
, L
"CAPTIONMARGINS"},
212 {TMT_COLOR
, TMT_BORDERCOLOR
, L
"BORDERCOLOR"},
213 {TMT_COLOR
, TMT_FILLCOLOR
, L
"FILLCOLOR"},
214 {TMT_COLOR
, TMT_TEXTCOLOR
, L
"TEXTCOLOR"},
215 {TMT_COLOR
, TMT_EDGELIGHTCOLOR
, L
"EDGELIGHTCOLOR"},
216 {TMT_COLOR
, TMT_EDGEHIGHLIGHTCOLOR
, L
"EDGEHIGHLIGHTCOLOR"},
217 {TMT_COLOR
, TMT_EDGESHADOWCOLOR
, L
"EDGESHADOWCOLOR"},
218 {TMT_COLOR
, TMT_EDGEDKSHADOWCOLOR
, L
"EDGEDKSHADOWCOLOR"},
219 {TMT_COLOR
, TMT_EDGEFILLCOLOR
, L
"EDGEFILLCOLOR"},
220 {TMT_COLOR
, TMT_TRANSPARENTCOLOR
, L
"TRANSPARENTCOLOR"},
221 {TMT_COLOR
, TMT_GRADIENTCOLOR1
, L
"GRADIENTCOLOR1"},
222 {TMT_COLOR
, TMT_GRADIENTCOLOR2
, L
"GRADIENTCOLOR2"},
223 {TMT_COLOR
, TMT_GRADIENTCOLOR3
, L
"GRADIENTCOLOR3"},
224 {TMT_COLOR
, TMT_GRADIENTCOLOR4
, L
"GRADIENTCOLOR4"},
225 {TMT_COLOR
, TMT_GRADIENTCOLOR5
, L
"GRADIENTCOLOR5"},
226 {TMT_COLOR
, TMT_SHADOWCOLOR
, L
"SHADOWCOLOR"},
227 {TMT_COLOR
, TMT_GLOWCOLOR
, L
"GLOWCOLOR"},
228 {TMT_COLOR
, TMT_TEXTBORDERCOLOR
, L
"TEXTBORDERCOLOR"},
229 {TMT_COLOR
, TMT_TEXTSHADOWCOLOR
, L
"TEXTSHADOWCOLOR"},
230 {TMT_COLOR
, TMT_GLYPHTEXTCOLOR
, L
"GLYPHTEXTCOLOR"},
231 {TMT_COLOR
, TMT_GLYPHTRANSPARENTCOLOR
, L
"GLYPHTRANSPARENTCOLOR"},
232 {TMT_COLOR
, TMT_FILLCOLORHINT
, L
"FILLCOLORHINT"},
233 {TMT_COLOR
, TMT_BORDERCOLORHINT
, L
"BORDERCOLORHINT"},
234 {TMT_COLOR
, TMT_ACCENTCOLORHINT
, L
"ACCENTCOLORHINT"},
235 {TMT_ENUM
, TMT_BGTYPE
, L
"BGTYPE"},
236 {TMT_ENUM
, TMT_BORDERTYPE
, L
"BORDERTYPE"},
237 {TMT_ENUM
, TMT_FILLTYPE
, L
"FILLTYPE"},
238 {TMT_ENUM
, TMT_SIZINGTYPE
, L
"SIZINGTYPE"},
239 {TMT_ENUM
, TMT_HALIGN
, L
"HALIGN"},
240 {TMT_ENUM
, TMT_CONTENTALIGNMENT
, L
"CONTENTALIGNMENT"},
241 {TMT_ENUM
, TMT_VALIGN
, L
"VALIGN"},
242 {TMT_ENUM
, TMT_OFFSETTYPE
, L
"OFFSETTYPE"},
243 {TMT_ENUM
, TMT_ICONEFFECT
, L
"ICONEFFECT"},
244 {TMT_ENUM
, TMT_TEXTSHADOWTYPE
, L
"TEXTSHADOWTYPE"},
245 {TMT_ENUM
, TMT_IMAGELAYOUT
, L
"IMAGELAYOUT"},
246 {TMT_ENUM
, TMT_GLYPHTYPE
, L
"GLYPHTYPE"},
247 {TMT_ENUM
, TMT_IMAGESELECTTYPE
, L
"IMAGESELECTTYPE"},
248 {TMT_ENUM
, TMT_GLYPHFONTSIZINGTYPE
, L
"GLYPHFONTSIZINGTYPE"},
249 {TMT_ENUM
, TMT_TRUESIZESCALINGTYPE
, L
"TRUESIZESCALINGTYPE"},
250 {TMT_BOOL
, TMT_USERPICTURE
, L
"USERPICTURE"},
251 {TMT_RECT
, TMT_DEFAULTPANESIZE
, L
"DEFAULTPANESIZE"},
252 {TMT_COLOR
, TMT_BLENDCOLOR
, L
"BLENDCOLOR"},
256 /***********************************************************************
257 * Map strings to enumeration values
258 * Enum,Value,ValueName
260 static const MSSTYLES_ENUM_MAP mapEnum
[] = {
261 {TMT_BGTYPE
, BT_IMAGEFILE
, L
"IMAGEFILE"},
262 {TMT_BGTYPE
, BT_BORDERFILL
, L
"BORDERFILL"},
263 {TMT_BGTYPE
, BT_NONE
, L
"NONE"},
264 {TMT_IMAGELAYOUT
, IL_VERTICAL
, L
"VERTICAL"},
265 {TMT_IMAGELAYOUT
, IL_HORIZONTAL
, L
"HORIZONTAL"},
266 {TMT_BORDERTYPE
, BT_RECT
, L
"RECT"},
267 {TMT_BORDERTYPE
, BT_ROUNDRECT
, L
"ROUNDRECT"},
268 {TMT_BORDERTYPE
, BT_ELLIPSE
, L
"ELLIPSE"},
269 {TMT_FILLTYPE
, FT_SOLID
, L
"SOLID"},
270 {TMT_FILLTYPE
, FT_VERTGRADIENT
, L
"VERTGRADIENT"},
271 {TMT_FILLTYPE
, FT_HORZGRADIENT
, L
"HORZGRADIENT"},
272 {TMT_FILLTYPE
, FT_RADIALGRADIENT
, L
"RADIALGRADIENT"},
273 {TMT_FILLTYPE
, FT_TILEIMAGE
, L
"TILEIMAGE"},
274 {TMT_SIZINGTYPE
, ST_TRUESIZE
, L
"TRUESIZE"},
275 {TMT_SIZINGTYPE
, ST_STRETCH
, L
"STRETCH"},
276 {TMT_SIZINGTYPE
, ST_TILE
, L
"TILE"},
277 {TMT_HALIGN
, HA_LEFT
, L
"LEFT"},
278 {TMT_HALIGN
, HA_CENTER
, L
"CENTER"},
279 {TMT_HALIGN
, HA_RIGHT
, L
"RIGHT"},
280 {TMT_CONTENTALIGNMENT
, CA_LEFT
, L
"LEFT"},
281 {TMT_CONTENTALIGNMENT
, CA_CENTER
, L
"CENTER"},
282 {TMT_CONTENTALIGNMENT
, CA_RIGHT
, L
"RIGHT"},
283 {TMT_VALIGN
, VA_TOP
, L
"TOP"},
284 {TMT_VALIGN
, VA_CENTER
, L
"CENTER"},
285 {TMT_VALIGN
, VA_BOTTOM
, L
"BOTTOM"},
286 {TMT_OFFSETTYPE
, OT_TOPLEFT
, L
"TOPLEFT"},
287 {TMT_OFFSETTYPE
, OT_TOPRIGHT
, L
"TOPRIGHT"},
288 {TMT_OFFSETTYPE
, OT_TOPMIDDLE
, L
"TOPMIDDLE"},
289 {TMT_OFFSETTYPE
, OT_BOTTOMLEFT
, L
"BOTTOMLEFT"},
290 {TMT_OFFSETTYPE
, OT_BOTTOMRIGHT
, L
"BOTTOMRIGHT"},
291 {TMT_OFFSETTYPE
, OT_BOTTOMMIDDLE
, L
"BOTTOMMIDDLE"},
292 {TMT_OFFSETTYPE
, OT_MIDDLELEFT
, L
"MIDDLELEFT"},
293 {TMT_OFFSETTYPE
, OT_MIDDLERIGHT
, L
"MIDDLERIGHT"},
294 {TMT_OFFSETTYPE
, OT_LEFTOFCAPTION
, L
"LEFTOFCAPTION"},
295 {TMT_OFFSETTYPE
, OT_RIGHTOFCAPTION
, L
"RIGHTOFCAPTION"},
296 {TMT_OFFSETTYPE
, OT_LEFTOFLASTBUTTON
, L
"LEFTOFLASTBUTTON"},
297 {TMT_OFFSETTYPE
, OT_RIGHTOFLASTBUTTON
, L
"RIGHTOFLASTBUTTON"},
298 {TMT_OFFSETTYPE
, OT_ABOVELASTBUTTON
, L
"ABOVELASTBUTTON"},
299 {TMT_OFFSETTYPE
, OT_BELOWLASTBUTTON
, L
"BELOWLASTBUTTON"},
300 {TMT_ICONEFFECT
, ICE_NONE
, L
"NONE"},
301 {TMT_ICONEFFECT
, ICE_GLOW
, L
"GLOW"},
302 {TMT_ICONEFFECT
, ICE_SHADOW
, L
"SHADOW"},
303 {TMT_ICONEFFECT
, ICE_PULSE
, L
"PULSE"},
304 {TMT_ICONEFFECT
, ICE_ALPHA
, L
"ALPHA"},
305 {TMT_TEXTSHADOWTYPE
, TST_NONE
, L
"NONE"},
306 {TMT_TEXTSHADOWTYPE
, TST_SINGLE
, L
"SINGLE"},
307 {TMT_TEXTSHADOWTYPE
, TST_CONTINUOUS
, L
"CONTINUOUS"},
308 {TMT_GLYPHTYPE
, GT_NONE
, L
"NONE"},
309 {TMT_GLYPHTYPE
, GT_IMAGEGLYPH
, L
"IMAGEGLYPH"},
310 {TMT_GLYPHTYPE
, GT_FONTGLYPH
, L
"FONTGLYPH"},
311 {TMT_IMAGESELECTTYPE
, IST_NONE
, L
"NONE"},
312 {TMT_IMAGESELECTTYPE
, IST_SIZE
, L
"SIZE"},
313 {TMT_IMAGESELECTTYPE
, IST_DPI
, L
"DPI"},
314 {TMT_TRUESIZESCALINGTYPE
, TSST_NONE
, L
"NONE"},
315 {TMT_TRUESIZESCALINGTYPE
, TSST_SIZE
, L
"SIZE"},
316 {TMT_TRUESIZESCALINGTYPE
, TSST_DPI
, L
"DPI"},
317 {TMT_GLYPHFONTSIZINGTYPE
, GFST_NONE
, L
"NONE"},
318 {TMT_GLYPHFONTSIZINGTYPE
, GFST_SIZE
, L
"SIZE"},
319 {TMT_GLYPHFONTSIZINGTYPE
, GFST_DPI
, L
"DPI"},
324 /***********************************************************************
325 * Classes defined below
326 * Defined as PartID,StateID,TextName
327 * If StateID == 0 then its a part being defined
330 /* These are globals to all classes, but its treated as a separate class */
331 static const MSSTYLES_CLASS_MAP classGlobals
[] = {
332 {GP_BORDER
, 0, L
"BORDER"},
333 {GP_BORDER
, BSS_FLAT
, L
"FLAT"},
334 {GP_BORDER
, BSS_RAISED
, L
"RAISED"},
335 {GP_BORDER
, BSS_SUNKEN
, L
"SUNKEN"},
336 {GP_LINEHORZ
, 0, L
"LINEHORZ"},
337 {GP_LINEHORZ
, LHS_FLAT
, L
"FLAT"},
338 {GP_LINEHORZ
, LHS_RAISED
, L
"RAISED"},
339 {GP_LINEHORZ
, LHS_SUNKEN
, L
"SUNKEN"},
340 {GP_LINEVERT
, 0, L
"LINEVERT"},
341 {GP_LINEVERT
, LVS_FLAT
, L
"FLAT"},
342 {GP_LINEVERT
, LVS_RAISED
, L
"RAISED"},
343 {GP_LINEVERT
, LVS_SUNKEN
, L
"SUNKEN"},
347 static const MSSTYLES_CLASS_MAP classButton
[] = {
348 {BP_PUSHBUTTON
, 0, L
"PUSHBUTTON"},
349 {BP_PUSHBUTTON
, PBS_NORMAL
, L
"NORMAL"},
350 {BP_PUSHBUTTON
, PBS_HOT
, L
"HOT"},
351 {BP_PUSHBUTTON
, PBS_PRESSED
, L
"PRESSED"},
352 {BP_PUSHBUTTON
, PBS_DISABLED
, L
"DISABLED"},
353 {BP_PUSHBUTTON
, PBS_DEFAULTED
, L
"DEFAULTED"},
354 {BP_RADIOBUTTON
, 0, L
"RADIOBUTTON"},
355 {BP_RADIOBUTTON
, RBS_UNCHECKEDNORMAL
, L
"UNCHECKEDNORMAL"},
356 {BP_RADIOBUTTON
, RBS_UNCHECKEDHOT
, L
"UNCHECKEDHOT"},
357 {BP_RADIOBUTTON
, RBS_UNCHECKEDPRESSED
, L
"UNCHECKEDPRESSED"},
358 {BP_RADIOBUTTON
, RBS_UNCHECKEDDISABLED
, L
"UNCHECKEDDISABLED"},
359 {BP_RADIOBUTTON
, RBS_CHECKEDNORMAL
, L
"CHECKEDNORMAL"},
360 {BP_RADIOBUTTON
, RBS_CHECKEDHOT
, L
"CHECKEDHOT"},
361 {BP_RADIOBUTTON
, RBS_CHECKEDPRESSED
, L
"CHECKEDPRESSED"},
362 {BP_RADIOBUTTON
, RBS_CHECKEDDISABLED
, L
"CHECKEDDISABLED"},
363 {BP_CHECKBOX
, 0, L
"CHECKBOX"},
364 {BP_RADIOBUTTON
, CBS_UNCHECKEDNORMAL
, L
"UNCHECKEDNORMAL"},
365 {BP_RADIOBUTTON
, CBS_UNCHECKEDHOT
, L
"UNCHECKEDHOT"},
366 {BP_RADIOBUTTON
, CBS_UNCHECKEDPRESSED
, L
"UNCHECKEDPRESSED"},
367 {BP_RADIOBUTTON
, CBS_UNCHECKEDDISABLED
, L
"UNCHECKEDDISABLED"},
368 {BP_RADIOBUTTON
, CBS_CHECKEDNORMAL
, L
"CHECKEDNORMAL"},
369 {BP_RADIOBUTTON
, CBS_CHECKEDHOT
, L
"CHECKEDHOT"},
370 {BP_RADIOBUTTON
, CBS_CHECKEDPRESSED
, L
"CHECKEDPRESSED"},
371 {BP_RADIOBUTTON
, CBS_CHECKEDDISABLED
, L
"CHECKEDDISABLED"},
372 {BP_RADIOBUTTON
, CBS_MIXEDNORMAL
, L
"MIXEDNORMAL"},
373 {BP_RADIOBUTTON
, CBS_MIXEDHOT
, L
"MIXEDHOT"},
374 {BP_RADIOBUTTON
, CBS_MIXEDPRESSED
, L
"MIXEDPRESSED"},
375 {BP_RADIOBUTTON
, CBS_MIXEDDISABLED
, L
"MIXEDDISABLED"},
376 {BP_GROUPBOX
, 0, L
"GROUPBOX"},
377 {BP_RADIOBUTTON
, GBS_NORMAL
, L
"NORMAL"},
378 {BP_RADIOBUTTON
, GBS_DISABLED
, L
"DISABLED"},
379 {BP_USERBUTTON
, 0, L
"USERBUTTON"},
380 {BP_COMMANDLINK
, 0, L
"COMMANDLINK"},
381 {BP_COMMANDLINK
, CMDLS_NORMAL
, L
"NORMAL"},
382 {BP_COMMANDLINK
, CMDLS_HOT
, L
"HOT"},
383 {BP_COMMANDLINK
, CMDLS_PRESSED
, L
"PRESSED"},
384 {BP_COMMANDLINK
, CMDLS_DISABLED
, L
"DISABLED"},
385 {BP_COMMANDLINK
, CMDLS_DEFAULTED
, L
"DEFAULTED"},
386 {BP_COMMANDLINK
, CMDLS_DEFAULTED_ANIMATING
, L
"DEFAULTED_ANIMATING"},
387 {BP_COMMANDLINKGLYPH
, 0, L
"COMMANDLINKGLYPH"},
388 {BP_COMMANDLINKGLYPH
, CMDLGS_NORMAL
, L
"NORMAL"},
389 {BP_COMMANDLINKGLYPH
, CMDLGS_HOT
, L
"HOT"},
390 {BP_COMMANDLINKGLYPH
, CMDLGS_PRESSED
, L
"PRESSED"},
391 {BP_COMMANDLINKGLYPH
, CMDLGS_DISABLED
, L
"DISABLED"},
392 {BP_COMMANDLINKGLYPH
, CMDLGS_DEFAULTED
, L
"DEFAULTED"},
396 static const MSSTYLES_CLASS_MAP classClock
[] = {
397 {CLP_TIME
, 0, L
"TIME"},
398 {CLP_TIME
, CLS_NORMAL
, L
"NORMAL"},
402 static const MSSTYLES_CLASS_MAP classCombobox
[] = {
403 {CP_DROPDOWNBUTTON
, 0, L
"DROPDOWNBUTTON"},
404 {CP_DROPDOWNBUTTON
, CBXS_NORMAL
, L
"NORMAL"},
405 {CP_DROPDOWNBUTTON
, CBXS_HOT
, L
"HOT"},
406 {CP_DROPDOWNBUTTON
, CBXS_PRESSED
, L
"PRESSED"},
407 {CP_DROPDOWNBUTTON
, CBXS_DISABLED
, L
"DISABLED"},
411 static const MSSTYLES_CLASS_MAP classEdit
[] = {
412 {EP_EDITTEXT
, 0, L
"EDITTEXT"},
413 {EP_EDITTEXT
, ETS_NORMAL
, L
"NORMAL"},
414 {EP_EDITTEXT
, ETS_HOT
, L
"HOT"},
415 {EP_EDITTEXT
, ETS_SELECTED
, L
"SELECTED"},
416 {EP_EDITTEXT
, ETS_DISABLED
, L
"DISABLED"},
417 {EP_EDITTEXT
, ETS_FOCUSED
, L
"FOCUSED"},
418 {EP_EDITTEXT
, ETS_READONLY
, L
"READONLY"},
419 {EP_EDITTEXT
, ETS_ASSIST
, L
"ASSIST"},
420 {EP_CARET
, 0, L
"CARET"},
424 static const MSSTYLES_CLASS_MAP classExplorerbar
[] = {
425 {EBP_HEADERBACKGROUND
, 0, L
"HEADERBACKGROUND"},
426 {EBP_HEADERCLOSE
, 0, L
"HEADERCLOSE"},
427 {EBP_HEADERCLOSE
, EBHC_NORMAL
, L
"NORMAL"},
428 {EBP_HEADERCLOSE
, EBHC_HOT
, L
"HOT"},
429 {EBP_HEADERCLOSE
, EBHC_PRESSED
, L
"PRESSED"},
430 {EBP_HEADERPIN
, 0, L
"HEADERPIN"},
431 {EBP_HEADERPIN
, EBHP_NORMAL
, L
"NORMAL"},
432 {EBP_HEADERPIN
, EBHP_HOT
, L
"HOT"},
433 {EBP_HEADERPIN
, EBHP_PRESSED
, L
"PRESSED"},
434 {EBP_HEADERPIN
, EBHP_SELECTEDNORMAL
, L
"SELECTEDNORMAL"},
435 {EBP_HEADERPIN
, EBHP_SELECTEDHOT
, L
"SELECTEDHOT"},
436 {EBP_HEADERPIN
, EBHP_SELECTEDPRESSED
, L
"SELECTEDPRESSED"},
437 {EBP_IEBARMENU
, 0, L
"IEBARMENU"},
438 {EBP_IEBARMENU
, EBM_NORMAL
, L
"NORMAL"},
439 {EBP_IEBARMENU
, EBM_HOT
, L
"HOT"},
440 {EBP_IEBARMENU
, EBM_PRESSED
, L
"PRESSED"},
441 {EBP_NORMALGROUPBACKGROUND
, 0, L
"NORMALGROUPBACKGROUND"},
442 {EBP_NORMALGROUPCOLLAPSE
, 0, L
"NORMALGROUPCOLLAPSE"},
443 {EBP_NORMALGROUPCOLLAPSE
, EBNGC_NORMAL
, L
"NORMAL"},
444 {EBP_NORMALGROUPCOLLAPSE
, EBNGC_HOT
, L
"HOT"},
445 {EBP_NORMALGROUPCOLLAPSE
, EBNGC_PRESSED
, L
"PRESSED"},
446 {EBP_NORMALGROUPEXPAND
, 0, L
"NORMALGROUPEXPAND"},
447 {EBP_NORMALGROUPEXPAND
, EBNGE_NORMAL
, L
"NORMAL"},
448 {EBP_NORMALGROUPEXPAND
, EBNGE_HOT
, L
"HOT"},
449 {EBP_NORMALGROUPEXPAND
, EBNGE_PRESSED
, L
"PRESSED"},
450 {EBP_NORMALGROUPHEAD
, 0, L
"NORMALGROUPHEAD"},
451 {EBP_SPECIALGROUPBACKGROUND
, 0, L
"SPECIALGROUPBACKGROUND"},
452 {EBP_SPECIALGROUPCOLLAPSE
, 0, L
"SPECIALGROUPCOLLAPSE"},
453 {EBP_SPECIALGROUPCOLLAPSE
, EBSGC_NORMAL
, L
"NORMAL"},
454 {EBP_SPECIALGROUPCOLLAPSE
, EBSGC_HOT
, L
"HOT"},
455 {EBP_SPECIALGROUPCOLLAPSE
, EBSGC_PRESSED
, L
"PRESSED"},
456 {EBP_SPECIALGROUPEXPAND
, 0, L
"SPECIALGROUPEXPAND"},
457 {EBP_SPECIALGROUPEXPAND
, EBSGE_NORMAL
, L
"NORMAL"},
458 {EBP_SPECIALGROUPEXPAND
, EBSGE_HOT
, L
"HOT"},
459 {EBP_SPECIALGROUPEXPAND
, EBSGE_PRESSED
, L
"PRESSED"},
460 {EBP_SPECIALGROUPHEAD
, 0, L
"SPECIALGROUPHEAD"},
464 static const MSSTYLES_CLASS_MAP classHeader
[] = {
465 {HP_HEADERITEM
, 0, L
"HEADERITEM"},
466 {HP_HEADERITEM
, HIS_NORMAL
, L
"NORMAL"},
467 {HP_HEADERITEM
, HIS_HOT
, L
"HOT"},
468 {HP_HEADERITEM
, HIS_PRESSED
, L
"PRESSED"},
469 {HP_HEADERITEMLEFT
, 0, L
"HEADERITEMLEFT"},
470 {HP_HEADERITEMLEFT
, HILS_NORMAL
, L
"NORMAL"},
471 {HP_HEADERITEMLEFT
, HILS_HOT
, L
"HOT"},
472 {HP_HEADERITEMLEFT
, HILS_PRESSED
, L
"PRESSED"},
473 {HP_HEADERITEMRIGHT
, 0, L
"HEADERITEMRIGHT"},
474 {HP_HEADERITEMRIGHT
, HIRS_NORMAL
, L
"NORMAL"},
475 {HP_HEADERITEMRIGHT
, HIRS_HOT
, L
"HOT"},
476 {HP_HEADERITEMRIGHT
, HIRS_PRESSED
, L
"PRESSED"},
477 {HP_HEADERSORTARROW
, 0, L
"HEADERSORTARROW"},
478 {HP_HEADERSORTARROW
, HSAS_SORTEDUP
, L
"SORTEDUP"},
479 {HP_HEADERSORTARROW
, HSAS_SORTEDDOWN
, L
"SORTEDDOWN"},
483 static const MSSTYLES_CLASS_MAP classListview
[] = {
484 {LVP_LISTITEM
, 0, L
"LISTITEM"},
485 {LVP_LISTITEM
, LIS_NORMAL
, L
"NORMAL"},
486 {LVP_LISTITEM
, LIS_HOT
, L
"HOT"},
487 {LVP_LISTITEM
, LIS_SELECTED
, L
"SELECTED"},
488 {LVP_LISTITEM
, LIS_DISABLED
, L
"DISABLED"},
489 {LVP_LISTITEM
, LIS_SELECTEDNOTFOCUS
, L
"SELECTEDNOTFOCUS"},
490 {LVP_LISTGROUP
, 0, L
"LISTGROUP"},
491 {LVP_LISTDETAIL
, 0, L
"LISTDETAIL"},
492 {LVP_LISTSORTEDDETAIL
, 0, L
"LISTSORTEDDETAIL"},
493 {LVP_EMPTYTEXT
, 0, L
"EMPTYTEXT"},
497 static const MSSTYLES_CLASS_MAP classMenu
[] = {
498 {MP_MENUITEM
, 0, L
"MENUITEM"},
499 {MP_MENUITEM
, MS_NORMAL
, L
"NORMAL"},
500 {MP_MENUITEM
, MS_SELECTED
, L
"SELECTED"},
501 {MP_MENUITEM
, MS_DEMOTED
, L
"DEMOTED"},
502 {MP_MENUDROPDOWN
, 0, L
"MENUDROPDOWN"},
503 {MP_MENUDROPDOWN
, MS_NORMAL
, L
"NORMAL"},
504 {MP_MENUDROPDOWN
, MS_SELECTED
, L
"SELECTED"},
505 {MP_MENUDROPDOWN
, MS_DEMOTED
, L
"DEMOTED"},
506 {MP_MENUBARITEM
, 0, L
"MENUBARITEM"},
507 {MP_MENUBARITEM
, MS_NORMAL
, L
"NORMAL"},
508 {MP_MENUBARITEM
, MS_SELECTED
, L
"SELECTED"},
509 {MP_MENUBARITEM
, MS_DEMOTED
, L
"DEMOTED"},
510 {MP_MENUBARDROPDOWN
, 0, L
"MENUBARDROPDOWN"},
511 {MP_MENUBARDROPDOWN
, MS_NORMAL
, L
"NORMAL"},
512 {MP_MENUBARDROPDOWN
, MS_SELECTED
, L
"SELECTED"},
513 {MP_MENUBARDROPDOWN
, MS_DEMOTED
, L
"DEMOTED"},
514 {MP_CHEVRON
, 0, L
"CHEVRON"},
515 {MP_CHEVRON
, MS_NORMAL
, L
"NORMAL"},
516 {MP_CHEVRON
, MS_SELECTED
, L
"SELECTED"},
517 {MP_CHEVRON
, MS_DEMOTED
, L
"DEMOTED"},
518 {MP_SEPARATOR
, 0, L
"SEPARATOR"},
519 {MP_SEPARATOR
, MS_NORMAL
, L
"NORMAL"},
520 {MP_SEPARATOR
, MS_SELECTED
, L
"SELECTED"},
521 {MP_SEPARATOR
, MS_DEMOTED
, L
"DEMOTED"},
525 static const MSSTYLES_CLASS_MAP classMenuband
[] = {
526 {MDP_NEWAPPBUTTON
, 0, L
"NEWAPPBUTTON"},
527 {MDP_NEWAPPBUTTON
, MDS_NORMAL
, L
"NORMAL"},
528 {MDP_NEWAPPBUTTON
, MDS_HOT
, L
"HOT"},
529 {MDP_NEWAPPBUTTON
, MDS_PRESSED
, L
"PRESSED"},
530 {MDP_NEWAPPBUTTON
, MDS_DISABLED
, L
"DISABLED"},
531 {MDP_NEWAPPBUTTON
, MDS_CHECKED
, L
"CHECKED"},
532 {MDP_NEWAPPBUTTON
, MDS_HOTCHECKED
, L
"HOTCHECKED"},
533 {MDP_SEPERATOR
, 0, L
"SEPERATOR"},
537 static const MSSTYLES_CLASS_MAP classPage
[] = {
539 {PGRP_UP
, UPS_NORMAL
, L
"NORMAL"},
540 {PGRP_UP
, UPS_HOT
, L
"HOT"},
541 {PGRP_UP
, UPS_PRESSED
, L
"PRESSED"},
542 {PGRP_UP
, UPS_DISABLED
, L
"DISABLED"},
543 {PGRP_DOWN
, 0, L
"DOWN"},
544 {PGRP_DOWN
, DNS_NORMAL
, L
"NORMAL"},
545 {PGRP_DOWN
, DNS_HOT
, L
"HOT"},
546 {PGRP_DOWN
, DNS_PRESSED
, L
"PRESSED"},
547 {PGRP_DOWN
, DNS_DISABLED
, L
"DISABLED"},
548 {PGRP_UPHORZ
, 0, L
"UPHORZ"},
549 {PGRP_UPHORZ
, UPHZS_NORMAL
, L
"NORMAL"},
550 {PGRP_UPHORZ
, UPHZS_HOT
, L
"HOT"},
551 {PGRP_UPHORZ
, UPHZS_PRESSED
, L
"PRESSED"},
552 {PGRP_UPHORZ
, UPHZS_DISABLED
, L
"DISABLED"},
553 {PGRP_DOWNHORZ
, 0, L
"DOWNHORZ"},
554 {PGRP_DOWNHORZ
, DNHZS_NORMAL
, L
"NORMAL"},
555 {PGRP_DOWNHORZ
, DNHZS_HOT
, L
"HOT"},
556 {PGRP_DOWNHORZ
, DNHZS_PRESSED
, L
"PRESSED"},
557 {PGRP_DOWNHORZ
, DNHZS_DISABLED
, L
"DISABLED"},
561 static const MSSTYLES_CLASS_MAP classProgress
[] = {
563 {PP_BARVERT
, 0, L
"BARVERT"},
564 {PP_CHUNK
, 0, L
"CHUNK"},
565 {PP_CHUNKVERT
, 0, L
"CHUNKVERT"},
569 static const MSSTYLES_CLASS_MAP classRebar
[] = {
570 {RP_GRIPPER
, 0, L
"GRIPPER"},
571 {RP_GRIPPERVERT
, 0, L
"GRIPPERVERT"},
572 {RP_BAND
, 0, L
"BAND"},
573 {RP_CHEVRON
, 0, L
"CHEVRON"},
574 {RP_CHEVRON
, CHEVS_NORMAL
, L
"NORMAL"},
575 {RP_CHEVRON
, CHEVS_HOT
, L
"HOT"},
576 {RP_CHEVRON
, CHEVS_PRESSED
, L
"PRESSED"},
577 {RP_CHEVRONVERT
, 0, L
"CHEVRONVERT"},
581 static const MSSTYLES_CLASS_MAP classScrollbar
[] = {
582 {SBP_ARROWBTN
, 0, L
"ARROWBTN"},
583 {SBP_ARROWBTN
, ABS_UPNORMAL
, L
"UPNORMAL"},
584 {SBP_ARROWBTN
, ABS_UPHOT
, L
"UPHOT"},
585 {SBP_ARROWBTN
, ABS_UPPRESSED
, L
"UPPRESSED"},
586 {SBP_ARROWBTN
, ABS_UPDISABLED
, L
"UPDISABLED"},
587 {SBP_ARROWBTN
, ABS_DOWNNORMAL
, L
"DOWNNORMAL"},
588 {SBP_ARROWBTN
, ABS_DOWNHOT
, L
"DOWNHOT"},
589 {SBP_ARROWBTN
, ABS_DOWNPRESSED
, L
"DOWNPRESSED"},
590 {SBP_ARROWBTN
, ABS_DOWNDISABLED
, L
"DOWNDISABLED"},
591 {SBP_ARROWBTN
, ABS_LEFTNORMAL
, L
"LEFTNORMAL"},
592 {SBP_ARROWBTN
, ABS_LEFTHOT
, L
"LEFTHOT"},
593 {SBP_ARROWBTN
, ABS_LEFTPRESSED
, L
"LEFTPRESSED"},
594 {SBP_ARROWBTN
, ABS_LEFTDISABLED
, L
"LEFTDISABLED"},
595 {SBP_ARROWBTN
, ABS_RIGHTNORMAL
, L
"RIGHTNORMAL"},
596 {SBP_ARROWBTN
, ABS_RIGHTHOT
, L
"RIGHTHOT"},
597 {SBP_ARROWBTN
, ABS_RIGHTPRESSED
, L
"RIGHTPRESSED"},
598 {SBP_ARROWBTN
, ABS_RIGHTDISABLED
, L
"RIGHTDISABLED"},
599 {SBP_THUMBBTNHORZ
, 0, L
"THUMBBTNHORZ"},
600 {SBP_THUMBBTNHORZ
, SCRBS_NORMAL
, L
"NORMAL"},
601 {SBP_THUMBBTNHORZ
, SCRBS_HOT
, L
"HOT"},
602 {SBP_THUMBBTNHORZ
, SCRBS_PRESSED
, L
"PRESSED"},
603 {SBP_THUMBBTNHORZ
, SCRBS_DISABLED
, L
"DISABLED"},
604 {SBP_THUMBBTNVERT
, 0, L
"THUMBBTNVERT"},
605 {SBP_THUMBBTNVERT
, SCRBS_NORMAL
, L
"NORMAL"},
606 {SBP_THUMBBTNVERT
, SCRBS_HOT
, L
"HOT"},
607 {SBP_THUMBBTNVERT
, SCRBS_PRESSED
, L
"PRESSED"},
608 {SBP_THUMBBTNVERT
, SCRBS_DISABLED
, L
"DISABLED"},
609 {SBP_LOWERTRACKHORZ
, 0, L
"LOWERTRACKHORZ"},
610 {SBP_LOWERTRACKHORZ
, SCRBS_NORMAL
, L
"NORMAL"},
611 {SBP_LOWERTRACKHORZ
, SCRBS_HOT
, L
"HOT"},
612 {SBP_LOWERTRACKHORZ
, SCRBS_PRESSED
, L
"PRESSED"},
613 {SBP_LOWERTRACKHORZ
, SCRBS_DISABLED
, L
"DISABLED"},
614 {SBP_UPPERTRACKHORZ
, 0, L
"UPPERTRACKHORZ"},
615 {SBP_UPPERTRACKHORZ
, SCRBS_NORMAL
, L
"NORMAL"},
616 {SBP_UPPERTRACKHORZ
, SCRBS_HOT
, L
"HOT"},
617 {SBP_UPPERTRACKHORZ
, SCRBS_PRESSED
, L
"PRESSED"},
618 {SBP_UPPERTRACKHORZ
, SCRBS_DISABLED
, L
"DISABLED"},
619 {SBP_LOWERTRACKVERT
, 0, L
"LOWERTRACKVERT"},
620 {SBP_LOWERTRACKVERT
, SCRBS_NORMAL
, L
"NORMAL"},
621 {SBP_LOWERTRACKVERT
, SCRBS_HOT
, L
"HOT"},
622 {SBP_LOWERTRACKVERT
, SCRBS_PRESSED
, L
"PRESSED"},
623 {SBP_LOWERTRACKVERT
, SCRBS_DISABLED
, L
"DISABLED"},
624 {SBP_UPPERTRACKVERT
, 0, L
"UPPERTRACKVERT"},
625 {SBP_UPPERTRACKVERT
, SCRBS_NORMAL
, L
"NORMAL"},
626 {SBP_UPPERTRACKVERT
, SCRBS_HOT
, L
"HOT"},
627 {SBP_UPPERTRACKVERT
, SCRBS_PRESSED
, L
"PRESSED"},
628 {SBP_UPPERTRACKVERT
, SCRBS_DISABLED
, L
"DISABLED"},
629 {SBP_GRIPPERHORZ
, 0, L
"GRIPPERHORZ"},
630 {SBP_GRIPPERVERT
, 0, L
"GRIPPERVERT"},
631 {SBP_SIZEBOX
, 0, L
"SIZEBOX"},
632 {SBP_SIZEBOX
, SZB_RIGHTALIGN
, L
"RIGHTALIGN"},
633 {SBP_SIZEBOX
, SZB_LEFTALIGN
, L
"LEFTALIGN"},
637 static const MSSTYLES_CLASS_MAP classSpin
[] = {
639 {SPNP_UP
, UPS_NORMAL
, L
"NORMAL"},
640 {SPNP_UP
, UPS_HOT
, L
"HOT"},
641 {SPNP_UP
, UPS_PRESSED
, L
"PRESSED"},
642 {SPNP_UP
, UPS_DISABLED
, L
"DISABLED"},
643 {SPNP_DOWN
, 0, L
"DOWN"},
644 {SPNP_DOWN
, DNS_NORMAL
, L
"NORMAL"},
645 {SPNP_DOWN
, DNS_HOT
, L
"HOT"},
646 {SPNP_DOWN
, DNS_PRESSED
, L
"PRESSED"},
647 {SPNP_DOWN
, DNS_DISABLED
, L
"DISABLED"},
648 {SPNP_UPHORZ
, 0, L
"UPHORZ"},
649 {SPNP_UPHORZ
, UPHZS_NORMAL
, L
"NORMAL"},
650 {SPNP_UPHORZ
, UPHZS_HOT
, L
"HOT"},
651 {SPNP_UPHORZ
, UPHZS_PRESSED
, L
"PRESSED"},
652 {SPNP_UPHORZ
, UPHZS_DISABLED
, L
"DISABLED"},
653 {SPNP_DOWNHORZ
, 0, L
"DOWNHORZ"},
654 {SPNP_DOWNHORZ
, DNHZS_NORMAL
, L
"NORMAL"},
655 {SPNP_DOWNHORZ
, DNHZS_HOT
, L
"HOT"},
656 {SPNP_DOWNHORZ
, DNHZS_PRESSED
, L
"PRESSED"},
657 {SPNP_DOWNHORZ
, DNHZS_DISABLED
, L
"DISABLED"},
661 static const MSSTYLES_CLASS_MAP classStartpanel
[] = {
662 {SPP_USERPANE
, 0, L
"USERPANE"},
663 {SPP_MOREPROGRAMS
, 0, L
"MOREPROGRAMS"},
664 {SPP_MOREPROGRAMSARROW
, 0, L
"MOREPROGRAMSARROW"},
665 {SPP_MOREPROGRAMSARROW
, SPS_NORMAL
, L
"NORMAL"},
666 {SPP_MOREPROGRAMSARROW
, SPS_HOT
, L
"HOT"},
667 {SPP_MOREPROGRAMSARROW
, SPS_PRESSED
, L
"PRESSED"},
668 {SPP_PROGLIST
, 0, L
"PROGLIST"},
669 {SPP_PROGLISTSEPARATOR
, 0, L
"PROGLISTSEPARATOR"},
670 {SPP_PLACESLIST
, 0, L
"PLACESLIST"},
671 {SPP_PLACESLISTSEPARATOR
, 0, L
"PLACESLISTSEPARATOR"},
672 {SPP_LOGOFF
, 0, L
"LOGOFF"},
673 {SPP_LOGOFFBUTTONS
, 0, L
"LOGOFFBUTTONS"},
674 {SPP_LOGOFFBUTTONS
, SPLS_NORMAL
, L
"NORMAL"},
675 {SPP_LOGOFFBUTTONS
, SPLS_HOT
, L
"HOT"},
676 {SPP_LOGOFFBUTTONS
, SPLS_PRESSED
, L
"PRESSED"},
677 {SPP_USERPICTURE
, 0, L
"USERPICTURE"},
678 {SPP_PREVIEW
, 0, L
"PREVIEW"},
682 static const MSSTYLES_CLASS_MAP classStatus
[] = {
683 {SP_PANE
, 0, L
"PANE"},
684 {SP_GRIPPERPANE
, 0, L
"GRIPPERPANE"},
685 {SP_GRIPPER
, 0, L
"GRIPPER"},
689 static const MSSTYLES_CLASS_MAP classTab
[] = {
690 {TABP_TABITEM
, 0, L
"TABITEM"},
691 {TABP_TABITEM
, TIS_NORMAL
, L
"NORMAL"},
692 {TABP_TABITEM
, TIS_HOT
, L
"HOT"},
693 {TABP_TABITEM
, TIS_SELECTED
, L
"SELECTED"},
694 {TABP_TABITEM
, TIS_DISABLED
, L
"DISABLED"},
695 {TABP_TABITEM
, TIS_FOCUSED
, L
"FOCUSED"},
696 {TABP_TABITEMLEFTEDGE
, 0, L
"TABITEMLEFTEDGE"},
697 {TABP_TABITEMLEFTEDGE
, TILES_NORMAL
, L
"NORMAL"},
698 {TABP_TABITEMLEFTEDGE
, TILES_HOT
, L
"HOT"},
699 {TABP_TABITEMLEFTEDGE
, TILES_SELECTED
, L
"SELECTED"},
700 {TABP_TABITEMLEFTEDGE
, TILES_DISABLED
, L
"DISABLED"},
701 {TABP_TABITEMLEFTEDGE
, TILES_FOCUSED
, L
"FOCUSED"},
702 {TABP_TABITEMRIGHTEDGE
, 0, L
"TABITEMRIGHTEDGE"},
703 {TABP_TABITEMRIGHTEDGE
, TIRES_NORMAL
, L
"NORMAL"},
704 {TABP_TABITEMRIGHTEDGE
, TIRES_HOT
, L
"HOT"},
705 {TABP_TABITEMRIGHTEDGE
, TIRES_SELECTED
, L
"SELECTED"},
706 {TABP_TABITEMRIGHTEDGE
, TIRES_DISABLED
, L
"DISABLED"},
707 {TABP_TABITEMRIGHTEDGE
, TIRES_FOCUSED
, L
"FOCUSED"},
708 {TABP_TABITEMBOTHEDGE
, 0, L
"TABITEMBOTHEDGE"},
709 {TABP_TABITEMBOTHEDGE
, TIBES_NORMAL
, L
"NORMAL"},
710 {TABP_TABITEMBOTHEDGE
, TIBES_HOT
, L
"HOT"},
711 {TABP_TABITEMBOTHEDGE
, TIBES_SELECTED
, L
"SELECTED"},
712 {TABP_TABITEMBOTHEDGE
, TIBES_DISABLED
, L
"DISABLED"},
713 {TABP_TABITEMBOTHEDGE
, TIBES_FOCUSED
, L
"FOCUSED"},
714 {TABP_TOPTABITEM
, 0, L
"TOPTABITEM"},
715 {TABP_TOPTABITEM
, TTIS_NORMAL
, L
"NORMAL"},
716 {TABP_TOPTABITEM
, TTIS_HOT
, L
"HOT"},
717 {TABP_TOPTABITEM
, TTIS_SELECTED
, L
"SELECTED"},
718 {TABP_TOPTABITEM
, TTIS_DISABLED
, L
"DISABLED"},
719 {TABP_TOPTABITEM
, TTIS_FOCUSED
, L
"FOCUSED"},
720 {TABP_TOPTABITEMLEFTEDGE
, 0, L
"TOPTABITEMLEFTEDGE"},
721 {TABP_TOPTABITEMLEFTEDGE
, TTILES_NORMAL
, L
"NORMAL"},
722 {TABP_TOPTABITEMLEFTEDGE
, TTILES_HOT
, L
"HOT"},
723 {TABP_TOPTABITEMLEFTEDGE
, TTILES_SELECTED
, L
"SELECTED"},
724 {TABP_TOPTABITEMLEFTEDGE
, TTILES_DISABLED
, L
"DISABLED"},
725 {TABP_TOPTABITEMLEFTEDGE
, TTILES_FOCUSED
, L
"FOCUSED"},
726 {TABP_TOPTABITEMRIGHTEDGE
, 0, L
"TOPTABITEMRIGHTEDGE"},
727 {TABP_TOPTABITEMRIGHTEDGE
, TTIRES_NORMAL
, L
"NORMAL"},
728 {TABP_TOPTABITEMRIGHTEDGE
, TTIRES_HOT
, L
"HOT"},
729 {TABP_TOPTABITEMRIGHTEDGE
, TTIRES_SELECTED
, L
"SELECTED"},
730 {TABP_TOPTABITEMRIGHTEDGE
, TTIRES_DISABLED
, L
"DISABLED"},
731 {TABP_TOPTABITEMRIGHTEDGE
, TTIRES_FOCUSED
, L
"FOCUSED"},
732 {TABP_TOPTABITEMBOTHEDGE
, 0, L
"TOPTABITEMBOTHEDGE"},
733 {TABP_TOPTABITEMBOTHEDGE
, TTIBES_NORMAL
, L
"NORMAL"},
734 {TABP_TOPTABITEMBOTHEDGE
, TTIBES_HOT
, L
"HOT"},
735 {TABP_TOPTABITEMBOTHEDGE
, TTIBES_SELECTED
, L
"SELECTED"},
736 {TABP_TOPTABITEMBOTHEDGE
, TTIBES_DISABLED
, L
"DISABLED"},
737 {TABP_TOPTABITEMBOTHEDGE
, TTIBES_FOCUSED
, L
"FOCUSED"},
738 {TABP_PANE
, 0, L
"PANE"},
739 {TABP_BODY
, 0, L
"BODY"},
743 static const MSSTYLES_CLASS_MAP classTaskband
[] = {
744 {TDP_GROUPCOUNT
, 0, L
"GROUPCOUNT"},
745 {TDP_FLASHBUTTON
, 0, L
"FLASHBUTTON"},
746 {TDP_FLASHBUTTONGROUPMENU
, 0, L
"FLASHBUTTONGROUPMENU"},
750 static const MSSTYLES_CLASS_MAP classTaskbar
[] = {
751 {TBP_BACKGROUNDBOTTOM
, 0, L
"BACKGROUNDBOTTOM"},
752 {TBP_BACKGROUNDRIGHT
, 0, L
"BACKGROUNDRIGHT"},
753 {TBP_BACKGROUNDTOP
, 0, L
"BACKGROUNDTOP"},
754 {TBP_BACKGROUNDLEFT
, 0, L
"BACKGROUNDLEFT"},
755 {TBP_SIZINGBARBOTTOM
, 0, L
"SIZINGBARBOTTOM"},
756 {TBP_SIZINGBARRIGHT
, 0, L
"SIZINGBARRIGHT"},
757 {TBP_SIZINGBARTOP
, 0, L
"SIZINGBARTOP"},
758 {TBP_SIZINGBARLEFT
, 0, L
"SIZINGBARLEFT"},
762 static const MSSTYLES_CLASS_MAP classToolbar
[] = {
763 {TP_BUTTON
, 0, L
"BUTTON"},
764 {TP_BUTTON
, TS_NORMAL
, L
"NORMAL"},
765 {TP_BUTTON
, TS_HOT
, L
"HOT"},
766 {TP_BUTTON
, TS_PRESSED
, L
"PRESSED"},
767 {TP_BUTTON
, TS_DISABLED
, L
"DISABLED"},
768 {TP_BUTTON
, TS_CHECKED
, L
"CHECKED"},
769 {TP_BUTTON
, TS_HOTCHECKED
, L
"HOTCHECKED"},
770 {TP_DROPDOWNBUTTON
, 0, L
"DROPDOWNBUTTON"},
771 {TP_DROPDOWNBUTTON
, TS_NORMAL
, L
"NORMAL"},
772 {TP_DROPDOWNBUTTON
, TS_HOT
, L
"HOT"},
773 {TP_DROPDOWNBUTTON
, TS_PRESSED
, L
"PRESSED"},
774 {TP_DROPDOWNBUTTON
, TS_DISABLED
, L
"DISABLED"},
775 {TP_DROPDOWNBUTTON
, TS_CHECKED
, L
"CHECKED"},
776 {TP_DROPDOWNBUTTON
, TS_HOTCHECKED
, L
"HOTCHECKED"},
777 {TP_SPLITBUTTON
, 0, L
"SPLITBUTTON"},
778 {TP_SPLITBUTTON
, TS_NORMAL
, L
"NORMAL"},
779 {TP_SPLITBUTTON
, TS_HOT
, L
"HOT"},
780 {TP_SPLITBUTTON
, TS_PRESSED
, L
"PRESSED"},
781 {TP_SPLITBUTTON
, TS_DISABLED
, L
"DISABLED"},
782 {TP_SPLITBUTTON
, TS_CHECKED
, L
"CHECKED"},
783 {TP_SPLITBUTTON
, TS_HOTCHECKED
, L
"HOTCHECKED"},
784 {TP_SPLITBUTTONDROPDOWN
, 0, L
"SPLITBUTTONDROPDOWN"},
785 {TP_SPLITBUTTONDROPDOWN
, TS_NORMAL
, L
"NORMAL"},
786 {TP_SPLITBUTTONDROPDOWN
, TS_HOT
, L
"HOT"},
787 {TP_SPLITBUTTONDROPDOWN
, TS_PRESSED
, L
"PRESSED"},
788 {TP_SPLITBUTTONDROPDOWN
, TS_DISABLED
, L
"DISABLED"},
789 {TP_SPLITBUTTONDROPDOWN
, TS_CHECKED
, L
"CHECKED"},
790 {TP_SPLITBUTTONDROPDOWN
, TS_HOTCHECKED
, L
"HOTCHECKED"},
791 {TP_SEPARATOR
, 0, L
"SEPARATOR"},
792 {TP_SEPARATOR
, TS_NORMAL
, L
"NORMAL"},
793 {TP_SEPARATOR
, TS_HOT
, L
"HOT"},
794 {TP_SEPARATOR
, TS_PRESSED
, L
"PRESSED"},
795 {TP_SEPARATOR
, TS_DISABLED
, L
"DISABLED"},
796 {TP_SEPARATOR
, TS_CHECKED
, L
"CHECKED"},
797 {TP_SEPARATOR
, TS_HOTCHECKED
, L
"HOTCHECKED"},
798 {TP_SEPARATORVERT
, 0, L
"SEPARATORVERT"},
799 {TP_SEPARATORVERT
, TS_NORMAL
, L
"NORMAL"},
800 {TP_SEPARATORVERT
, TS_HOT
, L
"HOT"},
801 {TP_SEPARATORVERT
, TS_PRESSED
, L
"PRESSED"},
802 {TP_SEPARATORVERT
, TS_DISABLED
, L
"DISABLED"},
803 {TP_SEPARATORVERT
, TS_CHECKED
, L
"CHECKED"},
804 {TP_SEPARATORVERT
, TS_HOTCHECKED
, L
"HOTCHECKED"},
808 static const MSSTYLES_CLASS_MAP classTooltip
[] = {
809 {TTP_STANDARD
, 0, L
"STANDARD"},
810 {TTP_STANDARD
, TTSS_NORMAL
, L
"NORMAL"},
811 {TTP_STANDARD
, TTSS_LINK
, L
"LINK"},
812 {TTP_STANDARDTITLE
, 0, L
"STANDARDTITLE"},
813 {TTP_STANDARDTITLE
, TTSS_NORMAL
, L
"NORMAL"},
814 {TTP_STANDARDTITLE
, TTSS_LINK
, L
"LINK"},
815 {TTP_BALLOON
, 0, L
"BALLOON"},
816 {TTP_BALLOON
, TTBS_NORMAL
, L
"NORMAL"},
817 {TTP_BALLOON
, TTBS_LINK
, L
"LINK"},
818 {TTP_BALLOONTITLE
, 0, L
"BALLOONTITLE"},
819 {TTP_BALLOONTITLE
, TTBS_NORMAL
, L
"NORMAL"},
820 {TTP_BALLOONTITLE
, TTBS_LINK
, L
"LINK"},
821 {TTP_CLOSE
, 0, L
"CLOSE"},
822 {TTP_CLOSE
, TTCS_NORMAL
, L
"NORMAL"},
823 {TTP_CLOSE
, TTCS_HOT
, L
"HOT"},
824 {TTP_CLOSE
, TTCS_PRESSED
, L
"PRESSED"},
828 static const MSSTYLES_CLASS_MAP classTrackbar
[] = {
829 {TKP_TRACK
, 0, L
"TRACK"},
830 {TKP_TRACK
, TRS_NORMAL
, L
"NORMAL"},
831 {TKP_TRACKVERT
, 0, L
"TRACKVERT"},
832 {TKP_TRACKVERT
, TRVS_NORMAL
, L
"NORMAL"},
833 {TKP_THUMB
, 0, L
"THUMB"},
834 {TKP_THUMB
, TUS_NORMAL
, L
"NORMAL"},
835 {TKP_THUMB
, TUS_HOT
, L
"HOT"},
836 {TKP_THUMB
, TUS_PRESSED
, L
"PRESSED"},
837 {TKP_THUMB
, TUS_FOCUSED
, L
"FOCUSED"},
838 {TKP_THUMB
, TUS_DISABLED
, L
"DISABLED"},
839 {TKP_THUMBBOTTOM
, 0, L
"THUMBBOTTOM"},
840 {TKP_THUMBBOTTOM
, TUBS_NORMAL
, L
"NORMAL"},
841 {TKP_THUMBBOTTOM
, TUBS_HOT
, L
"HOT"},
842 {TKP_THUMBBOTTOM
, TUBS_PRESSED
, L
"PRESSED"},
843 {TKP_THUMBBOTTOM
, TUBS_FOCUSED
, L
"FOCUSED"},
844 {TKP_THUMBBOTTOM
, TUBS_DISABLED
, L
"DISABLED"},
845 {TKP_THUMBTOP
, 0, L
"THUMBTOP"},
846 {TKP_THUMBTOP
, TUTS_NORMAL
, L
"NORMAL"},
847 {TKP_THUMBTOP
, TUTS_HOT
, L
"HOT"},
848 {TKP_THUMBTOP
, TUTS_PRESSED
, L
"PRESSED"},
849 {TKP_THUMBTOP
, TUTS_FOCUSED
, L
"FOCUSED"},
850 {TKP_THUMBTOP
, TUTS_DISABLED
, L
"DISABLED"},
851 {TKP_THUMBVERT
, 0, L
"THUMBVERT"},
852 {TKP_THUMBVERT
, TUVS_NORMAL
, L
"NORMAL"},
853 {TKP_THUMBVERT
, TUVS_HOT
, L
"HOT"},
854 {TKP_THUMBVERT
, TUVS_PRESSED
, L
"PRESSED"},
855 {TKP_THUMBVERT
, TUVS_FOCUSED
, L
"FOCUSED"},
856 {TKP_THUMBVERT
, TUVS_DISABLED
, L
"DISABLED"},
857 {TKP_THUMBLEFT
, 0, L
"THUMBLEFT"},
858 {TKP_THUMBLEFT
, TUVLS_NORMAL
, L
"NORMAL"},
859 {TKP_THUMBLEFT
, TUVLS_HOT
, L
"HOT"},
860 {TKP_THUMBLEFT
, TUVLS_PRESSED
, L
"PRESSED"},
861 {TKP_THUMBLEFT
, TUVLS_FOCUSED
, L
"FOCUSED"},
862 {TKP_THUMBLEFT
, TUVLS_DISABLED
, L
"DISABLED"},
863 {TKP_THUMBRIGHT
, 0, L
"THUMBRIGHT"},
864 {TKP_THUMBRIGHT
, TUVRS_NORMAL
, L
"NORMAL"},
865 {TKP_THUMBRIGHT
, TUVRS_HOT
, L
"HOT"},
866 {TKP_THUMBRIGHT
, TUVRS_PRESSED
, L
"PRESSED"},
867 {TKP_THUMBRIGHT
, TUVRS_FOCUSED
, L
"FOCUSED"},
868 {TKP_THUMBRIGHT
, TUVRS_DISABLED
, L
"DISABLED"},
869 {TKP_TICS
, 0, L
"TICS"},
870 {TKP_TICS
, TSS_NORMAL
, L
"NORMAL"},
871 {TKP_TICSVERT
, 0, L
"TICSVERT"},
872 {TKP_TICSVERT
, TSVS_NORMAL
, L
"NORMAL"},
876 static const MSSTYLES_CLASS_MAP classTraynotify
[] = {
877 {TNP_BACKGROUND
, 0, L
"BACKGROUND"},
878 {TNP_ANIMBACKGROUND
, 0, L
"ANIMBACKGROUND"},
882 static const MSSTYLES_CLASS_MAP classTreeview
[] = {
883 {TVP_TREEITEM
, 0, L
"TREEITEM"},
884 {TVP_TREEITEM
, TREIS_NORMAL
, L
"NORMAL"},
885 {TVP_TREEITEM
, TREIS_HOT
, L
"HOT"},
886 {TVP_TREEITEM
, TREIS_SELECTED
, L
"SELECTED"},
887 {TVP_TREEITEM
, TREIS_DISABLED
, L
"DISABLED"},
888 {TVP_TREEITEM
, TREIS_SELECTEDNOTFOCUS
, L
"SELECTEDNOTFOCUS"},
889 {TVP_GLYPH
, 0, L
"GLYPH"},
890 {TVP_GLYPH
, GLPS_CLOSED
, L
"CLOSED"},
891 {TVP_GLYPH
, GLPS_OPENED
, L
"OPENED"},
892 {TVP_BRANCH
, 0, L
"BRANCH"},
896 static const MSSTYLES_CLASS_MAP classWindow
[] = {
897 {WP_CAPTION
, 0, L
"CAPTION"},
898 {WP_CAPTION
, CS_ACTIVE
, L
"ACTIVE"},
899 {WP_CAPTION
, CS_INACTIVE
, L
"INACTIVE"},
900 {WP_CAPTION
, CS_DISABLED
, L
"DISABLED"},
901 {WP_SMALLCAPTION
, 0, L
"SMALLCAPTION"},
902 {WP_SMALLCAPTION
, CS_ACTIVE
, L
"ACTIVE"},
903 {WP_SMALLCAPTION
, CS_INACTIVE
, L
"INACTIVE"},
904 {WP_SMALLCAPTION
, CS_DISABLED
, L
"DISABLED"},
905 {WP_MINCAPTION
, 0, L
"MINCAPTION"},
906 {WP_MINCAPTION
, MNCS_ACTIVE
, L
"ACTIVE"},
907 {WP_MINCAPTION
, MNCS_INACTIVE
, L
"INACTIVE"},
908 {WP_MINCAPTION
, MNCS_DISABLED
, L
"DISABLED"},
909 {WP_SMALLMINCAPTION
, 0, L
"SMALLMINCAPTION"},
910 {WP_SMALLMINCAPTION
, MNCS_ACTIVE
, L
"ACTIVE"},
911 {WP_SMALLMINCAPTION
, MNCS_INACTIVE
, L
"INACTIVE"},
912 {WP_SMALLMINCAPTION
, MNCS_DISABLED
, L
"DISABLED"},
913 {WP_MAXCAPTION
, 0, L
"MAXCAPTION"},
914 {WP_MAXCAPTION
, MXCS_ACTIVE
, L
"ACTIVE"},
915 {WP_MAXCAPTION
, MXCS_INACTIVE
, L
"INACTIVE"},
916 {WP_MAXCAPTION
, MXCS_DISABLED
, L
"DISABLED"},
917 {WP_SMALLMAXCAPTION
, 0, L
"SMALLMAXCAPTION"},
918 {WP_SMALLMAXCAPTION
, MXCS_ACTIVE
, L
"ACTIVE"},
919 {WP_SMALLMAXCAPTION
, MXCS_INACTIVE
, L
"INACTIVE"},
920 {WP_SMALLMAXCAPTION
, MXCS_DISABLED
, L
"DISABLED"},
921 {WP_FRAMELEFT
, 0, L
"FRAMELEFT"},
922 {WP_FRAMELEFT
, FS_ACTIVE
, L
"ACTIVE"},
923 {WP_FRAMELEFT
, FS_INACTIVE
, L
"INACTIVE"},
924 {WP_FRAMERIGHT
, 0, L
"FRAMERIGHT"},
925 {WP_FRAMERIGHT
, FS_ACTIVE
, L
"ACTIVE"},
926 {WP_FRAMERIGHT
, FS_INACTIVE
, L
"INACTIVE"},
927 {WP_FRAMEBOTTOM
, 0, L
"FRAMEBOTTOM"},
928 {WP_FRAMEBOTTOM
, FS_ACTIVE
, L
"ACTIVE"},
929 {WP_FRAMEBOTTOM
, FS_INACTIVE
, L
"INACTIVE"},
930 {WP_SMALLFRAMELEFT
, 0, L
"SMALLFRAMELEFT"},
931 {WP_SMALLFRAMELEFT
, FS_ACTIVE
, L
"ACTIVE"},
932 {WP_SMALLFRAMELEFT
, FS_INACTIVE
, L
"INACTIVE"},
933 {WP_SMALLFRAMERIGHT
, 0, L
"SMALLFRAMERIGHT"},
934 {WP_SMALLFRAMERIGHT
, FS_ACTIVE
, L
"ACTIVE"},
935 {WP_SMALLFRAMERIGHT
, FS_INACTIVE
, L
"INACTIVE"},
936 {WP_SMALLFRAMEBOTTOM
, 0, L
"SMALLFRAMEBOTTOM"},
937 {WP_SMALLFRAMEBOTTOM
, FS_ACTIVE
, L
"ACTIVE"},
938 {WP_SMALLFRAMEBOTTOM
, FS_INACTIVE
, L
"INACTIVE"},
939 {WP_SYSBUTTON
, 0, L
"SYSBUTTON"},
940 {WP_SYSBUTTON
, SBS_NORMAL
, L
"NORMAL"},
941 {WP_SYSBUTTON
, SBS_HOT
, L
"HOT"},
942 {WP_SYSBUTTON
, SBS_PUSHED
, L
"PUSHED"},
943 {WP_SYSBUTTON
, SBS_DISABLED
, L
"DISABLED"},
944 {WP_MDISYSBUTTON
, 0, L
"MDISYSBUTTON"},
945 {WP_MDISYSBUTTON
, SBS_NORMAL
, L
"NORMAL"},
946 {WP_MDISYSBUTTON
, SBS_HOT
, L
"HOT"},
947 {WP_MDISYSBUTTON
, SBS_PUSHED
, L
"PUSHED"},
948 {WP_MDISYSBUTTON
, SBS_DISABLED
, L
"DISABLED"},
949 {WP_MINBUTTON
, 0, L
"MINBUTTON"},
950 {WP_MINBUTTON
, MINBS_NORMAL
, L
"NORMAL"},
951 {WP_MINBUTTON
, MINBS_HOT
, L
"HOT"},
952 {WP_MINBUTTON
, MINBS_PUSHED
, L
"PUSHED"},
953 {WP_MINBUTTON
, MINBS_DISABLED
, L
"DISABLED"},
954 {WP_MDIMINBUTTON
, 0, L
"MDIMINBUTTON"},
955 {WP_MDIMINBUTTON
, MINBS_NORMAL
, L
"NORMAL"},
956 {WP_MDIMINBUTTON
, MINBS_HOT
, L
"HOT"},
957 {WP_MDIMINBUTTON
, MINBS_PUSHED
, L
"PUSHED"},
958 {WP_MDIMINBUTTON
, MINBS_DISABLED
, L
"DISABLED"},
959 {WP_MAXBUTTON
, 0, L
"MAXBUTTON"},
960 {WP_MAXBUTTON
, MAXBS_NORMAL
, L
"NORMAL"},
961 {WP_MAXBUTTON
, MAXBS_HOT
, L
"HOT"},
962 {WP_MAXBUTTON
, MAXBS_PUSHED
, L
"PUSHED"},
963 {WP_MAXBUTTON
, MAXBS_DISABLED
, L
"DISABLED"},
964 {WP_CLOSEBUTTON
, 0, L
"CLOSEBUTTON"},
965 {WP_CLOSEBUTTON
, CBS_NORMAL
, L
"NORMAL"},
966 {WP_CLOSEBUTTON
, CBS_HOT
, L
"HOT"},
967 {WP_CLOSEBUTTON
, CBS_PUSHED
, L
"PUSHED"},
968 {WP_CLOSEBUTTON
, CBS_DISABLED
, L
"DISABLED"},
969 {WP_SMALLCLOSEBUTTON
, 0, L
"SMALLCLOSEBUTTON"},
970 {WP_SMALLCLOSEBUTTON
, CBS_NORMAL
, L
"NORMAL"},
971 {WP_SMALLCLOSEBUTTON
, CBS_HOT
, L
"HOT"},
972 {WP_SMALLCLOSEBUTTON
, CBS_PUSHED
, L
"PUSHED"},
973 {WP_SMALLCLOSEBUTTON
, CBS_DISABLED
, L
"DISABLED"},
974 {WP_MDICLOSEBUTTON
, 0, L
"MDICLOSEBUTTON"},
975 {WP_MDICLOSEBUTTON
, CBS_NORMAL
, L
"NORMAL"},
976 {WP_MDICLOSEBUTTON
, CBS_HOT
, L
"HOT"},
977 {WP_MDICLOSEBUTTON
, CBS_PUSHED
, L
"PUSHED"},
978 {WP_MDICLOSEBUTTON
, CBS_DISABLED
, L
"DISABLED"},
979 {WP_RESTOREBUTTON
, 0, L
"RESTOREBUTTON"},
980 {WP_RESTOREBUTTON
, RBS_NORMAL
, L
"NORMAL"},
981 {WP_RESTOREBUTTON
, RBS_HOT
, L
"HOT"},
982 {WP_RESTOREBUTTON
, RBS_PUSHED
, L
"PUSHED"},
983 {WP_RESTOREBUTTON
, RBS_DISABLED
, L
"DISABLED"},
984 {WP_MDIRESTOREBUTTON
, 0, L
"MDIRESTOREBUTTON"},
985 {WP_MDIRESTOREBUTTON
, RBS_NORMAL
, L
"NORMAL"},
986 {WP_MDIRESTOREBUTTON
, RBS_HOT
, L
"HOT"},
987 {WP_MDIRESTOREBUTTON
, RBS_PUSHED
, L
"PUSHED"},
988 {WP_MDIRESTOREBUTTON
, RBS_DISABLED
, L
"DISABLED"},
989 {WP_HELPBUTTON
, 0, L
"HELPBUTTON"},
990 {WP_HELPBUTTON
, HBS_NORMAL
, L
"NORMAL"},
991 {WP_HELPBUTTON
, HBS_HOT
, L
"HOT"},
992 {WP_HELPBUTTON
, HBS_PUSHED
, L
"PUSHED"},
993 {WP_HELPBUTTON
, HBS_DISABLED
, L
"DISABLED"},
994 {WP_MDIHELPBUTTON
, 0, L
"MDIHELPBUTTON"},
995 {WP_MDIHELPBUTTON
, HBS_NORMAL
, L
"NORMAL"},
996 {WP_MDIHELPBUTTON
, HBS_HOT
, L
"HOT"},
997 {WP_MDIHELPBUTTON
, HBS_PUSHED
, L
"PUSHED"},
998 {WP_MDIHELPBUTTON
, HBS_DISABLED
, L
"DISABLED"},
999 {WP_HORZSCROLL
, 0, L
"HORZSCROLL"},
1000 {WP_HORZSCROLL
, HSS_NORMAL
, L
"NORMAL"},
1001 {WP_HORZSCROLL
, HSS_HOT
, L
"HOT"},
1002 {WP_HORZSCROLL
, HSS_PUSHED
, L
"PUSHED"},
1003 {WP_HORZSCROLL
, HSS_DISABLED
, L
"DISABLED"},
1004 {WP_HORZTHUMB
, 0, L
"HORZTHUMB"},
1005 {WP_HORZTHUMB
, HTS_NORMAL
, L
"NORMAL"},
1006 {WP_HORZTHUMB
, HTS_HOT
, L
"HOT"},
1007 {WP_HORZTHUMB
, HTS_PUSHED
, L
"PUSHED"},
1008 {WP_HORZTHUMB
, HTS_DISABLED
, L
"DISABLED"},
1009 {WP_VERTSCROLL
, 0, L
"VERTSCROLL"},
1010 {WP_VERTSCROLL
, VSS_NORMAL
, L
"NORMAL"},
1011 {WP_VERTSCROLL
, VSS_HOT
, L
"HOT"},
1012 {WP_VERTSCROLL
, VSS_PUSHED
, L
"PUSHED"},
1013 {WP_VERTSCROLL
, VSS_DISABLED
, L
"DISABLED"},
1014 {WP_VERTTHUMB
, 0, L
"VERTTHUMB"},
1015 {WP_VERTTHUMB
, VTS_NORMAL
, L
"NORMAL"},
1016 {WP_VERTTHUMB
, VTS_HOT
, L
"HOT"},
1017 {WP_VERTTHUMB
, VTS_PUSHED
, L
"PUSHED"},
1018 {WP_VERTTHUMB
, VTS_DISABLED
, L
"DISABLED"},
1019 {WP_DIALOG
, 0, L
"DIALOG"},
1020 {WP_CAPTIONSIZINGTEMPLATE
, 0, L
"CAPTIONSIZINGTEMPLATE"},
1021 {WP_SMALLCAPTIONSIZINGTEMPLATE
, 0, L
"SMALLCAPTIONSIZINGTEMPLATE"},
1022 {WP_FRAMELEFTSIZINGTEMPLATE
, 0, L
"FRAMELEFTSIZINGTEMPLATE"},
1023 {WP_SMALLFRAMELEFTSIZINGTEMPLATE
, 0, L
"SMALLFRAMELEFTSIZINGTEMPLATE"},
1024 {WP_FRAMERIGHTSIZINGTEMPLATE
, 0, L
"FRAMERIGHTSIZINGTEMPLATE"},
1025 {WP_SMALLFRAMERIGHTSIZINGTEMPLATE
, 0, L
"SMALLFRAMERIGHTSIZINGTEMPLATE"},
1026 {WP_FRAMEBOTTOMSIZINGTEMPLATE
, 0, L
"FRAMEBOTTOMSIZINGTEMPLATE"},
1027 {WP_SMALLFRAMEBOTTOMSIZINGTEMPLATE
, 0, L
"SMALLFRAMEBOTTOMSIZINGTEMPLATE"},
1031 /* Map class names to part/state maps */
1032 static const MSSTYLES_CLASS_NAME mapClass
[] = {
1033 {classGlobals
, L
"GLOBALS"},
1034 {classButton
, L
"BUTTON"},
1035 {classClock
, L
"CLOCK"},
1036 {classCombobox
, L
"COMBOBOX"},
1037 {classEdit
, L
"EDIT"},
1038 {classExplorerbar
, L
"EXPLORERBAR"},
1039 {classHeader
, L
"HEADER"},
1040 {classListview
, L
"LISTVIEW"},
1041 {classMenu
, L
"MENU"},
1042 {classMenuband
, L
"MENUBAND"},
1043 {classPage
, L
"PAGE"},
1044 {classProgress
, L
"PROGRESS"},
1045 {classRebar
, L
"REBAR"},
1046 {classScrollbar
, L
"SCROLLBAR"},
1047 {classSpin
, L
"SPIN"},
1048 {classStartpanel
, L
"STARTPANEL"},
1049 {classStatus
, L
"STATUS"},
1051 {classTaskband
, L
"TASKBAND"},
1052 {classTaskbar
, L
"TASKBAR"},
1053 {classToolbar
, L
"TOOLBAR"},
1054 {classTooltip
, L
"TOOLTIP"},
1055 {classTrackbar
, L
"TRACKBAR"},
1056 {classTraynotify
, L
"TRAYNOTIFY"},
1057 {classTreeview
, L
"TREEVIEW"},
1058 {classWindow
, L
"WINDOW"}
1061 BOOL
MSSTYLES_LookupPartState(LPCWSTR pszClass
, LPCWSTR pszPart
, LPCWSTR pszState
, int *iPartId
, int *iStateId
)
1064 const MSSTYLES_CLASS_MAP
*map
;
1068 for(i
=0; i
<ARRAY_SIZE(mapClass
); i
++) {
1069 if(!lstrcmpiW(mapClass
[i
].pszClass
, pszClass
)) {
1070 map
= mapClass
[i
].lpMap
;
1073 if(map
->dwStateID
== 0 && !lstrcmpiW(map
->szName
, pszPart
)) {
1074 *iPartId
= map
->dwPartID
;
1077 } while(*((++map
)->szName
));
1080 if(pszPart
&& *iPartId
== 0) {
1085 if(map
->dwPartID
== *iPartId
&& !lstrcmpiW(map
->szName
, pszState
)) {
1086 *iStateId
= map
->dwStateID
;
1091 if(!lstrcmpiW(map
->szName
, pszState
)) {
1092 *iStateId
= map
->dwStateID
;
1096 } while(*((++map
)->szName
));
1101 if(pszPart
&& *iPartId
== 0) {
1104 if(pszState
&& *iStateId
== 0) {
1110 /**********************************************************************
1111 * MSSTYLES_LookupProperty
1113 * Find a property ID from name
1116 * pszPropertyName Name of property to lookup
1117 * dwPrimitive Location to store primitive type of property
1118 * dwId Location to store ID of property
1121 * FALSE if value is not found, TRUE otherwise
1123 BOOL
MSSTYLES_LookupProperty(LPCWSTR pszPropertyName
, int *dwPrimitive
, int *dwId
)
1127 if(!lstrcmpiW(mapProperty
[item
].szPropertyName
, pszPropertyName
)) {
1128 if(dwPrimitive
) *dwPrimitive
= mapProperty
[item
].dwPrimitiveType
;
1129 if(dwId
) *dwId
= mapProperty
[item
].dwPropertyID
;
1132 } while(*mapProperty
[++item
].szPropertyName
);
1136 /**********************************************************************
1137 * MSSTYLES_LookupEnum
1139 * Lookup the value for an enumeration
1142 * pszValueName Value name to lookup
1143 * dwEnum Enumeration property ID to search
1144 * dwValue Location to store value
1147 * FALSE if value is not found, TRUE otherwise
1149 BOOL
MSSTYLES_LookupEnum(LPCWSTR pszValueName
, int dwEnum
, int *dwValue
)
1152 /* Locate the enum block */
1153 while(*mapEnum
[item
].szValueName
&& mapEnum
[item
].dwEnum
!= dwEnum
) item
++;
1154 /* Now find the value in that block */
1155 while(*mapEnum
[item
].szValueName
&& mapEnum
[item
].dwEnum
== dwEnum
) {
1156 if(!lstrcmpiW(mapEnum
[item
].szValueName
, pszValueName
)) {
1157 if(dwValue
) *dwValue
= mapEnum
[item
].dwValue
;