implemented DrawCaptionTempA/W

(NtUserDrawCaptionTemp is still missing)

svn path=/trunk/; revision=26370
This commit is contained in:
Christoph von Wittich 2007-04-17 11:27:42 +00:00
parent 64a7ff0759
commit 0c39bba15b
3 changed files with 37 additions and 26 deletions

View file

@ -1102,13 +1102,13 @@ DrawCaption(HWND hWnd, HDC hDC, LPCRECT lprc, UINT uFlags)
} }
/* /*
* @unimplemented * @implemented
*/ */
BOOL BOOL
STDCALL STDCALL
DrawCaptionTempW( DrawCaptionTempW(
HWND hwnd, HWND hWnd,
HDC hdc, HDC hDC,
const RECT *rect, const RECT *rect,
HFONT hFont, HFONT hFont,
HICON hIcon, HICON hIcon,
@ -1116,12 +1116,11 @@ DrawCaptionTempW(
UINT uFlags UINT uFlags
) )
{ {
UNIMPLEMENTED; return NtUserDrawCaptionTemp(hWnd, hDC, rect, hFont, hIcon, str, uFlags);
return FALSE;
} }
/* /*
* @unimplemented * @implemented
*/ */
BOOL BOOL
STDCALL STDCALL
@ -1135,8 +1134,21 @@ DrawCaptionTempA(
UINT uFlags UINT uFlags
) )
{ {
UNIMPLEMENTED; LPWSTR strW;
return FALSE; INT len;
BOOL ret = FALSE;
if (!(uFlags & DC_TEXT) || !str)
return DrawCaptionTempW(hwnd, hdc, rect, hFont, hIcon, NULL, uFlags);
len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
if ((strW = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR))))
{
MultiByteToWideChar(CP_ACP, 0, str, -1, strW, len );
ret = DrawCaptionTempW(hwnd, hdc, rect, hFont, hIcon, strW, uFlags);
HeapFree(GetProcessHeap(), 0, strW);
}
return ret;
} }
/*********************************************************************** /***********************************************************************

View file

@ -716,16 +716,16 @@ NtUserDrawCaption(
LPCRECT lpRc, LPCRECT lpRc,
UINT uFlags); UINT uFlags);
DWORD BOOL
STDCALL STDCALL
NtUserDrawCaptionTemp( NtUserDrawCaptionTemp(
DWORD Unknown0, HWND hWnd,
DWORD Unknown1, HDC hDC,
DWORD Unknown2, const RECT *rect,
DWORD Unknown3, HFONT hFont,
DWORD Unknown4, HICON hIcon,
DWORD Unknown5, LPCWSTR str,
DWORD Unknown6); UINT uFlags);
BOOL BOOL
NTAPI NTAPI

View file

@ -180,20 +180,19 @@ NtUserDrawAnimatedRects(
return 0; return 0;
} }
DWORD BOOL
STDCALL STDCALL
NtUserDrawCaptionTemp( NtUserDrawCaptionTemp(
DWORD Unknown0, HWND hWnd,
DWORD Unknown1, HDC hDC,
DWORD Unknown2, const RECT *rect,
DWORD Unknown3, HFONT hFont,
DWORD Unknown4, HICON hIcon,
DWORD Unknown5, LPCWSTR str,
DWORD Unknown6) UINT uFlags)
{ {
UNIMPLEMENTED UNIMPLEMENTED
return FALSE;
return 0;
} }
BOOL BOOL