Progress Bar: Fix Class Style & Repainting (resend2)
Robert Shearman
rob at codeweavers.com
Wed Sep 29 06:24:55 CDT 2004
Alexandre Julliard wrote:
>Robert Shearman <rob at codeweavers.com> writes:
>
>
>
>>Changelog:
>>- Fix class style to include the hbrBackground member.
>>- Fix repainting issues introduced by this change.
>>- Add WM_ERASEBKGND handler and remove background drawing code from
>>the WM_PAINT handler.
>>
>>
>
>Isn't that going to cause a lot of flicker?
>
Not in the normal case. Flicker is caused when then background is drawn
and then painted over by the foreground. I have kept the logic that only
draws the background if the position of the progress bar has decreased.
Admittedly, the invalidation in marquee mode will suffer from this
problem, but I suppose that could be worked around with some careful
RedrawWindow's.
>This was the reason for
>the existing code, because otherwise it looks really bad with apps
>that update the progress bar a lot.
>
>
The existing code is wrong. Apps that depend on WM_ERASEBKGND doing
something currently look really bad, no matter how often they update the
progress bar. It would be a shame to leave have this bug remain in an
otherwise completed control.
Rob
More information about the wine-devel
mailing list