1 |
#ifndef _UXTHEME_H |
2 |
#define _UXTHEME_H |
3 |
#if __GNUC__ >= 3 |
4 |
#pragma GCC system_header |
5 |
#endif |
6 |
|
7 |
#include <commctrl.h> |
8 |
|
9 |
#ifdef __cplusplus |
10 |
extern "C" { |
11 |
#endif |
12 |
|
13 |
#if (_WIN32_WINNT >= 0x0501) |
14 |
#define DTBG_CLIPRECT 0x00000001 |
15 |
#define DTBG_DRAWSOLID 0x00000002 |
16 |
#define DTBG_OMITBORDER 0x00000004 |
17 |
#define DTBG_OMITCONTENT 0x00000008 |
18 |
#define DTBG_COMPUTINGREGION 0x00000010 |
19 |
#define DTBG_MIRRORDC 0x00000020 |
20 |
#define DTT_GRAYED 0x00000001 |
21 |
#define ETDT_DISABLE 0x00000001 |
22 |
#define ETDT_ENABLE 0x00000002 |
23 |
#define ETDT_USETABTEXTURE 0x00000004 |
24 |
#define ETDT_ENABLETAB (ETDT_ENABLE|ETDT_USETABTEXTURE) |
25 |
#define STAP_ALLOW_NONCLIENT 0x00000001 |
26 |
#define STAP_ALLOW_CONTROLS 0x00000002 |
27 |
#define STAP_ALLOW_WEBCONTENT 0x00000004 |
28 |
#define HTTB_BACKGROUNDSEG 0x0000 |
29 |
#define HTTB_FIXEDBORDER 0x0002 |
30 |
#define HTTB_CAPTION 0x0004 |
31 |
#define HTTB_RESIZINGBORDER_LEFT 0x0010 |
32 |
#define HTTB_RESIZINGBORDER_TOP 0x0020 |
33 |
#define HTTB_RESIZINGBORDER_RIGHT 0x0040 |
34 |
#define HTTB_RESIZINGBORDER_BOTTOM 0x0080 |
35 |
#define HTTB_RESIZINGBORDER (HTTB_RESIZINGBORDER_LEFT|HTTB_RESIZINGBORDER_TOP|HTTB_RESIZINGBORDER_RIGHT|HTTB_RESIZINGBORDER_BOTTOM) |
36 |
#define HTTB_SIZINGTEMPLATE 0x0100 |
37 |
#define HTTB_SYSTEMSIZINGMARGINS 0x0200 |
38 |
#define TMT_DISPLAYNAME 0x0259 |
39 |
#define TMT_TOOLTIP 0x025A |
40 |
#define TMT_COMPANY 0x025B |
41 |
#define TMT_AUTHOR 0x025C |
42 |
#define TMT_COPYRIGHT 0x025D |
43 |
#define TMT_URL 0x025E |
44 |
#define TMT_VERSION 0x025F |
45 |
#define TMT_DESCRIPTION 0x0260 |
46 |
#define TMT_CAPTIONFONT 0x0321 |
47 |
#define TMT_SMALLCAPTIONFONT 0x0322 |
48 |
#define TMT_MENUFONT 0x0323 |
49 |
#define TMT_STATUSFONT 0x0324 |
50 |
#define TMT_MSGBOXFONT 0x0325 |
51 |
#define TMT_ICONTITLEFONT 0x0326 |
52 |
#define TMT_FLATMENUS 0x03E9 |
53 |
#define TMT_MINCOLORDEPTH 0x0515 |
54 |
#define TMT_CSSNAME 0x0579 |
55 |
#define TMT_XMLNAME 0x057A |
56 |
#define TMT_SCROLLBAR 0x0641 |
57 |
#define TMT_BACKGROUND 0x0642 |
58 |
#define TMT_ACTIVECAPTION 0x0643 |
59 |
#define TMT_INACTIVECAPTION 0x0644 |
60 |
#define TMT_WINDOW 0x0646 |
61 |
#define TMT_WINDOWFRAME 0x0647 |
62 |
#define TMT_MENUTEXT 0x0648 |
63 |
#define TMT_WINDOWTEXT 0x0649 |
64 |
#define TMT_CAPTIONTEXT 0x064A |
65 |
#define TMT_ACTIVEBORDER 0x064B |
66 |
#define TMT_INACTIVEBORDER 0x064C |
67 |
#define TMT_APPWORKSPACE 0x064D |
68 |
#define TMT_HIGHLIGHT 0x064E |
69 |
#define TMT_HIGHLIGHTTEXT 0x064F |
70 |
#define TMT_BTNFACE 0x0650 |
71 |
#define TMT_BTNSHADOW 0x0651 |
72 |
#define TMT_GRAYTEXT 0x0652 |
73 |
#define TMT_BTNTEXT 0x0653 |
74 |
#define TMT_INACTIVECAPTIONTEXT 0x0654 |
75 |
#define TMT_BTNHIGHLIGHT 0x0655 |
76 |
#define TMT_DKSHADOW3D 0x0656 |
77 |
#define TMT_LIGHT3D 0x0657 |
78 |
#define TMT_INFOTEXT 0x0658 |
79 |
#define TMT_INFOBK 0x0659 |
80 |
#define TMT_BUTTONALTERNATEFACE 0x065A |
81 |
#define TMT_HOTTRACKING 0x065B |
82 |
#define TMT_GRADIENTACTIVECAPTION 0x065C |
83 |
#define TMT_GRADIENTINACTIVECAPTION 0x065D |
84 |
#define TMT_MENUHILIGHT 0x065E |
85 |
#define TMT_MENUBAR 0x065F |
86 |
#define TMT_TRANSPARENT 0x0899 |
87 |
#define TMT_AUTOSIZE 0x089A |
88 |
#define TMT_BORDERONLY 0x089B |
89 |
#define TMT_COMPOSITED 0x089C |
90 |
#define TMT_BGFILL 0x089D |
91 |
#define TMT_GLYPHTRANSPARENT 0x089E |
92 |
#define TMT_GLYPHONLY 0x089F |
93 |
#define TMT_ALWAYSSHOWSIZINGBAR 0x08A0 |
94 |
#define TMT_MIRRORIMAGE 0x08A1 |
95 |
#define TMT_UNIFORMSIZING 0x08A2 |
96 |
#define TMT_INTEGRALSIZING 0x08A3 |
97 |
#define TMT_SOURCEGROW 0x08A4 |
98 |
#define TMT_SOURCESHRINK 0x08A5 |
99 |
#define TMT_IMAGECOUNT 0x0961 |
100 |
#define TMT_ALPHALEVEL 0x0962 |
101 |
#define TMT_BORDERSIZE 0x0963 |
102 |
#define TMT_ROUNDCORNERWIDTH 0x0964 |
103 |
#define TMT_ROUNDCORNERHEIGHT 0x0965 |
104 |
#define TMT_GRADIENTRATIO1 0x0966 |
105 |
#define TMT_GRADIENTRATIO2 0x0967 |
106 |
#define TMT_GRADIENTRATIO3 0x0968 |
107 |
#define TMT_GRADIENTRATIO4 0x0969 |
108 |
#define TMT_GRADIENTRATIO5 0x096A |
109 |
#define TMT_PROGRESSCHUNKSIZE 0x096B |
110 |
#define TMT_PROGRESSSPACESIZE 0x096C |
111 |
#define TMT_SATURATION 0x096D |
112 |
#define TMT_TEXTBORDERSIZE 0x096E |
113 |
#define TMT_ALPHATHRESHOLD 0x096F |
114 |
#define TMT_WIDTH 0x0970 |
115 |
#define TMT_HEIGHT 0x0971 |
116 |
#define TMT_GLYPHINDEX 0x0972 |
117 |
#define TMT_TRUESIZESTRETCHMARK 0x0973 |
118 |
#define TMT_MINDPI1 0x0974 |
119 |
#define TMT_MINDPI2 0x0975 |
120 |
#define TMT_MINDPI3 0x0976 |
121 |
#define TMT_MINDPI4 0x0977 |
122 |
#define TMT_MINDPI5 0x0978 |
123 |
#define TMT_GLYPHFONT 0x0A29 |
124 |
#define TMT_IMAGEFILE 0x0BB9 |
125 |
#define TMT_IMAGEFILE1 0x0BBA |
126 |
#define TMT_IMAGEFILE2 0x0BBB |
127 |
#define TMT_IMAGEFILE3 0x0BBC |
128 |
#define TMT_IMAGEFILE4 0x0BBD |
129 |
#define TMT_IMAGEFILE5 0x0BBE |
130 |
#define TMT_STOCKIMAGEFILE 0x0BBF |
131 |
#define TMT_GLYPHIMAGEFILE 0x0BC0 |
132 |
#define TMT_TEXT 0x0C81 |
133 |
#define TMT_OFFSET 0x0D49 |
134 |
#define TMT_TEXTSHADOWOFFSET 0x0D4A |
135 |
#define TMT_MINSIZE 0x0D4B |
136 |
#define TMT_MINSIZE1 0x0D4C |
137 |
#define TMT_MINSIZE2 0x0D4D |
138 |
#define TMT_MINSIZE3 0x0D4E |
139 |
#define TMT_MINSIZE4 0x0D4F |
140 |
#define TMT_MINSIZE5 0x0D50 |
141 |
#define TMT_NORMALSIZE 0x0D51 |
142 |
#define TMT_SIZINGMARGINS 0x0E11 |
143 |
#define TMT_CONTENTMARGINS 0x0E12 |
144 |
#define TMT_CAPTIONMARGINS 0x0E13 |
145 |
#define TMT_BORDERCOLOR 0x0ED9 |
146 |
#define TMT_FILLCOLOR 0x0EDA |
147 |
#define TMT_TEXTCOLOR 0x0EDB |
148 |
#define TMT_EDGELIGHTCOLOR 0x0EDC |
149 |
#define TMT_EDGEHIGHLIGHTCOLOR 0x0EDD |
150 |
#define TMT_EDGESHADOWCOLOR 0x0EDE |
151 |
#define TMT_EDGEDKSHADOWCOLOR 0x0EDF |
152 |
#define TMT_EDGEFILLCOLOR 0x0EE0 |
153 |
#define TMT_TRANSPARENTCOLOR 0x0EE1 |
154 |
#define TMT_GRADIENTCOLOR1 0x0EE2 |
155 |
#define TMT_GRADIENTCOLOR2 0x0EE3 |
156 |
#define TMT_GRADIENTCOLOR3 0x0EE4 |
157 |
#define TMT_GRADIENTCOLOR4 0x0EE5 |
158 |
#define TMT_GRADIENTCOLOR5 0x0EE6 |
159 |
#define TMT_SHADOWCOLOR 0x0EE7 |
160 |
#define TMT_GLOWCOLOR 0x0EE8 |
161 |
#define TMT_TEXTBORDERCOLOR 0x0EE9 |
162 |
#define TMT_TEXTSHADOWCOLOR 0x0EEA |
163 |
#define TMT_GLYPHTEXTCOLOR 0x0EEB |
164 |
#define TMT_GLYPHTRANSPARENTCOLOR 0x0EEC |
165 |
#define TMT_FILLCOLORHINT 0x0EED |
166 |
#define TMT_BORDERCOLORHINT 0x0EEE |
167 |
#define TMT_ACCENTCOLORHINT 0x0EEF |
168 |
#define TMT_BGTYPE 0x0FA1 |
169 |
#define TMT_BORDERTYPE 0x0FA2 |
170 |
#define TMT_FILLTYPE 0x0FA3 |
171 |
#define TMT_SIZINGTYPE 0x0FA4 |
172 |
#define TMT_HALIGN 0x0FA5 |
173 |
#define TMT_CONTENTALIGNMENT 0x0FA6 |
174 |
#define TMT_VALIGN 0x0FA7 |
175 |
#define TMT_OFFSETTYPE 0x0FA8 |
176 |
#define TMT_ICONEFFECT 0x0FA9 |
177 |
#define TMT_TEXTSHADOWTYPE 0x0FAA |
178 |
#define TMT_IMAGELAYOUT 0x0FAB |
179 |
#define TMT_GLYPHTYPE 0x0FAC |
180 |
#define TMT_IMAGESELECTTYPE 0x0FAD |
181 |
#define TMT_GLYPHFONTSIZINGTYPE 0x0FAE |
182 |
#define TMT_TRUESIZESCALINGTYPE 0x0FAF |
183 |
#define TMT_USERPICTURE 0x1389 |
184 |
#define TMT_DEFAULTPANESIZE 0x138A |
185 |
#define TMT_BLENDCOLOR 0x138B |
186 |
#define BT_IMAGEFILE 0x0000 |
187 |
#define BT_BORDERFILL 0x0001 |
188 |
#define BT_NONE 0x0002 |
189 |
|
190 |
typedef enum PROPERTYORIGIN { |
191 |
PO_STATE = 0, |
192 |
PO_PART = 1, |
193 |
PO_CLASS = 2, |
194 |
PO_GLOBAL = 3, |
195 |
PO_NOTFOUND = 4 |
196 |
} PROPERTYORIGIN; |
197 |
typedef enum THEMESIZE { |
198 |
TS_MIN, |
199 |
TS_TRUE, |
200 |
TS_DRAW |
201 |
} THEME_SIZE; |
202 |
typedef struct _DTBGOPTS { |
203 |
DWORD dwSize; |
204 |
DWORD dwFlags; |
205 |
RECT rcClip; |
206 |
} DTBGOPTS, *PDTBGOPTS; |
207 |
#define MAX_INTLIST_COUNT 10 |
208 |
typedef struct _INTLIST { |
209 |
int iValueCount; |
210 |
int iValues[MAX_INTLIST_COUNT]; |
211 |
} INTLIST, *PINTLIST; |
212 |
typedef struct _MARGINS { |
213 |
int cxLeftWidth; |
214 |
int cxRightWidth; |
215 |
int cyTopHeight; |
216 |
int cyBottomHeight; |
217 |
} MARGINS, *PMARGINS; |
218 |
typedef HANDLE HTHEME; |
219 |
|
220 |
HRESULT WINAPI CloseThemeData(HTHEME); |
221 |
HRESULT WINAPI DrawThemeBackground(HTHEME,HDC,int,int,const RECT*,const RECT*); |
222 |
HRESULT WINAPI DrawThemeBackgroundEx(HTHEME,HDC,int,int,const RECT*,const DTBGOPTS*); |
223 |
HRESULT WINAPI DrawThemeEdge(HTHEME,HDC,int,int,const RECT*,UINT,UINT,RECT*); |
224 |
HRESULT WINAPI DrawThemeIcon(HTHEME,HDC,int,int,const RECT*,HIMAGELIST,int); |
225 |
HRESULT WINAPI DrawThemeParentBackground(HWND,HDC,RECT*); |
226 |
HRESULT WINAPI DrawThemeText(HTHEME,HDC,int,int,LPCWSTR,int,DWORD,DWORD,const RECT*); |
227 |
HRESULT WINAPI EnableThemeDialogTexture(HWND,DWORD); |
228 |
HRESULT WINAPI EnableTheming(BOOL); |
229 |
HRESULT WINAPI GetCurrentThemeName(LPWSTR,int,LPWSTR,int,LPWSTR,int); |
230 |
DWORD WINAPI GetThemeAppProperties(); |
231 |
HRESULT WINAPI GetThemeBackgroundContentRect(HTHEME,HDC,int,int,const RECT*,RECT*); |
232 |
HRESULT WINAPI GetThemeBackgroundExtent(HTHEME,HDC,int,int,const RECT*,RECT*); |
233 |
HRESULT WINAPI GetThemeBackgroundRegion(HTHEME,HDC,int,int,const RECT*,HRGN*); |
234 |
HRESULT WINAPI GetThemeBool(HTHEME,int,int,int,BOOL*); |
235 |
HRESULT WINAPI GetThemeColor(HTHEME,int,int,int,COLORREF*); |
236 |
HRESULT WINAPI GetThemeDocumentationProperty(LPCWSTR,LPCWSTR,LPWSTR,int); |
237 |
HRESULT WINAPI GetThemeEnumValue(HTHEME,int,int,int,int*); |
238 |
HRESULT WINAPI GetThemeFilename(HTHEME,int,int,int,LPWSTR,int); |
239 |
HRESULT WINAPI GetThemeFont(HTHEME,HDC,int,int,int,LOGFONT*); |
240 |
HRESULT WINAPI GetThemeInt(HTHEME,int,int,int,int*); |
241 |
HRESULT WINAPI GetThemeIntList(HTHEME,int,int,int,INTLIST*); |
242 |
HRESULT WINAPI GetThemeMargins(HTHEME,HDC,int,int,int,RECT*,MARGINS*); |
243 |
HRESULT WINAPI GetThemeMetric(HTHEME,HDC,int,int,int,int*); |
244 |
HRESULT WINAPI GetThemePartSize(HTHEME,HDC,int,int,RECT*,THEME_SIZE,SIZE*); |
245 |
HRESULT WINAPI GetThemePosition(HTHEME,int,int,int,POINT*); |
246 |
HRESULT WINAPI GetThemePropertyOrigin(HTHEME,int,int,int,PROPERTYORIGIN*); |
247 |
HRESULT WINAPI GetThemeRect(HTHEME,int,int,int,RECT*); |
248 |
HRESULT WINAPI GetThemeString(HTHEME,int,int,int,LPWSTR,int); |
249 |
BOOL WINAPI GetThemeSysBool(HTHEME,int); |
250 |
COLORREF WINAPI GetThemeSysColor(HTHEME,int); |
251 |
HBRUSH WINAPI GetThemeSysColorBrush(HTHEME,int); |
252 |
HRESULT WINAPI GetThemeSysFont(HTHEME,int,LOGFONT*); |
253 |
HRESULT WINAPI GetThemeSysInt(HTHEME,int,int*); |
254 |
int WINAPI GetThemeSysSize(HTHEME,int); |
255 |
HRESULT WINAPI GetThemeSysString(HTHEME,int,LPWSTR,int); |
256 |
HRESULT WINAPI GetThemeTextExtent(HTHEME,HDC,int,int,LPCWSTR,int,DWORD,const RECT*,RECT*); |
257 |
HRESULT WINAPI GetThemeTextMetrics(HTHEME,HDC,int,int,TEXTMETRIC*); |
258 |
HTHEME WINAPI GetWindowTheme(HWND); |
259 |
HRESULT WINAPI HitTestThemeBackground(HTHEME,HDC,int,int,DWORD,const RECT*,HRGN,POINT,WORD*); |
260 |
BOOL WINAPI IsAppThemed(); |
261 |
BOOL WINAPI IsThemeActive(); |
262 |
BOOL WINAPI IsThemeBackgroundPartiallyTransparent(HTHEME,int,int); |
263 |
BOOL WINAPI IsThemeDialogTextureEnabled(HWND); |
264 |
BOOL WINAPI IsThemePartDefined(HTHEME,int,int); |
265 |
HTHEME WINAPI OpenThemeData(HWND,LPCWSTR); |
266 |
void WINAPI SetThemeAppProperties(DWORD); |
267 |
HRESULT WINAPI SetWindowTheme(HWND,LPCWSTR,LPCWSTR); |
268 |
#endif |
269 |
|
270 |
#ifdef __cplusplus |
271 |
} |
272 |
#endif |
273 |
#endif |