]> git.saurik.com Git - wxWidgets.git/commitdiff
undo r58380 as it breaks tree control background repainting (see #9832)
authorVadim Zeitlin <vadim@wxwidgets.org>
Sun, 25 Jan 2009 19:07:11 +0000 (19:07 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sun, 25 Jan 2009 19:07:11 +0000 (19:07 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/treectrl.cpp
src/msw/window.cpp

index df434131aa920f7f6f3ea141fefd76cc56672ace..d358be2f328155f21f264b872c8c273e5c7f47da 100644 (file)
@@ -734,10 +734,6 @@ bool wxTreeCtrl::Create(wxWindow *parent,
     if ( !MSWCreateControl(WC_TREEVIEW, wstyle, pos, size) )
         return false;
 
-    // this significantly reduces flicker when refreshing the control, for some
-    // reason the native control itself doesn't avoid background repainting
-    SetBackgroundStyle(wxBG_STYLE_CUSTOM);
-
 #if wxUSE_COMCTL32_SAFELY
     wxWindow::SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
     wxWindow::SetForegroundColour(wxWindow::GetParent()->GetForegroundColour());
index e808841ca4c65c18321b1e8aece1aca63b4e0684..3707a1bad723a588ff0669d463198f6b6bfe16e9 100644 (file)
@@ -4722,14 +4722,6 @@ bool wxWindowMSW::HandleEraseBkgnd(WXHDC hdc)
 
 void wxWindowMSW::OnEraseBackground(wxEraseEvent& event)
 {
-    if ( GetBackgroundStyle() == wxBG_STYLE_CUSTOM )
-    {
-        // don't skip the event here, custom background means that the app
-        // is drawing it itself in its OnPaint(), so don't draw it at all
-        // now to avoid flicker
-        return;
-    }
-
     // standard non top level controls (i.e. except the dialogs) always erase
     // their background themselves in HandleCtlColor() or have some control-
     // specific ways to set the colours (common controls)
@@ -4739,6 +4731,14 @@ void wxWindowMSW::OnEraseBackground(wxEraseEvent& event)
         return;
     }
 
+    if ( GetBackgroundStyle() == wxBG_STYLE_CUSTOM )
+    {
+        // don't skip the event here, custom background means that the app
+        // is drawing it itself in its OnPaint(), so don't draw it at all
+        // now to avoid flicker
+        return;
+    }
+
     wxDC *dc = event.GetDC();
     if (!dc) return;
     wxMSWDCImpl *impl = (wxMSWDCImpl*) dc->GetImpl();