Re: [PATCH] comctl32: Use correct font for themed headers. (try 2)
On 23.03.2015 10:51, Mark Harmstone wrote: Hi, Mark. Thanks for looking into this.
+ + if (theme) { + LOGFONTW lf; + HRESULT hr = GetThemeFont(theme, hdc, HP_HEADERITEM, state, TMT_FONT, &lf); + if (SUCCEEDED(hr)) { + font = CreateFontIndirectW(&lf); + if (!font) + TRACE("Failed to create font\n"); + else { + TRACE("font = %s\n", debugstr_w(lf.lfFaceName)); + oldfont = SelectObject(hdc, font); + created_font = TRUE; + } + } else { + font = (HFONT)SendMessageW(infoPtr->hwndSelf, WM_GETFONT, 0, 0); + oldfont = SelectObject(hdc, font); + } + } + DrawTextW (hdc, phdi->pszText, -1, &textRect, DT_LEFT|DT_VCENTER|DT_SINGLELINE|DT_CALCRECT); cw = textRect.right - textRect.left + 2 * infoPtr->iMargin; + + if (font) SelectObject(hdc, oldfont); + if (created_font) DeleteObject(font);
This seems to essentially duplicate GetThemeTextExtent(). Any reason why you can't use it instead?
participants (1)
-
Nikolay Sivov