Author: gadamopoulos
Date: Fri May 5 10:55:12 2017
New Revision: 74480
URL:
http://svn.reactos.org/svn/reactos?rev=74480&view=rev
Log:
[COMCTL32] Toolbar: Use DrawThemeText when themes are enabled. CORE-12789
Modified:
trunk/reactos/dll/win32/comctl32/toolbar.c
Modified: trunk/reactos/dll/win32/comctl32/toolbar.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/toolbar…
==============================================================================
--- trunk/reactos/dll/win32/comctl32/toolbar.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/comctl32/toolbar.c [iso-8859-1] Fri May 5 10:55:12 2017
@@ -617,6 +617,9 @@
COLORREF clrOldBk = 0;
int oldBkMode = 0;
UINT state = tbcd->nmcd.uItemState;
+#ifdef __REACTOS__
+ HTHEME theme = GetWindowTheme (infoPtr->hwndSelf);
+#endif
/* draw text */
if (lpText && infoPtr->nMaxTextRows > 0) {
@@ -646,6 +649,25 @@
clrOld = SetTextColor (hdc, tbcd->clrText);
}
+#ifdef __REACTOS__
+ if (theme)
+ {
+ int partId = TP_BUTTON;
+ int stateId = TS_NORMAL;
+
+ if (state & CDIS_DISABLED)
+ stateId = TS_DISABLED;
+ else if (state & CDIS_SELECTED)
+ stateId = TS_PRESSED;
+ else if (state & CDIS_CHECKED)
+ stateId = (state & CDIS_HOT) ? TS_HOTCHECKED : TS_HOT;
+ else if (state & CDIS_HOT)
+ stateId = TS_HOT;
+
+ DrawThemeText(theme, hdc, partId, stateId, lpText, -1, infoPtr->dwDTFlags, 0,
rcText);
+ }
+ else
+#endif
DrawTextW (hdc, lpText, -1, rcText, infoPtr->dwDTFlags);
SetTextColor (hdc, clrOld);
if ((state & CDIS_MARKED) && !(dwItemCDFlag & TBCDRF_NOMARK))