00001 #ifndef __CHM_CHAMELEON_ENCODING_H__ 00002 #define __CHM_CHAMELEON_ENCODING_H__ 00003 00012 #include <CHM/CHMminimumInclude.h> 00013 00014 #ifndef __CHM_CHAMELEON_ENCODING_HANDLE_H__ 00015 #define __CHM_CHAMELEON_ENCODING_HANDLE_H__ 00016 typedef void* CHMchameleonEncodingHandle; 00017 #endif 00018 00019 00034 class CHMchameleonEncoding 00035 { 00036 public: 00038 CHMchameleonEncoding(); 00039 CHMchameleonEncoding(const CHMchameleonEncoding& Orig); 00040 CHMchameleonEncoding(CHMchameleonEncodingHandle Handle); 00041 00043 virtual ~CHMchameleonEncoding(); 00044 00046 CHMchameleonEncoding& operator=(const CHMchameleonEncoding& Orig); 00047 00049 CHMchameleonEncodingHandle GetHandle() const { return Handle; } 00050 00051 00058 static const char* GetCurrentTranslationLocale(); 00059 00060 00067 static void SetCurrentTranslationLocale(const char* NewLocale); 00068 00069 00074 static CHMint32 CountOfTranslationLocale(); 00075 00076 00082 static const char* TranslationLocale(CHMint32 LocaleIndex); 00083 00084 00085 private: 00086 CHMchameleonEncodingHandle Handle; 00087 }; 00088 00089 #endif // end of defensive include