11#if defined(__BORLANDC__)
26TThemeModule::TThemeModule()
31 CloseThemeData(*
this,
"CloseThemeData"),
32 DrawThemeParentBackground(*
this,
"DrawThemeParentBackground"),
33 EnableThemeDialogTexture(*
this,
"EnableThemeDialogTexture"),
34 EnableTheming(*
this,
"EnableTheming"),
35 GetCurrentThemeName(*
this,
"GetCurrentThemeName"),
36 GetThemeAppProperties(*
this,
"GetThemeAppProperties"),
37 GetThemeDocumentationProperty(*
this,
"GetThemeDocumentationProperty"),
38 GetWindowTheme(*
this,
"GetWindowTheme"),
39 IsAppThemed(*
this,
"IsAppThemed"),
40 IsThemeActive(*
this,
"IsThemeActive"),
41 IsThemeDialogTextureEnabled(*
this,
"IsThemeDialogTextureEnabled"),
42 OpenThemeData(*
this,
"OpenThemeData"),
43 SetThemeAppProperties(*
this,
"SetThemeAppProperties"),
44 SetWindowTheme(*
this,
"SetWindowTheme"),
48 GetThemeSysBool(*
this,
"GetThemeSysBool"),
49 GetThemeSysColor(*
this,
"GetThemeSysColor"),
50 GetThemeSysColorBrush(*
this,
"GetThemeSysColorBrush"),
51 GetThemeSysFont(*
this,
"GetThemeSysFont"),
52 GetThemeSysInt(*
this,
"GetThemeSysInt"),
53 GetThemeSysSize(*
this,
"GetThemeSysSize"),
54 GetThemeSysString(*
this,
"GetThemeSysString"),
58 DrawThemeBackground(*
this,
"DrawThemeBackground"),
59 DrawThemeEdge(*
this,
"DrawThemeEdge"),
60 DrawThemeIcon(*
this,
"DrawThemeIcon"),
61 DrawThemeText(*
this,
"DrawThemeText"),
62 GetThemeBackgroundContentRect(*
this,
"GetThemeBackgroundContentRect"),
63 GetThemeBackgroundExtent(*
this,
"GetThemeBackgroundExtent"),
64 GetThemeBackgroundRegion(*
this,
"GetThemeBackgroundRegion"),
65 GetThemeBool(*
this,
"GetThemeBool"),
66 GetThemeColor(*
this,
"GetThemeColor"),
67 GetThemeEnumValue(*
this,
"GetThemeEnumValue"),
68 GetThemeFilename(*
this,
"GetThemeFilename"),
69 GetThemeFont(*
this,
"GetThemeFont"),
70 GetThemeInt(*
this,
"GetThemeInt"),
71 GetThemeIntList(*
this,
"GetThemeIntList"),
72 GetThemeMargins(*
this,
"GetThemeMargins"),
73 GetThemeMetric(*
this,
"GetThemeMetric"),
74 GetThemePartSize(*
this,
"GetThemePartSize"),
75 GetThemePosition(*
this,
"GetThemePosition"),
76 GetThemePropertyOrigin(*
this,
"GetThemePropertyOrigin"),
77 GetThemeRect(*
this,
"GetThemeRect"),
78 GetThemeString(*
this,
"GetThemeString"),
79 GetThemeTextExtent(*
this,
"GetThemeTextExtent"),
80 GetThemeTextMetrics(*
this,
"GetThemeTextMetrics"),
81 HitTestThemeBackground(*
this,
"HitTestThemeBackground"),
82 IsThemeBackgroundPartiallyTransparent(*
this,
"IsThemeBackgroundPartiallyTransparent"),
83 IsThemePartDefined(*
this,
"IsThemePartDefined")
108 static bool initOk =
true;
127 static struct TInitThemeModuleInstance
129 TInitThemeModuleInstance()
131 try {TThemeModule::GetInstance();}
144 if (m_handle ==
nullptr)
210 return m.IsThemeBackgroundPartiallyTransparent(
GetHandle(), m_part, m_state);
#define WARNX(group, condition, level, message)
#define TRACEX(group, level, message)
#define DIAG_DEFINE_GROUP_INIT(f, g, e, l)
ObjectWindows dynamic-link libraries (DLLs) construct an instance of TModule, which acts as an object...
TRect is a mathematical class derived from tagRect.
Encapsulates a theme handle.
virtual ~TTheme()
Releases the theme handle.
This singleton encapsulates the "uxtheme.dll" module.
static TThemeModule & GetInstance()
Returns the module instance.
bool IsBackgroundPartiallyTransparent()
Returns true if the theme-specified background for a part has transparent pieces or alpha-blended pie...
void DrawBackground(HDC, const TRect &dest)
Paints the background of the themed part.
void DrawTransparentBackground(HWND control, HDC, const TRect &dest)
Paints the background of the themed part, properly composited with the parent background.
TThemePart(HWND, LPCWSTR cls, int part, int state)
Constructs a theme part handler.
TXOwl is root class of the ObjectWindows exception hierarchy.
void Throw()
Throws the exception.
TXTheme * Clone()
Creates a copy of the exception.
static void Raise(const tstring &name=tstring(), HRESULT=0)
Throws the exception.
TXTheme(const tstring &=tstring(), HRESULT=0)
Creates a theme exception.
Object Windows Library (OWLNext Core)
void InUse(const T &arg)
Handy utility to avoid compiler warnings about unused parameters.
Microsoft UxTheme Library Encapsulation.