/*
* PROJECT: ReactOS win32 kernel mode subsystem
* LICENSE: GPL - See COPYING in the top level directory
- * FILE: subsystems/win32/win32k/objects/text.c
+ * FILE: win32ss/gdi/ntgdi/text.c
* PURPOSE: Text/Font
* PROGRAMMER:
*/
LPCWSTR lpString,
int cchString)
{
- return GreExtTextOutW(hdc, nXStart, nYStart, 0, NULL, (LPWSTR)lpString, cchString, NULL, 0);
+ return GreExtTextOutW(hdc, nXStart, nYStart, 0, NULL, lpString, cchString, NULL, 0);
}
/*
FASTCALL
GreGetTextExtentW(
HDC hDC,
- LPWSTR lpwsz,
+ LPCWSTR lpwsz,
INT cwc,
LPSIZE psize,
UINT flOpts)
FASTCALL
GreGetTextExtentExW(
HDC hDC,
- LPWSTR String,
+ LPCWSTR String,
ULONG Count,
ULONG MaxExtent,
PULONG Fit,
return Result;
}
+BOOL
+WINAPI
+GreGetTextMetricsW(
+ _In_ HDC hdc,
+ _Out_ LPTEXTMETRICW lptm)
+{
+ TMW_INTERNAL tmwi;
+ if (!ftGdiGetTextMetricsW(hdc, &tmwi)) return FALSE;
+ *lptm = tmwi.TextMetric;
+ return TRUE;
+}
+
DWORD
APIENTRY
NtGdiGetCharSet(HDC hDC)
HFONT hFont;
PTEXTOBJ TextObj;
NTSTATUS Status;
- INT fLen, ret;
+ SIZE_T fLen;
+ INT ret;
/* FIXME: Handle bAliasName */
TextObj = RealizeFontInit(hFont);
ASSERT(TextObj != NULL);
- fLen = wcslen(TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfFaceName) + 1;
+ fLen = wcslen(TextObj->FaceName) + 1;
if (FaceName != NULL)
{
Count = min(Count, fLen);
- Status = MmCopyToCaller(FaceName, TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfFaceName, Count * sizeof(WCHAR));
+ Status = MmCopyToCaller(FaceName, TextObj->FaceName, Count * sizeof(WCHAR));
if (!NT_SUCCESS(Status))
{
TEXTOBJ_UnlockText(TextObj);