Files
Leviathan/Library/External/XTToolkitPro/include/SkinFramework/XTPSkinManagerSchemaCodes.h
T
2026-06-01 12:46:52 +02:00

1143 lines
42 KiB
C

// XTPSkinManagerSchemaCodes.h
//
// This file is a part of the XTREME SKINFRAMEWORK MFC class library.
// (c)1998-2013 Codejock Software, All Rights Reserved.
//
// THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
// RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
// CONSENT OF CODEJOCK SOFTWARE.
//
// THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
// IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
// YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
// SINGLE COMPUTER.
//
// CONTACT INFORMATION:
// support@codejock.com
// http://www.codejock.com
//
/////////////////////////////////////////////////////////////////////////////
#ifndef XTPSkinManagerSchema2_h__
#define XTPSkinManagerSchema2_h__
/*
The previous method of getting macro values from the header file
was smart and concise. Though hardly readable and not working for VS2012
(with __VSSYM32_H__ defined)
The issue is that SF code is using 'Tmschema.h' definitions, that came with WinXP
New theme api is defined in 'vssym32.h' which is not supported at the moment.
New approach is straightforward and portable, but verbose and not optimized.
Can be optimized in favor of speed using binary search.
*/
struct TMS_SCHEMA_ENTRY {
TCHAR *str;
int n;
};
static struct TMS_SCHEMA_ENTRY classAndPartsCodes[] =
{
// CJ
_T("Globals"), 1,
_T("Documentation"), 2,
_T("SysMetrics"), 3,
_T("ListBox"), 4,
_T("Dialog"), 5,
// Tmsschema.h
_T("WINDOW"), 6,
_T("WINDOW_CAPTION"), 1,
_T("WINDOW_SMALLCAPTION"), 2,
_T("WINDOW_MINCAPTION"), 3,
_T("WINDOW_SMALLMINCAPTION"), 4,
_T("WINDOW_MAXCAPTION"), 5,
_T("WINDOW_SMALLMAXCAPTION"), 6,
_T("WINDOW_FRAMELEFT"), 7,
_T("WINDOW_FRAMERIGHT"), 8,
_T("WINDOW_FRAMEBOTTOM"), 9,
_T("WINDOW_SMALLFRAMELEFT"), 10,
_T("WINDOW_SMALLFRAMERIGHT"), 11,
_T("WINDOW_SMALLFRAMEBOTTOM"), 12,
//---- window frame buttons ----
_T("WINDOW_SYSBUTTON"), 13,
_T("WINDOW_MDISYSBUTTON"), 14,
_T("WINDOW_MINBUTTON"), 15,
_T("WINDOW_MDIMINBUTTON"), 16,
_T("WINDOW_MAXBUTTON"), 17,
_T("WINDOW_CLOSEBUTTON"), 18,
_T("WINDOW_SMALLCLOSEBUTTON"), 19,
_T("WINDOW_MDICLOSEBUTTON"), 20,
_T("WINDOW_RESTOREBUTTON"), 21,
_T("WINDOW_MDIRESTOREBUTTON"), 22,
_T("WINDOW_HELPBUTTON"), 23,
_T("WINDOW_MDIHELPBUTTON"), 24,
//---- scrollbars
_T("WINDOW_HORZSCROLL"), 25,
_T("WINDOW_HORZTHUMB"), 26,
_T("WINDOW_VERTSCROLL"), 27,
_T("WINDOW_VERTTHUMB"), 28,
//---- dialog ----
_T("WINDOW_DIALOG"), 29,
//---- hit-test templates ---
_T("WINDOW_CAPTIONSIZINGTEMPLATE"), 30,
_T("WINDOW_SMALLCAPTIONSIZINGTEMPLATE"), 31,
_T("WINDOW_FRAMELEFTSIZINGTEMPLATE"), 32,
_T("WINDOW_SMALLFRAMELEFTSIZINGTEMPLATE"), 33,
_T("WINDOW_FRAMERIGHTSIZINGTEMPLATE"), 34,
_T("WINDOW_SMALLFRAMERIGHTSIZINGTEMPLATE"), 35,
_T("WINDOW_FRAMEBOTTOMSIZINGTEMPLATE"), 36,
_T("WINDOW_SMALLFRAMEBOTTOMSIZINGTEMPLATE"),37,
_T("BUTTON"), 7,
_T("BUTTON_PUSHBUTTON"), 1,
_T("BUTTON_RADIOBUTTON"), 2,
_T("BUTTON_CHECKBOX"), 3,
_T("BUTTON_GROUPBOX"), 4,
_T("BUTTON_GROUPBOX"), 5,
_T("REBAR"), 8,
_T("REBAR_GRIPPER"), 1,
_T("REBAR_GRIPPERVERT"), 2,
_T("REBAR_BAND"), 3,
_T("REBAR_CHEVRON"), 4,
_T("REBAR_CHEVRONVERT"), 5,
_T("TOOLBAR"), 9,
_T("TOOLBAR_BUTTON"), 1,
_T("TOOLBAR_DROPDOWNBUTTON"), 2,
_T("TOOLBAR_SPLITBUTTON"), 3,
_T("TOOLBAR_SPLITBUTTONDROPDOWN"), 4,
_T("TOOLBAR_SEPARATOR"), 5,
_T("TOOLBAR_SEPARATORVERT"), 6,
_T("STATUS"), 10,
_T("STATUS_PANE"), 1,
_T("STATUS_GRIPPERPANE"), 2,
_T("STATUS_GRIPPER"), 3,
_T("MENU"), 11,
_T("MENU_MENUITEM"), 1,
_T("MENU_MENUDROPDOWN"), 2,
_T("MENU_MENUBARITEM"), 3,
_T("MENU_MENUBARDROPDOWN"), 4,
_T("MENU_CHEVRON"), 5,
_T("MENU_SEPARATOR"), 6,
_T("MENU_BARBACKGROUND"), 7,
_T("MENU_BARITEM"), 8,
_T("MENU_POPUPBACKGROUND"), 9,
_T("MENU_POPUPBORDERS"), 10,
_T("MENU_POPUPCHECK"), 11,
_T("MENU_POPUPCHECKBACKGROUND"),12,
_T("MENU_POPUPGUTTER"), 13,
_T("MENU_POPUPITEM"), 14,
_T("MENU_POPUPSEPARATOR"), 15,
_T("MENU_POPUPSUBMENU"), 16,
_T("MENU_SYSTEMCLOSE"), 17,
_T("MENU_SYSTEMMAXIMIZE"), 18,
_T("MENU_SYSTEMMINIMIZE"), 19,
_T("MENU_SYSTEMRESTORE"), 20,
_T("LISTVIEW"), 12,
_T("LISTVIEW_LISTITEM"), 1,
_T("LISTVIEW_LISTGROUP"), 2,
_T("LISTVIEW_LISTDETAIL"), 3,
_T("LISTVIEW_LISTSORTEDDETAIL"),4,
_T("LISTVIEW_EMPTYTEXT"), 5,
_T("HEADER"), 13,
_T("HEADER_HEADERITEM"), 1,
_T("HEADER_HEADERITEMLEFT"), 2,
_T("HEADER_HEADERITEMRIGHT"), 3,
_T("HEADER_HEADERSORTARROW"), 4,
_T("PROGRESS"), 14,
_T("PROGRESS_BAR"), 1,
_T("PROGRESS_BARVERT"), 2,
_T("PROGRESS_CHUNK"), 3,
_T("PROGRESS_CHUNKVERT"), 4,
_T("TAB"), 15,
_T("TAB_TABITEM"), 1,
_T("TAB_TABITEMLEFTEDGE"), 2,
_T("TAB_TABITEMRIGHTEDGE"), 3,
_T("TAB_TABITEMBOTHEDGE"), 4,
_T("TAB_TOPTABITEM"), 5,
_T("TAB_TOPTABITEMLEFTEDGE"), 6,
_T("TAB_TOPTABITEMRIGHTEDGE"), 7,
_T("TAB_TOPTABITEMBOTHEDGE"), 8,
_T("TAB_PANE"), 9,
_T("TAB_BODY"), 10,
_T("TRACKBAR"), 16,
_T("TRACKBAR_TRACK"), 1,
_T("TRACKBAR_TRACKVERT"), 2,
_T("TRACKBAR_THUMB"), 3,
_T("TRACKBAR_THUMBBOTTOM"), 4,
_T("TRACKBAR_THUMBTOP"), 5,
_T("TRACKBAR_THUMBVERT"), 6,
_T("TRACKBAR_THUMBLEFT"), 7,
_T("TRACKBAR_THUMBRIGHT"), 8,
_T("TRACKBAR_TICS"), 9,
_T("TRACKBAR_TICSVERT"), 10,
_T("TOOLTIP"), 17,
_T("TOOLTIP_STANDARD"), 1,
_T("TOOLTIP_STANDARDTITLE"), 2,
_T("TOOLTIP_BALLOON"), 3,
_T("TOOLTIP_BALLOONTITLE"), 4,
_T("TOOLTIP_CLOSE"), 5,
_T("TREEVIEW"), 18,
_T("TREEVIEW_TREEITEM"), 1,
_T("TREEVIEW_GLYPH"), 2,
_T("TREEVIEW_BRANCH"), 3,
_T("SPIN"), 19,
_T("SPIN_UP"), 1,
_T("SPIN_DOWN"), 2,
_T("SPIN_UPHORZ"), 3,
_T("SPIN_DOWNHORZ"), 4,
_T("PAGE"), 20,
_T("PAGE_UP"), 1,
_T("PAGE_DOWN"), 2,
_T("PAGE_UPHORZ"), 3,
_T("PAGE_DOWNHORZ"), 4,
_T("SCROLLBAR"), 21,
_T("SCROLLBAR_ARROWBTN"), 1,
_T("SCROLLBAR_THUMBBTNHORZ"), 2,
_T("SCROLLBAR_THUMBBTNVERT"), 3,
_T("SCROLLBAR_LOWERTRACKHORZ"), 4,
_T("SCROLLBAR_UPPERTRACKHORZ"), 5,
_T("SCROLLBAR_LOWERTRACKVERT"), 6,
_T("SCROLLBAR_UPPERTRACKVERT"), 7,
_T("SCROLLBAR_GRIPPERHORZ"), 8,
_T("SCROLLBAR_GRIPPERVERT"), 9,
_T("SCROLLBAR_SIZEBOX"), 10,
_T("EDIT"), 22,
_T("EDIT_EDITTEXT"), 1,
_T("EDIT_CARET"), 2,
_T("COMBOBOX"), 23,
_T("COMBOBOX_DROPDOWNBUTTON"), 1,
_T("CLOCK"), 24,
_T("CLOCK_TIME"), 1,
_T("TRAYNOTIFY"), 25,
_T("TRAYNOTIFY_BACKGROUND"), 1,
_T("TRAYNOTIFY_ANIMBACKGROUND"),2,
_T("TASKBAR"), 26,
_T("TASKBAR_BACKGROUNDBOTTOM"), 1,
_T("TASKBAR_BACKGROUNDRIGHT"), 2,
_T("TASKBAR_BACKGROUNDTOP"), 3,
_T("TASKBAR_BACKGROUNDLEFT"), 4,
_T("TASKBAR_SIZINGBARBOTTOM"), 5,
_T("TASKBAR_SIZINGBARRIGHT"), 6,
_T("TASKBAR_SIZINGBARTOP"), 7,
_T("TASKBAR_SIZINGBARLEFT"), 8,
_T("TASKBAND"), 27,
_T("TASKBAND_GROUPCOUNT"), 1,
_T("TASKBAND_FLASHBUTTON"), 2,
_T("TASKBAND_FLASHBUTTONGROUPMENU"), 3,
_T("STARTPANEL"), 28,
_T("STARTPANEL_USERPANE"), 1,
_T("STARTPANEL_MOREPROGRAMS"), 2,
_T("STARTPANEL_MOREPROGRAMSARROW"), 3,
_T("STARTPANEL_PROGLIST"), 4,
_T("STARTPANEL_PROGLISTSEPARATOR"), 5,
_T("STARTPANEL_PLACESLIST"), 6,
_T("STARTPANEL_PLACESLISTSEPARATOR"), 7,
_T("STARTPANEL_LOGOFF"), 8,
_T("STARTPANEL_LOGOFFBUTTONS"), 9,
_T("STARTPANEL_USERPICTURE"), 10,
_T("STARTPANEL_PREVIEW"), 11,
_T("EXPLORERBAR"), 29,
_T("EXPLORERBAR_HEADERBACKGROUND"), 1,
_T("EXPLORERBAR_HEADERCLOSE"), 2,
_T("EXPLORERBAR_HEADERPIN"), 3,
_T("EXPLORERBAR_IEBARMENU"), 4,
_T("EXPLORERBAR_NORMALGROUPBACKGROUND"), 5,
_T("EXPLORERBAR_NORMALGROUPCOLLAPSE"), 6,
_T("EXPLORERBAR_NORMALGROUPEXPAND"), 7,
_T("EXPLORERBAR_NORMALGROUPHEAD"), 8,
_T("EXPLORERBAR_SPECIALGROUPBACKGROUND"), 9,
_T("EXPLORERBAR_SPECIALGROUPCOLLAPSE"), 10,
_T("EXPLORERBAR_SPECIALGROUPEXPAND"), 11,
_T("EXPLORERBAR_SPECIALGROUPHEAD"), 12,
_T("MENUBAND"), 30,
_T("MENUBAND_NEWAPPBUTTON"), 1,
_T("MENUBAND_SEPERATOR"), 2,
0,0
};
static struct TMS_SCHEMA_ENTRY enumCodes[] =
{
_T("BGTYPE_IMAGEFILE"), 0,
_T("BGTYPE_BORDERFILL"), 1,
_T("BGTYPE_NONE"), 2,
_T("IMAGELAYOUT_VERTICAL"), 0,
_T("IMAGELAYOUT_HORIZONTAL"), 1,
_T("BORDERTYPE_RECT"), 0,
_T("BORDERTYPE_ROUNDRECT"), 1,
_T("BORDERTYPE_ELLIPSE"), 2,
_T("FILLTYPE_SOLID"), 0,
_T("FILLTYPE_VERTGRADIENT"), 1,
_T("FILLTYPE_HORZGRADIENT"), 2,
_T("FILLTYPE_RADIALGRADIENT"), 3,
_T("FILLTYPE_TILEIMAGE"), 4,
_T("SIZINGTYPE_TRUESIZE"), 0,
_T("SIZINGTYPE_STRETCH"), 1,
_T("SIZINGTYPE_TILE"), 2,
_T("HALIGN_LEFT"), 0,
_T("HALIGN_CENTER"), 1,
_T("HALIGN_RIGHT"), 2,
_T("CONTENTALIGNMENT_LEFT"), 0,
_T("CONTENTALIGNMENT_CENTER"), 1,
_T("CONTENTALIGNMENT_RIGHT"), 2,
_T("VALIGN_TOP"), 0,
_T("VALIGN_CENTER"), 1,
_T("VALIGN_BOTTOM"), 2,
_T("OFFSETTYPE_TOPLEFT"), 0,
_T("OFFSETTYPE_TOPRIGHT"), 1,
_T("OFFSETTYPE_TOPMIDDLE"), 2,
_T("OFFSETTYPE_BOTTOMLEFT"), 3,
_T("OFFSETTYPE_BOTTOMRIGHT"), 4,
_T("OFFSETTYPE_BOTTOMMIDDLE"), 5,
_T("OFFSETTYPE_MIDDLELEFT"), 6,
_T("OFFSETTYPE_MIDDLERIGHT"), 7,
_T("OFFSETTYPE_LEFTOFCAPTION"), 8,
_T("OFFSETTYPE_RIGHTOFCAPTION"), 9,
_T("OFFSETTYPE_LEFTOFLASTBUTTON"), 10,
_T("OFFSETTYPE_RIGHTOFLASTBUTTON"), 11,
_T("OFFSETTYPE_ABOVELASTBUTTON"), 12,
_T("OFFSETTYPE_BELOWLASTBUTTON"), 13,
_T("ICONEFFECT_NONE"), 0,
_T("ICONEFFECT_GLOW"), 1,
_T("ICONEFFECT_SHADOW"), 2,
_T("ICONEFFECT_PULSE"), 3,
_T("ICONEFFECT_ALPHA"), 4,
_T("TEXTSHADOWTYPE_NONE"), 0,
_T("TEXTSHADOWTYPE_SINGLE"), 1,
_T("TEXTSHADOWTYPE_CONTINUOUS"),2,
_T("GLYPHTYPE_NONE"), 0,
_T("GLYPHTYPE_IMAGEGLYPH"), 1,
_T("GLYPHTYPE_FONTGLYPH"), 2,
_T("IMAGESELECTTYPE_NONE"), 0,
_T("IMAGESELECTTYPE_SIZE"), 1,
_T("IMAGESELECTTYPE_DPI"), 2,
_T("TRUESIZESCALINGTYPE_NONE"), 0,
_T("TRUESIZESCALINGTYPE_SIZE"), 1,
_T("TRUESIZESCALINGTYPE_DPI"), 2,
_T("GLYPHFONTSIZINGTYPE_NONE"), 0,
_T("GLYPHFONTSIZINGTYPE_SIZE"), 1,
_T("GLYPHFONTSIZINGTYPE_DPI"), 2,
0,0
};
static struct TMS_SCHEMA_ENTRY stateCodes[] =
{
_T("FRAME_ACTIVE"), 1,
_T("FRAME_INACTIVE"), 2,
_T("CAPTION_ACTIVE"), 1,
_T("CAPTION_INACTIVE"), 2,
_T("CAPTION_DISABLED"), 3,
_T("MAXCAPTION_ACTIVE"), 1,
_T("MAXCAPTION_INACTIVE"), 2,
_T("MAXCAPTION_DISABLED"), 3,
_T("MINCAPTION_ACTIVE"), 1,
_T("MINCAPTION_INACTIVE"), 2,
_T("MINCAPTION_DISABLED"), 3,
_T("HORZSCROLL_NORMAL"), 1,
_T("HORZSCROLL_HOT"), 2,
_T("HORZSCROLL_PUSHED"), 3,
_T("HORZSCROLL_DISABLED"), 4,
_T("HORZTHUMB_NORMAL"), 1,
_T("HORZTHUMB_HOT"), 2,
_T("HORZTHUMB_PUSHED"), 3,
_T("HORZTHUMB_DISABLED"), 4,
_T("VERTSCROLL_NORMAL"), 1,
_T("VERTSCROLL_HOT"), 2,
_T("VERTSCROLL_PUSHED"), 3,
_T("VERTSCROLL_DISABLED"), 4,
_T("VERTTHUMB_NORMAL"), 1,
_T("VERTTHUMB_HOT"), 2,
_T("VERTTHUMB_PUSHED"), 3,
_T("VERTTHUMB_DISABLED"), 4,
_T("SYSBUTTON_NORMAL"), 1,
_T("SYSBUTTON_HOT"), 2,
_T("SYSBUTTON_PUSHED"), 3,
_T("SYSBUTTON_DISABLED"), 4,
_T("MINBUTTON_NORMAL"), 1,
_T("MINBUTTON_HOT"), 2,
_T("MINBUTTON_PUSHED"), 3,
_T("MINBUTTON_DISABLED"), 4,
_T("MAXBUTTON_NORMAL"), 1,
_T("MAXBUTTON_HOT"), 2,
_T("MAXBUTTON_PUSHED"), 3,
_T("MAXBUTTON_DISABLED"), 4,
_T("RESTOREBUTTON_NORMAL"), 1,
_T("RESTOREBUTTON_HOT"), 2,
_T("RESTOREBUTTON_PUSHED"), 3,
_T("RESTOREBUTTON_DISABLED"), 4,
_T("HELPBUTTON_NORMAL"), 1,
_T("HELPBUTTON_HOT"), 2,
_T("HELPBUTTON_PUSHED"), 3,
_T("HELPBUTTON_DISABLED"), 4,
_T("CLOSEBUTTON_NORMAL"), 1,
_T("CLOSEBUTTON_HOT"), 2,
_T("CLOSEBUTTON_PUSHED"), 3,
_T("CLOSEBUTTON_DISABLED"), 4,
_T("PUSHBUTTON_NORMAL"), 1,
_T("PUSHBUTTON_HOT"), 2,
_T("PUSHBUTTON_PRESSED"), 3,
_T("PUSHBUTTON_DISABLED"), 4,
_T("PUSHBUTTON_DEFAULTED"), 5,
_T("RADIOBUTTON_UNCHECKEDNORMAL"), 1,
_T("RADIOBUTTON_UNCHECKEDHOT"), 2,
_T("RADIOBUTTON_UNCHECKEDPRESSED"), 3,
_T("RADIOBUTTON_UNCHECKEDDISABLED"),4,
_T("RADIOBUTTON_CHECKEDNORMAL"), 5,
_T("RADIOBUTTON_CHECKEDHOT"), 6,
_T("RADIOBUTTON_CHECKEDPRESSED"), 7,
_T("RADIOBUTTON_CHECKEDDISABLED"), 8,
_T("CHECKBOX_UNCHECKEDNORMAL"), 1,
_T("CHECKBOX_UNCHECKEDHOT"), 2,
_T("CHECKBOX_UNCHECKEDPRESSED"), 3,
_T("CHECKBOX_UNCHECKEDDISABLED"), 4,
_T("CHECKBOX_CHECKEDNORMAL"), 5,
_T("CHECKBOX_CHECKEDHOT"), 6,
_T("CHECKBOX_CHECKEDPRESSED"), 7,
_T("CHECKBOX_CHECKEDDISABLED"), 8,
_T("CHECKBOX_MIXEDNORMAL"), 9,
_T("CHECKBOX_MIXEDHOT"), 10,
_T("CHECKBOX_MIXEDPRESSED"), 11,
_T("CHECKBOX_MIXEDDISABLED"), 12,
_T("GROUPBOX_NORMAL"), 1,
_T("GROUPBOX_DISABLED"), 2,
//---------------------------------------------------------------------------------------
// "Rebar" Parts & States
//---------------------------------------------------------------------------------------
_T("CHEVRON_NORMAL"), 1,
_T("CHEVRON_HOT"), 2,
_T("CHEVRON_PRESSED"), 3,
//---------------------------------------------------------------------------------------
// "Toolbar" Parts & States
//---------------------------------------------------------------------------------------
_T("TOOLBAR_NORMAL"), 1,
_T("TOOLBAR_HOT"), 2,
_T("TOOLBAR_PRESSED"), 3,
_T("TOOLBAR_DISABLED"), 4,
_T("TOOLBAR_CHECKED"), 5,
_T("TOOLBAR_HOTCHECKED"), 6,
//---------------------------------------------------------------------------------------
// "Menu" Parts & States
//---------------------------------------------------------------------------------------
_T("MENU_NORMAL"), 1,
_T("MENU_SELECTED"), 2,
_T("MENU_DEMOTED"), 3,
_T("BARBACKGROUND_ACTIVE"), 1,
_T("BARBACKGROUND_INACTIVE"), 2,
_T("POPUPCHECK_CHECKMARKNORMAL"), 1,
_T("POPUPCHECK_CHECKMARKDISABLED"), 2,
_T("POPUPCHECK_BULLETNORMAL"), 3,
_T("POPUPCHECK_BULLETDISABLED"), 4,
_T("POPUPCHECKBACKGROUND_DISABLED"), 1,
_T("POPUPCHECKBACKGROUND_NORMAL"), 2,
_T("POPUPCHECKBACKGROUND_BITMAP"), 3,
_T("POPUPITEM_NORMAL"), 1,
_T("POPUPITEM_HOT"), 2,
_T("POPUPITEM_DISABLED"), 3,
_T("POPUPITEM_DISABLEDHOT"), 4,
_T("POPUPSUBMENU_NORMAL"), 1,
_T("POPUPSUBMENU_DISABLED"), 2,
//---------------------------------------------------------------------------------------
// "ListView" Parts & States
//---------------------------------------------------------------------------------------
_T("LISTITEM_NORMAL"), 1,
_T("LISTITEM_HOT"), 2,
_T("LISTITEM_SELECTED"), 3,
_T("LISTITEM_DISABLED"), 4,
_T("LISTITEM_SELECTEDNOTFOCUS"),5,
//---------------------------------------------------------------------------------------
// "Header" Parts & States
//---------------------------------------------------------------------------------------
_T("HEADERITEM_NORMAL"), 1,
_T("HEADERITEM_HOT"), 2,
_T("HEADERITEM_PRESSED"), 3,
_T("HEADERITEMLEFT_NORMAL"), 1,
_T("HEADERITEMLEFT_HOT"), 2,
_T("HEADERITEMLEFT_PRESSED"), 3,
_T("HEADERITEMRIGHT_NORMAL"), 1,
_T("HEADERITEMRIGHT_HOT"), 2,
_T("HEADERITEMRIGHT_PRESSED"), 3,
_T("HEADERSORTARROW_SORTEDUP"), 1,
_T("HEADERSORTARROW_SORTEDDOWN"), 2,
//---------------------------------------------------------------------------------------
// "Tab" Parts & States
//---------------------------------------------------------------------------------------
_T("TABITEM_NORMAL"), 1,
_T("TABITEM_HOT"), 2,
_T("TABITEM_SELECTED"), 3,
_T("TABITEM_DISABLED"), 4,
_T("TABITEM_FOCUSED"), 5,
_T("TABITEMLEFTEDGE_NORMAL"), 1,
_T("TABITEMLEFTEDGE_HOT"), 2,
_T("TABITEMLEFTEDGE_SELECTED"), 3,
_T("TABITEMLEFTEDGE_DISABLED"), 4,
_T("TABITEMLEFTEDGE_FOCUSED"), 5,
_T("TABITEMRIGHTEDGE_NORMAL"), 1,
_T("TABITEMRIGHTEDGE_HOT"), 2,
_T("TABITEMRIGHTEDGE_SELECTED"), 3,
_T("TABITEMRIGHTEDGE_DISABLED"), 4,
_T("TABITEMRIGHTEDGE_FOCUSED"), 5,
_T("TABITEMBOTHEDGES_NORMAL"), 1,
_T("TABITEMBOTHEDGES_HOT"), 2,
_T("TABITEMBOTHEDGES_SELECTED"), 3,
_T("TABITEMBOTHEDGES_DISABLED"), 4,
_T("TABITEMBOTHEDGES_FOCUSED"), 5,
_T("TOPTABITEM_NORMAL"), 1,
_T("TOPTABITEM_HOT"), 2,
_T("TOPTABITEM_SELECTED"), 3,
_T("TOPTABITEM_DISABLED"), 4,
_T("TOPTABITEM_FOCUSED"), 5,
_T("TOPTABITEMLEFTEDGE_NORMAL"), 1,
_T("TOPTABITEMLEFTEDGE_HOT"), 2,
_T("TOPTABITEMLEFTEDGE_SELECTED"), 3,
_T("TOPTABITEMLEFTEDGE_DISABLED"), 4,
_T("TOPTABITEMLEFTEDGE_FOCUSED"), 5,
_T("TOPTABITEMRIGHTEDGE_NORMAL"), 1,
_T("TOPTABITEMRIGHTEDGE_HOT"), 2,
_T("TOPTABITEMRIGHTEDGE_SELECTED"), 3,
_T("TOPTABITEMRIGHTEDGE_DISABLED"), 4,
_T("TOPTABITEMRIGHTEDGE_FOCUSED"), 5,
_T("TOPTABITEMBOTHEDGES_NORMAL"), 1,
_T("TOPTABITEMBOTHEDGES_HOT"), 2,
_T("TOPTABITEMBOTHEDGES_SELECTED"), 3,
_T("TOPTABITEMBOTHEDGES_DISABLED"), 4,
_T("TOPTABITEMBOTHEDGES_FOCUSED"), 5,
//---------------------------------------------------------------------------------------
// "Trackbar" Parts & States
//---------------------------------------------------------------------------------------
_T("TRACKBAR_NORMAL"), 1,
_T("TRACK_NORMAL"), 1,
_T("TRACKVERT_NORMAL"), 1,
_T("THUMB_NORMAL"), 1,
_T("THUMB_HOT"), 2,
_T("THUMB_PRESSED"), 3,
_T("THUMB_FOCUSED"), 4,
_T("THUMB_DISABLED"), 5,
_T("THUMBBOTTOM_NORMAL"), 1,
_T("THUMBBOTTOM_HOT"), 2,
_T("THUMBBOTTOM_PRESSED"), 3,
_T("THUMBBOTTOM_FOCUSED"), 4,
_T("THUMBBOTTOM_DISABLED"), 5,
_T("THUMBTOP_NORMAL"), 1,
_T("THUMBTOP_HOT"), 2,
_T("THUMBTOP_PRESSED"), 3,
_T("THUMBTOP_FOCUSED"), 4,
_T("THUMBTOP_DISABLED"), 5,
_T("THUMBVERT_NORMAL"), 1,
_T("THUMBVERT_HOT"), 2,
_T("THUMBVERT_PRESSED"), 3,
_T("THUMBVERT_FOCUSED"), 4,
_T("THUMBVERT_DISABLED"), 5,
_T("THUMBLEFT_NORMAL"), 1,
_T("THUMBLEFT_HOT"), 2,
_T("THUMBLEFT_PRESSED"), 3,
_T("THUMBLEFT_FOCUSED"), 4,
_T("THUMBLEFT_DISABLED"), 5,
_T("THUMBRIGHT_NORMAL"), 1,
_T("THUMBRIGHT_HOT"), 2,
_T("THUMBRIGHT_PRESSED"), 3,
_T("THUMBRIGHT_FOCUSED"), 4,
_T("THUMBRIGHT_DISABLED"), 5,
_T("TICS_NORMAL"), 1,
_T("TICSVERT_NORMAL"), 1,
//---------------------------------------------------------------------------------------
// "Tooltips" Parts & States
//---------------------------------------------------------------------------------------
_T("CLOSE_NORMAL"), 1,
_T("CLOSE_HOT"), 2,
_T("CLOSE_PRESSED"), 3,
_T("STANDARD_NORMAL"), 1,
_T("STANDARD_LINK"), 2,
_T("BALLOON_NORMAL"), 1,
_T("BALLOON_LINK"), 2,
//---------------------------------------------------------------------------------------
// "TreeView" Parts & States
//---------------------------------------------------------------------------------------
_T("TREEITEM_NORMAL"), 1,
_T("TREEITEM_HOT"), 2,
_T("TREEITEM_SELECTED"), 3,
_T("TREEITEM_DISABLED"), 4,
_T("TREEITEM_SELECTEDNOTFOCUS"), 5,
_T("GLYPH_CLOSED"), 1,
_T("GLYPH_OPENED"), 2,
//---------------------------------------------------------------------------------------
// "Spin" Parts & States
//---------------------------------------------------------------------------------------
_T("UP_NORMAL"), 1,
_T("UP_HOT"), 2,
_T("UP_PRESSED"), 3,
_T("UP_DISABLED"), 4,
_T("DOWN_NORMAL"), 1,
_T("DOWN_HOT"), 2,
_T("DOWN_PRESSED"), 3,
_T("DOWN_DISABLED"), 4,
_T("UPHORZ_NORMAL"), 1,
_T("UPHORZ_HOT"), 2,
_T("UPHORZ_PRESSED"), 3,
_T("UPHORZ_DISABLED"), 4,
_T("DOWNHORZ_NORMAL"), 1,
_T("DOWNHORZ_HOT"), 2,
_T("DOWNHORZ_PRESSED"), 3,
_T("DOWNHORZ_DISABLED"), 4,
//---------------------------------------------------------------------------------------
// "Scrollbar" Parts & States
//---------------------------------------------------------------------------------------
_T("ARROWBTN_UPNORMAL"), 1,
_T("ARROWBTN_UPHOT"), 2,
_T("ARROWBTN_UPPRESSED"), 3,
_T("ARROWBTN_UPDISABLED"), 4,
_T("ARROWBTN_DOWNNORMAL"), 5,
_T("ARROWBTN_DOWNHOT"), 6,
_T("ARROWBTN_DOWNPRESSED"), 7,
_T("ARROWBTN_DOWNDISABLED"), 8,
_T("ARROWBTN_LEFTNORMAL"), 9,
_T("ARROWBTN_LEFTHOT"), 10,
_T("ARROWBTN_LEFTPRESSED"), 11,
_T("ARROWBTN_LEFTDISABLED"), 12,
_T("ARROWBTN_RIGHTNORMAL"), 13,
_T("ARROWBTN_RIGHTHOT"), 14,
_T("ARROWBTN_RIGHTPRESSED"), 15,
_T("ARROWBTN_RIGHTDISABLED"), 16,
_T("SCROLLBAR_NORMAL"), 1,
_T("SCROLLBAR_HOT"), 2,
_T("SCROLLBAR_PRESSED"), 3,
_T("SCROLLBAR_DISABLED"), 4,
_T("SCROLLBAR_ACTIVE"), 5,
_T("SIZEBOX_RIGHTALIGN"), 1,
_T("SIZEBOX_LEFTALIGN"), 2,
//---------------------------------------------------------------------------------------
// "Edit" Parts & States
//---------------------------------------------------------------------------------------
_T("EDITTEXT_NORMAL"), 1,
_T("EDITTEXT_HOT"), 2,
_T("EDITTEXT_SELECTED"), 3,
_T("EDITTEXT_DISABLED"), 4,
_T("EDITTEXT_FOCUSED"), 5,
_T("EDITTEXT_READONLY"), 6,
_T("EDITTEXT_ASSIST"), 7,
//---------------------------------------------------------------------------------------
// "ComboBox" Parts & States
//---------------------------------------------------------------------------------------
_T("COMBOBOX_NORMAL"), 1,
_T("COMBOBOX_HOT"), 2,
_T("COMBOBOX_PRESSED"), 3,
_T("COMBOBOX_DISABLED"), 4,
//---------------------------------------------------------------------------------------
// "Taskbar Clock" Parts & States
//---------------------------------------------------------------------------------------
_T("CLOCK_NORMAL"), 1,
//---------------------------------------------------------------------------------------
// "StartPanel" Parts & States
//---------------------------------------------------------------------------------------
_T("MOREPROGRAMSARROW_NORMAL"), 1,
_T("MOREPROGRAMSARROW_HOT"), 2,
_T("MOREPROGRAMSARROW_PRESSED"), 3,
_T("LOGOFFBUTTONS_NORMAL"), 1,
_T("LOGOFFBUTTONS_HOT"), 2,
_T("LOGOFFBUTTONS_PRESSED"), 3,
//---------------------------------------------------------------------------------------
// "ExplorerBar" Parts & States
//---------------------------------------------------------------------------------------
_T("HEADERCLOSE_NORMAL"), 1,
_T("HEADERCLOSE_HOT"), 2,
_T("HEADERCLOSE_PRESSED"), 3,
_T("HEADERPIN_NORMAL"), 1,
_T("HEADERPIN_HOT"), 2,
_T("HEADERPIN_PRESSED"), 3,
_T("HEADERPIN_SELECTEDNORMAL"), 4,
_T("HEADERPIN_SELECTEDHOT"), 5,
_T("HEADERPIN_SELECTEDPRESSED"), 6,
_T("IEBARMENU_NORMAL"), 1,
_T("IEBARMENU_HOT"), 2,
_T("IEBARMENU_PRESSED"), 3,
_T("NORMALGROUPCOLLAPSE_NORMAL"), 1,
_T("NORMALGROUPCOLLAPSE_HOT"), 2,
_T("NORMALGROUPCOLLAPSE_PRESSED"), 3,
_T("NORMALGROUPEXPAND_NORMAL"), 1,
_T("NORMALGROUPEXPAND_HOT"), 2,
_T("NORMALGROUPEXPAND_PRESSED"), 3,
_T("SPECIALGROUPCOLLAPSE_NORMAL"), 1,
_T("SPECIALGROUPCOLLAPSE_HOT"), 2,
_T("SPECIALGROUPCOLLAPSE_PRESSED"), 3,
_T("SPECIALGROUPEXPAND_NORMAL"), 1,
_T("SPECIALGROUPEXPAND_HOT"), 2,
_T("SPECIALGROUPEXPAND_PRESSED"), 3,
//---------------------------------------------------------------------------------------
// "TaskBand" Parts & States
//---------------------------------------------------------------------------------------
_T("MENUBAND_NORMAL"), 1,
_T("MENUBAND_HOT"), 2,
_T("MENUBAND_PRESSED"), 3,
_T("MENUBAND_DISABLED"), 4,
_T("MENUBAND_CHECKED"), 5,
_T("MENUBAND_HOTCHECKED"), 6,
0,0
};
//////////////////////////////////////////////////////////////////////////
// Property Codes. The actual number goes without the last digit.
// The last digit is a value from XTPSkinManagerProperty
//////////////////////////////////////////////////////////////////////////
#define PROPERY_N(n,t) (n*10+t)
#ifdef TM_PROP
#undef TM_PROP
#endif
#ifdef UNICODE
#define TM_PROP(val, prefix, name, primval) L"P_"##L#name, PROPERY_N(val, XTP_SKINPROPERTY_##primval),
#else
#define TM_PROP(val, prefix, name, primval) "P_"###name, PROPERY_N(val, XTP_SKINPROPERTY_##primval),
#endif
static struct TMS_SCHEMA_ENTRY propertyCodes[] =
{
// here goes blind copy from 'Tmschema.h'
//---- primitive types ----
TM_PROP(201, TMT, STRING, STRING)
TM_PROP(202, TMT, INT, INT)
TM_PROP(203, TMT, BOOL, BOOL)
TM_PROP(204, TMT, COLOR, COLOR)
TM_PROP(205, TMT, MARGINS, MARGINS)
TM_PROP(206, TMT, FILENAME, FILENAME)
TM_PROP(207, TMT, SIZE, SIZE)
TM_PROP(208, TMT, POSITION, POSITION)
TM_PROP(209, TMT, RECT, RECT)
TM_PROP(210, TMT, FONT, FONT)
TM_PROP(211, TMT, INTLIST, INTLIST)
//---- special misc. properties ----
TM_PROP(401, TMT, COLORSCHEMES, STRING)
TM_PROP(402, TMT, SIZES, STRING)
TM_PROP(403, TMT, CHARSET, INT)
//---- [documentation] properties ----
TM_PROP(601, TMT, DISPLAYNAME, STRING)
TM_PROP(602, TMT, TOOLTIP, STRING)
TM_PROP(603, TMT, COMPANY, STRING)
TM_PROP(604, TMT, AUTHOR, STRING)
TM_PROP(605, TMT, COPYRIGHT, STRING)
TM_PROP(606, TMT, URL, STRING)
TM_PROP(607, TMT, VERSION, STRING)
TM_PROP(608, TMT, DESCRIPTION, STRING)
//---- theme metrics: fonts ----
TM_PROP(801, TMT, CAPTIONFONT, FONT)
TM_PROP(802, TMT, SMALLCAPTIONFONT, FONT)
TM_PROP(803, TMT, MENUFONT, FONT)
TM_PROP(804, TMT, STATUSFONT, FONT)
TM_PROP(805, TMT, MSGBOXFONT, FONT)
TM_PROP(806, TMT, ICONTITLEFONT, FONT)
//---- theme metrics: bools ----
TM_PROP(1001, TMT, FLATMENUS, BOOL)
//---- theme metrics: sizes ----
TM_PROP(1201, TMT, SIZINGBORDERWIDTH, SIZE)
TM_PROP(1202, TMT, SCROLLBARWIDTH, SIZE)
TM_PROP(1203, TMT, SCROLLBARHEIGHT, SIZE)
TM_PROP(1204, TMT, CAPTIONBARWIDTH, SIZE)
TM_PROP(1205, TMT, CAPTIONBARHEIGHT, SIZE)
TM_PROP(1206, TMT, SMCAPTIONBARWIDTH, SIZE)
TM_PROP(1207, TMT, SMCAPTIONBARHEIGHT, SIZE)
TM_PROP(1208, TMT, MENUBARWIDTH, SIZE)
TM_PROP(1209, TMT, MENUBARHEIGHT, SIZE)
//---- theme metrics: ints ----
TM_PROP(1301, TMT, MINCOLORDEPTH, INT)
//---- theme metrics: strings ----
TM_PROP(1401, TMT, CSSNAME, STRING)
TM_PROP(1402, TMT, XMLNAME, STRING)
//---- theme metrics: colors ----
TM_PROP(1601, TMT, SCROLLBAR, COLOR)
TM_PROP(1602, TMT, BACKGROUND, COLOR)
TM_PROP(1603, TMT, ACTIVECAPTION, COLOR)
TM_PROP(1604, TMT, INACTIVECAPTION, COLOR)
TM_PROP(1605, TMT, MENU, COLOR)
TM_PROP(1606, TMT, WINDOW, COLOR)
TM_PROP(1607, TMT, WINDOWFRAME, COLOR)
TM_PROP(1608, TMT, MENUTEXT, COLOR)
TM_PROP(1609, TMT, WINDOWTEXT, COLOR)
TM_PROP(1610, TMT, CAPTIONTEXT, COLOR)
TM_PROP(1611, TMT, ACTIVEBORDER, COLOR)
TM_PROP(1612, TMT, INACTIVEBORDER, COLOR)
TM_PROP(1613, TMT, APPWORKSPACE, COLOR)
TM_PROP(1614, TMT, HIGHLIGHT, COLOR)
TM_PROP(1615, TMT, HIGHLIGHTTEXT, COLOR)
TM_PROP(1616, TMT, BTNFACE, COLOR)
TM_PROP(1617, TMT, BTNSHADOW, COLOR)
TM_PROP(1618, TMT, GRAYTEXT, COLOR)
TM_PROP(1619, TMT, BTNTEXT, COLOR)
TM_PROP(1620, TMT, INACTIVECAPTIONTEXT, COLOR)
TM_PROP(1621, TMT, BTNHIGHLIGHT, COLOR)
TM_PROP(1622, TMT, DKSHADOW3D, COLOR)
TM_PROP(1623, TMT, LIGHT3D, COLOR)
TM_PROP(1624, TMT, INFOTEXT, COLOR)
TM_PROP(1625, TMT, INFOBK, COLOR)
TM_PROP(1626, TMT, BUTTONALTERNATEFACE, COLOR)
TM_PROP(1627, TMT, HOTTRACKING, COLOR)
TM_PROP(1628, TMT, GRADIENTACTIVECAPTION, COLOR)
TM_PROP(1629, TMT, GRADIENTINACTIVECAPTION, COLOR)
TM_PROP(1630, TMT, MENUHILIGHT, COLOR)
TM_PROP(1631, TMT, MENUBAR, COLOR)
//---- hue substitutions ----
TM_PROP(1801, TMT, FROMHUE1, INT)
TM_PROP(1802, TMT, FROMHUE2, INT)
TM_PROP(1803, TMT, FROMHUE3, INT)
TM_PROP(1804, TMT, FROMHUE4, INT)
TM_PROP(1805, TMT, FROMHUE5, INT)
TM_PROP(1806, TMT, TOHUE1, INT)
TM_PROP(1807, TMT, TOHUE2, INT)
TM_PROP(1808, TMT, TOHUE3, INT)
TM_PROP(1809, TMT, TOHUE4, INT)
TM_PROP(1810, TMT, TOHUE5, INT)
//---- color substitutions ----
TM_PROP(2001, TMT, FROMCOLOR1, COLOR)
TM_PROP(2002, TMT, FROMCOLOR2, COLOR)
TM_PROP(2003, TMT, FROMCOLOR3, COLOR)
TM_PROP(2004, TMT, FROMCOLOR4, COLOR)
TM_PROP(2005, TMT, FROMCOLOR5, COLOR)
TM_PROP(2006, TMT, TOCOLOR1, COLOR)
TM_PROP(2007, TMT, TOCOLOR2, COLOR)
TM_PROP(2008, TMT, TOCOLOR3, COLOR)
TM_PROP(2009, TMT, TOCOLOR4, COLOR)
TM_PROP(2010, TMT, TOCOLOR5, COLOR)
//---- rendering BOOL properties ----
TM_PROP(2201, TMT, TRANSPARENT, BOOL) // image has transparent areas (see TransparentColor)
TM_PROP(2202, TMT, AUTOSIZE, BOOL) // if TRUE, nonclient caption width varies with text extent
TM_PROP(2203, TMT, BORDERONLY, BOOL) // only draw the border area of the image
TM_PROP(2204, TMT, COMPOSITED, BOOL) // control will handle the composite drawing
TM_PROP(2205, TMT, BGFILL, BOOL) // if TRUE, TRUESIZE images should be drawn on bg fill
TM_PROP(2206, TMT, GLYPHTRANSPARENT, BOOL) // glyph has transparent areas (see GlyphTransparentColor)
TM_PROP(2207, TMT, GLYPHONLY, BOOL) // only draw glyph (not background)
TM_PROP(2208, TMT, ALWAYSSHOWSIZINGBAR, BOOL)
TM_PROP(2209, TMT, MIRRORIMAGE, BOOL) // default=TRUE means image gets mirrored in RTL (Mirror) windows
TM_PROP(2210, TMT, UNIFORMSIZING, BOOL) // if TRUE, height & width must be uniformly sized
TM_PROP(2211, TMT, INTEGRALSIZING, BOOL) // for TRUESIZE and Border sizing; if TRUE, factor must be integer
TM_PROP(2212, TMT, SOURCEGROW, BOOL) // if TRUE, will scale up src image when needed
TM_PROP(2213, TMT, SOURCESHRINK, BOOL) // if TRUE, will scale down src image when needed
//---- rendering INT properties ----
TM_PROP(2401, TMT, IMAGECOUNT, INT) // the number of state images in an imagefile
TM_PROP(2402, TMT, ALPHALEVEL, INT) // (0-255) alpha value for an icon (DrawThemeIcon part)
TM_PROP(2403, TMT, BORDERSIZE, INT) // the size of the border line for bgtype=BorderFill
TM_PROP(2404, TMT, ROUNDCORNERWIDTH, INT) // (0-100) % of roundness for rounded rects
TM_PROP(2405, TMT, ROUNDCORNERHEIGHT, INT) // (0-100) % of roundness for rounded rects
TM_PROP(2406, TMT, GRADIENTRATIO1, INT) // (0-255) - amt of gradient color 1 to use (all must total=255)
TM_PROP(2407, TMT, GRADIENTRATIO2, INT) // (0-255) - amt of gradient color 2 to use (all must total=255)
TM_PROP(2408, TMT, GRADIENTRATIO3, INT) // (0-255) - amt of gradient color 3 to use (all must total = 255)
TM_PROP(2409, TMT, GRADIENTRATIO4, INT) // (0-255) - amt of gradient color 4 to use (all must total=255)
TM_PROP(2410, TMT, GRADIENTRATIO5, INT) // (0-255) - amt of gradient color 5 to use (all must total=255)
TM_PROP(2411, TMT, PROGRESSCHUNKSIZE, INT) // size of progress control chunks
TM_PROP(2412, TMT, PROGRESSSPACESIZE, INT) // size of progress control spaces
TM_PROP(2413, TMT, SATURATION, INT) // (0-255) amt of saturation for DrawThemeIcon() part
TM_PROP(2414, TMT, TEXTBORDERSIZE, INT) // size of border around text chars
TM_PROP(2415, TMT, ALPHATHRESHOLD, INT) // (0-255) the min. alpha value of a pixel that is solid
TM_PROP(2416, TMT, WIDTH, SIZE) // custom window prop: size of part (min. window)
TM_PROP(2417, TMT, HEIGHT, SIZE) // custom window prop: size of part (min. window)
TM_PROP(2418, TMT, GLYPHINDEX, INT) // for font-based glyphs, the char index into the font
TM_PROP(2419, TMT, TRUESIZESTRETCHMARK, INT) // stretch TrueSize image when target exceeds source by this percent
TM_PROP(2420, TMT, MINDPI1, INT) // min DPI ImageFile1 was designed for
TM_PROP(2421, TMT, MINDPI2, INT) // min DPI ImageFile1 was designed for
TM_PROP(2422, TMT, MINDPI3, INT) // min DPI ImageFile1 was designed for
TM_PROP(2423, TMT, MINDPI4, INT) // min DPI ImageFile1 was designed for
TM_PROP(2424, TMT, MINDPI5, INT) // min DPI ImageFile1 was designed for
//---- rendering FONT properties ----
TM_PROP(2601, TMT, GLYPHFONT, FONT) // the font that the glyph is drawn with
//---- rendering INTLIST properties ----
// start with 2801
// (from smallest to largest)
//---- rendering FILENAME properties ----
TM_PROP(3001, TMT, IMAGEFILE, FILENAME) // the filename of the image (or basename, for mult. images)
TM_PROP(3002, TMT, IMAGEFILE1, FILENAME) // multiresolution image file
TM_PROP(3003, TMT, IMAGEFILE2, FILENAME) // multiresolution image file
TM_PROP(3004, TMT, IMAGEFILE3, FILENAME) // multiresolution image file
TM_PROP(3005, TMT, IMAGEFILE4, FILENAME) // multiresolution image file
TM_PROP(3006, TMT, IMAGEFILE5, FILENAME) // multiresolution image file
TM_PROP(3007, TMT, STOCKIMAGEFILE, FILENAME) // These are the only images that you can call GetThemeBitmap on
TM_PROP(3008, TMT, GLYPHIMAGEFILE, FILENAME) // the filename for the glyph image
//---- rendering STRING properties ----
TM_PROP(3201, TMT, TEXT, STRING)
//---- rendering POSITION (x and y values) properties ----
TM_PROP(3401, TMT, OFFSET, POSITION) // for window part layout
TM_PROP(3402, TMT, TEXTSHADOWOFFSET, POSITION) // where char shadows are drawn, relative to orig. chars
TM_PROP(3403, TMT, MINSIZE, POSITION) // min dest rect than ImageFile was designed for
TM_PROP(3404, TMT, MINSIZE1, POSITION) // min dest rect than ImageFile1 was designed for
TM_PROP(3405, TMT, MINSIZE2, POSITION) // min dest rect than ImageFile2 was designed for
TM_PROP(3406, TMT, MINSIZE3, POSITION) // min dest rect than ImageFile3 was designed for
TM_PROP(3407, TMT, MINSIZE4, POSITION) // min dest rect than ImageFile4 was designed for
TM_PROP(3408, TMT, MINSIZE5, POSITION) // min dest rect than ImageFile5 was designed for
TM_PROP(3409, TMT, NORMALSIZE, POSITION) // size of dest rect that exactly source
//---- rendering MARGIN properties ----
TM_PROP(3601, TMT, SIZINGMARGINS, MARGINS) // margins used for 9-grid sizing
TM_PROP(3602, TMT, CONTENTMARGINS, MARGINS) // margins that define where content can be placed
TM_PROP(3603, TMT, CAPTIONMARGINS, MARGINS) // margins that define where caption text can be placed
//---- rendering COLOR properties ----
TM_PROP(3801, TMT, BORDERCOLOR, COLOR) // color of borders for BorderFill
TM_PROP(3802, TMT, FILLCOLOR, COLOR) // color of bg fill
TM_PROP(3803, TMT, TEXTCOLOR, COLOR) // color text is drawn in
TM_PROP(3804, TMT, EDGELIGHTCOLOR, COLOR) // edge color
TM_PROP(3805, TMT, EDGEHIGHLIGHTCOLOR, COLOR) // edge color
TM_PROP(3806, TMT, EDGESHADOWCOLOR, COLOR) // edge color
TM_PROP(3807, TMT, EDGEDKSHADOWCOLOR, COLOR) // edge color
TM_PROP(3808, TMT, EDGEFILLCOLOR, COLOR) // edge color
TM_PROP(3809, TMT, TRANSPARENTCOLOR, COLOR) // color of pixels that are treated as transparent (not drawn)
TM_PROP(3810, TMT, GRADIENTCOLOR1, COLOR) // first color in gradient
TM_PROP(3811, TMT, GRADIENTCOLOR2, COLOR) // second color in gradient
TM_PROP(3812, TMT, GRADIENTCOLOR3, COLOR) // third color in gradient
TM_PROP(3813, TMT, GRADIENTCOLOR4, COLOR) // forth color in gradient
TM_PROP(3814, TMT, GRADIENTCOLOR5, COLOR) // fifth color in gradient
TM_PROP(3815, TMT, SHADOWCOLOR, COLOR) // color of text shadow
TM_PROP(3816, TMT, GLOWCOLOR, COLOR) // color of glow produced by DrawThemeIcon
TM_PROP(3817, TMT, TEXTBORDERCOLOR, COLOR) // color of text border
TM_PROP(3818, TMT, TEXTSHADOWCOLOR, COLOR) // color of text shadow
TM_PROP(3819, TMT, GLYPHTEXTCOLOR, COLOR) // color that font-based glyph is drawn with
TM_PROP(3820, TMT, GLYPHTRANSPARENTCOLOR, COLOR) // color of transparent pixels in GlyphImageFile
TM_PROP(3821, TMT, FILLCOLORHINT, COLOR) // hint about fill color used (for custom controls)
TM_PROP(3822, TMT, BORDERCOLORHINT, COLOR) // hint about border color used (for custom controls)
TM_PROP(3823, TMT, ACCENTCOLORHINT, COLOR) // hint about accent color used (for custom controls)
//---- rendering enum properties (must be declared in TM_ENUM section above) ----
TM_PROP(4001, TMT, BGTYPE, ENUM) // basic drawing type for each part
TM_PROP(4002, TMT, BORDERTYPE, ENUM) // type of border for BorderFill parts
TM_PROP(4003, TMT, FILLTYPE, ENUM) // fill shape for BorderFill parts
TM_PROP(4004, TMT, SIZINGTYPE, ENUM) // how to size ImageFile parts
TM_PROP(4005, TMT, HALIGN, ENUM) // horizontal alignment for TRUESIZE parts & glyphs
TM_PROP(4006, TMT, CONTENTALIGNMENT, ENUM) // custom window prop: how text is aligned in caption
TM_PROP(4007, TMT, VALIGN, ENUM) // horizontal alignment for TRUESIZE parts & glyphs
TM_PROP(4008, TMT, OFFSETTYPE, ENUM) // how window part should be placed
TM_PROP(4009, TMT, ICONEFFECT, ENUM) // type of effect to use with DrawThemeIcon
TM_PROP(4010, TMT, TEXTSHADOWTYPE, ENUM) // type of shadow to draw with text
TM_PROP(4011, TMT, IMAGELAYOUT, ENUM) // how multiple images are arranged (horz. or vert.)
TM_PROP(4012, TMT, GLYPHTYPE, ENUM) // controls type of glyph in imagefile objects
TM_PROP(4013, TMT, IMAGESELECTTYPE, ENUM) // controls when to select from IMAGEFILE1...IMAGEFILE5
TM_PROP(4014, TMT, GLYPHFONTSIZINGTYPE, ENUM) // controls when to select a bigger/small glyph font size
TM_PROP(4015, TMT, TRUESIZESCALINGTYPE, ENUM) // controls how TrueSize image is scaled
//---- custom properties (used only by controls/shell) ----
TM_PROP(5001, TMT, USERPICTURE, BOOL)
TM_PROP(5002, TMT, DEFAULTPANESIZE, RECT)
TM_PROP(5003, TMT, BLENDCOLOR, COLOR)
0,0
};
// restore old value of TM_PROP
#undef TM_PROP
#define TM_PROP(val, prefix, name, primval) {L#name, prefix##_##name, TMT_##primval},
#pragma warning(disable: 4996)
static int number_for_entry(TMS_SCHEMA_ENTRY *pArray, LPCTSTR key, LPCTSTR prefix = NULL)
{
static CMap<CString, LPCTSTR, int, int> speedUpCache;
int iCached = -1;
TCHAR szHashName[255];
ZeroMemory(szHashName, sizeof(szHashName));
if (prefix)
_tcscpy(szHashName, prefix);
_tcscat(szHashName, key);
if (!speedUpCache.Lookup(szHashName, iCached))
{
int i = 0;
TCHAR *name = pArray[i].str;
while (name)
{
if (_tcsicmp(name, szHashName) == 0)
{
speedUpCache[szHashName] = pArray[i].n;
return pArray[i].n;
}
name = pArray[++i].str;
}
return -1;
}
return iCached;
}
static int number_for_entry2(TMS_SCHEMA_ENTRY *pArray, LPCTSTR key, LPCTSTR key2)
{
TCHAR szContencanated[255];
_tcscpy(szContencanated, key);
_tcscat(szContencanated, _T("_"));
_tcscat(szContencanated, key2);
return number_for_entry(pArray, szContencanated);
}
#pragma warning(default: 4996)
#define GET_CLASS_CODE(cls) number_for_entry(classAndPartsCodes, cls)
#define GET_ENUM_CODE(prop, val) number_for_entry2(enumCodes, prop, val)
#define GET_CLASSPART_CODE(cls, part) number_for_entry2(classAndPartsCodes, cls, part)
#define GET_STATE_CODE(part, state) number_for_entry2(stateCodes, part, state)
#define GET_PROPERTY_CODE(prop) number_for_entry(propertyCodes, prop, _T("P_"))
#endif // XTPSkinManagerSchema2_h__