commctrl: initial button theming support

Kevin Koltzau kevin at plop.org
Wed Jul 6 19:32:05 CDT 2005


On Sunday 03 July 2005 9:16 am, Frank Richter wrote:
> Add initial button theming support. Upon initialization, the "Button"
> class is subclassed. In case theming is activated, the subclass will
> take control of painting and state management; without theming, all
> theming-unrelated messages are forwarded to the old button class.

+  /* internal stuff */
+#define BUTTON_HOT	       0x80000000
+#define BUTTON_INTERNAL	       (BUTTON_HOT)

Under windows, the mouseover state is 0x200

+	theme = themingActive ? OpenThemeData( hWnd, themeClass ) : NULL;
+	set_button_theme( hWnd, theme );

Calling OpenThemeData with a handle associates that theme with the window,
which can then be retrieved with GetWindowTheme(hWnd), you don´t need to
track the window theme handle yourself





More information about the wine-devel mailing list