Applied patch [ 668155 ] Refresh problem when msgbox is shown

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2003-01-24 12:29:06 +00:00
parent c8c5c7f62e
commit 82e5f91bff
2 changed files with 43 additions and 0 deletions

View File

@@ -391,6 +391,19 @@ void wxWindow::Refresh(bool eraseBackground, const wxRect *rectClient)
#endif // WXDEBUG_REFRESH
wxWindowNative::Refresh(eraseBackground, &rectWin);
// Refresh all sub controls if any.
wxWindowList::Node *node = GetChildren().GetFirst();
while ( node )
{
wxWindow *win = node->GetData();
// Only refresh sub controls when it is visible
// and when it is in the update region.
if(win->IsShown() && wxRegion(rectWin).Contains(win->GetRect()) != wxOutRegion)
win->Refresh(eraseBackground, &rectWin);
node = node->GetNext();
}
}
// ----------------------------------------------------------------------------