ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

stylemap.c
Go to the documentation of this file.
00001 /*
00002  * msstyle data maps
00003  *
00004  * Copyright (C) 2004 Kevin Koltzau
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Lesser General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2.1 of the License, or (at your option) any later version.
00010  *
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with this library; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00019  */
00020 
00021 #include "uxthemep.h"
00022 #include "wine/debug.h"
00023 
00024 typedef struct _MSSTYLES_PROPERTY_MAP {
00025     WORD dwPrimitiveType;
00026     WORD dwPropertyID;
00027     WCHAR szPropertyName[24];
00028 } MSSTYLES_PROPERTY_MAP, *PMSSTYLES_PROPERTY_MAP;
00029 
00030 typedef struct _MSSTYLES_ENUM_MAP {
00031     WORD dwEnum;
00032     WORD dwValue;
00033     WCHAR szValueName[18];
00034 } MSSTYLES_ENUM_MAP, *PMSSTYLES_ENUM_MAP;
00035 
00036 typedef struct _MSSTYLES_CLASS_MAP {
00037     WORD dwPartID;
00038     WORD dwStateID;
00039     WCHAR szName[31];
00040 } MSSTYLES_CLASS_MAP, *PMSSTYLES_CLASS_MAP;
00041 
00042 typedef struct _MSSTYLES_CLASS_NAME {
00043     const MSSTYLES_CLASS_MAP *lpMap;
00044     WCHAR pszClass[12];
00045 } MSSTYLES_CLASS_NAME, *PMSSTYLES_CLASS_NAME;
00046 
00047 /***********************************************************************
00048  * Map property names to IDs & primitive types
00049  * PrimitiveType,PropertyID,PropertyName
00050  */
00051 static const MSSTYLES_PROPERTY_MAP mapProperty[] = {
00052     {TMT_STRING,TMT_STRING,{'S','T','R','I','N','G','\0'}},
00053     {TMT_INT,TMT_INT,{'I','N','T','\0'}},
00054     {TMT_BOOL,TMT_BOOL,{'B','O','O','L','\0'}},
00055     {TMT_COLOR,TMT_COLOR,{'C','O','L','O','R','\0'}},
00056     {TMT_MARGINS,TMT_MARGINS,{'M','A','R','G','I','N','S','\0'}},
00057     {TMT_FILENAME,TMT_FILENAME,{'F','I','L','E','N','A','M','E','\0'}},
00058     {TMT_SIZE,TMT_SIZE,{'S','I','Z','E','\0'}},
00059     {TMT_POSITION,TMT_POSITION,{'P','O','S','I','T','I','O','N','\0'}},
00060     {TMT_RECT,TMT_RECT,{'R','E','C','T','\0'}},
00061     {TMT_FONT,TMT_FONT,{'F','O','N','T','\0'}},
00062     {TMT_INTLIST,TMT_INTLIST,{'I','N','T','L','I','S','T','\0'}},
00063     {TMT_STRING,TMT_COLORSCHEMES,{'C','O','L','O','R','S','C','H','E','M','E','S','\0'}},
00064     {TMT_STRING,TMT_SIZES,{'S','I','Z','E','S','\0'}},
00065     {TMT_INT,TMT_CHARSET,{'C','H','A','R','S','E','T','\0'}},
00066     {TMT_STRING,TMT_DISPLAYNAME,{'D','I','S','P','L','A','Y','N','A','M','E','\0'}},
00067     {TMT_STRING,TMT_TOOLTIP,{'T','O','O','L','T','I','P','\0'}},
00068     {TMT_STRING,TMT_COMPANY,{'C','O','M','P','A','N','Y','\0'}},
00069     {TMT_STRING,TMT_AUTHOR,{'A','U','T','H','O','R','\0'}},
00070     {TMT_STRING,TMT_COPYRIGHT,{'C','O','P','Y','R','I','G','H','T','\0'}},
00071     {TMT_STRING,TMT_URL,{'U','R','L','\0'}},
00072     {TMT_STRING,TMT_VERSION,{'V','E','R','S','I','O','N','\0'}},
00073     {TMT_STRING,TMT_DESCRIPTION,{'D','E','S','C','R','I','P','T','I','O','N','\0'}},
00074     {TMT_FONT,TMT_CAPTIONFONT,{'C','A','P','T','I','O','N','F','O','N','T','\0'}},
00075     {TMT_FONT,TMT_SMALLCAPTIONFONT,{'S','M','A','L','L','C','A','P','T','I','O','N','F','O','N','T','\0'}},
00076     {TMT_FONT,TMT_MENUFONT,{'M','E','N','U','F','O','N','T','\0'}},
00077     {TMT_FONT,TMT_STATUSFONT,{'S','T','A','T','U','S','F','O','N','T','\0'}},
00078     {TMT_FONT,TMT_MSGBOXFONT,{'M','S','G','B','O','X','F','O','N','T','\0'}},
00079     {TMT_FONT,TMT_ICONTITLEFONT,{'I','C','O','N','T','I','T','L','E','F','O','N','T','\0'}},
00080     {TMT_BOOL,TMT_FLATMENUS,{'F','L','A','T','M','E','N','U','S','\0'}},
00081     {TMT_SIZE,TMT_SIZINGBORDERWIDTH,{'S','I','Z','I','N','G','B','O','R','D','E','R','W','I','D','T','H','\0'}},
00082     {TMT_SIZE,TMT_SCROLLBARWIDTH,{'S','C','R','O','L','L','B','A','R','W','I','D','T','H','\0'}},
00083     {TMT_SIZE,TMT_SCROLLBARHEIGHT,{'S','C','R','O','L','L','B','A','R','H','E','I','G','H','T','\0'}},
00084     {TMT_SIZE,TMT_CAPTIONBARWIDTH,{'C','A','P','T','I','O','N','B','A','R','W','I','D','T','H','\0'}},
00085     {TMT_SIZE,TMT_CAPTIONBARHEIGHT,{'C','A','P','T','I','O','N','B','A','R','H','E','I','G','H','T','\0'}},
00086     {TMT_SIZE,TMT_SMCAPTIONBARWIDTH,{'S','M','C','A','P','T','I','O','N','B','A','R','W','I','D','T','H','\0'}},
00087     {TMT_SIZE,TMT_SMCAPTIONBARHEIGHT,{'S','M','C','A','P','T','I','O','N','B','A','R','H','E','I','G','H','T','\0'}},
00088     {TMT_SIZE,TMT_MENUBARWIDTH,{'M','E','N','U','B','A','R','W','I','D','T','H','\0'}},
00089     {TMT_SIZE,TMT_MENUBARHEIGHT,{'M','E','N','U','B','A','R','H','E','I','G','H','T','\0'}},
00090     {TMT_INT,TMT_MINCOLORDEPTH,{'M','I','N','C','O','L','O','R','D','E','P','T','H','\0'}},
00091     {TMT_STRING,TMT_CSSNAME,{'C','S','S','N','A','M','E','\0'}},
00092     {TMT_STRING,TMT_XMLNAME,{'X','M','L','N','A','M','E','\0'}},
00093     {TMT_COLOR,TMT_SCROLLBAR,{'S','C','R','O','L','L','B','A','R','\0'}},
00094     {TMT_COLOR,TMT_BACKGROUND,{'B','A','C','K','G','R','O','U','N','D','\0'}},
00095     {TMT_COLOR,TMT_ACTIVECAPTION,{'A','C','T','I','V','E','C','A','P','T','I','O','N','\0'}},
00096     {TMT_COLOR,TMT_INACTIVECAPTION,{'I','N','A','C','T','I','V','E','C','A','P','T','I','O','N','\0'}},
00097     {TMT_COLOR,TMT_MENU,{'M','E','N','U','\0'}},
00098     {TMT_COLOR,TMT_WINDOW,{'W','I','N','D','O','W','\0'}},
00099     {TMT_COLOR,TMT_WINDOWFRAME,{'W','I','N','D','O','W','F','R','A','M','E','\0'}},
00100     {TMT_COLOR,TMT_MENUTEXT,{'M','E','N','U','T','E','X','T','\0'}},
00101     {TMT_COLOR,TMT_WINDOWTEXT,{'W','I','N','D','O','W','T','E','X','T','\0'}},
00102     {TMT_COLOR,TMT_CAPTIONTEXT,{'C','A','P','T','I','O','N','T','E','X','T','\0'}},
00103     {TMT_COLOR,TMT_ACTIVEBORDER,{'A','C','T','I','V','E','B','O','R','D','E','R','\0'}},
00104     {TMT_COLOR,TMT_INACTIVEBORDER,{'I','N','A','C','T','I','V','E','B','O','R','D','E','R','\0'}},
00105     {TMT_COLOR,TMT_APPWORKSPACE,{'A','P','P','W','O','R','K','S','P','A','C','E','\0'}},
00106     {TMT_COLOR,TMT_HIGHLIGHT,{'H','I','G','H','L','I','G','H','T','\0'}},
00107     {TMT_COLOR,TMT_HIGHLIGHTTEXT,{'H','I','G','H','L','I','G','H','T','T','E','X','T','\0'}},
00108     {TMT_COLOR,TMT_BTNFACE,{'B','T','N','F','A','C','E','\0'}},
00109     {TMT_COLOR,TMT_BTNSHADOW,{'B','T','N','S','H','A','D','O','W','\0'}},
00110     {TMT_COLOR,TMT_GRAYTEXT,{'G','R','A','Y','T','E','X','T','\0'}},
00111     {TMT_COLOR,TMT_BTNTEXT,{'B','T','N','T','E','X','T','\0'}},
00112     {TMT_COLOR,TMT_INACTIVECAPTIONTEXT,{'I','N','A','C','T','I','V','E','C','A','P','T','I','O','N','T','E','X','T','\0'}},
00113     {TMT_COLOR,TMT_BTNHIGHLIGHT,{'B','T','N','H','I','G','H','L','I','G','H','T','\0'}},
00114     {TMT_COLOR,TMT_DKSHADOW3D,{'D','K','S','H','A','D','O','W','3','D','\0'}},
00115     {TMT_COLOR,TMT_LIGHT3D,{'L','I','G','H','T','3','D','\0'}},
00116     {TMT_COLOR,TMT_INFOTEXT,{'I','N','F','O','T','E','X','T','\0'}},
00117     {TMT_COLOR,TMT_INFOBK,{'I','N','F','O','B','K','\0'}},
00118     {TMT_COLOR,TMT_BUTTONALTERNATEFACE,{'B','U','T','T','O','N','A','L','T','E','R','N','A','T','E','F','A','C','E','\0'}},
00119     {TMT_COLOR,TMT_HOTTRACKING,{'H','O','T','T','R','A','C','K','I','N','G','\0'}},
00120     {TMT_COLOR,TMT_GRADIENTACTIVECAPTION,{'G','R','A','D','I','E','N','T','A','C','T','I','V','E','C','A','P','T','I','O','N','\0'}},
00121     {TMT_COLOR,TMT_GRADIENTINACTIVECAPTION,{'G','R','A','D','I','E','N','T','I','N','A','C','T','I','V','E','C','A','P','T','I','O','N','\0'}},
00122     {TMT_COLOR,TMT_MENUHILIGHT,{'M','E','N','U','H','I','L','I','G','H','T','\0'}},
00123     {TMT_COLOR,TMT_MENUBAR,{'M','E','N','U','B','A','R','\0'}},
00124     {TMT_INT,TMT_FROMHUE1,{'F','R','O','M','H','U','E','1','\0'}},
00125     {TMT_INT,TMT_FROMHUE2,{'F','R','O','M','H','U','E','2','\0'}},
00126     {TMT_INT,TMT_FROMHUE3,{'F','R','O','M','H','U','E','3','\0'}},
00127     {TMT_INT,TMT_FROMHUE4,{'F','R','O','M','H','U','E','4','\0'}},
00128     {TMT_INT,TMT_FROMHUE5,{'F','R','O','M','H','U','E','5','\0'}},
00129     {TMT_INT,TMT_TOHUE1,{'T','O','H','U','E','1','\0'}},
00130     {TMT_INT,TMT_TOHUE2,{'T','O','H','U','E','2','\0'}},
00131     {TMT_INT,TMT_TOHUE3,{'T','O','H','U','E','3','\0'}},
00132     {TMT_INT,TMT_TOHUE4,{'T','O','H','U','E','4','\0'}},
00133     {TMT_INT,TMT_TOHUE5,{'T','O','H','U','E','5','\0'}},
00134     {TMT_COLOR,TMT_FROMCOLOR1,{'F','R','O','M','C','O','L','O','R','1','\0'}},
00135     {TMT_COLOR,TMT_FROMCOLOR2,{'F','R','O','M','C','O','L','O','R','2','\0'}},
00136     {TMT_COLOR,TMT_FROMCOLOR3,{'F','R','O','M','C','O','L','O','R','3','\0'}},
00137     {TMT_COLOR,TMT_FROMCOLOR4,{'F','R','O','M','C','O','L','O','R','4','\0'}},
00138     {TMT_COLOR,TMT_FROMCOLOR5,{'F','R','O','M','C','O','L','O','R','5','\0'}},
00139     {TMT_COLOR,TMT_TOCOLOR1,{'T','O','C','O','L','O','R','1','\0'}},
00140     {TMT_COLOR,TMT_TOCOLOR2,{'T','O','C','O','L','O','R','2','\0'}},
00141     {TMT_COLOR,TMT_TOCOLOR3,{'T','O','C','O','L','O','R','3','\0'}},
00142     {TMT_COLOR,TMT_TOCOLOR4,{'T','O','C','O','L','O','R','4','\0'}},
00143     {TMT_COLOR,TMT_TOCOLOR5,{'T','O','C','O','L','O','R','5','\0'}},
00144     {TMT_BOOL,TMT_TRANSPARENT,{'T','R','A','N','S','P','A','R','E','N','T','\0'}},
00145     {TMT_BOOL,TMT_AUTOSIZE,{'A','U','T','O','S','I','Z','E','\0'}},
00146     {TMT_BOOL,TMT_BORDERONLY,{'B','O','R','D','E','R','O','N','L','Y','\0'}},
00147     {TMT_BOOL,TMT_COMPOSITED,{'C','O','M','P','O','S','I','T','E','D','\0'}},
00148     {TMT_BOOL,TMT_BGFILL,{'B','G','F','I','L','L','\0'}},
00149     {TMT_BOOL,TMT_GLYPHTRANSPARENT,{'G','L','Y','P','H','T','R','A','N','S','P','A','R','E','N','T','\0'}},
00150     {TMT_BOOL,TMT_GLYPHONLY,{'G','L','Y','P','H','O','N','L','Y','\0'}},
00151     {TMT_BOOL,TMT_ALWAYSSHOWSIZINGBAR,{'A','L','W','A','Y','S','S','H','O','W','S','I','Z','I','N','G','B','A','R','\0'}},
00152     {TMT_BOOL,TMT_MIRRORIMAGE,{'M','I','R','R','O','R','I','M','A','G','E','\0'}},
00153     {TMT_BOOL,TMT_UNIFORMSIZING,{'U','N','I','F','O','R','M','S','I','Z','I','N','G','\0'}},
00154     {TMT_BOOL,TMT_INTEGRALSIZING,{'I','N','T','E','G','R','A','L','S','I','Z','I','N','G','\0'}},
00155     {TMT_BOOL,TMT_SOURCEGROW,{'S','O','U','R','C','E','G','R','O','W','\0'}},
00156     {TMT_BOOL,TMT_SOURCESHRINK,{'S','O','U','R','C','E','S','H','R','I','N','K','\0'}},
00157     {TMT_INT,TMT_IMAGECOUNT,{'I','M','A','G','E','C','O','U','N','T','\0'}},
00158     {TMT_INT,TMT_ALPHALEVEL,{'A','L','P','H','A','L','E','V','E','L','\0'}},
00159     {TMT_INT,TMT_BORDERSIZE,{'B','O','R','D','E','R','S','I','Z','E','\0'}},
00160     {TMT_INT,TMT_ROUNDCORNERWIDTH,{'R','O','U','N','D','C','O','R','N','E','R','W','I','D','T','H','\0'}},
00161     {TMT_INT,TMT_ROUNDCORNERHEIGHT,{'R','O','U','N','D','C','O','R','N','E','R','H','E','I','G','H','T','\0'}},
00162     {TMT_INT,TMT_GRADIENTRATIO1,{'G','R','A','D','I','E','N','T','R','A','T','I','O','1','\0'}},
00163     {TMT_INT,TMT_GRADIENTRATIO2,{'G','R','A','D','I','E','N','T','R','A','T','I','O','2','\0'}},
00164     {TMT_INT,TMT_GRADIENTRATIO3,{'G','R','A','D','I','E','N','T','R','A','T','I','O','3','\0'}},
00165     {TMT_INT,TMT_GRADIENTRATIO4,{'G','R','A','D','I','E','N','T','R','A','T','I','O','4','\0'}},
00166     {TMT_INT,TMT_GRADIENTRATIO5,{'G','R','A','D','I','E','N','T','R','A','T','I','O','5','\0'}},
00167     {TMT_INT,TMT_PROGRESSCHUNKSIZE,{'P','R','O','G','R','E','S','S','C','H','U','N','K','S','I','Z','E','\0'}},
00168     {TMT_INT,TMT_PROGRESSSPACESIZE,{'P','R','O','G','R','E','S','S','S','P','A','C','E','S','I','Z','E','\0'}},
00169     {TMT_INT,TMT_SATURATION,{'S','A','T','U','R','A','T','I','O','N','\0'}},
00170     {TMT_INT,TMT_TEXTBORDERSIZE,{'T','E','X','T','B','O','R','D','E','R','S','I','Z','E','\0'}},
00171     {TMT_INT,TMT_ALPHATHRESHOLD,{'A','L','P','H','A','T','H','R','E','S','H','O','L','D','\0'}},
00172     {TMT_SIZE,TMT_WIDTH,{'W','I','D','T','H','\0'}},
00173     {TMT_SIZE,TMT_HEIGHT,{'H','E','I','G','H','T','\0'}},
00174     {TMT_INT,TMT_GLYPHINDEX,{'G','L','Y','P','H','I','N','D','E','X','\0'}},
00175     {TMT_INT,TMT_TRUESIZESTRETCHMARK,{'T','R','U','E','S','I','Z','E','S','T','R','E','T','C','H','M','A','R','K','\0'}},
00176     {TMT_INT,TMT_MINDPI1,{'M','I','N','D','P','I','1','\0'}},
00177     {TMT_INT,TMT_MINDPI2,{'M','I','N','D','P','I','2','\0'}},
00178     {TMT_INT,TMT_MINDPI3,{'M','I','N','D','P','I','3','\0'}},
00179     {TMT_INT,TMT_MINDPI4,{'M','I','N','D','P','I','4','\0'}},
00180     {TMT_INT,TMT_MINDPI5,{'M','I','N','D','P','I','5','\0'}},
00181     {TMT_FONT,TMT_GLYPHFONT,{'G','L','Y','P','H','F','O','N','T','\0'}},
00182     {TMT_FILENAME,TMT_IMAGEFILE,{'I','M','A','G','E','F','I','L','E','\0'}},
00183     {TMT_FILENAME,TMT_IMAGEFILE1,{'I','M','A','G','E','F','I','L','E','1','\0'}},
00184     {TMT_FILENAME,TMT_IMAGEFILE2,{'I','M','A','G','E','F','I','L','E','2','\0'}},
00185     {TMT_FILENAME,TMT_IMAGEFILE3,{'I','M','A','G','E','F','I','L','E','3','\0'}},
00186     {TMT_FILENAME,TMT_IMAGEFILE4,{'I','M','A','G','E','F','I','L','E','4','\0'}},
00187     {TMT_FILENAME,TMT_IMAGEFILE5,{'I','M','A','G','E','F','I','L','E','5','\0'}},
00188     {TMT_FILENAME,TMT_STOCKIMAGEFILE,{'S','T','O','C','K','I','M','A','G','E','F','I','L','E','\0'}},
00189     {TMT_FILENAME,TMT_GLYPHIMAGEFILE,{'G','L','Y','P','H','I','M','A','G','E','F','I','L','E','\0'}},
00190     {TMT_STRING,TMT_TEXT,{'T','E','X','T','\0'}},
00191     {TMT_POSITION,TMT_OFFSET,{'O','F','F','S','E','T','\0'}},
00192     {TMT_POSITION,TMT_TEXTSHADOWOFFSET,{'T','E','X','T','S','H','A','D','O','W','O','F','F','S','E','T','\0'}},
00193     {TMT_POSITION,TMT_MINSIZE,{'M','I','N','S','I','Z','E','\0'}},
00194     {TMT_POSITION,TMT_MINSIZE1,{'M','I','N','S','I','Z','E','1','\0'}},
00195     {TMT_POSITION,TMT_MINSIZE2,{'M','I','N','S','I','Z','E','2','\0'}},
00196     {TMT_POSITION,TMT_MINSIZE3,{'M','I','N','S','I','Z','E','3','\0'}},
00197     {TMT_POSITION,TMT_MINSIZE4,{'M','I','N','S','I','Z','E','4','\0'}},
00198     {TMT_POSITION,TMT_MINSIZE5,{'M','I','N','S','I','Z','E','5','\0'}},
00199     {TMT_POSITION,TMT_NORMALSIZE,{'N','O','R','M','A','L','S','I','Z','E','\0'}},
00200     {TMT_MARGINS,TMT_SIZINGMARGINS,{'S','I','Z','I','N','G','M','A','R','G','I','N','S','\0'}},
00201     {TMT_MARGINS,TMT_CONTENTMARGINS,{'C','O','N','T','E','N','T','M','A','R','G','I','N','S','\0'}},
00202     {TMT_MARGINS,TMT_CAPTIONMARGINS,{'C','A','P','T','I','O','N','M','A','R','G','I','N','S','\0'}},
00203     {TMT_COLOR,TMT_BORDERCOLOR,{'B','O','R','D','E','R','C','O','L','O','R','\0'}},
00204     {TMT_COLOR,TMT_FILLCOLOR,{'F','I','L','L','C','O','L','O','R','\0'}},
00205     {TMT_COLOR,TMT_TEXTCOLOR,{'T','E','X','T','C','O','L','O','R','\0'}},
00206     {TMT_COLOR,TMT_EDGELIGHTCOLOR,{'E','D','G','E','L','I','G','H','T','C','O','L','O','R','\0'}},
00207     {TMT_COLOR,TMT_EDGEHIGHLIGHTCOLOR,{'E','D','G','E','H','I','G','H','L','I','G','H','T','C','O','L','O','R','\0'}},
00208     {TMT_COLOR,TMT_EDGESHADOWCOLOR,{'E','D','G','E','S','H','A','D','O','W','C','O','L','O','R','\0'}},
00209     {TMT_COLOR,TMT_EDGEDKSHADOWCOLOR,{'E','D','G','E','D','K','S','H','A','D','O','W','C','O','L','O','R','\0'}},
00210     {TMT_COLOR,TMT_EDGEFILLCOLOR,{'E','D','G','E','F','I','L','L','C','O','L','O','R','\0'}},
00211     {TMT_COLOR,TMT_TRANSPARENTCOLOR,{'T','R','A','N','S','P','A','R','E','N','T','C','O','L','O','R','\0'}},
00212     {TMT_COLOR,TMT_GRADIENTCOLOR1,{'G','R','A','D','I','E','N','T','C','O','L','O','R','1','\0'}},
00213     {TMT_COLOR,TMT_GRADIENTCOLOR2,{'G','R','A','D','I','E','N','T','C','O','L','O','R','2','\0'}},
00214     {TMT_COLOR,TMT_GRADIENTCOLOR3,{'G','R','A','D','I','E','N','T','C','O','L','O','R','3','\0'}},
00215     {TMT_COLOR,TMT_GRADIENTCOLOR4,{'G','R','A','D','I','E','N','T','C','O','L','O','R','4','\0'}},
00216     {TMT_COLOR,TMT_GRADIENTCOLOR5,{'G','R','A','D','I','E','N','T','C','O','L','O','R','5','\0'}},
00217     {TMT_COLOR,TMT_SHADOWCOLOR,{'S','H','A','D','O','W','C','O','L','O','R','\0'}},
00218     {TMT_COLOR,TMT_GLOWCOLOR,{'G','L','O','W','C','O','L','O','R','\0'}},
00219     {TMT_COLOR,TMT_TEXTBORDERCOLOR,{'T','E','X','T','B','O','R','D','E','R','C','O','L','O','R','\0'}},
00220     {TMT_COLOR,TMT_TEXTSHADOWCOLOR,{'T','E','X','T','S','H','A','D','O','W','C','O','L','O','R','\0'}},
00221     {TMT_COLOR,TMT_GLYPHTEXTCOLOR,{'G','L','Y','P','H','T','E','X','T','C','O','L','O','R','\0'}},
00222     {TMT_COLOR,TMT_GLYPHTRANSPARENTCOLOR,{'G','L','Y','P','H','T','R','A','N','S','P','A','R','E','N','T','C','O','L','O','R','\0'}},
00223     {TMT_COLOR,TMT_FILLCOLORHINT,{'F','I','L','L','C','O','L','O','R','H','I','N','T','\0'}},
00224     {TMT_COLOR,TMT_BORDERCOLORHINT,{'B','O','R','D','E','R','C','O','L','O','R','H','I','N','T','\0'}},
00225     {TMT_COLOR,TMT_ACCENTCOLORHINT,{'A','C','C','E','N','T','C','O','L','O','R','H','I','N','T','\0'}},
00226     {TMT_ENUM,TMT_BGTYPE,{'B','G','T','Y','P','E','\0'}},
00227     {TMT_ENUM,TMT_BORDERTYPE,{'B','O','R','D','E','R','T','Y','P','E','\0'}},
00228     {TMT_ENUM,TMT_FILLTYPE,{'F','I','L','L','T','Y','P','E','\0'}},
00229     {TMT_ENUM,TMT_SIZINGTYPE,{'S','I','Z','I','N','G','T','Y','P','E','\0'}},
00230     {TMT_ENUM,TMT_HALIGN,{'H','A','L','I','G','N','\0'}},
00231     {TMT_ENUM,TMT_CONTENTALIGNMENT,{'C','O','N','T','E','N','T','A','L','I','G','N','M','E','N','T','\0'}},
00232     {TMT_ENUM,TMT_VALIGN,{'V','A','L','I','G','N','\0'}},
00233     {TMT_ENUM,TMT_OFFSETTYPE,{'O','F','F','S','E','T','T','Y','P','E','\0'}},
00234     {TMT_ENUM,TMT_ICONEFFECT,{'I','C','O','N','E','F','F','E','C','T','\0'}},
00235     {TMT_ENUM,TMT_TEXTSHADOWTYPE,{'T','E','X','T','S','H','A','D','O','W','T','Y','P','E','\0'}},
00236     {TMT_ENUM,TMT_IMAGELAYOUT,{'I','M','A','G','E','L','A','Y','O','U','T','\0'}},
00237     {TMT_ENUM,TMT_GLYPHTYPE,{'G','L','Y','P','H','T','Y','P','E','\0'}},
00238     {TMT_ENUM,TMT_IMAGESELECTTYPE,{'I','M','A','G','E','S','E','L','E','C','T','T','Y','P','E','\0'}},
00239     {TMT_ENUM,TMT_GLYPHFONTSIZINGTYPE,{'G','L','Y','P','H','F','O','N','T','S','I','Z','I','N','G','T','Y','P','E','\0'}},
00240     {TMT_ENUM,TMT_TRUESIZESCALINGTYPE,{'T','R','U','E','S','I','Z','E','S','C','A','L','I','N','G','T','Y','P','E','\0'}},
00241     {TMT_BOOL,TMT_USERPICTURE,{'U','S','E','R','P','I','C','T','U','R','E','\0'}},
00242     {TMT_RECT,TMT_DEFAULTPANESIZE,{'D','E','F','A','U','L','T','P','A','N','E','S','I','Z','E','\0'}},
00243     {TMT_COLOR,TMT_BLENDCOLOR,{'B','L','E','N','D','C','O','L','O','R','\0'}},
00244     {0,0,{'\0'}}
00245 };
00246 
00247 /***********************************************************************
00248  * Map strings to enumeration values
00249  * Enum,Value,ValueName
00250  */
00251 static const MSSTYLES_ENUM_MAP mapEnum[] = {
00252     {TMT_BGTYPE,BT_IMAGEFILE,{'I','M','A','G','E','F','I','L','E','\0'}},
00253     {TMT_BGTYPE,BT_BORDERFILL,{'B','O','R','D','E','R','F','I','L','L','\0'}},
00254     {TMT_BGTYPE,BT_NONE,{'N','O','N','E','\0'}},
00255     {TMT_IMAGELAYOUT,IL_VERTICAL,{'V','E','R','T','I','C','A','L','\0'}},
00256     {TMT_IMAGELAYOUT,IL_HORIZONTAL,{'H','O','R','I','Z','O','N','T','A','L','\0'}},
00257     {TMT_BORDERTYPE,BT_RECT,{'R','E','C','T','\0'}},
00258     {TMT_BORDERTYPE,BT_ROUNDRECT,{'R','O','U','N','D','R','E','C','T','\0'}},
00259     {TMT_BORDERTYPE,BT_ELLIPSE,{'E','L','L','I','P','S','E','\0'}},
00260     {TMT_FILLTYPE,FT_SOLID,{'S','O','L','I','D','\0'}},
00261     {TMT_FILLTYPE,FT_VERTGRADIENT,{'V','E','R','T','G','R','A','D','I','E','N','T','\0'}},
00262     {TMT_FILLTYPE,FT_HORZGRADIENT,{'H','O','R','Z','G','R','A','D','I','E','N','T','\0'}},
00263     {TMT_FILLTYPE,FT_RADIALGRADIENT,{'R','A','D','I','A','L','G','R','A','D','I','E','N','T','\0'}},
00264     {TMT_FILLTYPE,FT_TILEIMAGE,{'T','I','L','E','I','M','A','G','E','\0'}},
00265     {TMT_SIZINGTYPE,ST_TRUESIZE,{'T','R','U','E','S','I','Z','E','\0'}},
00266     {TMT_SIZINGTYPE,ST_STRETCH,{'S','T','R','E','T','C','H','\0'}},
00267     {TMT_SIZINGTYPE,ST_TILE,{'T','I','L','E','\0'}},
00268     {TMT_HALIGN,HA_LEFT,{'L','E','F','T','\0'}},
00269     {TMT_HALIGN,HA_CENTER,{'C','E','N','T','E','R','\0'}},
00270     {TMT_HALIGN,HA_RIGHT,{'R','I','G','H','T','\0'}},
00271     {TMT_CONTENTALIGNMENT,CA_LEFT,{'L','E','F','T','\0'}},
00272     {TMT_CONTENTALIGNMENT,CA_CENTER,{'C','E','N','T','E','R','\0'}},
00273     {TMT_CONTENTALIGNMENT,CA_RIGHT,{'R','I','G','H','T','\0'}},
00274     {TMT_VALIGN,VA_TOP,{'T','O','P','\0'}},
00275     {TMT_VALIGN,VA_CENTER,{'C','E','N','T','E','R','\0'}},
00276     {TMT_VALIGN,VA_BOTTOM,{'B','O','T','T','O','M','\0'}},
00277     {TMT_OFFSETTYPE,OT_TOPLEFT,{'T','O','P','L','E','F','T','\0'}},
00278     {TMT_OFFSETTYPE,OT_TOPRIGHT,{'T','O','P','R','I','G','H','T','\0'}},
00279     {TMT_OFFSETTYPE,OT_TOPMIDDLE,{'T','O','P','M','I','D','D','L','E','\0'}},
00280     {TMT_OFFSETTYPE,OT_BOTTOMLEFT,{'B','O','T','T','O','M','L','E','F','T','\0'}},
00281     {TMT_OFFSETTYPE,OT_BOTTOMRIGHT,{'B','O','T','T','O','M','R','I','G','H','T','\0'}},
00282     {TMT_OFFSETTYPE,OT_BOTTOMMIDDLE,{'B','O','T','T','O','M','M','I','D','D','L','E','\0'}},
00283     {TMT_OFFSETTYPE,OT_MIDDLELEFT,{'M','I','D','D','L','E','L','E','F','T','\0'}},
00284     {TMT_OFFSETTYPE,OT_MIDDLERIGHT,{'M','I','D','D','L','E','R','I','G','H','T','\0'}},
00285     {TMT_OFFSETTYPE,OT_LEFTOFCAPTION,{'L','E','F','T','O','F','C','A','P','T','I','O','N','\0'}},
00286     {TMT_OFFSETTYPE,OT_RIGHTOFCAPTION,{'R','I','G','H','T','O','F','C','A','P','T','I','O','N','\0'}},
00287     {TMT_OFFSETTYPE,OT_LEFTOFLASTBUTTON,{'L','E','F','T','O','F','L','A','S','T','B','U','T','T','O','N','\0'}},
00288     {TMT_OFFSETTYPE,OT_RIGHTOFLASTBUTTON,{'R','I','G','H','T','O','F','L','A','S','T','B','U','T','T','O','N','\0'}},
00289     {TMT_OFFSETTYPE,OT_ABOVELASTBUTTON,{'A','B','O','V','E','L','A','S','T','B','U','T','T','O','N','\0'}},
00290     {TMT_OFFSETTYPE,OT_BELOWLASTBUTTON,{'B','E','L','O','W','L','A','S','T','B','U','T','T','O','N','\0'}},
00291     {TMT_ICONEFFECT,ICE_NONE,{'N','O','N','E','\0'}},
00292     {TMT_ICONEFFECT,ICE_GLOW,{'G','L','O','W','\0'}},
00293     {TMT_ICONEFFECT,ICE_SHADOW,{'S','H','A','D','O','W','\0'}},
00294     {TMT_ICONEFFECT,ICE_PULSE,{'P','U','L','S','E','\0'}},
00295     {TMT_ICONEFFECT,ICE_ALPHA,{'A','L','P','H','A','\0'}},
00296     {TMT_TEXTSHADOWTYPE,TST_NONE,{'N','O','N','E','\0'}},
00297     {TMT_TEXTSHADOWTYPE,TST_SINGLE,{'S','I','N','G','L','E','\0'}},
00298     {TMT_TEXTSHADOWTYPE,TST_CONTINUOUS,{'C','O','N','T','I','N','U','O','U','S','\0'}},
00299     {TMT_GLYPHTYPE,GT_NONE,{'N','O','N','E','\0'}},
00300     {TMT_GLYPHTYPE,GT_IMAGEGLYPH,{'I','M','A','G','E','G','L','Y','P','H','\0'}},
00301     {TMT_GLYPHTYPE,GT_FONTGLYPH,{'F','O','N','T','G','L','Y','P','H','\0'}},
00302     {TMT_IMAGESELECTTYPE,IST_NONE,{'N','O','N','E','\0'}},
00303     {TMT_IMAGESELECTTYPE,IST_SIZE,{'S','I','Z','E','\0'}},
00304     {TMT_IMAGESELECTTYPE,IST_DPI,{'D','P','I','\0'}},
00305     {TMT_TRUESIZESCALINGTYPE,TSST_NONE,{'N','O','N','E','\0'}},
00306     {TMT_TRUESIZESCALINGTYPE,TSST_SIZE,{'S','I','Z','E','\0'}},
00307     {TMT_TRUESIZESCALINGTYPE,TSST_DPI,{'D','P','I','\0'}},
00308     {TMT_GLYPHFONTSIZINGTYPE,GFST_NONE,{'N','O','N','E','\0'}},
00309     {TMT_GLYPHFONTSIZINGTYPE,GFST_SIZE,{'S','I','Z','E','\0'}},
00310     {TMT_GLYPHFONTSIZINGTYPE,GFST_DPI,{'D','P','I','\0'}},
00311     {0,0,{'\0'}}
00312 };
00313 
00314 
00315 /***********************************************************************
00316  * Classes defined below
00317  * Defined as PartID,StateID,TextName
00318  * If StateID == 0 then its a part being defined
00319  */
00320 
00321 /* These are globals to all classes, but its treated as a separate class */
00322 static const MSSTYLES_CLASS_MAP classGlobals[] = {
00323     {GP_BORDER,0,{'B','O','R','D','E','R','\0'}},
00324     {GP_BORDER,BSS_FLAT,{'F','L','A','T','\0'}},
00325     {GP_BORDER,BSS_RAISED,{'R','A','I','S','E','D','\0'}},
00326     {GP_BORDER,BSS_SUNKEN,{'S','U','N','K','E','N','\0'}},
00327     {GP_LINEHORZ,0,{'L','I','N','E','H','O','R','Z','\0'}},
00328     {GP_LINEHORZ,LHS_FLAT,{'F','L','A','T','\0'}},
00329     {GP_LINEHORZ,LHS_RAISED,{'R','A','I','S','E','D','\0'}},
00330     {GP_LINEHORZ,LHS_SUNKEN,{'S','U','N','K','E','N','\0'}},
00331     {GP_LINEVERT,0,{'L','I','N','E','V','E','R','T','\0'}},
00332     {GP_LINEVERT,LVS_FLAT,{'F','L','A','T','\0'}},
00333     {GP_LINEVERT,LVS_RAISED,{'R','A','I','S','E','D','\0'}},
00334     {GP_LINEVERT,LVS_SUNKEN,{'S','U','N','K','E','N','\0'}},
00335     {0,0,{'\0'}}
00336 };
00337 
00338 static const MSSTYLES_CLASS_MAP classButton[] = {
00339     {BP_PUSHBUTTON,0,{'P','U','S','H','B','U','T','T','O','N','\0'}},
00340     {BP_PUSHBUTTON,PBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00341     {BP_PUSHBUTTON,PBS_HOT,{'H','O','T','\0'}},
00342     {BP_PUSHBUTTON,PBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00343     {BP_PUSHBUTTON,PBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00344     {BP_PUSHBUTTON,PBS_DEFAULTED,{'D','E','F','A','U','L','T','E','D','\0'}},
00345     {BP_RADIOBUTTON,0,{'R','A','D','I','O','B','U','T','T','O','N','\0'}},
00346     {BP_RADIOBUTTON,RBS_UNCHECKEDNORMAL,{'U','N','C','H','E','C','K','E','D','N','O','R','M','A','L','\0'}},
00347     {BP_RADIOBUTTON,RBS_UNCHECKEDHOT,{'U','N','C','H','E','C','K','E','D','H','O','T','\0'}},
00348     {BP_RADIOBUTTON,RBS_UNCHECKEDPRESSED,{'U','N','C','H','E','C','K','E','D','P','R','E','S','S','E','D','\0'}},
00349     {BP_RADIOBUTTON,RBS_UNCHECKEDDISABLED,{'U','N','C','H','E','C','K','E','D','D','I','S','A','B','L','E','D','\0'}},
00350     {BP_RADIOBUTTON,RBS_CHECKEDNORMAL,{'C','H','E','C','K','E','D','N','O','R','M','A','L','\0'}},
00351     {BP_RADIOBUTTON,RBS_CHECKEDHOT,{'C','H','E','C','K','E','D','H','O','T','\0'}},
00352     {BP_RADIOBUTTON,RBS_CHECKEDPRESSED,{'C','H','E','C','K','E','D','P','R','E','S','S','E','D','\0'}},
00353     {BP_RADIOBUTTON,RBS_CHECKEDDISABLED,{'C','H','E','C','K','E','D','D','I','S','A','B','L','E','D','\0'}},
00354     {BP_CHECKBOX,0,{'C','H','E','C','K','B','O','X','\0'}},
00355     {BP_RADIOBUTTON,CBS_UNCHECKEDNORMAL,{'U','N','C','H','E','C','K','E','D','N','O','R','M','A','L','\0'}},
00356     {BP_RADIOBUTTON,CBS_UNCHECKEDHOT,{'U','N','C','H','E','C','K','E','D','H','O','T','\0'}},
00357     {BP_RADIOBUTTON,CBS_UNCHECKEDPRESSED,{'U','N','C','H','E','C','K','E','D','P','R','E','S','S','E','D','\0'}},
00358     {BP_RADIOBUTTON,CBS_UNCHECKEDDISABLED,{'U','N','C','H','E','C','K','E','D','D','I','S','A','B','L','E','D','\0'}},
00359     {BP_RADIOBUTTON,CBS_CHECKEDNORMAL,{'C','H','E','C','K','E','D','N','O','R','M','A','L','\0'}},
00360     {BP_RADIOBUTTON,CBS_CHECKEDHOT,{'C','H','E','C','K','E','D','H','O','T','\0'}},
00361     {BP_RADIOBUTTON,CBS_CHECKEDPRESSED,{'C','H','E','C','K','E','D','P','R','E','S','S','E','D','\0'}},
00362     {BP_RADIOBUTTON,CBS_CHECKEDDISABLED,{'C','H','E','C','K','E','D','D','I','S','A','B','L','E','D','\0'}},
00363     {BP_RADIOBUTTON,CBS_MIXEDNORMAL,{'M','I','X','E','D','N','O','R','M','A','L','\0'}},
00364     {BP_RADIOBUTTON,CBS_MIXEDHOT,{'M','I','X','E','D','H','O','T','\0'}},
00365     {BP_RADIOBUTTON,CBS_MIXEDPRESSED,{'M','I','X','E','D','P','R','E','S','S','E','D','\0'}},
00366     {BP_RADIOBUTTON,CBS_MIXEDDISABLED,{'M','I','X','E','D','D','I','S','A','B','L','E','D','\0'}},
00367     {BP_GROUPBOX,0,{'G','R','O','U','P','B','O','X','\0'}},
00368     {BP_RADIOBUTTON,GBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00369     {BP_RADIOBUTTON,GBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00370     {BP_USERBUTTON,0,{'U','S','E','R','B','U','T','T','O','N','\0'}},
00371     {0,0,{'\0'}}
00372 };
00373 
00374 static const MSSTYLES_CLASS_MAP classClock[] = {
00375     {CLP_TIME,0,{'T','I','M','E','\0'}},
00376     {CLP_TIME,CLS_NORMAL,{'N','O','R','M','A','L','\0'}},
00377     {0,0,{'\0'}}
00378 };
00379 
00380 static const MSSTYLES_CLASS_MAP classCombobox[] = {
00381     {CP_DROPDOWNBUTTON,0,{'D','R','O','P','D','O','W','N','B','U','T','T','O','N','\0'}},
00382     {CP_DROPDOWNBUTTON,CBXS_NORMAL,{'N','O','R','M','A','L','\0'}},
00383     {CP_DROPDOWNBUTTON,CBXS_HOT,{'H','O','T','\0'}},
00384     {CP_DROPDOWNBUTTON,CBXS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00385     {CP_DROPDOWNBUTTON,CBXS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00386     {0,0,{'\0'}}
00387 };
00388 
00389 static const MSSTYLES_CLASS_MAP classEdit[] = {
00390     {EP_EDITTEXT,0,{'E','D','I','T','T','E','X','T','\0'}},
00391     {EP_EDITTEXT,ETS_NORMAL,{'N','O','R','M','A','L','\0'}},
00392     {EP_EDITTEXT,ETS_HOT,{'H','O','T','\0'}},
00393     {EP_EDITTEXT,ETS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00394     {EP_EDITTEXT,ETS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00395     {EP_EDITTEXT,ETS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00396     {EP_EDITTEXT,ETS_READONLY,{'R','E','A','D','O','N','L','Y','\0'}},
00397     {EP_EDITTEXT,ETS_ASSIST,{'A','S','S','I','S','T','\0'}},
00398     {EP_CARET,0,{'C','A','R','E','T','\0'}},
00399     {0,0,{'\0'}}
00400 };
00401 
00402 static const MSSTYLES_CLASS_MAP classExplorerbar[] = {
00403     {EBP_HEADERBACKGROUND,0,{'H','E','A','D','E','R','B','A','C','K','G','R','O','U','N','D','\0'}},
00404     {EBP_HEADERCLOSE,0,{'H','E','A','D','E','R','C','L','O','S','E','\0'}},
00405     {EBP_HEADERCLOSE,EBHC_NORMAL,{'N','O','R','M','A','L','\0'}},
00406     {EBP_HEADERCLOSE,EBHC_HOT,{'H','O','T','\0'}},
00407     {EBP_HEADERCLOSE,EBHC_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00408     {EBP_HEADERPIN,0,{'H','E','A','D','E','R','P','I','N','\0'}},
00409     {EBP_HEADERPIN,EBHP_NORMAL,{'N','O','R','M','A','L','\0'}},
00410     {EBP_HEADERPIN,EBHP_HOT,{'H','O','T','\0'}},
00411     {EBP_HEADERPIN,EBHP_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00412     {EBP_HEADERPIN,EBHP_SELECTEDNORMAL,{'S','E','L','E','C','T','E','D','N','O','R','M','A','L','\0'}},
00413     {EBP_HEADERPIN,EBHP_SELECTEDHOT,{'S','E','L','E','C','T','E','D','H','O','T','\0'}},
00414     {EBP_HEADERPIN,EBHP_SELECTEDPRESSED,{'S','E','L','E','C','T','E','D','P','R','E','S','S','E','D','\0'}},
00415     {EBP_IEBARMENU,0,{'I','E','B','A','R','M','E','N','U','\0'}},
00416     {EBP_IEBARMENU,EBM_NORMAL,{'N','O','R','M','A','L','\0'}},
00417     {EBP_IEBARMENU,EBM_HOT,{'H','O','T','\0'}},
00418     {EBP_IEBARMENU,EBM_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00419     {EBP_NORMALGROUPBACKGROUND,0,{'N','O','R','M','A','L','G','R','O','U','P','B','A','C','K','G','R','O','U','N','D','\0'}},
00420     {EBP_NORMALGROUPCOLLAPSE,0,{'N','O','R','M','A','L','G','R','O','U','P','C','O','L','L','A','P','S','E','\0'}},
00421     {EBP_NORMALGROUPCOLLAPSE,EBNGC_NORMAL,{'N','O','R','M','A','L','\0'}},
00422     {EBP_NORMALGROUPCOLLAPSE,EBNGC_HOT,{'H','O','T','\0'}},
00423     {EBP_NORMALGROUPCOLLAPSE,EBNGC_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00424     {EBP_NORMALGROUPEXPAND,0,{'N','O','R','M','A','L','G','R','O','U','P','E','X','P','A','N','D','\0'}},
00425     {EBP_NORMALGROUPEXPAND,EBNGE_NORMAL,{'N','O','R','M','A','L','\0'}},
00426     {EBP_NORMALGROUPEXPAND,EBNGE_HOT,{'H','O','T','\0'}},
00427     {EBP_NORMALGROUPEXPAND,EBNGE_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00428     {EBP_NORMALGROUPHEAD,0,{'N','O','R','M','A','L','G','R','O','U','P','H','E','A','D','\0'}},
00429     {EBP_SPECIALGROUPBACKGROUND,0,{'S','P','E','C','I','A','L','G','R','O','U','P','B','A','C','K','G','R','O','U','N','D','\0'}},
00430     {EBP_SPECIALGROUPCOLLAPSE,0,{'S','P','E','C','I','A','L','G','R','O','U','P','C','O','L','L','A','P','S','E','\0'}},
00431     {EBP_SPECIALGROUPCOLLAPSE,EBSGC_NORMAL,{'N','O','R','M','A','L','\0'}},
00432     {EBP_SPECIALGROUPCOLLAPSE,EBSGC_HOT,{'H','O','T','\0'}},
00433     {EBP_SPECIALGROUPCOLLAPSE,EBSGC_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00434     {EBP_SPECIALGROUPEXPAND,0,{'S','P','E','C','I','A','L','G','R','O','U','P','E','X','P','A','N','D','\0'}},
00435     {EBP_SPECIALGROUPEXPAND,EBSGE_NORMAL,{'N','O','R','M','A','L','\0'}},
00436     {EBP_SPECIALGROUPEXPAND,EBSGE_HOT,{'H','O','T','\0'}},
00437     {EBP_SPECIALGROUPEXPAND,EBSGE_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00438     {EBP_SPECIALGROUPHEAD,0,{'S','P','E','C','I','A','L','G','R','O','U','P','H','E','A','D','\0'}},
00439     {0,0,{'\0'}}
00440 };
00441 
00442 static const MSSTYLES_CLASS_MAP classHeader[] = {
00443     {HP_HEADERITEM,0,{'H','E','A','D','E','R','I','T','E','M','\0'}},
00444     {HP_HEADERITEM,HIS_NORMAL,{'N','O','R','M','A','L','\0'}},
00445     {HP_HEADERITEM,HIS_HOT,{'H','O','T','\0'}},
00446     {HP_HEADERITEM,HIS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00447     {HP_HEADERITEMLEFT,0,{'H','E','A','D','E','R','I','T','E','M','L','E','F','T','\0'}},
00448     {HP_HEADERITEMLEFT,HILS_NORMAL,{'N','O','R','M','A','L','\0'}},
00449     {HP_HEADERITEMLEFT,HILS_HOT,{'H','O','T','\0'}},
00450     {HP_HEADERITEMLEFT,HILS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00451     {HP_HEADERITEMRIGHT,0,{'H','E','A','D','E','R','I','T','E','M','R','I','G','H','T','\0'}},
00452     {HP_HEADERITEMRIGHT,HIRS_NORMAL,{'N','O','R','M','A','L','\0'}},
00453     {HP_HEADERITEMRIGHT,HIRS_HOT,{'H','O','T','\0'}},
00454     {HP_HEADERITEMRIGHT,HIRS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00455     {HP_HEADERSORTARROW,0,{'H','E','A','D','E','R','S','O','R','T','A','R','R','O','W','\0'}},
00456     {HP_HEADERSORTARROW,HSAS_SORTEDUP,{'S','O','R','T','E','D','U','P','\0'}},
00457     {HP_HEADERSORTARROW,HSAS_SORTEDDOWN,{'S','O','R','T','E','D','D','O','W','N','\0'}},
00458     {0,0,{'\0'}}
00459 };
00460 
00461 static const MSSTYLES_CLASS_MAP classListview[] = {
00462     {LVP_LISTITEM,0,{'L','I','S','T','I','T','E','M','\0'}},
00463     {LVP_LISTITEM,LIS_NORMAL,{'N','O','R','M','A','L','\0'}},
00464     {LVP_LISTITEM,LIS_HOT,{'H','O','T','\0'}},
00465     {LVP_LISTITEM,LIS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00466     {LVP_LISTITEM,LIS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00467     {LVP_LISTITEM,LIS_SELECTEDNOTFOCUS,{'S','E','L','E','C','T','E','D','N','O','T','F','O','C','U','S','\0'}},
00468     {LVP_LISTGROUP,0,{'L','I','S','T','G','R','O','U','P','\0'}},
00469     {LVP_LISTDETAIL,0,{'L','I','S','T','D','E','T','A','I','L','\0'}},
00470     {LVP_LISTSORTEDDETAIL,0,{'L','I','S','T','S','O','R','T','E','D','D','E','T','A','I','L','\0'}},
00471     {LVP_EMPTYTEXT,0,{'E','M','P','T','Y','T','E','X','T','\0'}},
00472     {0,0,{'\0'}}
00473 };
00474 
00475 static const MSSTYLES_CLASS_MAP classMenu[] = {
00476     {MP_MENUITEM,0,{'M','E','N','U','I','T','E','M','\0'}},
00477     {MP_MENUITEM,MS_NORMAL,{'N','O','R','M','A','L','\0'}},
00478     {MP_MENUITEM,MS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00479     {MP_MENUITEM,MS_DEMOTED,{'D','E','M','O','T','E','D','\0'}},
00480     {MP_MENUDROPDOWN,0,{'M','E','N','U','D','R','O','P','D','O','W','N','\0'}},
00481     {MP_MENUDROPDOWN,MS_NORMAL,{'N','O','R','M','A','L','\0'}},
00482     {MP_MENUDROPDOWN,MS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00483     {MP_MENUDROPDOWN,MS_DEMOTED,{'D','E','M','O','T','E','D','\0'}},
00484     {MP_MENUBARITEM,0,{'M','E','N','U','B','A','R','I','T','E','M','\0'}},
00485     {MP_MENUBARITEM,MS_NORMAL,{'N','O','R','M','A','L','\0'}},
00486     {MP_MENUBARITEM,MS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00487     {MP_MENUBARITEM,MS_DEMOTED,{'D','E','M','O','T','E','D','\0'}},
00488     {MP_MENUBARDROPDOWN,0,{'M','E','N','U','B','A','R','D','R','O','P','D','O','W','N','\0'}},
00489     {MP_MENUBARDROPDOWN,MS_NORMAL,{'N','O','R','M','A','L','\0'}},
00490     {MP_MENUBARDROPDOWN,MS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00491     {MP_MENUBARDROPDOWN,MS_DEMOTED,{'D','E','M','O','T','E','D','\0'}},
00492     {MP_CHEVRON,0,{'C','H','E','V','R','O','N','\0'}},
00493     {MP_CHEVRON,MS_NORMAL,{'N','O','R','M','A','L','\0'}},
00494     {MP_CHEVRON,MS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00495     {MP_CHEVRON,MS_DEMOTED,{'D','E','M','O','T','E','D','\0'}},
00496     {MP_SEPARATOR,0,{'S','E','P','A','R','A','T','O','R','\0'}},
00497     {MP_SEPARATOR,MS_NORMAL,{'N','O','R','M','A','L','\0'}},
00498     {MP_SEPARATOR,MS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00499     {MP_SEPARATOR,MS_DEMOTED,{'D','E','M','O','T','E','D','\0'}},
00500     {0,0,{'\0'}}
00501 };
00502 
00503 static const MSSTYLES_CLASS_MAP classMenuband[] = {
00504     {MDP_NEWAPPBUTTON,0,{'N','E','W','A','P','P','B','U','T','T','O','N','\0'}},
00505     {MDP_NEWAPPBUTTON,MDS_NORMAL,{'N','O','R','M','A','L','\0'}},
00506     {MDP_NEWAPPBUTTON,MDS_HOT,{'H','O','T','\0'}},
00507     {MDP_NEWAPPBUTTON,MDS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00508     {MDP_NEWAPPBUTTON,MDS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00509     {MDP_NEWAPPBUTTON,MDS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00510     {MDP_NEWAPPBUTTON,MDS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00511     {MDP_SEPERATOR,0,{'S','E','P','E','R','A','T','O','R','\0'}},
00512     {0,0,{'\0'}}
00513 };
00514 
00515 static const MSSTYLES_CLASS_MAP classPage[] = {
00516     {PGRP_UP,0,{'U','P','\0'}},
00517     {PGRP_UP,UPS_NORMAL,{'N','O','R','M','A','L','\0'}},
00518     {PGRP_UP,UPS_HOT,{'H','O','T','\0'}},
00519     {PGRP_UP,UPS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00520     {PGRP_UP,UPS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00521     {PGRP_DOWN,0,{'D','O','W','N','\0'}},
00522     {PGRP_DOWN,DNS_NORMAL,{'N','O','R','M','A','L','\0'}},
00523     {PGRP_DOWN,DNS_HOT,{'H','O','T','\0'}},
00524     {PGRP_DOWN,DNS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00525     {PGRP_DOWN,DNS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00526     {PGRP_UPHORZ,0,{'U','P','H','O','R','Z','\0'}},
00527     {PGRP_UPHORZ,UPHZS_NORMAL,{'N','O','R','M','A','L','\0'}},
00528     {PGRP_UPHORZ,UPHZS_HOT,{'H','O','T','\0'}},
00529     {PGRP_UPHORZ,UPHZS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00530     {PGRP_UPHORZ,UPHZS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00531     {PGRP_DOWNHORZ,0,{'D','O','W','N','H','O','R','Z','\0'}},
00532     {PGRP_DOWNHORZ,DNHZS_NORMAL,{'N','O','R','M','A','L','\0'}},
00533     {PGRP_DOWNHORZ,DNHZS_HOT,{'H','O','T','\0'}},
00534     {PGRP_DOWNHORZ,DNHZS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00535     {PGRP_DOWNHORZ,DNHZS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00536     {0,0,{'\0'}}
00537 };
00538 
00539 static const MSSTYLES_CLASS_MAP classProgress[] = {
00540     {PP_BAR,0,{'B','A','R','\0'}},
00541     {PP_BARVERT,0,{'B','A','R','V','E','R','T','\0'}},
00542     {PP_CHUNK,0,{'C','H','U','N','K','\0'}},
00543     {PP_CHUNKVERT,0,{'C','H','U','N','K','V','E','R','T','\0'}},
00544     {0,0,{'\0'}}
00545 };
00546 
00547 static const MSSTYLES_CLASS_MAP classRebar[] = {
00548     {RP_GRIPPER,0,{'G','R','I','P','P','E','R','\0'}},
00549     {RP_GRIPPERVERT,0,{'G','R','I','P','P','E','R','V','E','R','T','\0'}},
00550     {RP_BAND,0,{'B','A','N','D','\0'}},
00551     {RP_CHEVRON,0,{'C','H','E','V','R','O','N','\0'}},
00552     {RP_CHEVRON,CHEVS_NORMAL,{'N','O','R','M','A','L','\0'}},
00553     {RP_CHEVRON,CHEVS_HOT,{'H','O','T','\0'}},
00554     {RP_CHEVRON,CHEVS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00555     {RP_CHEVRONVERT,0,{'C','H','E','V','R','O','N','V','E','R','T','\0'}},
00556     {0,0,{'\0'}}
00557 };
00558 
00559 static const MSSTYLES_CLASS_MAP classScrollbar[] = {
00560     {SBP_ARROWBTN,0,{'A','R','R','O','W','B','T','N','\0'}},
00561     {SBP_ARROWBTN,ABS_UPNORMAL,{'U','P','N','O','R','M','A','L','\0'}},
00562     {SBP_ARROWBTN,ABS_UPHOT,{'U','P','H','O','T','\0'}},
00563     {SBP_ARROWBTN,ABS_UPPRESSED,{'U','P','P','R','E','S','S','E','D','\0'}},
00564     {SBP_ARROWBTN,ABS_UPDISABLED,{'U','P','D','I','S','A','B','L','E','D','\0'}},
00565     {SBP_ARROWBTN,ABS_DOWNNORMAL,{'D','O','W','N','N','O','R','M','A','L','\0'}},
00566     {SBP_ARROWBTN,ABS_DOWNHOT,{'D','O','W','N','H','O','T','\0'}},
00567     {SBP_ARROWBTN,ABS_DOWNPRESSED,{'D','O','W','N','P','R','E','S','S','E','D','\0'}},
00568     {SBP_ARROWBTN,ABS_DOWNDISABLED,{'D','O','W','N','D','I','S','A','B','L','E','D','\0'}},
00569     {SBP_ARROWBTN,ABS_LEFTNORMAL,{'L','E','F','T','N','O','R','M','A','L','\0'}},
00570     {SBP_ARROWBTN,ABS_LEFTHOT,{'L','E','F','T','H','O','T','\0'}},
00571     {SBP_ARROWBTN,ABS_LEFTPRESSED,{'L','E','F','T','P','R','E','S','S','E','D','\0'}},
00572     {SBP_ARROWBTN,ABS_LEFTDISABLED,{'L','E','F','T','D','I','S','A','B','L','E','D','\0'}},
00573     {SBP_ARROWBTN,ABS_RIGHTNORMAL,{'R','I','G','H','T','N','O','R','M','A','L','\0'}},
00574     {SBP_ARROWBTN,ABS_RIGHTHOT,{'R','I','G','H','T','H','O','T','\0'}},
00575     {SBP_ARROWBTN,ABS_RIGHTPRESSED,{'R','I','G','H','T','P','R','E','S','S','E','D','\0'}},
00576     {SBP_ARROWBTN,ABS_RIGHTDISABLED,{'R','I','G','H','T','D','I','S','A','B','L','E','D','\0'}},
00577     {SBP_THUMBBTNHORZ,0,{'T','H','U','M','B','B','T','N','H','O','R','Z','\0'}},
00578     {SBP_THUMBBTNHORZ,SCRBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00579     {SBP_THUMBBTNHORZ,SCRBS_HOT,{'H','O','T','\0'}},
00580     {SBP_THUMBBTNHORZ,SCRBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00581     {SBP_THUMBBTNHORZ,SCRBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00582     {SBP_THUMBBTNVERT,0,{'T','H','U','M','B','B','T','N','V','E','R','T','\0'}},
00583     {SBP_THUMBBTNVERT,SCRBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00584     {SBP_THUMBBTNVERT,SCRBS_HOT,{'H','O','T','\0'}},
00585     {SBP_THUMBBTNVERT,SCRBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00586     {SBP_THUMBBTNVERT,SCRBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00587     {SBP_LOWERTRACKHORZ,0,{'L','O','W','E','R','T','R','A','C','K','H','O','R','Z','\0'}},
00588     {SBP_LOWERTRACKHORZ,SCRBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00589     {SBP_LOWERTRACKHORZ,SCRBS_HOT,{'H','O','T','\0'}},
00590     {SBP_LOWERTRACKHORZ,SCRBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00591     {SBP_LOWERTRACKHORZ,SCRBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00592     {SBP_UPPERTRACKHORZ,0,{'U','P','P','E','R','T','R','A','C','K','H','O','R','Z','\0'}},
00593     {SBP_UPPERTRACKHORZ,SCRBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00594     {SBP_UPPERTRACKHORZ,SCRBS_HOT,{'H','O','T','\0'}},
00595     {SBP_UPPERTRACKHORZ,SCRBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00596     {SBP_UPPERTRACKHORZ,SCRBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00597     {SBP_LOWERTRACKVERT,0,{'L','O','W','E','R','T','R','A','C','K','V','E','R','T','\0'}},
00598     {SBP_LOWERTRACKVERT,SCRBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00599     {SBP_LOWERTRACKVERT,SCRBS_HOT,{'H','O','T','\0'}},
00600     {SBP_LOWERTRACKVERT,SCRBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00601     {SBP_LOWERTRACKVERT,SCRBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00602     {SBP_UPPERTRACKVERT,0,{'U','P','P','E','R','T','R','A','C','K','V','E','R','T','\0'}},
00603     {SBP_UPPERTRACKVERT,SCRBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00604     {SBP_UPPERTRACKVERT,SCRBS_HOT,{'H','O','T','\0'}},
00605     {SBP_UPPERTRACKVERT,SCRBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00606     {SBP_UPPERTRACKVERT,SCRBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00607     {SBP_GRIPPERHORZ,0,{'G','R','I','P','P','E','R','H','O','R','Z','\0'}},
00608     {SBP_GRIPPERVERT,0,{'G','R','I','P','P','E','R','V','E','R','T','\0'}},
00609     {SBP_SIZEBOX,0,{'S','I','Z','E','B','O','X','\0'}},
00610     {SBP_SIZEBOX,SZB_RIGHTALIGN,{'R','I','G','H','T','A','L','I','G','N','\0'}},
00611     {SBP_SIZEBOX,SZB_LEFTALIGN,{'L','E','F','T','A','L','I','G','N','\0'}},
00612     {0,0,{'\0'}}
00613 };
00614 
00615 static const MSSTYLES_CLASS_MAP classSpin[] = {
00616     {SPNP_UP,0,{'U','P','\0'}},
00617     {SPNP_UP,UPS_NORMAL,{'N','O','R','M','A','L','\0'}},
00618     {SPNP_UP,UPS_HOT,{'H','O','T','\0'}},
00619     {SPNP_UP,UPS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00620     {SPNP_UP,UPS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00621     {SPNP_DOWN,0,{'D','O','W','N','\0'}},
00622     {SPNP_DOWN,DNS_NORMAL,{'N','O','R','M','A','L','\0'}},
00623     {SPNP_DOWN,DNS_HOT,{'H','O','T','\0'}},
00624     {SPNP_DOWN,DNS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00625     {SPNP_DOWN,DNS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00626     {SPNP_UPHORZ,0,{'U','P','H','O','R','Z','\0'}},
00627     {SPNP_UPHORZ,UPHZS_NORMAL,{'N','O','R','M','A','L','\0'}},
00628     {SPNP_UPHORZ,UPHZS_HOT,{'H','O','T','\0'}},
00629     {SPNP_UPHORZ,UPHZS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00630     {SPNP_UPHORZ,UPHZS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00631     {SPNP_DOWNHORZ,0,{'D','O','W','N','H','O','R','Z','\0'}},
00632     {SPNP_DOWNHORZ,DNHZS_NORMAL,{'N','O','R','M','A','L','\0'}},
00633     {SPNP_DOWNHORZ,DNHZS_HOT,{'H','O','T','\0'}},
00634     {SPNP_DOWNHORZ,DNHZS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00635     {SPNP_DOWNHORZ,DNHZS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00636     {0,0,{'\0'}}
00637 };
00638 
00639 static const MSSTYLES_CLASS_MAP classStartpanel[] = {
00640     {SPP_USERPANE,0,{'U','S','E','R','P','A','N','E','\0'}},
00641     {SPP_MOREPROGRAMS,0,{'M','O','R','E','P','R','O','G','R','A','M','S','\0'}},
00642     {SPP_MOREPROGRAMSARROW,0,{'M','O','R','E','P','R','O','G','R','A','M','S','A','R','R','O','W','\0'}},
00643     {SPP_MOREPROGRAMSARROW,SPS_NORMAL,{'N','O','R','M','A','L','\0'}},
00644     {SPP_MOREPROGRAMSARROW,SPS_HOT,{'H','O','T','\0'}},
00645     {SPP_MOREPROGRAMSARROW,SPS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00646     {SPP_PROGLIST,0,{'P','R','O','G','L','I','S','T','\0'}},
00647     {SPP_PROGLISTSEPARATOR,0,{'P','R','O','G','L','I','S','T','S','E','P','A','R','A','T','O','R','\0'}},
00648     {SPP_PLACESLIST,0,{'P','L','A','C','E','S','L','I','S','T','\0'}},
00649     {SPP_PLACESLISTSEPARATOR,0,{'P','L','A','C','E','S','L','I','S','T','S','E','P','A','R','A','T','O','R','\0'}},
00650     {SPP_LOGOFF,0,{'L','O','G','O','F','F','\0'}},
00651     {SPP_LOGOFFBUTTONS,0,{'L','O','G','O','F','F','B','U','T','T','O','N','S','\0'}},
00652     {SPP_LOGOFFBUTTONS,SPLS_NORMAL,{'N','O','R','M','A','L','\0'}},
00653     {SPP_LOGOFFBUTTONS,SPLS_HOT,{'H','O','T','\0'}},
00654     {SPP_LOGOFFBUTTONS,SPLS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00655     {SPP_USERPICTURE,0,{'U','S','E','R','P','I','C','T','U','R','E','\0'}},
00656     {SPP_PREVIEW,0,{'P','R','E','V','I','E','W','\0'}},
00657     {0,0,{'\0'}}
00658 };
00659 
00660 static const MSSTYLES_CLASS_MAP classStatus[] = {
00661     {SP_PANE,0,{'P','A','N','E','\0'}},
00662     {SP_GRIPPERPANE,0,{'G','R','I','P','P','E','R','P','A','N','E','\0'}},
00663     {SP_GRIPPER,0,{'G','R','I','P','P','E','R','\0'}},
00664     {0,0,{'\0'}}
00665 };
00666 
00667 static const MSSTYLES_CLASS_MAP classTab[] = {
00668     {TABP_TABITEM,0,{'T','A','B','I','T','E','M','\0'}},
00669     {TABP_TABITEM,TIS_NORMAL,{'N','O','R','M','A','L','\0'}},
00670     {TABP_TABITEM,TIS_HOT,{'H','O','T','\0'}},
00671     {TABP_TABITEM,TIS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00672     {TABP_TABITEM,TIS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00673     {TABP_TABITEM,TIS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00674     {TABP_TABITEMLEFTEDGE,0,{'T','A','B','I','T','E','M','L','E','F','T','E','D','G','E','\0'}},
00675     {TABP_TABITEMLEFTEDGE,TILES_NORMAL,{'N','O','R','M','A','L','\0'}},
00676     {TABP_TABITEMLEFTEDGE,TILES_HOT,{'H','O','T','\0'}},
00677     {TABP_TABITEMLEFTEDGE,TILES_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00678     {TABP_TABITEMLEFTEDGE,TILES_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00679     {TABP_TABITEMLEFTEDGE,TILES_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00680     {TABP_TABITEMRIGHTEDGE,0,{'T','A','B','I','T','E','M','R','I','G','H','T','E','D','G','E','\0'}},
00681     {TABP_TABITEMRIGHTEDGE,TIRES_NORMAL,{'N','O','R','M','A','L','\0'}},
00682     {TABP_TABITEMRIGHTEDGE,TIRES_HOT,{'H','O','T','\0'}},
00683     {TABP_TABITEMRIGHTEDGE,TIRES_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00684     {TABP_TABITEMRIGHTEDGE,TIRES_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00685     {TABP_TABITEMRIGHTEDGE,TIRES_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00686     {TABP_TABITEMBOTHEDGE,0,{'T','A','B','I','T','E','M','B','O','T','H','E','D','G','E','\0'}},
00687     {TABP_TABITEMBOTHEDGE,TIBES_NORMAL,{'N','O','R','M','A','L','\0'}},
00688     {TABP_TABITEMBOTHEDGE,TIBES_HOT,{'H','O','T','\0'}},
00689     {TABP_TABITEMBOTHEDGE,TIBES_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00690     {TABP_TABITEMBOTHEDGE,TIBES_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00691     {TABP_TABITEMBOTHEDGE,TIBES_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00692     {TABP_TOPTABITEM,0,{'T','O','P','T','A','B','I','T','E','M','\0'}},
00693     {TABP_TOPTABITEM,TTIS_NORMAL,{'N','O','R','M','A','L','\0'}},
00694     {TABP_TOPTABITEM,TTIS_HOT,{'H','O','T','\0'}},
00695     {TABP_TOPTABITEM,TTIS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00696     {TABP_TOPTABITEM,TTIS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00697     {TABP_TOPTABITEM,TTIS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00698     {TABP_TOPTABITEMLEFTEDGE,0,{'T','O','P','T','A','B','I','T','E','M','L','E','F','T','E','D','G','E','\0'}},
00699     {TABP_TOPTABITEMLEFTEDGE,TTILES_NORMAL,{'N','O','R','M','A','L','\0'}},
00700     {TABP_TOPTABITEMLEFTEDGE,TTILES_HOT,{'H','O','T','\0'}},
00701     {TABP_TOPTABITEMLEFTEDGE,TTILES_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00702     {TABP_TOPTABITEMLEFTEDGE,TTILES_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00703     {TABP_TOPTABITEMLEFTEDGE,TTILES_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00704     {TABP_TOPTABITEMRIGHTEDGE,0,{'T','O','P','T','A','B','I','T','E','M','R','I','G','H','T','E','D','G','E','\0'}},
00705     {TABP_TOPTABITEMRIGHTEDGE,TTIRES_NORMAL,{'N','O','R','M','A','L','\0'}},
00706     {TABP_TOPTABITEMRIGHTEDGE,TTIRES_HOT,{'H','O','T','\0'}},
00707     {TABP_TOPTABITEMRIGHTEDGE,TTIRES_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00708     {TABP_TOPTABITEMRIGHTEDGE,TTIRES_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00709     {TABP_TOPTABITEMRIGHTEDGE,TTIRES_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00710     {TABP_TOPTABITEMBOTHEDGE,0,{'T','O','P','T','A','B','I','T','E','M','B','O','T','H','E','D','G','E','\0'}},
00711     {TABP_TOPTABITEMBOTHEDGE,TTIBES_NORMAL,{'N','O','R','M','A','L','\0'}},
00712     {TABP_TOPTABITEMBOTHEDGE,TTIBES_HOT,{'H','O','T','\0'}},
00713     {TABP_TOPTABITEMBOTHEDGE,TTIBES_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00714     {TABP_TOPTABITEMBOTHEDGE,TTIBES_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00715     {TABP_TOPTABITEMBOTHEDGE,TTIBES_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00716     {TABP_PANE,0,{'P','A','N','E','\0'}},
00717     {TABP_BODY,0,{'B','O','D','Y','\0'}},
00718     {0,0,{'\0'}}
00719 };
00720 
00721 static const MSSTYLES_CLASS_MAP classTaskband[] = {
00722     {TDP_GROUPCOUNT,0,{'G','R','O','U','P','C','O','U','N','T','\0'}},
00723     {TDP_FLASHBUTTON,0,{'F','L','A','S','H','B','U','T','T','O','N','\0'}},
00724     {TDP_FLASHBUTTONGROUPMENU,0,{'F','L','A','S','H','B','U','T','T','O','N','G','R','O','U','P','M','E','N','U','\0'}},
00725     {0,0,{'\0'}}
00726 };
00727 
00728 static const MSSTYLES_CLASS_MAP classTaskbar[] = {
00729     {TBP_BACKGROUNDBOTTOM,0,{'B','A','C','K','G','R','O','U','N','D','B','O','T','T','O','M','\0'}},
00730     {TBP_BACKGROUNDRIGHT,0,{'B','A','C','K','G','R','O','U','N','D','R','I','G','H','T','\0'}},
00731     {TBP_BACKGROUNDTOP,0,{'B','A','C','K','G','R','O','U','N','D','T','O','P','\0'}},
00732     {TBP_BACKGROUNDLEFT,0,{'B','A','C','K','G','R','O','U','N','D','L','E','F','T','\0'}},
00733     {TBP_SIZINGBARBOTTOM,0,{'S','I','Z','I','N','G','B','A','R','B','O','T','T','O','M','\0'}},
00734     {TBP_SIZINGBARRIGHT,0,{'S','I','Z','I','N','G','B','A','R','R','I','G','H','T','\0'}},
00735     {TBP_SIZINGBARTOP,0,{'S','I','Z','I','N','G','B','A','R','T','O','P','\0'}},
00736     {TBP_SIZINGBARLEFT,0,{'S','I','Z','I','N','G','B','A','R','L','E','F','T','\0'}},
00737     {0,0,{'\0'}}
00738 };
00739 
00740 static const MSSTYLES_CLASS_MAP classToolbar[] = {
00741     {TP_BUTTON,0,{'B','U','T','T','O','N','\0'}},
00742     {TP_BUTTON,TS_NORMAL,{'N','O','R','M','A','L','\0'}},
00743     {TP_BUTTON,TS_HOT,{'H','O','T','\0'}},
00744     {TP_BUTTON,TS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00745     {TP_BUTTON,TS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00746     {TP_BUTTON,TS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00747     {TP_BUTTON,TS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00748     {TP_DROPDOWNBUTTON,0,{'D','R','O','P','D','O','W','N','B','U','T','T','O','N','\0'}},
00749     {TP_DROPDOWNBUTTON,TS_NORMAL,{'N','O','R','M','A','L','\0'}},
00750     {TP_DROPDOWNBUTTON,TS_HOT,{'H','O','T','\0'}},
00751     {TP_DROPDOWNBUTTON,TS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00752     {TP_DROPDOWNBUTTON,TS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00753     {TP_DROPDOWNBUTTON,TS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00754     {TP_DROPDOWNBUTTON,TS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00755     {TP_SPLITBUTTON,0,{'S','P','L','I','T','B','U','T','T','O','N','\0'}},
00756     {TP_SPLITBUTTON,TS_NORMAL,{'N','O','R','M','A','L','\0'}},
00757     {TP_SPLITBUTTON,TS_HOT,{'H','O','T','\0'}},
00758     {TP_SPLITBUTTON,TS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00759     {TP_SPLITBUTTON,TS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00760     {TP_SPLITBUTTON,TS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00761     {TP_SPLITBUTTON,TS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00762     {TP_SPLITBUTTONDROPDOWN,0,{'S','P','L','I','T','B','U','T','T','O','N','D','R','O','P','D','O','W','N','\0'}},
00763     {TP_SPLITBUTTONDROPDOWN,TS_NORMAL,{'N','O','R','M','A','L','\0'}},
00764     {TP_SPLITBUTTONDROPDOWN,TS_HOT,{'H','O','T','\0'}},
00765     {TP_SPLITBUTTONDROPDOWN,TS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00766     {TP_SPLITBUTTONDROPDOWN,TS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00767     {TP_SPLITBUTTONDROPDOWN,TS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00768     {TP_SPLITBUTTONDROPDOWN,TS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00769     {TP_SEPARATOR,0,{'S','E','P','A','R','A','T','O','R','\0'}},
00770     {TP_SEPARATOR,TS_NORMAL,{'N','O','R','M','A','L','\0'}},
00771     {TP_SEPARATOR,TS_HOT,{'H','O','T','\0'}},
00772     {TP_SEPARATOR,TS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00773     {TP_SEPARATOR,TS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00774     {TP_SEPARATOR,TS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00775     {TP_SEPARATOR,TS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00776     {TP_SEPARATORVERT,0,{'S','E','P','A','R','A','T','O','R','V','E','R','T','\0'}},
00777     {TP_SEPARATORVERT,TS_NORMAL,{'N','O','R','M','A','L','\0'}},
00778     {TP_SEPARATORVERT,TS_HOT,{'H','O','T','\0'}},
00779     {TP_SEPARATORVERT,TS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00780     {TP_SEPARATORVERT,TS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00781     {TP_SEPARATORVERT,TS_CHECKED,{'C','H','E','C','K','E','D','\0'}},
00782     {TP_SEPARATORVERT,TS_HOTCHECKED,{'H','O','T','C','H','E','C','K','E','D','\0'}},
00783     {0,0,{'\0'}}
00784 };
00785 
00786 static const MSSTYLES_CLASS_MAP classTooltip[] = {
00787     {TTP_STANDARD,0,{'S','T','A','N','D','A','R','D','\0'}},
00788     {TTP_STANDARD,TTSS_NORMAL,{'N','O','R','M','A','L','\0'}},
00789     {TTP_STANDARD,TTSS_LINK,{'L','I','N','K','\0'}},
00790     {TTP_STANDARDTITLE,0,{'S','T','A','N','D','A','R','D','T','I','T','L','E','\0'}},
00791     {TTP_STANDARDTITLE,TTSS_NORMAL,{'N','O','R','M','A','L','\0'}},
00792     {TTP_STANDARDTITLE,TTSS_LINK,{'L','I','N','K','\0'}},
00793     {TTP_BALLOON,0,{'B','A','L','L','O','O','N','\0'}},
00794     {TTP_BALLOON,TTBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00795     {TTP_BALLOON,TTBS_LINK,{'L','I','N','K','\0'}},
00796     {TTP_BALLOONTITLE,0,{'B','A','L','L','O','O','N','T','I','T','L','E','\0'}},
00797     {TTP_BALLOONTITLE,TTBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00798     {TTP_BALLOONTITLE,TTBS_LINK,{'L','I','N','K','\0'}},
00799     {TTP_CLOSE,0,{'C','L','O','S','E','\0'}},
00800     {TTP_CLOSE,TTCS_NORMAL,{'N','O','R','M','A','L','\0'}},
00801     {TTP_CLOSE,TTCS_HOT,{'H','O','T','\0'}},
00802     {TTP_CLOSE,TTCS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00803     {0,0,{'\0'}}
00804 };
00805 
00806 static const MSSTYLES_CLASS_MAP classTrackbar[] = {
00807     {TKP_TRACK,0,{'T','R','A','C','K','\0'}},
00808     {TKP_TRACK,TRS_NORMAL,{'N','O','R','M','A','L','\0'}},
00809     {TKP_TRACKVERT,0,{'T','R','A','C','K','V','E','R','T','\0'}},
00810     {TKP_TRACKVERT,TRVS_NORMAL,{'N','O','R','M','A','L','\0'}},
00811     {TKP_THUMB,0,{'T','H','U','M','B','\0'}},
00812     {TKP_THUMB,TUS_NORMAL,{'N','O','R','M','A','L','\0'}},
00813     {TKP_THUMB,TUS_HOT,{'H','O','T','\0'}},
00814     {TKP_THUMB,TUS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00815     {TKP_THUMB,TUS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00816     {TKP_THUMB,TUS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00817     {TKP_THUMBBOTTOM,0,{'T','H','U','M','B','B','O','T','T','O','M','\0'}},
00818     {TKP_THUMBBOTTOM,TUBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00819     {TKP_THUMBBOTTOM,TUBS_HOT,{'H','O','T','\0'}},
00820     {TKP_THUMBBOTTOM,TUBS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00821     {TKP_THUMBBOTTOM,TUBS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00822     {TKP_THUMBBOTTOM,TUBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00823     {TKP_THUMBTOP,0,{'T','H','U','M','B','T','O','P','\0'}},
00824     {TKP_THUMBTOP,TUTS_NORMAL,{'N','O','R','M','A','L','\0'}},
00825     {TKP_THUMBTOP,TUTS_HOT,{'H','O','T','\0'}},
00826     {TKP_THUMBTOP,TUTS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00827     {TKP_THUMBTOP,TUTS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00828     {TKP_THUMBTOP,TUTS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00829     {TKP_THUMBVERT,0,{'T','H','U','M','B','V','E','R','T','\0'}},
00830     {TKP_THUMBVERT,TUVS_NORMAL,{'N','O','R','M','A','L','\0'}},
00831     {TKP_THUMBVERT,TUVS_HOT,{'H','O','T','\0'}},
00832     {TKP_THUMBVERT,TUVS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00833     {TKP_THUMBVERT,TUVS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00834     {TKP_THUMBVERT,TUVS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00835     {TKP_THUMBLEFT,0,{'T','H','U','M','B','L','E','F','T','\0'}},
00836     {TKP_THUMBLEFT,TUVLS_NORMAL,{'N','O','R','M','A','L','\0'}},
00837     {TKP_THUMBLEFT,TUVLS_HOT,{'H','O','T','\0'}},
00838     {TKP_THUMBLEFT,TUVLS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00839     {TKP_THUMBLEFT,TUVLS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00840     {TKP_THUMBLEFT,TUVLS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00841     {TKP_THUMBRIGHT,0,{'T','H','U','M','B','R','I','G','H','T','\0'}},
00842     {TKP_THUMBRIGHT,TUVRS_NORMAL,{'N','O','R','M','A','L','\0'}},
00843     {TKP_THUMBRIGHT,TUVRS_HOT,{'H','O','T','\0'}},
00844     {TKP_THUMBRIGHT,TUVRS_PRESSED,{'P','R','E','S','S','E','D','\0'}},
00845     {TKP_THUMBRIGHT,TUVRS_FOCUSED,{'F','O','C','U','S','E','D','\0'}},
00846     {TKP_THUMBRIGHT,TUVRS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00847     {TKP_TICS,0,{'T','I','C','S','\0'}},
00848     {TKP_TICS,TSS_NORMAL,{'N','O','R','M','A','L','\0'}},
00849     {TKP_TICSVERT,0,{'T','I','C','S','V','E','R','T','\0'}},
00850     {TKP_TICSVERT,TSVS_NORMAL,{'N','O','R','M','A','L','\0'}},
00851     {0,0,{'\0'}}
00852 };
00853 
00854 static const MSSTYLES_CLASS_MAP classTraynotify[] = {
00855     {TNP_BACKGROUND,0,{'B','A','C','K','G','R','O','U','N','D','\0'}},
00856     {TNP_ANIMBACKGROUND,0,{'A','N','I','M','B','A','C','K','G','R','O','U','N','D','\0'}},
00857     {0,0,{'\0'}}
00858 };
00859 
00860 static const MSSTYLES_CLASS_MAP classTreeview[] = {
00861     {TVP_TREEITEM,0,{'T','R','E','E','I','T','E','M','\0'}},
00862     {TVP_TREEITEM,TREIS_NORMAL,{'N','O','R','M','A','L','\0'}},
00863     {TVP_TREEITEM,TREIS_HOT,{'H','O','T','\0'}},
00864     {TVP_TREEITEM,TREIS_SELECTED,{'S','E','L','E','C','T','E','D','\0'}},
00865     {TVP_TREEITEM,TREIS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00866     {TVP_TREEITEM,TREIS_SELECTEDNOTFOCUS,{'S','E','L','E','C','T','E','D','N','O','T','F','O','C','U','S','\0'}},
00867     {TVP_GLYPH,0,{'G','L','Y','P','H','\0'}},
00868     {TVP_GLYPH,GLPS_CLOSED,{'C','L','O','S','E','D','\0'}},
00869     {TVP_GLYPH,GLPS_OPENED,{'O','P','E','N','E','D','\0'}},
00870     {TVP_BRANCH,0,{'B','R','A','N','C','H','\0'}},
00871     {0,0,{'\0'}}
00872 };
00873 
00874 static const MSSTYLES_CLASS_MAP classWindow[] = {
00875     {WP_CAPTION,0,{'C','A','P','T','I','O','N','\0'}},
00876     {WP_CAPTION,CS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00877     {WP_CAPTION,CS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00878     {WP_CAPTION,CS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00879     {WP_SMALLCAPTION,0,{'S','M','A','L','L','C','A','P','T','I','O','N','\0'}},
00880     {WP_SMALLCAPTION,CS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00881     {WP_SMALLCAPTION,CS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00882     {WP_SMALLCAPTION,CS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00883     {WP_MINCAPTION,0,{'M','I','N','C','A','P','T','I','O','N','\0'}},
00884     {WP_MINCAPTION,MNCS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00885     {WP_MINCAPTION,MNCS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00886     {WP_MINCAPTION,MNCS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00887     {WP_SMALLMINCAPTION,0,{'S','M','A','L','L','M','I','N','C','A','P','T','I','O','N','\0'}},
00888     {WP_SMALLMINCAPTION,MNCS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00889     {WP_SMALLMINCAPTION,MNCS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00890     {WP_SMALLMINCAPTION,MNCS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00891     {WP_MAXCAPTION,0,{'M','A','X','C','A','P','T','I','O','N','\0'}},
00892     {WP_MAXCAPTION,MXCS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00893     {WP_MAXCAPTION,MXCS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00894     {WP_MAXCAPTION,MXCS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00895     {WP_SMALLMAXCAPTION,0,{'S','M','A','L','L','M','A','X','C','A','P','T','I','O','N','\0'}},
00896     {WP_SMALLMAXCAPTION,MXCS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00897     {WP_SMALLMAXCAPTION,MXCS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00898     {WP_SMALLMAXCAPTION,MXCS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00899     {WP_FRAMELEFT,0,{'F','R','A','M','E','L','E','F','T','\0'}},
00900     {WP_FRAMELEFT,FS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00901     {WP_FRAMELEFT,FS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00902     {WP_FRAMERIGHT,0,{'F','R','A','M','E','R','I','G','H','T','\0'}},
00903     {WP_FRAMERIGHT,FS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00904     {WP_FRAMERIGHT,FS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00905     {WP_FRAMEBOTTOM,0,{'F','R','A','M','E','B','O','T','T','O','M','\0'}},
00906     {WP_FRAMEBOTTOM,FS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00907     {WP_FRAMEBOTTOM,FS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00908     {WP_SMALLFRAMELEFT,0,{'S','M','A','L','L','F','R','A','M','E','L','E','F','T','\0'}},
00909     {WP_SMALLFRAMELEFT,FS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00910     {WP_SMALLFRAMELEFT,FS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00911     {WP_SMALLFRAMERIGHT,0,{'S','M','A','L','L','F','R','A','M','E','R','I','G','H','T','\0'}},
00912     {WP_SMALLFRAMERIGHT,FS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00913     {WP_SMALLFRAMERIGHT,FS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00914     {WP_SMALLFRAMEBOTTOM,0,{'S','M','A','L','L','F','R','A','M','E','B','O','T','T','O','M','\0'}},
00915     {WP_SMALLFRAMEBOTTOM,FS_ACTIVE,{'A','C','T','I','V','E','\0'}},
00916     {WP_SMALLFRAMEBOTTOM,FS_INACTIVE,{'I','N','A','C','T','I','V','E','\0'}},
00917     {WP_SYSBUTTON,0,{'S','Y','S','B','U','T','T','O','N','\0'}},
00918     {WP_SYSBUTTON,SBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00919     {WP_SYSBUTTON,SBS_HOT,{'H','O','T','\0'}},
00920     {WP_SYSBUTTON,SBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00921     {WP_SYSBUTTON,SBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00922     {WP_MDISYSBUTTON,0,{'M','D','I','S','Y','S','B','U','T','T','O','N','\0'}},
00923     {WP_MDISYSBUTTON,SBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00924     {WP_MDISYSBUTTON,SBS_HOT,{'H','O','T','\0'}},
00925     {WP_MDISYSBUTTON,SBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00926     {WP_MDISYSBUTTON,SBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00927     {WP_MINBUTTON,0,{'M','I','N','B','U','T','T','O','N','\0'}},
00928     {WP_MINBUTTON,MINBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00929     {WP_MINBUTTON,MINBS_HOT,{'H','O','T','\0'}},
00930     {WP_MINBUTTON,MINBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00931     {WP_MINBUTTON,MINBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00932     {WP_MDIMINBUTTON,0,{'M','D','I','M','I','N','B','U','T','T','O','N','\0'}},
00933     {WP_MDIMINBUTTON,MINBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00934     {WP_MDIMINBUTTON,MINBS_HOT,{'H','O','T','\0'}},
00935     {WP_MDIMINBUTTON,MINBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00936     {WP_MDIMINBUTTON,MINBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00937     {WP_MAXBUTTON,0,{'M','A','X','B','U','T','T','O','N','\0'}},
00938     {WP_MAXBUTTON,MAXBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00939     {WP_MAXBUTTON,MAXBS_HOT,{'H','O','T','\0'}},
00940     {WP_MAXBUTTON,MAXBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00941     {WP_MAXBUTTON,MAXBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00942     {WP_CLOSEBUTTON,0,{'C','L','O','S','E','B','U','T','T','O','N','\0'}},
00943     {WP_CLOSEBUTTON,CBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00944     {WP_CLOSEBUTTON,CBS_HOT,{'H','O','T','\0'}},
00945     {WP_CLOSEBUTTON,CBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00946     {WP_CLOSEBUTTON,CBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00947     {WP_SMALLCLOSEBUTTON,0,{'S','M','A','L','L','C','L','O','S','E','B','U','T','T','O','N','\0'}},
00948     {WP_SMALLCLOSEBUTTON,CBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00949     {WP_SMALLCLOSEBUTTON,CBS_HOT,{'H','O','T','\0'}},
00950     {WP_SMALLCLOSEBUTTON,CBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00951     {WP_SMALLCLOSEBUTTON,CBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00952     {WP_MDICLOSEBUTTON,0,{'M','D','I','C','L','O','S','E','B','U','T','T','O','N','\0'}},
00953     {WP_MDICLOSEBUTTON,CBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00954     {WP_MDICLOSEBUTTON,CBS_HOT,{'H','O','T','\0'}},
00955     {WP_MDICLOSEBUTTON,CBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00956     {WP_MDICLOSEBUTTON,CBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00957     {WP_RESTOREBUTTON,0,{'R','E','S','T','O','R','E','B','U','T','T','O','N','\0'}},
00958     {WP_RESTOREBUTTON,RBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00959     {WP_RESTOREBUTTON,RBS_HOT,{'H','O','T','\0'}},
00960     {WP_RESTOREBUTTON,RBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00961     {WP_RESTOREBUTTON,RBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00962     {WP_MDIRESTOREBUTTON,0,{'M','D','I','R','E','S','T','O','R','E','B','U','T','T','O','N','\0'}},
00963     {WP_MDIRESTOREBUTTON,RBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00964     {WP_MDIRESTOREBUTTON,RBS_HOT,{'H','O','T','\0'}},
00965     {WP_MDIRESTOREBUTTON,RBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00966     {WP_MDIRESTOREBUTTON,RBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00967     {WP_HELPBUTTON,0,{'H','E','L','P','B','U','T','T','O','N','\0'}},
00968     {WP_HELPBUTTON,HBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00969     {WP_HELPBUTTON,HBS_HOT,{'H','O','T','\0'}},
00970     {WP_HELPBUTTON,HBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00971     {WP_HELPBUTTON,HBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00972     {WP_MDIHELPBUTTON,0,{'M','D','I','H','E','L','P','B','U','T','T','O','N','\0'}},
00973     {WP_MDIHELPBUTTON,HBS_NORMAL,{'N','O','R','M','A','L','\0'}},
00974     {WP_MDIHELPBUTTON,HBS_HOT,{'H','O','T','\0'}},
00975     {WP_MDIHELPBUTTON,HBS_PUSHED,{'P','U','S','H','E','D','\0'}},
00976     {WP_MDIHELPBUTTON,HBS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00977     {WP_HORZSCROLL,0,{'H','O','R','Z','S','C','R','O','L','L','\0'}},
00978     {WP_HORZSCROLL,HSS_NORMAL,{'N','O','R','M','A','L','\0'}},
00979     {WP_HORZSCROLL,HSS_HOT,{'H','O','T','\0'}},
00980     {WP_HORZSCROLL,HSS_PUSHED,{'P','U','S','H','E','D','\0'}},
00981     {WP_HORZSCROLL,HSS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00982     {WP_HORZTHUMB,0,{'H','O','R','Z','T','H','U','M','B','\0'}},
00983     {WP_HORZTHUMB,HTS_NORMAL,{'N','O','R','M','A','L','\0'}},
00984     {WP_HORZTHUMB,HTS_HOT,{'H','O','T','\0'}},
00985     {WP_HORZTHUMB,HTS_PUSHED,{'P','U','S','H','E','D','\0'}},
00986     {WP_HORZTHUMB,HTS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00987     {WP_VERTSCROLL,0,{'V','E','R','T','S','C','R','O','L','L','\0'}},
00988     {WP_VERTSCROLL,VSS_NORMAL,{'N','O','R','M','A','L','\0'}},
00989     {WP_VERTSCROLL,VSS_HOT,{'H','O','T','\0'}},
00990     {WP_VERTSCROLL,VSS_PUSHED,{'P','U','S','H','E','D','\0'}},
00991     {WP_VERTSCROLL,VSS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00992     {WP_VERTTHUMB,0,{'V','E','R','T','T','H','U','M','B','\0'}},
00993     {WP_VERTTHUMB,VTS_NORMAL,{'N','O','R','M','A','L','\0'}},
00994     {WP_VERTTHUMB,VTS_HOT,{'H','O','T','\0'}},
00995     {WP_VERTTHUMB,VTS_PUSHED,{'P','U','S','H','E','D','\0'}},
00996     {WP_VERTTHUMB,VTS_DISABLED,{'D','I','S','A','B','L','E','D','\0'}},
00997     {WP_DIALOG,0,{'D','I','A','L','O','G','\0'}},
00998     {WP_CAPTIONSIZINGTEMPLATE,0,{'C','A','P','T','I','O','N','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
00999     {WP_SMALLCAPTIONSIZINGTEMPLATE,0,{'S','M','A','L','L','C','A','P','T','I','O','N','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01000     {WP_FRAMELEFTSIZINGTEMPLATE,0,{'F','R','A','M','E','L','E','F','T','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01001     {WP_SMALLFRAMELEFTSIZINGTEMPLATE,0,{'S','M','A','L','L','F','R','A','M','E','L','E','F','T','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01002     {WP_FRAMERIGHTSIZINGTEMPLATE,0,{'F','R','A','M','E','R','I','G','H','T','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01003     {WP_SMALLFRAMERIGHTSIZINGTEMPLATE,0,{'S','M','A','L','L','F','R','A','M','E','R','I','G','H','T','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01004     {WP_FRAMEBOTTOMSIZINGTEMPLATE,0,{'F','R','A','M','E','B','O','T','T','O','M','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01005     {WP_SMALLFRAMEBOTTOMSIZINGTEMPLATE,0,{'S','M','A','L','L','F','R','A','M','E','B','O','T','T','O','M','S','I','Z','I','N','G','T','E','M','P','L','A','T','E','\0'}},
01006     {0,0,{'\0'}}
01007 };
01008 
01009 /* Map class names to part/state maps */
01010 static const MSSTYLES_CLASS_NAME mapClass[] = {
01011     {classGlobals, {'G','L','O','B','A','L','S','\0'}},
01012     {classButton, {'B','U','T','T','O','N','\0'}},
01013     {classClock, {'C','L','O','C','K','\0'}},
01014     {classCombobox, {'C','O','M','B','O','B','O','X','\0'}},
01015     {classEdit, {'E','D','I','T','\0'}},
01016     {classExplorerbar, {'E','X','P','L','O','R','E','R','B','A','R','\0'}},
01017     {classHeader, {'H','E','A','D','E','R','\0'}},
01018     {classListview, {'L','I','S','T','V','I','E','W','\0'}},
01019     {classMenu, {'M','E','N','U','\0'}},
01020     {classMenuband, {'M','E','N','U','B','A','N','D','\0'}},
01021     {classPage, {'P','A','G','E','\0'}},
01022     {classProgress, {'P','R','O','G','R','E','S','S','\0'}},
01023     {classRebar, {'R','E','B','A','R','\0'}},
01024     {classScrollbar, {'S','C','R','O','L','L','B','A','R','\0'}},
01025     {classSpin, {'S','P','I','N','\0'}},
01026     {classStartpanel, {'S','T','A','R','T','P','A','N','E','L','\0'}},
01027     {classStatus, {'S','T','A','T','U','S','\0'}},
01028     {classTab, {'T','A','B','\0'}},
01029     {classTaskband, {'T','A','S','K','B','A','N','D','\0'}},
01030     {classTaskbar, {'T','A','S','K','B','A','R','\0'}},
01031     {classToolbar, {'T','O','O','L','B','A','R','\0'}},
01032     {classTooltip, {'T','O','O','L','T','I','P','\0'}},
01033     {classTrackbar, {'T','R','A','C','K','B','A','R','\0'}},
01034     {classTraynotify, {'T','R','A','Y','N','O','T','I','F','Y','\0'}},
01035     {classTreeview, {'T','R','E','E','V','I','E','W','\0'}},
01036     {classWindow, {'W','I','N','D','O','W','\0'}}
01037 };
01038 
01039 BOOL MSSTYLES_LookupPartState(LPCWSTR pszClass, LPCWSTR pszPart, LPCWSTR pszState, int *iPartId, int *iStateId)
01040 {
01041     unsigned int i;
01042     const MSSTYLES_CLASS_MAP *map;
01043 
01044     *iPartId = 0;
01045     *iStateId = 0;
01046     for(i=0; i<sizeof(mapClass)/sizeof(mapClass[0]); i++) {
01047         if(!lstrcmpiW(mapClass[i].pszClass, pszClass)) {
01048             map = mapClass[i].lpMap;
01049             if(pszPart) {
01050                 do {
01051                     if(map->dwStateID == 0 && !lstrcmpiW(map->szName, pszPart)) {
01052                         *iPartId = map->dwPartID;
01053                         break;
01054                     }
01055                 } while(*((++map)->szName));
01056             }
01057             if(pszState) {
01058                 if(pszPart && *iPartId == 0) {
01059                     break;
01060                 }
01061                 do {
01062                     if(pszPart) {
01063                         if(map->dwPartID == *iPartId && !lstrcmpiW(map->szName, pszState)) {
01064                             *iStateId = map->dwStateID;
01065                             break;
01066                         }
01067                     }
01068                     else {
01069                         if(!lstrcmpiW(map->szName, pszState)) {
01070                             *iStateId = map->dwStateID;
01071                             break;
01072                         }
01073                     }
01074                 } while(*((++map)->szName));
01075             }
01076             break;
01077         }
01078     }
01079     if(pszPart && *iPartId == 0) {
01080         return FALSE;
01081     }
01082     if(pszState && *iStateId == 0) {
01083         return FALSE;
01084     }
01085     return TRUE;
01086 }
01087 
01088 /**********************************************************************
01089  *      MSSTYLES_LookupProperty
01090  *
01091  * Find a property ID from name
01092  *
01093  * PARAMS
01094  *     pszPropertyName     Name of property to lookup
01095  *     dwPrimitive         Location to store primitive type of property
01096  *     dwId                Location to store ID of property
01097  *
01098  * RETURNS
01099  *     FALSE if value is not found, TRUE otherwise
01100  */
01101 BOOL MSSTYLES_LookupProperty(LPCWSTR pszPropertyName, int *dwPrimitive, int *dwId)
01102 {
01103     DWORD item = 0;
01104     do {
01105         if(!lstrcmpiW(mapProperty[item].szPropertyName, pszPropertyName)) {
01106             if(dwPrimitive) *dwPrimitive = mapProperty[item].dwPrimitiveType;
01107             if(dwId) *dwId = mapProperty[item].dwPropertyID;
01108             return TRUE;
01109         }
01110     } while(*mapProperty[++item].szPropertyName);
01111     return FALSE;
01112 }
01113 
01114 /**********************************************************************
01115  *      MSSTYLES_LookupEnum
01116  *
01117  * Lookup the value for an enumeration
01118  *
01119  * PARAMS
01120  *     pszValueName        Value name to lookup
01121  *     dwEnum              Enumeration property ID to search
01122  *     dwValue             Location to store value
01123  *
01124  * RETURNS
01125  *     FALSE if value is not found, TRUE otherwise
01126  */
01127 BOOL MSSTYLES_LookupEnum(LPCWSTR pszValueName, int dwEnum, int *dwValue)
01128 {
01129     DWORD item = 0;
01130     /* Locate the enum block */
01131     while(*mapEnum[item].szValueName && mapEnum[item].dwEnum != dwEnum) item++;
01132     /* Now find the value in that block */
01133     while(*mapEnum[item].szValueName && mapEnum[item].dwEnum == dwEnum) {
01134         if(!lstrcmpiW(mapEnum[item].szValueName, pszValueName)) {
01135             if(dwValue) *dwValue = mapEnum[item].dwValue;
01136             return TRUE;
01137         }
01138         item++;
01139     }
01140     return FALSE;
01141 }

Generated on Sat May 26 2012 04:25:22 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.