From b32c00055cfc780b2a265e8f1d94707283ffda4c Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov <dmitry@codeweavers.com> Date: Fri, 23 Feb 2001 01:32:05 +0000 Subject: [PATCH] Prepare background while drawing radio buttons and checkboxes. --- controls/button.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/controls/button.c b/controls/button.c index 1983dd17ceb..2fabeba6ee2 100644 --- a/controls/button.c +++ b/controls/button.c @@ -832,6 +832,10 @@ static void CB_Paint( WND *wndPtr, HDC hDC, WORD action ) /* Draw the check-box bitmap */ if (action == ODA_DRAWENTIRE || action == ODA_SELECT) { + /* Since WM_ERASEBKGND does nothing, first prepare background */ + if (action == ODA_SELECT) FillRect( hDC, &rbox, hBrush ); + else FillRect( hDC, &client, hBrush ); + if( TWEAK_WineLook == WIN31_LOOK ) { HDC hMemDC = CreateCompatibleDC( hDC ); @@ -841,9 +845,6 @@ static void CB_Paint( WND *wndPtr, HDC hDC, WORD action ) /* Check in case the client area is smaller than the checkbox bitmap */ if (delta < 0) delta = 0; - if (action == ODA_SELECT) FillRect( hDC, &rbox, hBrush ); - else FillRect( hDC, &client, hBrush ); - if (infoPtr->state & BUTTON_HIGHLIGHTED) x += 2 * checkBoxWidth; if (infoPtr->state & (BUTTON_CHECKED | BUTTON_3STATE)) x += checkBoxWidth; if (((wndPtr->dwStyle & 0x0f) == BS_RADIOBUTTON) || -- GitLab