Only draw borders if wxSP_3DBORDER specified, as before
Added IsAppThemedEx which _really_ tells you if the app is themed, and used it in wxRendererNative::GetDefault() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -310,6 +310,10 @@ public:
|
||||
wxUX_THEME_DECLARE(PFNWXUDRAWTHEMEPARENTBACKGROUND, DrawThemeParentBackground)
|
||||
wxUX_THEME_DECLARE(PFNWXUENABLETHEMING, EnableTheming)
|
||||
|
||||
// This calls IsAppThemed but also checks the commctrl.dll version
|
||||
// for a more reliable answer.
|
||||
bool IsAppThemedEx() ;
|
||||
|
||||
private:
|
||||
// construcor is private as only Get() can create us and is also trivial as
|
||||
// everything really happens in Initialize()
|
||||
|
@@ -428,6 +428,7 @@ int wxSplitterWindow::GetBorderSize() const
|
||||
// Draw the sash
|
||||
void wxSplitterWindow::DrawSash(wxDC& dc)
|
||||
{
|
||||
if (HasFlag(wxSP_3DBORDER))
|
||||
wxRendererNative::Get().DrawSplitterBorder
|
||||
(
|
||||
this,
|
||||
|
@@ -84,7 +84,7 @@ private:
|
||||
wxRendererNative& wxRendererNative::GetDefault()
|
||||
{
|
||||
wxUxThemeEngine *themeEngine = wxUxThemeEngine::Get();
|
||||
return themeEngine && themeEngine->IsThemeActive() ? wxRendererXP::Get()
|
||||
return themeEngine && themeEngine->IsAppThemedEx() ? wxRendererXP::Get()
|
||||
: wxRendererMSW::Get();
|
||||
}
|
||||
|
||||
|
@@ -172,5 +172,21 @@ bool wxUxThemeEngine::Initialize()
|
||||
return true;
|
||||
}
|
||||
|
||||
// This calls IsAppThemed but also checks the commctrl.dll version
|
||||
// for a more reliable answer.
|
||||
bool wxUxThemeEngine::IsAppThemedEx()
|
||||
{
|
||||
static bool g_TestedForTheme = FALSE;
|
||||
static bool g_UseTheme = FALSE;
|
||||
if (!g_TestedForTheme)
|
||||
{
|
||||
int commCtrlVersion = wxTheApp->GetComCtl32Version() ;
|
||||
|
||||
g_UseTheme = (commCtrlVersion >= 600);
|
||||
g_TestedForTheme = TRUE;
|
||||
}
|
||||
return IsAppThemed() && g_UseTheme;
|
||||
}
|
||||
|
||||
#endif // wxUSE_UXTHEME
|
||||
|
||||
|
Reference in New Issue
Block a user