]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/combo.cpp
Better fix
[wxWidgets.git] / src / msw / combo.cpp
index 235fd668faf5739a43504f6fd523baa9a11081ea..72b053da4516681b7489e75fddb30a9307d054e6 100644 (file)
@@ -41,6 +41,7 @@
 #if wxUSE_UXTHEME
 #include "wx/msw/uxtheme.h"
 #endif
 #if wxUSE_UXTHEME
 #include "wx/msw/uxtheme.h"
 #endif
+#include "wx/msw/dc.h"
 
 // Change to #if 1 to include tmschema.h for easier testing of theme
 // parameters.
 
 // Change to #if 1 to include tmschema.h for easier testing of theme
 // parameters.
@@ -474,19 +475,21 @@ void wxComboCtrl::OnPaintEvent( wxPaintEvent& WXUNUSED(event) )
 
     const wxRect& rectButton = m_btnArea;
     wxRect rectTextField = m_tcArea;
 
     const wxRect& rectButton = m_btnArea;
     wxRect rectTextField = m_tcArea;
-    const bool isEnabled = IsEnabled();
     wxColour bgCol = GetBackgroundColour();
 
     wxColour bgCol = GetBackgroundColour();
 
-    HDC hDc = GetHdcOf(dc);
+#if wxUSE_UXTHEME
+    const bool isEnabled = IsEnabled();
+
+    wxMSWDCImpl *impl = (wxMSWDCImpl*) dc.GetImpl();
+    HDC hDc = GetHdcOf(*impl);
     HWND hWnd = GetHwndOf(this);
 
     HWND hWnd = GetHwndOf(this);
 
-#if wxUSE_UXTHEME
     wxUxThemeEngine* theme = NULL;
     wxUxThemeHandle hTheme(this, L"COMBOBOX");
 
     if ( hTheme )
         theme = wxUxThemeEngine::GetIfActive();
     wxUxThemeEngine* theme = NULL;
     wxUxThemeHandle hTheme(this, L"COMBOBOX");
 
     if ( hTheme )
         theme = wxUxThemeEngine::GetIfActive();
-#endif
+#endif // wxUSE_UXTHEME
 
     wxRect borderRect(0,0,sz.x,sz.y);
 
 
     wxRect borderRect(0,0,sz.x,sz.y);