1 /* 2 ****************************************************************** 3 ****************************************************************** 4 ******* ******** 5 ****** (C) 1988-2010 Tecplot, Inc. ******* 6 ******* ******** 7 ****************************************************************** 8 ****************************************************************** 9 */ 10 11 12 #if !defined Q_UNICODE_H_ 13 # define Q_UNICODE_H_ 14 15 #if defined EXTERN 16 #undef EXTERN 17 #endif 18 #if defined Q_UNICODEMODULE 19 #define EXTERN 20 #else 21 #define EXTERN extern 22 #endif 23 24 namespace tecplot 25 { 26 namespace strutil 27 { 28 29 // functions 30 EXTERN Boolean_t IsValidUtf8LeadByte(Byte_t ch); 31 EXTERN Boolean_t IsValidUtf8ContinuingByte(Byte_t ch); 32 EXTERN Boolean_t IsValidUtf8Byte(Byte_t ch); 33 34 EXTERN Boolean_t IsPrintable8BitAsciiChar(wchar_t wChar); 35 36 EXTERN Boolean_t IsValidUtf8String(const char *str); 37 EXTERN Boolean_t ShouldConvertWideStringToUtf8String(const wchar_t *str); 38 EXTERN void InitTranslatedStrings(); 39 EXTERN void CleanUpTranslatedStrings(); 40 41 EXTERN Boolean_t IsNullOrZeroLengthString(const char *S); 42 EXTERN Boolean_t IsNullOrZeroLengthString(tecplot::strutil::TranslatedString TS); 43 44 EXTERN Boolean_t IsEmptyString(const char *S); 45 EXTERN Boolean_t IsEmptyString(tecplot::strutil::TranslatedString S); 46 EXTERN Boolean_t IsEmptyString(const wchar_t* S); 47 48 EXTERN std::string AsciiToUtf8String(unsigned char asciiChar); 49 50 #if defined MSWIN 51 52 EXTERN std::string LookUpTranslation(std::string& strEnglish); 53 EXTERN void MsWinInitTranslatedStrings(); 54 55 EXTERN std::string WStringToString(std::wstring str); 56 EXTERN std::wstring StringToWString(std::string str); 57 58 EXTERN std::wstring MultiByteToWideChar(const char* Utf8Str, 59 unsigned int CodePage); 60 61 EXTERN std::string WideCharToMultiByte(const wchar_t* WideStr, 62 unsigned int CodePage); 63 64 // Conversion 65 EXTERN std::string WideCharToUtf8(const wchar_t* str); 66 EXTERN std::wstring Utf8ToWideChar(const char *str); 67 EXTERN char *getenv(const char *str); 68 69 #endif 70 71 } 72 } 73 74 #endif 75