]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/encconv.cpp
virtualized m_row/col height/widths arrays
[wxWidgets.git] / src / common / encconv.cpp
index 2d024fb6f9d50c6a5aaa3d9c10f0da78f269579f..3a5ce7faba7cdc1f298f47ef5ce91cf875af8fc4 100644 (file)
 
 #include <stdlib.h>
 
+// conversion tables, generated by scripts in $(WXWIN)/misc/unictabl:
+#ifdef __BORLANDC__
+#include "../common/unictabl.inc"
+#else
 #include "unictabl.inc" 
-// conversion tables, generated by scripts in $(WXWIN)/misc/unictabl
+#endif
 
 
-static wxUint16 *GetEncTable(wxFontEncoding enc)
+static wxUint16* LINKAGEMODE GetEncTable(wxFontEncoding enc)
 {
     for (int i = 0; encodings_list[i].table != NULL; i++)
     {
@@ -43,13 +47,13 @@ typedef struct {
 
 
 
-static int CompareCharsetItems(const void *i1, const void *i2)
+static int LINKAGEMODE CompareCharsetItems(const void *i1, const void *i2)
 {
     return ( ((CharsetItem*)i1) -> u - ((CharsetItem*)i2) -> u );
 }
 
 
-static CharsetItem* BuildReverseTable(wxUint16 *tbl)
+static CharsetItem* LINKAGEMODE BuildReverseTable(wxUint16 *tbl)
 {
     CharsetItem *rev = new CharsetItem[128];
     
@@ -283,9 +287,9 @@ wxString wxEncodingConverter::Convert(const wxString& input)
 #define STOP wxFONTENCODING_SYSTEM
 
 #define NUM_OF_PLATFORMS  4 /*must conform to enum wxPLATFORM_XXXX !!!*/
-#define ENC_PER_PLATFORM  3
+#define ENC_PER_PLATFORM  5
            // max no. of encodings for one language used on one platform
-           // Anybody thinks 3 is not enough? ;-)
+           // Anybody thinks 5 is not enough? ;-)
 
 static wxFontEncoding 
     EquivalentEncodings[][NUM_OF_PLATFORMS][ENC_PER_PLATFORM+1] = {
@@ -350,7 +354,16 @@ static wxFontEncoding
 
     // Cyrillic
     {
-        /* unix    */ {wxFONTENCODING_ISO8859_5, STOP},
+        /* unix    */ {wxFONTENCODING_ISO8859_13, wxFONTENCODING_ISO8859_4,
+                       wxFONTENCODING_ISO8859_15, wxFONTENCODING_ISO8859_1, STOP},
+        /* windows */ {wxFONTENCODING_CP1257, wxFONTENCODING_CP1252, STOP},
+        /* os2     */ {STOP},
+        /* mac     */ {STOP}   
+    },
+
+    // Russia and other KOI-8 users:
+    {
+        /* unix    */ {wxFONTENCODING_KOI8, wxFONTENCODING_ISO8859_5, STOP},
         /* windows */ {wxFONTENCODING_CP1251, STOP},
         /* os2     */ {STOP},
         /* mac     */ {STOP}