added Thai/CP874 support for MSW

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Dimitri Schoolwerth
2005-06-16 14:16:50 +00:00
parent 3d94765e6e
commit 3c832d589d
3 changed files with 14 additions and 2 deletions

View File

@@ -73,6 +73,7 @@ static wxFontEncoding gs_encodings[] =
wxFONTENCODING_ISO8859_15, wxFONTENCODING_ISO8859_15,
wxFONTENCODING_KOI8, wxFONTENCODING_KOI8,
wxFONTENCODING_KOI8_U, wxFONTENCODING_KOI8_U,
wxFONTENCODING_CP874,
wxFONTENCODING_CP932, wxFONTENCODING_CP932,
wxFONTENCODING_CP936, wxFONTENCODING_CP936,
wxFONTENCODING_CP949, wxFONTENCODING_CP949,
@@ -117,6 +118,7 @@ static const wxChar* gs_encodingDescs[] =
wxTRANSLATE( "Western European with Euro (ISO-8859-15)" ), wxTRANSLATE( "Western European with Euro (ISO-8859-15)" ),
wxTRANSLATE( "KOI8-R" ), wxTRANSLATE( "KOI8-R" ),
wxTRANSLATE( "KOI8-U" ), wxTRANSLATE( "KOI8-U" ),
wxTRANSLATE( "Windows Thai (CP 874)" ),
wxTRANSLATE( "Windows Japanese (CP 932)" ), wxTRANSLATE( "Windows Japanese (CP 932)" ),
wxTRANSLATE( "Windows Chinese Simplified (CP 936)" ), wxTRANSLATE( "Windows Chinese Simplified (CP 936)" ),
wxTRANSLATE( "Windows Korean (CP 949)" ), wxTRANSLATE( "Windows Korean (CP 949)" ),
@@ -161,6 +163,7 @@ static const wxChar* gs_encodingNames[] =
wxT( "iso-8859-15" ), wxT( "iso-8859-15" ),
wxT( "koi8-r" ), wxT( "koi8-r" ),
wxT( "koi8-u" ), wxT( "koi8-u" ),
wxT( "windows-874" ),
wxT( "windows-932" ), wxT( "windows-932" ),
wxT( "windows-936" ), wxT( "windows-936" ),
wxT( "windows-949" ), wxT( "windows-949" ),
@@ -626,6 +629,10 @@ wxFontMapperBase::NonInteractiveCharsetToEncoding(const wxString& charset)
switch ( value ) switch ( value )
{ {
case 874:
encoding = wxFONTENCODING_CP874;
break;
case 932: case 932:
encoding = wxFONTENCODING_CP932; encoding = wxFONTENCODING_CP932;
break; break;

View File

@@ -2277,12 +2277,17 @@ wxFontEncoding wxLocale::GetSystemEncoding()
#if defined(__WIN32__) && !defined(__WXMICROWIN__) #if defined(__WIN32__) && !defined(__WXMICROWIN__)
UINT codepage = ::GetACP(); UINT codepage = ::GetACP();
// wxWidgets only knows about CP1250-1257, 932, 936, 949, 950 // wxWidgets only knows about CP1250-1257, 874, 932, 936, 949, 950
if ( codepage >= 1250 && codepage <= 1257 ) if ( codepage >= 1250 && codepage <= 1257 )
{ {
return (wxFontEncoding)(wxFONTENCODING_CP1250 + codepage - 1250); return (wxFontEncoding)(wxFONTENCODING_CP1250 + codepage - 1250);
} }
if ( codepage == 874 )
{
return wxFONTENCODING_CP874;
}
if ( codepage == 932 ) if ( codepage == 932 )
{ {
return wxFONTENCODING_CP932; return wxFONTENCODING_CP932;

View File

@@ -236,7 +236,7 @@ wxFontEncoding wxGetFontEncFromCharSet(int cs)
break; break;
case THAI_CHARSET: case THAI_CHARSET:
fontEncoding = wxFONTENCODING_CP437; fontEncoding = wxFONTENCODING_CP874;
break; break;
case SHIFTJIS_CHARSET: case SHIFTJIS_CHARSET: