X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3af5821cf964398265547e23341e50cb6f55c081..910b9fc5c090b6d53a41b1fde661bce751b430b9:/src/common/encconv.cpp diff --git a/src/common/encconv.cpp b/src/common/encconv.cpp index e3327c909a..d679bd9b3f 100644 --- a/src/common/encconv.cpp +++ b/src/common/encconv.cpp @@ -25,38 +25,35 @@ #include // conversion tables, generated by scripts in $(WXWIN)/misc/unictabl: -#ifdef __BORLANDC__ -#include "../common/unictabl.inc" +#if defined( __BORLANDC__ ) || defined(__DARWIN__) + #include "../common/unictabl.inc" #else -#include "unictabl.inc" + #include "unictabl.inc" #endif #if wxUSE_WCHAR_T -typedef wchar_t tchar; + typedef wchar_t tchar; #else -typedef char tchar; -#endif - -#ifdef __WXWINCE__ -#undef LINKAGEMODE -#define LINKAGEMODE __cdecl + typedef char tchar; #endif #ifdef __WXMAC__ + #include + #include + #include -#include "ATSUnicode.h" -#include "TextCommon.h" -#include "TextEncodingConverter.h" + #include "wx/fontutil.h" + #include "wx/mac/private.h" // includes mac headers -#include "wx/fontutil.h" -#include "wx/mac/private.h" // includes mac headers - -wxUint16 gMacEncodings[wxFONTENCODING_MACMAX-wxFONTENCODING_MACMIN+1][128] ; -bool gMacEncodingsInited[wxFONTENCODING_MACMAX-wxFONTENCODING_MACMIN+1] ; + wxUint16 gMacEncodings[wxFONTENCODING_MACMAX-wxFONTENCODING_MACMIN+1][128] ; + bool gMacEncodingsInited[wxFONTENCODING_MACMAX-wxFONTENCODING_MACMIN+1] ; +#endif +#ifdef __WXWINCE__ + #include "wx/msw/wince/missing.h" // for bsearch() #endif -static wxUint16* LINKAGEMODE GetEncTable(wxFontEncoding enc) +static wxUint16* GetEncTable(wxFontEncoding enc) { #ifdef __WXMAC__ if( enc >= wxFONTENCODING_MACMIN && enc <= wxFONTENCODING_MACMAX ) @@ -71,7 +68,7 @@ static wxUint16* LINKAGEMODE GetEncTable(wxFontEncoding enc) char s[2] ; s[1] = 0 ; ByteCount byteInLen, byteOutLen ; - for( char c = 255 ; c >= 128 ; --c ) + for( unsigned char c = 255 ; c >= 128 ; --c ) { s[0] = c ; status = TECConvertText(converter, (ConstTextPtr) &s , 1, &byteInLen, @@ -97,13 +94,14 @@ typedef struct { wxUint8 c; } CharsetItem; -extern "C" int LINKAGEMODE CompareCharsetItems(const void *i1, const void *i2) +extern "C" int wxCMPFUNC_CONV +CompareCharsetItems(const void *i1, const void *i2) { return ( ((CharsetItem*)i1) -> u - ((CharsetItem*)i2) -> u ); } -static CharsetItem* LINKAGEMODE BuildReverseTable(wxUint16 *tbl) +static CharsetItem* BuildReverseTable(wxUint16 *tbl) { CharsetItem *rev = new CharsetItem[128]; @@ -178,8 +176,6 @@ bool wxEncodingConverter::Init(wxFontEncoding input_enc, wxFontEncoding output_e for (i = 0; i < 128; i++) m_Table[128 + i] = (tchar)in_tbl[i]; return TRUE; } - // FIXME: write a substitute for bsearch -#ifndef __WXWINCE__ else // output !Unicode { CharsetItem *rev = BuildReverseTable(out_tbl); @@ -205,7 +201,6 @@ bool wxEncodingConverter::Init(wxFontEncoding input_enc, wxFontEncoding output_e delete[] rev; } -#endif // !__WXWINCE__ } return TRUE; @@ -417,7 +412,7 @@ static wxFontEncoding // Cyrillic { - /* unix */ {wxFONTENCODING_KOI8, wxFONTENCODING_ISO8859_5, STOP}, + /* unix */ {wxFONTENCODING_KOI8, wxFONTENCODING_KOI8_U, wxFONTENCODING_ISO8859_5, STOP}, /* windows */ {wxFONTENCODING_CP1251, STOP}, /* os2 */ {STOP}, /* mac */ {wxFONTENCODING_MACCYRILLIC, STOP}