From: Vadim Zeitlin Date: Fri, 11 May 2007 22:54:29 +0000 (+0000) Subject: fix wxComboCtrl colours under Windows Vista (patch 1710006) X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/721d183848f2f22f4751a37de1cacbea667dd4a4 fix wxComboCtrl colours under Windows Vista (patch 1710006) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/docs/changes.txt b/docs/changes.txt index 2ba5b299c2..b2627a29e7 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -175,6 +175,7 @@ wxMSW: - Fixed bug in wxThread::Wait() in console applications introduced in 2.8.3 - Support right-aligned/centered owner drawn items in wxListCtrl (troelsk) - Compilation fixed with WXWIN_COMPATIBILITY_2_6==0 +- Fix wxComboCtrl colours under Windows Vista (Kolya Kosenko) wxGTK: diff --git a/src/msw/combo.cpp b/src/msw/combo.cpp index c02a3ee345..6ffbb31861 100644 --- a/src/msw/combo.cpp +++ b/src/msw/combo.cpp @@ -219,13 +219,20 @@ void wxComboCtrl::OnThemeChange() wxUxThemeEngine* theme = wxUxThemeEngine::GetIfActive(); if ( theme ) { - wxUxThemeHandle hTheme(this, L"COMBOBOX"); + wxUxThemeHandle hTheme(this, L"EDIT"); COLORREF col; - theme->GetThemeColor(hTheme,EP_EDITTEXT,ETS_NORMAL,TMT_FILLCOLOR,&col); - SetBackgroundColour(wxRGBToColour(col)); - theme->GetThemeColor(hTheme,EP_EDITTEXT,ETS_NORMAL,TMT_TEXTCOLOR,&col); - SetForegroundColour(wxRGBToColour(col)); + HRESULT hr = theme->GetThemeColor(hTheme,EP_EDITTEXT,ETS_NORMAL,TMT_FILLCOLOR,&col); + if ( FAILED(hr) ) + wxLogApiError(_T("GetThemeColor(EDIT, EP_EDITTEXT, ETS_NORMAL, TMT_FILLCOLOR)"), hr); + else + SetBackgroundColour(wxRGBToColour(col)); + + hr = theme->GetThemeColor(hTheme,EP_EDITTEXT,ETS_NORMAL,TMT_TEXTCOLOR,&col); + if ( FAILED(hr) ) + wxLogApiError(_T("GetThemeColor(EDIT, EP_EDITTEXT, ETS_NORMAL, TMT_TEXTCOLOR)"), hr); + else + SetForegroundColour(wxRGBToColour(col)); } else {