git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34618
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
- Fixed ownerdrawn multiline buttons.
- wxCheckListBox item background fixed.
- Fixed some wxRegKey bugs.
- Fixed ownerdrawn multiline buttons.
- wxCheckListBox item background fixed.
- Fixed some wxRegKey bugs.
+- Separators are now correctly shown in the toolbars under Windows XP
SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE));
SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE));
SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
- // workaround for flat toolbar on Windows XP classic style
+ // workaround for flat toolbar on Windows XP classic style: we have to set
+ // the style after creating the control, doing it at creation time doesn't
+ // work
#if wxUSE_UXTHEME
if ( style & wxTB_FLAT )
{
#if wxUSE_UXTHEME
if ( style & wxTB_FLAT )
{
- // Testing for an active theme appears to be unnecessary (see comments in patch 1204217).
- // Disabling the test brings back separator lines.
- // However, the separators can look ugly and distracting, especially between controls,
- // so I'm restoring the test and removing the separators again - JACS
-#if 1
- wxUxThemeEngine *p = wxUxThemeEngine::Get();
- if ( !p || !p->IsThemeActive() )
-#endif
- {
- DWORD dwToolbarStyle;
+ LRESULT style = ::SendMessage(GetHwnd(), TB_GETSTYLE, 0, 0L);
- dwToolbarStyle = (DWORD)::SendMessage(GetHwnd(), TB_GETSTYLE, 0, 0L );
-
- if ((dwToolbarStyle & TBSTYLE_FLAT) == 0)
- {
- dwToolbarStyle |= TBSTYLE_FLAT;
- ::SendMessage(GetHwnd(), TB_SETSTYLE, 0, (LPARAM)dwToolbarStyle );
- }
+ if ( !(style & TBSTYLE_FLAT) )
+ {
+ ::SendMessage(GetHwnd(), TB_SETSTYLE, 0, style | TBSTYLE_FLAT);