Datetime scroll fixes

Robert Shearman rob at codeweavers.com
Thu Apr 14 13:33:38 CDT 2005


Duane Clark wrote:

> Changelog:
>     Hour '0' corresponds to 12AM.
>     Scroll cleanly.
>
>------------------------------------------------------------------------
>
>Index: dlls/comctl32/datetime.c
>===================================================================
>RCS file: /home/wine/wine/dlls/comctl32/datetime.c,v
>retrieving revision 1.55
>diff -u -p -r1.55 datetime.c
>--- dlls/comctl32/datetime.c	14 Apr 2005 11:31:17 -0000	1.55
>+++ dlls/comctl32/datetime.c	14 Apr 2005 18:20:35 -0000
>@@ -630,8 +642,12 @@ DATETIME_Refresh (DATETIME_INFO *infoPtr
>                 DeleteObject (hbr);
>                 oldTextColor = SetTextColor (hdc, comctl32_color.clrWindow);
>             }
>-            else
>+            else {
>+                HBRUSH hbr = CreateSolidBrush (comctl32_color.clrWindow);
>+                FillRect(hdc, field, hbr);
>+                DeleteObject (hbr);
>                 oldTextColor = SetTextColor (hdc, comctl32_color.clrWindowText);
>+            }
> 
>             /* draw the date text using the colour set above */
>             DrawTextW (hdc, txt, strlenW(txt), field, DT_RIGHT | DT_VCENTER | DT_SINGLELINE);
>  
>

This change is wrong. The reason you get the mess when using 
anti-aliased fonts is that you don't clear the background in the 
WM_VSCROLL handler. I fixed this in the patch I sent you.

Rob



More information about the wine-patches mailing list