]> git.saurik.com Git - wxWidgets.git/commitdiff
Fix for toolbar workaround (mustn't set flag unless we're in Classic mode
authorJulian Smart <julian@anthemion.co.uk>
Mon, 2 Aug 2004 09:50:03 +0000 (09:50 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Mon, 2 Aug 2004 09:50:03 +0000 (09:50 +0000)
or we get separators showing)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/tbar95.cpp

index ef132e74089dd5bf299731150df7e4c50ce00fcc..944a1d0b27c530fbd1a25535edf872d403de76a0 100644 (file)
 
 #include "wx/msw/private.h"
 
+#if wxUSE_UXTHEME
+#include "wx/msw/uxtheme.h"
+#endif
+
 // include <commctrl.h> "properly"
 #include "wx/msw/wrapcctl.h"
 
@@ -247,18 +251,25 @@ bool wxToolBar::Create(wxWindow *parent,
     SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
 
     // workaround for flat toolbar on Windows XP classic style
+#if wxUSE_UXTHEME
     if ( style & wxTB_FLAT )
     {
-        DWORD dwToolbarStyle;
+        wxUxThemeEngine *p = wxUxThemeEngine::Get();
+        if ( !p || !p->IsThemeActive() )
+        {
+            DWORD dwToolbarStyle;
 
-        dwToolbarStyle = (DWORD)::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 ((dwToolbarStyle & TBSTYLE_FLAT) == 0)
+            {
+                dwToolbarStyle |= TBSTYLE_FLAT;
+                ::SendMessage(GetHwnd(), TB_SETSTYLE, 0, (LPARAM)dwToolbarStyle );
+            }
         }
     }
+#endif
+    
     return TRUE;
 }