From: Julian Smart Date: Fri, 25 May 2007 16:51:53 +0000 (+0000) Subject: Fix for previous patch X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/921dd444fe87c122ec1559cccc10d248f92cfb6d Fix for previous patch git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/tbar95.cpp b/src/msw/tbar95.cpp index b766b3f2bc..2a9a61007e 100644 --- a/src/msw/tbar95.cpp +++ b/src/msw/tbar95.cpp @@ -1548,7 +1548,7 @@ void wxToolBar::OnEraseBackground(wxEraseEvent& event) } // Only draw a rebar theme on Vista, since it doesn't jive so well with XP - if ( !UseBgCol() && majorVersion >= 6) + if ( !UseBgCol() && majorVersion >= 6 ) { wxUxThemeEngine *theme = wxUxThemeEngine::GetIfActive(); if ( theme ) @@ -1727,16 +1727,7 @@ bool wxToolBar::HandlePaint(WXWPARAM wParam, WXLPARAM lParam) // does it intersect the control? wxRect rectItem; wxCopyRECTToRect(r, rectItem); - if ( rectCtrl.Intersects(rectItem) ) - { - // yes, do erase it! - dc.DrawRectangle(rectItem); - - // Necessary in case we use a no-paint-on-size - // style in the parent: the controls can disappear - control->Refresh(false); - } - if ( staticText && rectStaticText.Intersects(rectItem) ) + if ( rectCtrl.Intersects(rectItem) || (staticText && rectStaticText.Intersects(rectItem))) { // yes, do erase it! @@ -1747,7 +1738,7 @@ bool wxToolBar::HandlePaint(WXWPARAM wParam, WXLPARAM lParam) { // Don't use DrawThemeBackground } - else if (!UseBgCol() && majorVersion >= 6) + else if ( !UseBgCol() && majorVersion >= 6 ) { wxUxThemeEngine *theme = wxUxThemeEngine::GetIfActive(); if ( theme ) @@ -1772,7 +1763,17 @@ bool wxToolBar::HandlePaint(WXWPARAM wParam, WXLPARAM lParam) if (!haveRefreshed) dc.DrawRectangle(rectItem); + } + if ( rectCtrl.Intersects(rectItem) ) + { + // Necessary in case we use a no-paint-on-size + // style in the parent: the controls can disappear + control->Refresh(false); + } + + if ( staticText && rectStaticText.Intersects(rectItem) ) + { // Necessary in case we use a no-paint-on-size // style in the parent: the controls can disappear staticText->Refresh(false);