comctl32: Improve DrawShadowText().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
57271ca186
commit
2771fd9758
|
@ -1592,12 +1592,33 @@ LRESULT WINAPI SetPathWordBreakProc(HWND hwnd, BOOL bSet)
|
||||||
*
|
*
|
||||||
* Draw text with shadow.
|
* Draw text with shadow.
|
||||||
*/
|
*/
|
||||||
int WINAPI DrawShadowText(HDC hdc, LPCWSTR pszText, UINT cch, RECT *rect, DWORD dwFlags,
|
int WINAPI DrawShadowText(HDC hdc, LPCWSTR text, UINT length, RECT *rect, DWORD flags,
|
||||||
COLORREF crText, COLORREF crShadow, int ixOffset, int iyOffset)
|
COLORREF crText, COLORREF crShadow, int offset_x, int offset_y)
|
||||||
{
|
{
|
||||||
FIXME("(%p, %s, %d, %p, %d, 0x%08x, 0x%08x, %d, %d): stub\n", hdc, debugstr_w(pszText), cch, rect, dwFlags,
|
int bkmode, ret;
|
||||||
crText, crShadow, ixOffset, iyOffset);
|
COLORREF clr;
|
||||||
return DrawTextW(hdc, pszText, cch, rect, DT_LEFT);
|
RECT r;
|
||||||
|
|
||||||
|
FIXME("(%p, %s, %d, %p, 0x%08x, 0x%08x, 0x%08x, %d, %d): semi-stub\n", hdc, debugstr_w(text),
|
||||||
|
length, rect, flags, crText, crShadow, offset_x, offset_y);
|
||||||
|
|
||||||
|
bkmode = SetBkMode(hdc, TRANSPARENT);
|
||||||
|
clr = SetTextColor(hdc, crShadow);
|
||||||
|
|
||||||
|
/* FIXME: for shadow we need to render normally, blur it, and blend with current background. */
|
||||||
|
r = *rect;
|
||||||
|
OffsetRect(&r, 1, 1);
|
||||||
|
DrawTextW(hdc, text, length, &r, flags);
|
||||||
|
|
||||||
|
SetTextColor(hdc, crText);
|
||||||
|
|
||||||
|
/* with text color on top of a shadow */
|
||||||
|
ret = DrawTextW(hdc, text, length, rect, flags);
|
||||||
|
|
||||||
|
SetTextColor(hdc, clr);
|
||||||
|
SetBkMode(hdc, bkmode);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
|
|
Loading…
Reference in New Issue