correct comctl32 implementation

Andrew Green greeniekin at
Tue Mar 15 20:52:04 CDT 2011

I'm not sure how it will only use theming for version 6 without sxs. Will
the control have to manually check the manifest?

I am a bit familiar with how to use the themes to draw controls and that
shouldn't be an issue.

At the moment i'm more confused with this window class redirect thing. I've
been trying to find someone who knows a bit about it. Without much luck.
On Mar 15, 2011 9:19 PM, "Nikolay Sivov" <bunglehead at> wrote:
> On 3/15/2011 05:25, Frank Richter wrote:
>> On 11.03.2011 10:28, Nikolay Sivov wrote:
>>> In version 6 all user32 controls are reimplemented with theme support in
>>> comctl32, while user32 classes are kept of course. This is done with
>>> specific entries in comctl32 manifest, on load comctl32 all builtin
>>> classes are re-registered to the ones from comctl32. I definitely want
>>> to see some solution for that, having themed comctl32 controls while
>>> scrollbars and buttons are drawn with default appearance makes theme
>>> support kind of useless.
>> Buttons: technically, I don't think you need SxS class redirection for
>> that. The issue with the current “subclassing” is that, well, the button
>> can't really be subclassed for theming - IIRC some state changes don't
>> trigger a “paint” message but only cause internal painting - this can't
>> be caught lass function and breaks theming.
>> What MS supposedly did was to simply copy'n'paste the controls code into
>> comctl32 and add theming. That would certainly allow properly themed
>> buttons. And SxS class redirection...
> We need a way to make comctl32 controls available, not always but only
> when it's requested to use version 6.
> Native does that with class redirection.
> I'm not sure it's ok to use comctl32 always for builtin classes.
>> Scroll bars, are, IIRC, a different beast - window scroll bars are not
>> controls but handled/drawn by DefWndProc. No idea how native themes
>> these. Maybe some mojo to override/hook into DefWndProc?
> That's not true. Scrollbar could be a normal control too. I have no idea
> how themes work with window scrollbars though.
>> -f.r.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the wine-devel mailing list