ButtonState drawState;
pfThemedPaint paint = btnThemedPaintFunc[ dwStyle & BUTTON_TYPE ];
- if(!paint)
- return FALSE;
-
if(IsWindowEnabled(hwnd))
{
if(state & BST_PUSHED) drawState = STATE_PRESSED;
else drawState = STATE_DISABLED;
hDC = hParamDC ? hParamDC : BeginPaint(hwnd, &ps);
- paint(theme, hwnd, hDC, drawState, dtFlags, state & BST_FOCUS);
+ if (paint) paint(theme, hwnd, hDC, drawState, dtFlags, state & BST_FOCUS);
if (!hParamDC) EndPaint(hwnd, &ps);
return TRUE;
}
break;
}
+ case BM_SETCHECK:
+ case BM_SETSTATE:
+ theme = GetWindowTheme(hwnd);
+ if (theme) {
+ InvalidateRect(hwnd, NULL, FALSE);
+ }
+ return THEMING_CallOriginalClass(hwnd, msg, wParam, lParam);
+
default:
/* Call old proc */
return THEMING_CallOriginalClass(hwnd, msg, wParam, lParam);