]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/intl.cpp
added wxFont::IsFixedWidth(), documented it and implemented for wxGTK/Motif
[wxWidgets.git] / src / common / intl.cpp
index 9875b2f1684df160026fae941e4a369911abcf53..9c7a2e30b7d6311cca59dd7767033da046ba00dd 100644 (file)
     #include "wx/fontmap.h"         // for CharsetToEncoding()
 #endif
 
+#if defined(__WXMAC__)
+  #include  "wx/mac/private.h"  // includes mac headers
+#endif
+
 // ----------------------------------------------------------------------------
 // simple types
 // ----------------------------------------------------------------------------
@@ -1240,7 +1244,7 @@ wxString wxLocale::GetSystemEncodingName()
 {
     wxString encname;
 
-#ifdef __WIN32__
+#if defined(__WIN32__) && !defined(__WXMICROWIN__)
     // FIXME: what is the error return value for GetACP()?
     UINT codepage = ::GetACP();
     encname.Printf(_T("windows-%u"), codepage);
@@ -1292,14 +1296,34 @@ wxString wxLocale::GetSystemEncodingName()
 /* static */
 wxFontEncoding wxLocale::GetSystemEncoding()
 {
-#ifdef __WIN32__
+#if defined(__WIN32__) && !defined(__WXMICROWIN__)
     UINT codepage = ::GetACP();
 
-    // wxWindows only knows about CP1250-1257
+    // wxWindows only knows about CP1250-1257, 932, 936, 949, 950
     if ( codepage >= 1250 && codepage <= 1257 )
     {
         return (wxFontEncoding)(wxFONTENCODING_CP1250 + codepage - 1250);
     }
+
+    if ( codepage == 932 )
+    {
+        return wxFONTENCODING_CP932;
+    }
+
+    if ( codepage == 936 )
+    {
+        return wxFONTENCODING_CP936;
+    }
+
+    if ( codepage == 949 )
+    {
+        return wxFONTENCODING_CP949;
+    }
+
+    if ( codepage == 950 )
+    {
+        return wxFONTENCODING_CP950;
+    }
 #elif defined(__UNIX_LIKE__) && wxUSE_FONTMAP
     wxString encname = GetSystemEncodingName();
     if ( !encname.empty() )
@@ -1344,7 +1368,7 @@ const wxMB2WXbuf wxLocale::GetString(const wxChar *szOrigString,
                                      const wxChar *szDomain) const
 {
   if ( wxIsEmpty(szOrigString) )
-      return szDomain;
+    return _T("");
 
   const char *pszTrans = NULL;
 #if wxUSE_UNICODE