1 #ifndef _CHARDEFS_H 2 #define _CHARDEFS_H 3 /* chardefs.h */ 4 /*****************************************************************************/ 5 /* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only */ 6 /* */ 7 /* AS-Portierung */ 8 /* */ 9 /* system-dependant definition of national-specific characters */ 10 /* */ 11 /* History: 2001-10-13 /AArnold - created this header */ 12 /* */ 13 /*****************************************************************************/ 14 15 typedef enum 16 { 17 eCH_ae, 18 eCH_ee, 19 eCH_ie, 20 eCH_oe, 21 eCH_ue, 22 eCH_Ae, 23 eCH_Ee, 24 eCH_Ie, 25 eCH_Oe, 26 eCH_Ue, 27 eCH_sz, 28 eCH_e2, 29 eCH_mu, 30 eCH_agrave, 31 eCH_Agrave, 32 eCH_egrave, 33 eCH_Egrave, 34 eCH_igrave, 35 eCH_Igrave, 36 eCH_ograve, 37 eCH_Ograve, 38 eCH_ugrave, 39 eCH_Ugrave, 40 eCH_aacute, 41 eCH_Aacute, 42 eCH_eacute, 43 eCH_Eacute, 44 eCH_iacute, 45 eCH_Iacute, 46 eCH_oacute, 47 eCH_Oacute, 48 eCH_uacute, 49 eCH_Uacute, 50 eCH_acirc, 51 eCH_Acirc, 52 eCH_ecirc, 53 eCH_Ecirc, 54 eCH_icirc, 55 eCH_Icirc, 56 eCH_ocirc, 57 eCH_Ocirc, 58 eCH_ucirc, 59 eCH_Ucirc, 60 eCH_ccedil, 61 eCH_Ccedil, 62 eCH_ntilde, 63 eCH_Ntilde, 64 eCH_aring, 65 eCH_Aring, 66 eCH_aelig, 67 eCH_Aelig, 68 eCH_oslash, 69 eCH_Oslash, 70 eCH_iquest, 71 eCH_iexcl, 72 eCH_cnt 73 } tNLSCharacter; 74 75 #ifdef __cplusplus 76 # include "cppops.h" 77 DefCPPOps_Enum(tNLSCharacter) 78 #endif 79 80 typedef char tNLSCharacterTab[eCH_cnt][2]; 81 82 typedef enum 83 { 84 eCodepageASCII, 85 eCodepageISO8859_1, 86 eCodepageISO8859_15, 87 eCodepageKOI8_R, 88 eCodepage437, 89 eCodepage850, 90 eCodepage866, 91 eCodepage1251, 92 eCodepage1252, 93 eCodepageUTF8, 94 eCodepageCnt 95 } tCodepage; 96 97 #ifdef __cplusplus 98 # include "cppops.h" 99 DefCPPOps_Enum(tCodepage) 100 #endif 101 102 extern const tNLSCharacterTab *GetCharacterTab(tCodepage Codepage); 103 104 extern const char NLS_HtmlCharacterTab[eCH_cnt][9]; 105 106 extern int CharTab_GetLength(const tNLSCharacterTab *pTab, tNLSCharacter Character); 107 108 extern const char *CharTab_GetNULTermString(const tNLSCharacterTab *pTab, tNLSCharacter Character, char *pBuffer); 109 110 extern unsigned UTF8ToUnicode(const char* *ppChr); 111 112 extern void UnicodeToUTF8(char* *ppChr, unsigned Unicode); 113 114 #endif /* _CHARDEFS_H */ 115