]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/renderer.cpp
Fix overflow warnings (?)
[wxWidgets.git] / src / msw / renderer.cpp
index d4c36549f859fe9be01424d5c8da4ce77d757798..9b83f013381dc6304a798416876404f54c8d9ede 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     20.07.2003
 // RCS-ID:      $Id$
 // Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwindows.org>
-// License:     wxWindows license
+// License:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 // ============================================================================
@@ -144,43 +144,40 @@ wxRendererXP::DrawSplitterSash(wxWindow *win,
                                wxOrientation orient,
                                int flags)
 {
-    if (win->GetWindowStyle() & wxSP_NO_XP_THEME)
-    {
-        m_rendererNative.DrawSplitterSash(
-                   win, dc, size, position, orient, flags);
-        return;
-    }
-    
-    // I don't know if it is correct to use the rebar background for the
-    // splitter but it least this works ok in the default theme
-    wxUxThemeHandle hTheme(win, L"REBAR");
-    if ( hTheme )
+    if ( !win->HasFlag(wxSP_NO_XP_THEME) )
     {
-        RECT rect;
-        if ( orient == wxVERTICAL )
+        wxUxThemeHandle hTheme(win, L"WINDOW");
+        if ( hTheme )
         {
-            rect.left = position;
-            rect.right = position + SASH_WIDTH; 
-            rect.top = 0;
-            rect.bottom = size.y;
+            RECT rect;
+            if ( orient == wxVERTICAL )
+            {
+                rect.left = position;
+                rect.right = position + SASH_WIDTH;
+                rect.top = 0;
+                rect.bottom = size.y;
+            }
+            else // wxHORIZONTAL
+            {
+                rect.left = 0;
+                rect.right = size.x;
+                rect.top = position;
+                rect.bottom = position + SASH_WIDTH;
+            }
+
+            wxUxThemeEngine::Get()->DrawThemeBackground
+                                    (
+                                        (WXHTHEME)hTheme,
+                                        dc.GetHDC(),
+                                        29, // WP_DIALOG: dlg background
+                                        0, // no particular state
+                                        &rect,
+                                        NULL
+                                    );
+            return;
         }
-        else // wxHORIZONTAL
-        {
-            rect.left = 0;
-            rect.right = size.x;
-            rect.top = position;
-            rect.bottom = position + SASH_WIDTH;
-        }
-
-        wxUxThemeEngine::Get()->DrawThemeBackground
-                                (
-                                    (WXHTHEME)hTheme,
-                                    dc.GetHDC(),
-                                    3 /* RP_BAND */,
-                                    0 /* no state */ ,
-                                    &rect,
-                                    NULL
-                                );       
     }
+
+    m_rendererNative.DrawSplitterSash(win, dc, size, position, orient, flags);
 }