Updown: keep track of WS_DISABLED

Peter Berg Larsen pebl at math.ku.dk
Fri Apr 15 07:34:53 CDT 2005


diff -u -p -r1.66 updown.c
--- dlls/comctl32/updown.c      25 Mar 2005 10:27:11 -0000      1.66
+++ dlls/comctl32/updown.c      14 Apr 2005 12:44:29 -0000
@@ -775,6 +775,8 @@ static LRESULT WINAPI UpDownWindowProc(H
            break;

        case WM_ENABLE:
+           infoPtr->dwStyle &= ~WS_DISABLED;
+           infoPtr->dwStyle |= (wParam ? 0 : WS_DISABLED);
            if (infoPtr->dwStyle & WS_DISABLED) UPDOWN_CancelMode (infoPtr);
            InvalidateRect (infoPtr->Self, NULL, FALSE);
            break;

I had to look twice at this - I think it would added cleaner with:

if (wParam)
    infoPtr->dwStyle &= ~WS_DISABLED;
else
    infoPtr->dwStyle |= WS_DISABLED;


or less clean

infoPtr->dwStyle &= ~WS_DISABLED;
if (!wParam)
    infoPtr->dwStyle |= WS_DISABLED;


or looking at the next diff line:


if (wParam)
    infoPtr->dwStyle &= ~WS_DISABLED;
else {
    infoPtr->dwStyle |= WS_DISABLED;
    UPDOWN_CancelMode(infoPtr);
}


Peter





More information about the wine-devel mailing list