changed wxWindow::Refresh() to refresh the window children as well (as wxGTK already did); documented this as correct behaviour

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2005-03-26 16:32:48 +00:00
parent 3601f639a5
commit d181e05329
3 changed files with 18 additions and 6 deletions

View File

@@ -1324,18 +1324,27 @@ void wxWindowMSW::Refresh(bool eraseBack, const wxRect *rect)
HWND hWnd = GetHwnd();
if ( hWnd )
{
RECT mswRect;
const RECT *pRect;
if ( rect )
{
RECT mswRect;
mswRect.left = rect->x;
mswRect.top = rect->y;
mswRect.right = rect->x + rect->width;
mswRect.bottom = rect->y + rect->height;
::InvalidateRect(hWnd, &mswRect, eraseBack);
pRect = &mswRect;
}
else
::InvalidateRect(hWnd, NULL, eraseBack);
{
pRect = NULL;
}
UINT flags = RDW_INVALIDATE | RDW_ALLCHILDREN;
if ( eraseBack )
flags |= RDW_ERASE;
::RedrawWindow(hWnd, pRect, NULL, flags);
}
}