mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-03 04:13:31 +00:00
[Gdi32]
- Implement support for TCI_SRCLOCALE. svn path=/trunk/; revision=56829
This commit is contained in:
@@ -952,6 +952,7 @@ extern "C" {
|
||||
#define TCI_SRCCHARSET 1
|
||||
#define TCI_SRCCODEPAGE 2
|
||||
#define TCI_SRCFONTSIG 3
|
||||
#define TCI_SRCLOCALE 4096
|
||||
#if (_WIN32_WINNT >= 0x0500)
|
||||
#define SHADEBLENDCAPS 120
|
||||
#define COLORMGMTCAPS 121
|
||||
|
||||
@@ -1785,10 +1785,24 @@ TranslateCharsetInfo(
|
||||
case TCI_SRCCHARSET:
|
||||
while (index < MAXTCIINDEX && PtrToUlong(lpSrc) != FONT_tci[index].ciCharset) index++;
|
||||
break;
|
||||
case TCI_SRCLOCALE:
|
||||
{
|
||||
LCID lCid = (LCID)PtrToUlong(lpSrc);
|
||||
LOCALESIGNATURE LocSig;
|
||||
INT Ret = GetLocaleInfoW(lCid, LOCALE_FONTSIGNATURE, (LPWSTR)&LocSig, 0);
|
||||
if ( GetLocaleInfoW(lCid, LOCALE_FONTSIGNATURE, (LPWSTR)&LocSig, Ret))
|
||||
{
|
||||
while (index < MAXTCIINDEX && !(LocSig.lsCsbDefault[0]>>index & 0x0001)) index++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
default:
|
||||
GdiSetLastError(ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
if (index >= MAXTCIINDEX || FONT_tci[index].ciCharset == DEFAULT_CHARSET) return FALSE;
|
||||
DPRINT("Index %d Charset %d CodePage %d FontSig %d\n",
|
||||
index,FONT_tci[index].ciCharset,FONT_tci[index].ciACP,FONT_tci[index].fs.fsCsb[0]);
|
||||
memcpy(lpCs, &FONT_tci[index], sizeof(CHARSETINFO));
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user