📄 jwatmschema.pas
字号:
{******************************************************************************}
{ }
{ Visual Styles (Themes) API interface Unit for Object Pascal }
{ }
{ Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft }
{ Corporation. All Rights Reserved. }
{ }
{ The original file is: tmschema.h, released June 2001. The original Pascal }
{ code is: TmSchema.pas, released July 2001. The initial developer of the }
{ Pascal code is Marcel van Brakel (brakelm@chello.nl). }
{ }
{ Portions created by Marcel van Brakel are Copyright (C) 1999-2001 }
{ Marcel van Brakel. All Rights Reserved. }
{ }
{ Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) }
{ }
{ You may retrieve the latest version of this file at the Project JEDI home }
{ page, located at http://delphi-jedi.org or my personal homepage located at }
{ http://members.chello.nl/m.vanbrakel2 }
{ }
{ The contents of this file are used with permission, subject to the Mozilla }
{ Public License Version 1.1 (the "License"); you may not use this file except }
{ in compliance with the License. You may obtain a copy of the License at }
{ http://www.mozilla.org/MPL/MPL-1.1.html }
{ }
{ Software distributed under the License is distributed on an "AS IS" basis, }
{ WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for }
{ the specific language governing rights and limitations under the License. }
{ }
{ Alternatively, the contents of this file may be used under the terms of the }
{ GNU Lesser General Public License (the "LGPL License"), in which case the }
{ provisions of the LGPL License are applicable instead of those above. }
{ If you wish to allow use of your version of this file only under the terms }
{ of the LGPL License and not to allow others to use your version of this file }
{ under the MPL, indicate your decision by deleting the provisions above and }
{ replace them with the notice and other provisions required by the LGPL }
{ License. If you do not delete the provisions above, a recipient may use }
{ your version of this file under either the MPL or the LGPL License. }
{ }
{ For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html }
{ }
{******************************************************************************}
unit JwaTmSchema;
{$WEAKPACKAGEUNIT}
{$HPPEMIT ''}
{$HPPEMIT '#include "tmschema.h"'}
{$HPPEMIT ''}
{$I WINDEFINES.INC}
interface
uses
JwaWinType;
//-----------------------------------------------------------------
// TmSchema.h - Theme Manager schema (properties, parts, etc)
//-----------------------------------------------------------------
const
THEMEMGR_VERSION = 1; // increment if order of props changes or
// any props are deleted (will prevent loading
// of controlsets that use older version
{$EXTERNALSYM THEMEMGR_VERSION}
//-----------------------------------------------------------------
// TM_ENUM (must also be declared in PROPERTIES section)
//
// these cannot be renumbered (part of uxtheme API)
//-----------------------------------------------------------------
type
BGTYPE = DWORD;
{$EXTERNALSYM BGTYPE}
const
BT_IMAGEFILE = 0;
{$EXTERNALSYM BT_IMAGEFILE}
BT_BORDERFILL = 1;
{$EXTERNALSYM BT_BORDERFILL}
BT_NONE = 2;
{$EXTERNALSYM BT_NONE}
type
IMAGELAYOUT = DWORD;
{$EXTERNALSYM IMAGELAYOUT}
const
IL_VERTICAL = 0;
{$EXTERNALSYM IL_VERTICAL}
IL_HORIZONTAL = 1;
{$EXTERNALSYM IL_HORIZONTAL}
type
BORDERTYPE = DWORD;
{$EXTERNALSYM BORDERTYPE}
const
BT_RECT = 0;
{$EXTERNALSYM BT_RECT}
BT_ROUNDRECT = 1;
{$EXTERNALSYM BT_ROUNDRECT}
BT_ELLIPSE = 2;
{$EXTERNALSYM BT_ELLIPSE}
type
FILLTYPE = DWORD;
{$EXTERNALSYM FILLTYPE}
const
FT_SOLID = 0;
{$EXTERNALSYM FT_SOLID}
FT_VERTGRADIENT = 1;
{$EXTERNALSYM FT_VERTGRADIENT}
FT_HORZGRADIENT = 2;
{$EXTERNALSYM FT_HORZGRADIENT}
FT_RADIALGRADIENT = 3;
{$EXTERNALSYM FT_RADIALGRADIENT}
FT_TILEIMAGE = 4;
{$EXTERNALSYM FT_TILEIMAGE}
type
SIZINGTYPE = DWORD;
{$EXTERNALSYM SIZINGTYPE}
const
ST_TRUESIZE = 0;
{$EXTERNALSYM ST_TRUESIZE}
ST_STRETCH = 1;
{$EXTERNALSYM ST_STRETCH}
ST_TILE = 2;
{$EXTERNALSYM ST_TILE}
type
HALIGN = DWORD;
{$EXTERNALSYM HALIGN}
const
HA_LEFT = 0;
{$EXTERNALSYM HA_LEFT}
HA_CENTER = 1;
{$EXTERNALSYM HA_CENTER}
HA_RIGHT = 2;
{$EXTERNALSYM HA_RIGHT}
type
CONTENTALIGNMENT = DWORD;
{$EXTERNALSYM CONTENTALIGNMENT}
const
CA_LEFT = 0;
{$EXTERNALSYM CA_LEFT}
CA_CENTER = 1;
{$EXTERNALSYM CA_CENTER}
CA_RIGHT = 2;
{$EXTERNALSYM CA_RIGHT}
type
VALIGN = DWORD;
{$EXTERNALSYM VALIGN}
const
VA_TOP = 0;
{$EXTERNALSYM VA_TOP}
VA_CENTER = 1;
{$EXTERNALSYM VA_CENTER}
VA_BOTTOM = 2;
{$EXTERNALSYM VA_BOTTOM}
type
OFFSETTYPE = DWORD;
{$EXTERNALSYM OFFSETTYPE}
const
OT_TOPLEFT = 0;
{$EXTERNALSYM OT_TOPLEFT}
OT_TOPRIGHT = 1;
{$EXTERNALSYM OT_TOPRIGHT}
OT_TOPMIDDLE = 2;
{$EXTERNALSYM OT_TOPMIDDLE}
OT_BOTTOMLEFT = 3;
{$EXTERNALSYM OT_BOTTOMLEFT}
OT_BOTTOMRIGHT = 4;
{$EXTERNALSYM OT_BOTTOMRIGHT}
OT_BOTTOMMIDDLE = 5;
{$EXTERNALSYM OT_BOTTOMMIDDLE}
OT_MIDDLELEFT = 6;
{$EXTERNALSYM OT_MIDDLELEFT}
OT_MIDDLERIGHT = 7;
{$EXTERNALSYM OT_MIDDLERIGHT}
OT_LEFTOFCAPTION = 8;
{$EXTERNALSYM OT_LEFTOFCAPTION}
OT_RIGHTOFCAPTION = 9;
{$EXTERNALSYM OT_RIGHTOFCAPTION}
OT_LEFTOFLASTBUTTON = 10;
{$EXTERNALSYM OT_LEFTOFLASTBUTTON}
OT_RIGHTOFLASTBUTTON = 11;
{$EXTERNALSYM OT_RIGHTOFLASTBUTTON}
OT_ABOVELASTBUTTON = 12;
{$EXTERNALSYM OT_ABOVELASTBUTTON}
OT_BELOWLASTBUTTON = 13;
{$EXTERNALSYM OT_BELOWLASTBUTTON}
type
ICONEFFECT = DWORD;
{$EXTERNALSYM ICONEFFECT}
const
ICE_NONE = 0;
{$EXTERNALSYM ICE_NONE}
ICE_GLOW = 1;
{$EXTERNALSYM ICE_GLOW}
ICE_SHADOW = 2;
{$EXTERNALSYM ICE_SHADOW}
ICE_PULSE = 3;
{$EXTERNALSYM ICE_PULSE}
ICE_ALPHA = 4;
{$EXTERNALSYM ICE_ALPHA}
type
TEXTSHADOWTYPE = DWORD;
{$EXTERNALSYM TEXTSHADOWTYPE}
const
TST_NONE = 0;
{$EXTERNALSYM TST_NONE}
TST_SINGLE = 1;
{$EXTERNALSYM TST_SINGLE}
TST_CONTINUOUS = 2;
{$EXTERNALSYM TST_CONTINUOUS}
type
GLYPHTYPE = DWORD;
{$EXTERNALSYM GLYPHTYPE}
const
GT_NONE = 0;
{$EXTERNALSYM GT_NONE}
GT_IMAGEGLYPH = 1;
{$EXTERNALSYM GT_IMAGEGLYPH}
GT_FONTGLYPH = 2;
{$EXTERNALSYM GT_FONTGLYPH}
type
IMAGESELECTTYPE = DWORD;
{$EXTERNALSYM IMAGESELECTTYPE}
const
IST_NONE = 0;
{$EXTERNALSYM IST_NONE}
IST_SIZE = 1;
{$EXTERNALSYM IST_SIZE}
IST_DPI = 2;
{$EXTERNALSYM IST_DPI}
type
TRUESIZESCALINGTYPE = DWORD;
{$EXTERNALSYM TRUESIZESCALINGTYPE}
const
TSST_NONE = 0;
{$EXTERNALSYM TSST_NONE}
TSST_SIZE = 1;
{$EXTERNALSYM TSST_SIZE}
TSST_DPI = 2;
{$EXTERNALSYM TSST_DPI}
type
GLYPHFONTSIZINGTYPE = DWORD;
{$EXTERNALSYM GLYPHFONTSIZINGTYPE}
const
GFST_NONE = 0;
{$EXTERNALSYM GFST_NONE}
GFST_SIZE = 1;
{$EXTERNALSYM GFST_SIZE}
GFST_DPI = 2;
{$EXTERNALSYM GFST_DPI}
//-----------------------------------------------------------------
// PROPERTIES - used by uxtheme rendering and controls
//
// these cannot be renumbered (part of uxtheme API)
//-----------------------------------------------------------------
const
//---- primitive types ----
TMT_STRING = 201;
{$EXTERNALSYM TMT_STRING}
TMT_INT = 202;
{$EXTERNALSYM TMT_INT}
TMT_BOOL = 203;
{$EXTERNALSYM TMT_BOOL}
TMT_COLOR = 204;
{$EXTERNALSYM TMT_COLOR}
TMT_MARGINS = 205;
{$EXTERNALSYM TMT_MARGINS}
TMT_FILENAME = 206;
{$EXTERNALSYM TMT_FILENAME}
TMT_SIZE = 207;
{$EXTERNALSYM TMT_SIZE}
TMT_POSITION = 208;
{$EXTERNALSYM TMT_POSITION}
TMT_RECT = 209;
{$EXTERNALSYM TMT_RECT}
TMT_FONT = 210;
{$EXTERNALSYM TMT_FONT}
TMT_INTLIST = 211;
{$EXTERNALSYM TMT_INTLIST}
//---- special misc. properties ----
TMT_COLORSCHEMES = 401;
{$EXTERNALSYM TMT_COLORSCHEMES}
TMT_SIZES = 402;
{$EXTERNALSYM TMT_SIZES}
TMT_CHARSET = 403;
{$EXTERNALSYM TMT_CHARSET}
//---- [documentation] properties ----
TMT_DISPLAYNAME = 601;
{$EXTERNALSYM TMT_DISPLAYNAME}
TMT_TOOLTIP = 602;
{$EXTERNALSYM TMT_TOOLTIP}
TMT_COMPANY = 603;
{$EXTERNALSYM TMT_COMPANY}
TMT_AUTHOR = 604;
{$EXTERNALSYM TMT_AUTHOR}
TMT_COPYRIGHT = 605;
{$EXTERNALSYM TMT_COPYRIGHT}
TMT_URL = 606;
{$EXTERNALSYM TMT_URL}
TMT_VERSION = 607;
{$EXTERNALSYM TMT_VERSION}
TMT_DESCRIPTION = 608;
{$EXTERNALSYM TMT_DESCRIPTION}
TMT_FIRST_RCSTRING_NAME = TMT_DISPLAYNAME;
{$EXTERNALSYM TMT_FIRST_RCSTRING_NAME}
TMT_LAST_RCSTRING_NAME = TMT_DESCRIPTION;
{$EXTERNALSYM TMT_LAST_RCSTRING_NAME}
//---- theme metrics: fonts ----
TMT_CAPTIONFONT = 801;
{$EXTERNALSYM TMT_CAPTIONFONT}
TMT_SMALLCAPTIONFONT = 802;
{$EXTERNALSYM TMT_SMALLCAPTIONFONT}
TMT_MENUFONT = 803;
{$EXTERNALSYM TMT_MENUFONT}
TMT_STATUSFONT = 804;
{$EXTERNALSYM TMT_STATUSFONT}
TMT_MSGBOXFONT = 805;
{$EXTERNALSYM TMT_MSGBOXFONT}
TMT_ICONTITLEFONT = 806;
{$EXTERNALSYM TMT_ICONTITLEFONT}
TMT_FIRSTFONT = TMT_CAPTIONFONT;
{$EXTERNALSYM TMT_FIRSTFONT}
TMT_LASTFONT = TMT_ICONTITLEFONT;
{$EXTERNALSYM TMT_LASTFONT}
//---- theme metrics: bools ----
TMT_FLATMENUS = 1001;
{$EXTERNALSYM TMT_FLATMENUS}
TMT_FIRSTBOOL = TMT_FLATMENUS;
{$EXTERNALSYM TMT_FIRSTBOOL}
TMT_LASTBOOL = TMT_FLATMENUS;
{$EXTERNALSYM TMT_LASTBOOL}
//---- theme metrics: sizes ----
TMT_SIZINGBORDERWIDTH = 1201;
{$EXTERNALSYM TMT_SIZINGBORDERWIDTH}
TMT_SCROLLBARWIDTH = 1202;
{$EXTERNALSYM TMT_SCROLLBARWIDTH}
TMT_SCROLLBARHEIGHT = 1203;
{$EXTERNALSYM TMT_SCROLLBARHEIGHT}
TMT_CAPTIONBARWIDTH = 1204;
{$EXTERNALSYM TMT_CAPTIONBARWIDTH}
TMT_CAPTIONBARHEIGHT = 1205;
{$EXTERNALSYM TMT_CAPTIONBARHEIGHT}
TMT_SMCAPTIONBARWIDTH = 1206;
{$EXTERNALSYM TMT_SMCAPTIONBARWIDTH}
TMT_SMCAPTIONBARHEIGHT = 1207;
{$EXTERNALSYM TMT_SMCAPTIONBARHEIGHT}
TMT_MENUBARWIDTH = 1208;
{$EXTERNALSYM TMT_MENUBARWIDTH}
TMT_MENUBARHEIGHT = 1209;
{$EXTERNALSYM TMT_MENUBARHEIGHT}
TMT_FIRSTSIZE = TMT_SIZINGBORDERWIDTH;
{$EXTERNALSYM TMT_FIRSTSIZE}
TMT_LASTSIZE = TMT_MENUBARHEIGHT;
{$EXTERNALSYM TMT_LASTSIZE}
//---- theme metrics: ints ----
TMT_MINCOLORDEPTH = 1301;
{$EXTERNALSYM TMT_MINCOLORDEPTH}
TMT_FIRSTINT = TMT_MINCOLORDEPTH;
{$EXTERNALSYM TMT_FIRSTINT}
TMT_LASTINT = TMT_MINCOLORDEPTH;
{$EXTERNALSYM TMT_LASTINT}
//---- theme metrics: strings ----
TMT_CSSNAME = 1401;
{$EXTERNALSYM TMT_CSSNAME}
TMT_XMLNAME = 1402;
{$EXTERNALSYM TMT_XMLNAME}
TMT_FIRSTSTRING = TMT_CSSNAME;
{$EXTERNALSYM TMT_FIRSTSTRING}
TMT_LASTSTRING = TMT_XMLNAME;
{$EXTERNALSYM TMT_LASTSTRING}
//---- theme metrics: colors ----
TMT_SCROLLBAR = 1601;
{$EXTERNALSYM TMT_SCROLLBAR}
TMT_BACKGROUND = 1602;
{$EXTERNALSYM TMT_BACKGROUND}
TMT_ACTIVECAPTION = 1603;
{$EXTERNALSYM TMT_ACTIVECAPTION}
TMT_INACTIVECAPTION = 1604;
{$EXTERNALSYM TMT_INACTIVECAPTION}
TMT_MENU = 1605;
{$EXTERNALSYM TMT_MENU}
TMT_WINDOW = 1606;
{$EXTERNALSYM TMT_WINDOW}
TMT_WINDOWFRAME = 1607;
{$EXTERNALSYM TMT_WINDOWFRAME}
TMT_MENUTEXT = 1608;
{$EXTERNALSYM TMT_MENUTEXT}
TMT_WINDOWTEXT = 1609;
{$EXTERNALSYM TMT_WINDOWTEXT}
TMT_CAPTIONTEXT = 1610;
{$EXTERNALSYM TMT_CAPTIONTEXT}
TMT_ACTIVEBORDER = 1611;
{$EXTERNALSYM TMT_ACTIVEBORDER}
TMT_INACTIVEBORDER = 1612;
{$EXTERNALSYM TMT_INACTIVEBORDER}
TMT_APPWORKSPACE = 1613;
{$EXTERNALSYM TMT_APPWORKSPACE}
TMT_HIGHLIGHT = 1614;
{$EXTERNALSYM TMT_HIGHLIGHT}
TMT_HIGHLIGHTTEXT = 1615;
{$EXTERNALSYM TMT_HIGHLIGHTTEXT}
TMT_BTNFACE = 1616;
{$EXTERNALSYM TMT_BTNFACE}
TMT_BTNSHADOW = 1617;
{$EXTERNALSYM TMT_BTNSHADOW}
TMT_GRAYTEXT = 1618;
{$EXTERNALSYM TMT_GRAYTEXT}
TMT_BTNTEXT = 1619;
{$EXTERNALSYM TMT_BTNTEXT}
TMT_INACTIVECAPTIONTEXT = 1620;
{$EXTERNALSYM TMT_INACTIVECAPTIONTEXT}
TMT_BTNHIGHLIGHT = 1621;
{$EXTERNALSYM TMT_BTNHIGHLIGHT}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -