| 1 | #ifndef __WINE_WINNLS_H | 
|---|
| 2 | #define __WINE_WINNLS_H | 
|---|
| 3 |  | 
|---|
| 4 | #ifdef HAVE_WCTYPE_H | 
|---|
| 5 |  | 
|---|
| 6 | /* Sun Bug Workaround */ | 
|---|
| 7 | #ifdef __WINE__ | 
|---|
| 8 | # undef wsprintf | 
|---|
| 9 | #endif | 
|---|
| 10 | #include <wctype.h> /* needed for towupper */ | 
|---|
| 11 | #endif | 
|---|
| 12 | #include "windef.h" | 
|---|
| 13 |  | 
|---|
| 14 | #define MB_PRECOMPOSED              0x00000001 | 
|---|
| 15 | #define MB_COMPOSITE                0x00000002 | 
|---|
| 16 | #define MB_USEGLYPHCHARS            0x00000004 | 
|---|
| 17 | #define MB_ERR_INVALID_CHARS        0x00000008 | 
|---|
| 18 |  | 
|---|
| 19 | #define LCID_INSTALLED              0x00000001 | 
|---|
| 20 |  | 
|---|
| 21 | /* flags to GetLocaleInfo */ | 
|---|
| 22 | #define  LOCALE_NOUSEROVERRIDE               0x80000000 | 
|---|
| 23 | #define  LOCALE_USE_CP_ACP                   0x40000000 | 
|---|
| 24 |  | 
|---|
| 25 | #define LOCALE_LOCALEINFOFLAGSMASK  0xC0000000 | 
|---|
| 26 |  | 
|---|
| 27 | /* When adding new defines, don't forget to add an entry to the | 
|---|
| 28 | * locale2id map in misc/ole2nls.c | 
|---|
| 29 | */ | 
|---|
| 30 | #define LOCALE_ILANGUAGE            0x00000001 | 
|---|
| 31 | #define LOCALE_SLANGUAGE            0x00000002 | 
|---|
| 32 | #define LOCALE_SENGLANGUAGE         0x00001001 | 
|---|
| 33 | #define LOCALE_SABBREVLANGNAME      0x00000003 | 
|---|
| 34 | #define LOCALE_SNATIVELANGNAME      0x00000004 | 
|---|
| 35 | #define LOCALE_ICOUNTRY             0x00000005 | 
|---|
| 36 | #define LOCALE_SCOUNTRY             0x00000006 | 
|---|
| 37 | #define LOCALE_SENGCOUNTRY          0x00001002 | 
|---|
| 38 | #define LOCALE_SABBREVCTRYNAME      0x00000007 | 
|---|
| 39 | #define LOCALE_SNATIVECTRYNAME      0x00000008 | 
|---|
| 40 | #define LOCALE_IDEFAULTLANGUAGE     0x00000009 | 
|---|
| 41 | #define LOCALE_IDEFAULTCOUNTRY      0x0000000A | 
|---|
| 42 | #define LOCALE_IDEFAULTCODEPAGE     0x0000000B | 
|---|
| 43 | #define LOCALE_IDEFAULTANSICODEPAGE 0x00001004 | 
|---|
| 44 | #define LOCALE_IDEFAULTMACCODEPAGE  0x00001011 | 
|---|
| 45 | #define LOCALE_SLIST                0x0000000C | 
|---|
| 46 | #define LOCALE_IMEASURE             0x0000000D | 
|---|
| 47 | #define LOCALE_SDECIMAL             0x0000000E | 
|---|
| 48 | #define LOCALE_STHOUSAND            0x0000000F | 
|---|
| 49 | #define LOCALE_SGROUPING            0x00000010 | 
|---|
| 50 | #define LOCALE_IDIGITS              0x00000011 | 
|---|
| 51 | #define LOCALE_ILZERO               0x00000012 | 
|---|
| 52 | #define LOCALE_INEGNUMBER           0x00001010 | 
|---|
| 53 | #define LOCALE_SNATIVEDIGITS        0x00000013 | 
|---|
| 54 | #define LOCALE_SCURRENCY            0x00000014 | 
|---|
| 55 | #define LOCALE_SINTLSYMBOL          0x00000015 | 
|---|
| 56 | #define LOCALE_SMONDECIMALSEP       0x00000016 | 
|---|
| 57 | #define LOCALE_SMONTHOUSANDSEP      0x00000017 | 
|---|
| 58 | #define LOCALE_SMONGROUPING         0x00000018 | 
|---|
| 59 | #define LOCALE_ICURRDIGITS          0x00000019 | 
|---|
| 60 | #define LOCALE_IINTLCURRDIGITS      0x0000001A | 
|---|
| 61 | #define LOCALE_ICURRENCY            0x0000001B | 
|---|
| 62 | #define LOCALE_INEGCURR             0x0000001C | 
|---|
| 63 | #define LOCALE_SDATE                0x0000001D | 
|---|
| 64 | #define LOCALE_STIME                0x0000001E | 
|---|
| 65 | #define LOCALE_SSHORTDATE           0x0000001F | 
|---|
| 66 | #define LOCALE_SLONGDATE            0x00000020 | 
|---|
| 67 | #define LOCALE_STIMEFORMAT          0x00001003 | 
|---|
| 68 | #define LOCALE_IDATE                0x00000021 | 
|---|
| 69 | #define LOCALE_ILDATE               0x00000022 | 
|---|
| 70 | #define LOCALE_ITIME                0x00000023 | 
|---|
| 71 | #define LOCALE_ITIMEMARKPOSN        0x00001005 | 
|---|
| 72 | #define LOCALE_ICENTURY             0x00000024 | 
|---|
| 73 | #define LOCALE_ITLZERO              0x00000025 | 
|---|
| 74 | #define LOCALE_IDAYLZERO            0x00000026 | 
|---|
| 75 | #define LOCALE_IMONLZERO            0x00000027 | 
|---|
| 76 | #define LOCALE_S1159                0x00000028 | 
|---|
| 77 | #define LOCALE_S2359                0x00000029 | 
|---|
| 78 | #define LOCALE_ICALENDARTYPE        0x00001009 | 
|---|
| 79 | #define LOCALE_IOPTIONALCALENDAR    0x0000100B | 
|---|
| 80 | #define LOCALE_IFIRSTDAYOFWEEK      0x0000100C | 
|---|
| 81 | #define LOCALE_IFIRSTWEEKOFYEAR     0x0000100D | 
|---|
| 82 | #define LOCALE_SDAYNAME1            0x0000002A | 
|---|
| 83 | #define LOCALE_SDAYNAME2            0x0000002B | 
|---|
| 84 | #define LOCALE_SDAYNAME3            0x0000002C | 
|---|
| 85 | #define LOCALE_SDAYNAME4            0x0000002D | 
|---|
| 86 | #define LOCALE_SDAYNAME5            0x0000002E | 
|---|
| 87 | #define LOCALE_SDAYNAME6            0x0000002F | 
|---|
| 88 | #define LOCALE_SDAYNAME7            0x00000030 | 
|---|
| 89 | #define LOCALE_SABBREVDAYNAME1      0x00000031 | 
|---|
| 90 | #define LOCALE_SABBREVDAYNAME2      0x00000032 | 
|---|
| 91 | #define LOCALE_SABBREVDAYNAME3      0x00000033 | 
|---|
| 92 | #define LOCALE_SABBREVDAYNAME4      0x00000034 | 
|---|
| 93 | #define LOCALE_SABBREVDAYNAME5      0x00000035 | 
|---|
| 94 | #define LOCALE_SABBREVDAYNAME6      0x00000036 | 
|---|
| 95 | #define LOCALE_SABBREVDAYNAME7      0x00000037 | 
|---|
| 96 | #define LOCALE_SMONTHNAME1          0x00000038 | 
|---|
| 97 | #define LOCALE_SMONTHNAME2          0x00000039 | 
|---|
| 98 | #define LOCALE_SMONTHNAME3          0x0000003A | 
|---|
| 99 | #define LOCALE_SMONTHNAME4          0x0000003B | 
|---|
| 100 | #define LOCALE_SMONTHNAME5          0x0000003C | 
|---|
| 101 | #define LOCALE_SMONTHNAME6          0x0000003D | 
|---|
| 102 | #define LOCALE_SMONTHNAME7          0x0000003E | 
|---|
| 103 | #define LOCALE_SMONTHNAME8          0x0000003F | 
|---|
| 104 | #define LOCALE_SMONTHNAME9          0x00000040 | 
|---|
| 105 | #define LOCALE_SMONTHNAME10         0x00000041 | 
|---|
| 106 | #define LOCALE_SMONTHNAME11         0x00000042 | 
|---|
| 107 | #define LOCALE_SMONTHNAME12         0x00000043 | 
|---|
| 108 | #define LOCALE_SMONTHNAME13         0x0000100E | 
|---|
| 109 | #define LOCALE_SABBREVMONTHNAME1    0x00000044 | 
|---|
| 110 | #define LOCALE_SABBREVMONTHNAME2    0x00000045 | 
|---|
| 111 | #define LOCALE_SABBREVMONTHNAME3    0x00000046 | 
|---|
| 112 | #define LOCALE_SABBREVMONTHNAME4    0x00000047 | 
|---|
| 113 | #define LOCALE_SABBREVMONTHNAME5    0x00000048 | 
|---|
| 114 | #define LOCALE_SABBREVMONTHNAME6    0x00000049 | 
|---|
| 115 | #define LOCALE_SABBREVMONTHNAME7    0x0000004A | 
|---|
| 116 | #define LOCALE_SABBREVMONTHNAME8    0x0000004B | 
|---|
| 117 | #define LOCALE_SABBREVMONTHNAME9    0x0000004C | 
|---|
| 118 | #define LOCALE_SABBREVMONTHNAME10   0x0000004D | 
|---|
| 119 | #define LOCALE_SABBREVMONTHNAME11   0x0000004E | 
|---|
| 120 | #define LOCALE_SABBREVMONTHNAME12   0x0000004F | 
|---|
| 121 | #define LOCALE_SABBREVMONTHNAME13   0x0000100F | 
|---|
| 122 | #define LOCALE_SPOSITIVESIGN        0x00000050 | 
|---|
| 123 | #define LOCALE_SNEGATIVESIGN        0x00000051 | 
|---|
| 124 | #define LOCALE_IPOSSIGNPOSN         0x00000052 | 
|---|
| 125 | #define LOCALE_INEGSIGNPOSN         0x00000053 | 
|---|
| 126 | #define LOCALE_IPOSSYMPRECEDES      0x00000054 | 
|---|
| 127 | #define LOCALE_IPOSSEPBYSPACE       0x00000055 | 
|---|
| 128 | #define LOCALE_INEGSYMPRECEDES      0x00000056 | 
|---|
| 129 | #define LOCALE_INEGSEPBYSPACE       0x00000057 | 
|---|
| 130 | #define  LOCALE_FONTSIGNATURE        0x00000058 | 
|---|
| 131 | #define LOCALE_SISO639LANGNAME      0x00000059 | 
|---|
| 132 | #define LOCALE_SISO3166CTRYNAME     0x0000005A | 
|---|
| 133 |  | 
|---|
| 134 | #ifdef __WIN32OS2__ | 
|---|
| 135 | #define LCID_INSTALLED            0x00000001  /* installed locale ids */ | 
|---|
| 136 | #define LCID_SUPPORTED            0x00000002  /* supported locale ids */ | 
|---|
| 137 | #endif | 
|---|
| 138 |  | 
|---|
| 139 | #define NORM_IGNORECASE                           1 | 
|---|
| 140 | #define NORM_IGNORENONSPACE                    2 | 
|---|
| 141 | #define NORM_IGNORESYMBOLS                     4 | 
|---|
| 142 | #define NORM_STRINGSORT                           0x1000 | 
|---|
| 143 | #define NORM_IGNOREKANATYPE                     0x00010000 | 
|---|
| 144 | #define NORM_IGNOREWIDTH                        0x00020000 | 
|---|
| 145 |  | 
|---|
| 146 | #define CP_ACP                                  0 | 
|---|
| 147 | #define CP_OEMCP                                1 | 
|---|
| 148 | #define CP_MACCP                                2 | 
|---|
| 149 | #define CP_THREAD_ACP                           3 | 
|---|
| 150 | #define CP_SYMBOL                               42 | 
|---|
| 151 | #define CP_UTF7                                 65000 | 
|---|
| 152 | #define CP_UTF8                                 65001 | 
|---|
| 153 |  | 
|---|
| 154 | #define WC_DISCARDNS                0x00000010 | 
|---|
| 155 | #define WC_SEPCHARS                 0x00000020 | 
|---|
| 156 | #define WC_DEFAULTCHAR              0x00000040 | 
|---|
| 157 | #define WC_COMPOSITECHECK           0x00000200 | 
|---|
| 158 | #define WC_NO_BEST_FIT_CHARS        0x00000400 | 
|---|
| 159 |  | 
|---|
| 160 | #define WC_DEFAULTCHECK                           0x00000100 | 
|---|
| 161 |  | 
|---|
| 162 | #define MAKELCID(l, s)                      (MAKELONG(l, s)) | 
|---|
| 163 |  | 
|---|
| 164 | #define LANGIDFROMLCID(lcid)    ((WORD)(lcid)) | 
|---|
| 165 | #define SORTIDFROMLCID(lcid)    ((WORD)((((DWORD)(lcid)) >> 16) & 0x0f)) | 
|---|
| 166 |  | 
|---|
| 167 | #define MAKELANGID(p, s)                 ((((WORD)(s))<<10) | (WORD)(p)) | 
|---|
| 168 | #define PRIMARYLANGID(l)                 ((WORD)(l) & 0x3ff) | 
|---|
| 169 | #define SUBLANGID(l)                        ((WORD)(l) >> 10) | 
|---|
| 170 |  | 
|---|
| 171 | #define LANG_SYSTEM_DEFAULT              (MAKELANGID(LANG_NEUTRAL, SUBLANG_SYS_DEFAULT)) | 
|---|
| 172 | #define LANG_USER_DEFAULT                (MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT)) | 
|---|
| 173 | #define LOCALE_SYSTEM_DEFAULT            (MAKELCID(LANG_SYSTEM_DEFAULT, SORT_DEFAULT)) | 
|---|
| 174 | #define LOCALE_USER_DEFAULT              (MAKELCID(LANG_USER_DEFAULT, SORT_DEFAULT)) | 
|---|
| 175 | #define LOCALE_NEUTRAL                      (MAKELCID(MAKELANGID(LANG_NEUTRAL,SUBLANG_NEUTRAL),SORT_DEFAULT)) | 
|---|
| 176 |  | 
|---|
| 177 |  | 
|---|
| 178 | /* Language IDs (were in winnt.h,  for some reason) */ | 
|---|
| 179 |  | 
|---|
| 180 |  | 
|---|
| 181 | /* Language IDs */ | 
|---|
| 182 |  | 
|---|
| 183 | /* FIXME: are the symbolic names correct for LIDs:  0x17, 0x20, 0x28, | 
|---|
| 184 | *   0x2a, 0x2b, 0x2c, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, | 
|---|
| 185 | *   0x37, 0x39, 0x3a, 0x3b, 0x3c, 0x3e, 0x3f, 0x41, 0x43, 0x44, | 
|---|
| 186 | *   0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, | 
|---|
| 187 | *   0x4f, 0x57 | 
|---|
| 188 | */ | 
|---|
| 189 | #define LANG_NEUTRAL                     0x00 | 
|---|
| 190 | #define LANG_AFRIKAANS                          0x36 | 
|---|
| 191 | #define LANG_ALBANIAN                           0x1c | 
|---|
| 192 | #define LANG_ARABIC                      0x01 | 
|---|
| 193 | #define LANG_ARMENIAN                           0x2b | 
|---|
| 194 | #define LANG_ASSAMESE                           0x4d | 
|---|
| 195 | #define LANG_AZERI                              0x2c | 
|---|
| 196 | #define LANG_BASQUE                      0x2d | 
|---|
| 197 | #define LANG_BENGALI                            0x45 | 
|---|
| 198 | #define LANG_BULGARIAN                   0x02 | 
|---|
| 199 | #define LANG_BYELORUSSIAN                0x23 | 
|---|
| 200 | #define LANG_CATALAN                     0x03 | 
|---|
| 201 | #define LANG_CHINESE                     0x04 | 
|---|
| 202 | #define LANG_SERBO_CROATIAN              0x1a | 
|---|
| 203 | #define LANG_CROATIAN                      LANG_SERBO_CROATIAN | 
|---|
| 204 | #define LANG_SERBIAN                       LANG_SERBO_CROATIAN | 
|---|
| 205 | #define LANG_CZECH                       0x05 | 
|---|
| 206 | #define LANG_DANISH                      0x06 | 
|---|
| 207 | #define LANG_DUTCH                       0x13 | 
|---|
| 208 | #define LANG_ENGLISH                     0x09 | 
|---|
| 209 | #define LANG_ESTONIAN                    0x25 | 
|---|
| 210 | #define LANG_FAEROESE                    0x38 | 
|---|
| 211 | #define LANG_FARSI                       0x29 | 
|---|
| 212 | #define LANG_FINNISH                     0x0b | 
|---|
| 213 | #define LANG_FRENCH                      0x0c | 
|---|
| 214 | #define LANG_GAELIC                             0x3c | 
|---|
| 215 | #define LANG_GEORGIAN                           0x37 | 
|---|
| 216 | #define LANG_GERMAN                      0x07 | 
|---|
| 217 | #define LANG_GREEK                       0x08 | 
|---|
| 218 | #define LANG_GUJARATI                           0x47 | 
|---|
| 219 | #define LANG_HEBREW                      0x0D | 
|---|
| 220 | #define LANG_HINDI                              0x39 | 
|---|
| 221 | #define LANG_HUNGARIAN                   0x0e | 
|---|
| 222 | #define LANG_ICELANDIC                   0x0f | 
|---|
| 223 | #define LANG_INDONESIAN                  0x21 | 
|---|
| 224 | #define LANG_ITALIAN                     0x10 | 
|---|
| 225 | #define LANG_JAPANESE                    0x11 | 
|---|
| 226 | #define LANG_KANNADA                            0x4b | 
|---|
| 227 | #define LANG_KAZAKH                             0x3f | 
|---|
| 228 | #define LANG_KONKANI                            0x57 | 
|---|
| 229 | #define LANG_KOREAN                      0x12 | 
|---|
| 230 | #define LANG_LATVIAN                     0x26 | 
|---|
| 231 | #define LANG_LITHUANIAN                  0x27 | 
|---|
| 232 | #define LANG_MACEDONIAN                         0x2f | 
|---|
| 233 | #define LANG_MALAY                              0x3e | 
|---|
| 234 | #define LANG_MALAYALAM                          0x4c | 
|---|
| 235 | #define LANG_MALTESE                            0x3a | 
|---|
| 236 | #define LANG_MAORI                              0x28 | 
|---|
| 237 | #define LANG_MARATHI                            0x4e | 
|---|
| 238 | #define LANG_NORWEGIAN                   0x14 | 
|---|
| 239 | #define LANG_ORIYA                              0x48 | 
|---|
| 240 | #define LANG_POLISH                      0x15 | 
|---|
| 241 | #define LANG_PORTUGUESE                  0x16 | 
|---|
| 242 | #define LANG_PUNJABI                            0x46 | 
|---|
| 243 | #define LANG_RHAETO_ROMANCE                  0x17 | 
|---|
| 244 | #define LANG_ROMANIAN                    0x18 | 
|---|
| 245 | #define LANG_RUSSIAN                     0x19 | 
|---|
| 246 | #define LANG_SAAMI                              0x3b | 
|---|
| 247 | #define LANG_SANSKRIT                           0x4f | 
|---|
| 248 | #define LANG_SLOVAK                      0x1b | 
|---|
| 249 | #define LANG_SLOVENIAN                   0x24 | 
|---|
| 250 | #define LANG_SORBIAN                     0x2e | 
|---|
| 251 | #define LANG_SPANISH                     0x0a | 
|---|
| 252 | #define LANG_SUTU                            0x30 | 
|---|
| 253 | #define LANG_SWAHILI                            0x41 | 
|---|
| 254 | #define LANG_SWEDISH                     0x1d | 
|---|
| 255 | #define LANG_TAMIL                              0x49 | 
|---|
| 256 | #define LANG_TATAR                              0x44 | 
|---|
| 257 | #define LANG_TELUGU                             0x4a | 
|---|
| 258 | #define LANG_THAI                        0x1e | 
|---|
| 259 | #define LANG_TSONGA                             0x31 | 
|---|
| 260 | #define LANG_TSWANA                             0x32 | 
|---|
| 261 | #define LANG_TURKISH                     0x1f | 
|---|
| 262 | #define LANG_UKRAINIAN                   0x22 | 
|---|
| 263 | #define LANG_URDU                            0x20 | 
|---|
| 264 | #define LANG_UZBEK                              0x43 | 
|---|
| 265 | #define LANG_VENDA                              0x33 | 
|---|
| 266 | #define LANG_VIETNAMESE                         0x2a | 
|---|
| 267 | #define LANG_XHOSA                              0x34 | 
|---|
| 268 | #define LANG_ZULU                            0x35 | 
|---|
| 269 | /* non standard; keep the number high enough (but < 0xff) */ | 
|---|
| 270 | #define LANG_ESPERANTO                          0x8f | 
|---|
| 271 | #define LANG_WALON                              0x90 | 
|---|
| 272 | #define LANG_CORNISH                            0x91 | 
|---|
| 273 | #define LANG_WELSH                              0x92 | 
|---|
| 274 | #define LANG_BRETON                             0x93 | 
|---|
| 275 |  | 
|---|
| 276 | /* Sublanguage definitions */ | 
|---|
| 277 | #define SUBLANG_NEUTRAL                  0x00    /* language neutral */ | 
|---|
| 278 | #define SUBLANG_DEFAULT                  0x01    /* user default */ | 
|---|
| 279 | #define SUBLANG_SYS_DEFAULT              0x02    /* system default */ | 
|---|
| 280 |  | 
|---|
| 281 | #define SUBLANG_ARABIC                   0x01 | 
|---|
| 282 | #define SUBLANG_ARABIC_SAUDI_ARABIA      0x01 | 
|---|
| 283 | #define SUBLANG_ARABIC_IRAQ              0x02 | 
|---|
| 284 | #define SUBLANG_ARABIC_EGYPT             0x03 | 
|---|
| 285 | #define SUBLANG_ARABIC_LIBYA             0x04 | 
|---|
| 286 | #define SUBLANG_ARABIC_ALGERIA           0x05 | 
|---|
| 287 | #define SUBLANG_ARABIC_MOROCCO           0x06 | 
|---|
| 288 | #define SUBLANG_ARABIC_TUNISIA           0x07 | 
|---|
| 289 | #define SUBLANG_ARABIC_OMAN              0x08 | 
|---|
| 290 | #define SUBLANG_ARABIC_YEMEN             0x09 | 
|---|
| 291 | #define SUBLANG_ARABIC_SYRIA             0x0a | 
|---|
| 292 | #define SUBLANG_ARABIC_JORDAN            0x0b | 
|---|
| 293 | #define SUBLANG_ARABIC_LEBANON           0x0c | 
|---|
| 294 | #define SUBLANG_ARABIC_KUWAIT            0x0d | 
|---|
| 295 | #define SUBLANG_ARABIC_UAE               0x0e | 
|---|
| 296 | #define SUBLANG_ARABIC_BAHRAIN           0x0f | 
|---|
| 297 | #define SUBLANG_ARABIC_QATAR             0x10 | 
|---|
| 298 | #define SUBLANG_CHINESE_TRADITIONAL      0x01 | 
|---|
| 299 | #define SUBLANG_CHINESE_SIMPLIFIED       0x02 | 
|---|
| 300 | #define SUBLANG_CHINESE_HONGKONG         0x03 | 
|---|
| 301 | #define SUBLANG_CHINESE_SINGAPORE        0x04 | 
|---|
| 302 | #define SUBLANG_CHINESE_MACAU            0x05 | 
|---|
| 303 | #define SUBLANG_DUTCH                    0x01 | 
|---|
| 304 | #define SUBLANG_DUTCH_BELGIAN            0x02 | 
|---|
| 305 | #define SUBLANG_DUTCH_SURINAM                0x03 | 
|---|
| 306 | #define SUBLANG_ENGLISH_US               0x01 | 
|---|
| 307 | #define SUBLANG_ENGLISH_UK               0x02 | 
|---|
| 308 | #define SUBLANG_ENGLISH_AUS              0x03 | 
|---|
| 309 | #define SUBLANG_ENGLISH_CAN              0x04 | 
|---|
| 310 | #define SUBLANG_ENGLISH_NZ               0x05 | 
|---|
| 311 | #define SUBLANG_ENGLISH_EIRE             0x06 | 
|---|
| 312 | #define SUBLANG_ENGLISH_SAFRICA          0x07 | 
|---|
| 313 | #define SUBLANG_ENGLISH_JAMAICA          0x08 | 
|---|
| 314 | #define SUBLANG_ENGLISH_CARRIBEAN        0x09 | 
|---|
| 315 | #define SUBLANG_ENGLISH_BELIZE           0x0a | 
|---|
| 316 | #define SUBLANG_ENGLISH_TRINIDAD         0x0b | 
|---|
| 317 | #define SUBLANG_ENGLISH_ZIMBABWE         0x0c | 
|---|
| 318 | #define SUBLANG_ENGLISH_PHILIPPINES      0x0d | 
|---|
| 319 | #define SUBLANG_FRENCH                   0x01 | 
|---|
| 320 | #define SUBLANG_FRENCH_BELGIAN           0x02 | 
|---|
| 321 | #define SUBLANG_FRENCH_CANADIAN          0x03 | 
|---|
| 322 | #define SUBLANG_FRENCH_SWISS             0x04 | 
|---|
| 323 | #define SUBLANG_FRENCH_LUXEMBOURG        0x05 | 
|---|
| 324 | #define SUBLANG_FRENCH_MONACO            0x06 | 
|---|
| 325 | #define SUBLANG_GERMAN                   0x01 | 
|---|
| 326 | #define SUBLANG_GERMAN_SWISS             0x02 | 
|---|
| 327 | #define SUBLANG_GERMAN_AUSTRIAN          0x03 | 
|---|
| 328 | #define SUBLANG_GERMAN_LUXEMBOURG        0x04 | 
|---|
| 329 | #define SUBLANG_GERMAN_LIECHTENSTEIN     0x05 | 
|---|
| 330 | #define SUBLANG_ITALIAN                  0x01 | 
|---|
| 331 | #define SUBLANG_ITALIAN_SWISS            0x02 | 
|---|
| 332 | #define SUBLANG_KOREAN                   0x01 | 
|---|
| 333 | #define SUBLANG_KOREAN_JOHAB             0x02 | 
|---|
| 334 | #define SUBLANG_NORWEGIAN_BOKMAL         0x01 | 
|---|
| 335 | #define SUBLANG_NORWEGIAN_NYNORSK        0x02 | 
|---|
| 336 | #define SUBLANG_PORTUGUESE               0x02 | 
|---|
| 337 | #define SUBLANG_PORTUGUESE_BRAZILIAN     0x01 | 
|---|
| 338 | #define SUBLANG_SPANISH                  0x01 | 
|---|
| 339 | #define SUBLANG_SPANISH_MEXICAN          0x02 | 
|---|
| 340 | #define SUBLANG_SPANISH_MODERN           0x03 | 
|---|
| 341 | #define SUBLANG_SPANISH_GUATEMALA        0x04 | 
|---|
| 342 | #define SUBLANG_SPANISH_COSTARICA        0x05 | 
|---|
| 343 | #define SUBLANG_SPANISH_PANAMA           0x06 | 
|---|
| 344 | #define SUBLANG_SPANISH_DOMINICAN        0x07 | 
|---|
| 345 | #define SUBLANG_SPANISH_VENEZUELA        0x08 | 
|---|
| 346 | #define SUBLANG_SPANISH_COLOMBIA         0x09 | 
|---|
| 347 | #define SUBLANG_SPANISH_PERU             0x0a | 
|---|
| 348 | #define SUBLANG_SPANISH_ARGENTINA        0x0b | 
|---|
| 349 | #define SUBLANG_SPANISH_ECUADOR          0x0c | 
|---|
| 350 | #define SUBLANG_SPANISH_CHILE            0x0d | 
|---|
| 351 | #define SUBLANG_SPANISH_URUGUAY          0x0e | 
|---|
| 352 | #define SUBLANG_SPANISH_PARAGUAY         0x0f | 
|---|
| 353 | #define SUBLANG_SPANISH_BOLIVIA          0x10 | 
|---|
| 354 | #define SUBLANG_SPANISH_EL_SALVADOR       0x11 | 
|---|
| 355 | #define SUBLANG_SPANISH_HONDURAS         0x12 | 
|---|
| 356 | #define SUBLANG_SPANISH_NICARAGUA        0x13 | 
|---|
| 357 | #define SUBLANG_SPANISH_PUERTO_RICO      0x14 | 
|---|
| 358 | /* FIXME: I don't know the symbolic names for those */ | 
|---|
| 359 | #define SUBLANG_ROMANIAN                     0x01 | 
|---|
| 360 | #define SUBLANG_ROMANIAN_MOLDAVIA         0x02 | 
|---|
| 361 | #define SUBLANG_RUSSIAN                         0x01 | 
|---|
| 362 | #define SUBLANG_RUSSIAN_MOLDAVIA          0x02 | 
|---|
| 363 | #define SUBLANG_CROATIAN                     0x01 | 
|---|
| 364 | #define SUBLANG_SERBIAN                         0x02 | 
|---|
| 365 | #define SUBLANG_SERBIAN_LATIN                0x03 | 
|---|
| 366 | #define SUBLANG_SWEDISH                         0x01 | 
|---|
| 367 | #define SUBLANG_SWEDISH_FINLAND              0x02 | 
|---|
| 368 | #define SUBLANG_LITHUANIAN                   0x01 | 
|---|
| 369 | #define SUBLANG_LITHUANIAN_CLASSIC        0x02 | 
|---|
| 370 | #define SUBLANG_AZERI                           0x01 | 
|---|
| 371 | #define SUBLANG_AZERI_CYRILLIC               0x02 | 
|---|
| 372 | #define SUBLANG_GAELIC                          0x01 | 
|---|
| 373 | #define SUBLANG_GAELIC_SCOTTISH              0x02 | 
|---|
| 374 | #define SUBLANG_MALAY                           0x01 | 
|---|
| 375 | #define SUBLANG_MALAY_BRUNEI_DARUSSALAM  0x02 | 
|---|
| 376 | #define SUBLANG_UZBEK                           0x01 | 
|---|
| 377 | #define SUBLANG_UZBEK_CYRILLIC               0x02 | 
|---|
| 378 | #define SUBLANG_URDU_PAKISTAN            0x01 | 
|---|
| 379 |  | 
|---|
| 380 | /* Sort definitions */ | 
|---|
| 381 | #define SORT_DEFAULT                     0x0 | 
|---|
| 382 | #define SORT_JAPANESE_XJIS               0x0 | 
|---|
| 383 | #define SORT_JAPANESE_UNICODE            0x1 | 
|---|
| 384 | #define SORT_CHINESE_BIG5                0x0 | 
|---|
| 385 | #define SORT_CHINESE_UNICODE             0x1 | 
|---|
| 386 | #define SORT_KOREAN_KSC                  0x0 | 
|---|
| 387 | #define SORT_KOREAN_UNICODE              0x1 | 
|---|
| 388 |  | 
|---|
| 389 |  | 
|---|
| 390 | /* Locale Dependent Mapping Flags */ | 
|---|
| 391 | #define LCMAP_LOWERCASE                  0x00000100  /* lower case letters */ | 
|---|
| 392 | #define LCMAP_UPPERCASE                  0x00000200  /* upper case letters */ | 
|---|
| 393 | #define LCMAP_SORTKEY                    0x00000400  /* WC sort key (normalize) */ | 
|---|
| 394 | #define LCMAP_BYTEREV                    0x00000800  /* byte reversal */ | 
|---|
| 395 |  | 
|---|
| 396 | #define SORT_STRINGSORT 0x00001000      /* take punctuation into account */ | 
|---|
| 397 |  | 
|---|
| 398 | #define LCMAP_HIRAGANA                   0x00100000  /* map katakana to hiragana */ | 
|---|
| 399 | #define LCMAP_KATAKANA                   0x00200000  /* map hiragana to katakana */ | 
|---|
| 400 | #define LCMAP_HALFWIDTH                  0x00400000  /* map double byte to single byte */ | 
|---|
| 401 | #define LCMAP_FULLWIDTH                  0x00800000  /* map single byte to double byte */ | 
|---|
| 402 |  | 
|---|
| 403 | /* Date Flags for GetDateFormat. */ | 
|---|
| 404 |  | 
|---|
| 405 | #define DATE_SHORTDATE         0x00000001  /* use short date picture */ | 
|---|
| 406 | #define DATE_LONGDATE          0x00000002  /* use long date picture */ | 
|---|
| 407 | #define DATE_USE_ALT_CALENDAR  0x00000004  /* use alternate calendar */ | 
|---|
| 408 | /* alt. calendar support is broken anyway */ | 
|---|
| 409 |  | 
|---|
| 410 | #define TIME_FORCE24HOURFORMAT 0x00000008  /* force 24 hour format*/ | 
|---|
| 411 | #define TIME_NOTIMEMARKER      0x00000004  /* show no AM/PM */ | 
|---|
| 412 | #define TIME_NOSECONDS         0x00000002  /* show no seconds */ | 
|---|
| 413 | #define TIME_NOMINUTESORSECONDS 0x0000001  /* show no minutes either */ | 
|---|
| 414 |  | 
|---|
| 415 | /* internal flags for GetDateFormat system */ | 
|---|
| 416 | #define DATE_DATEVARSONLY      0x00000100  /* only date stuff: yMdg */ | 
|---|
| 417 | #define TIME_TIMEVARSONLY      0x00000200  /* only time stuff: hHmst */ | 
|---|
| 418 | /* use this in a WineLib program if you really want all types */ | 
|---|
| 419 | #define LOCALE_TIMEDATEBOTH    0x00000300  /* full set */ | 
|---|
| 420 |  | 
|---|
| 421 | #ifndef HAVE_WCTYPE_H /* fight native wctype.h */ | 
|---|
| 422 | /* Prototypes for Unicode case conversion routines */ | 
|---|
| 423 | WCHAR towupper(WCHAR); | 
|---|
| 424 | WCHAR towlower(WCHAR); | 
|---|
| 425 | #endif | 
|---|
| 426 |  | 
|---|
| 427 | /* Definitions for IsTextUnicode() function */ | 
|---|
| 428 | #define IS_TEXT_UNICODE_ASCII16             0x0001 | 
|---|
| 429 | #define IS_TEXT_UNICODE_SIGNATURE        0x0008 | 
|---|
| 430 | #define IS_TEXT_UNICODE_REVERSE_ASCII16  0x0010 | 
|---|
| 431 | #define IS_TEXT_UNICODE_REVERSE_SIGNATURE 0x0080 | 
|---|
| 432 | #define IS_TEXT_UNICODE_ILLEGAL_CHARS    0x0100 | 
|---|
| 433 | #define IS_TEXT_UNICODE_ODD_LENGTH       0x0200 | 
|---|
| 434 |  | 
|---|
| 435 | /* Tests that we currently implement */ | 
|---|
| 436 | #define ITU_IMPLEMENTED_TESTS \ | 
|---|
| 437 | IS_TEXT_UNICODE_SIGNATURE| \ | 
|---|
| 438 | IS_TEXT_UNICODE_ODD_LENGTH | 
|---|
| 439 |  | 
|---|
| 440 |  | 
|---|
| 441 | /* Character Type Flags */ | 
|---|
| 442 | #ifdef CT_CTYPE1 | 
|---|
| 443 | #  undef CT_CTYPE1 | 
|---|
| 444 | #endif | 
|---|
| 445 |  | 
|---|
| 446 | #ifdef CT_CTYPE2 | 
|---|
| 447 | #  undef CT_CTYPE2 | 
|---|
| 448 | #endif | 
|---|
| 449 |  | 
|---|
| 450 | #ifdef CT_CTYPE3 | 
|---|
| 451 | #  undef CT_CTYPE3 | 
|---|
| 452 | #endif | 
|---|
| 453 |  | 
|---|
| 454 |  | 
|---|
| 455 | #define  CT_CTYPE1                          0x00000001  /* usual ctype */ | 
|---|
| 456 | #define  CT_CTYPE2                          0x00000002  /* bidirectional layout info */ | 
|---|
| 457 | #define  CT_CTYPE3                          0x00000004  /* textprocessing info */ | 
|---|
| 458 |  | 
|---|
| 459 |  | 
|---|
| 460 |  | 
|---|
| 461 | /* CType 1 Flag Bits */ | 
|---|
| 462 | #ifdef C1_UPPER | 
|---|
| 463 | #  undef C1_UPPER | 
|---|
| 464 | #endif | 
|---|
| 465 |  | 
|---|
| 466 | #ifdef C1_LOWER | 
|---|
| 467 | #  undef C1_LOWER | 
|---|
| 468 | #endif | 
|---|
| 469 |  | 
|---|
| 470 | #ifdef C1_DIGIT | 
|---|
| 471 | #  undef C1_DIGIT | 
|---|
| 472 | #endif | 
|---|
| 473 |  | 
|---|
| 474 | #ifdef C1_SPACE | 
|---|
| 475 | #  undef C1_SPACE | 
|---|
| 476 | #endif | 
|---|
| 477 |  | 
|---|
| 478 | #ifdef C1_PUNCT | 
|---|
| 479 | #  undef C1_PUNCT | 
|---|
| 480 | #endif | 
|---|
| 481 |  | 
|---|
| 482 | #ifdef C1_CNTRL | 
|---|
| 483 | #  undef C1_CNTRL | 
|---|
| 484 | #endif | 
|---|
| 485 |  | 
|---|
| 486 | #ifdef C1_BLANK | 
|---|
| 487 | #  undef C1_BLANK | 
|---|
| 488 | #endif | 
|---|
| 489 |  | 
|---|
| 490 | #ifdef C1_XDIGIT | 
|---|
| 491 | #  undef C1_XDIGIT | 
|---|
| 492 | #endif | 
|---|
| 493 |  | 
|---|
| 494 | #ifdef C1_ALPHA | 
|---|
| 495 | #  undef C1_ALPHA | 
|---|
| 496 | #endif | 
|---|
| 497 |  | 
|---|
| 498 |  | 
|---|
| 499 | #define C1_UPPER                         0x0001 | 
|---|
| 500 | #define C1_LOWER                         0x0002 | 
|---|
| 501 | #define C1_DIGIT                         0x0004 | 
|---|
| 502 | #define C1_SPACE                         0x0008 | 
|---|
| 503 | #define C1_PUNCT                         0x0010 | 
|---|
| 504 | #define C1_CNTRL                         0x0020 | 
|---|
| 505 | #define C1_BLANK                         0x0040 | 
|---|
| 506 | #define C1_XDIGIT                        0x0080 | 
|---|
| 507 | #define C1_ALPHA                         0x0100 | 
|---|
| 508 |  | 
|---|
| 509 |  | 
|---|
| 510 | /* CType 2 Flag Bits */ | 
|---|
| 511 | #ifdef C2_LEFTTORIGHT | 
|---|
| 512 | #  undef C2_LEFTTORIGHT | 
|---|
| 513 | #endif | 
|---|
| 514 |  | 
|---|
| 515 | #ifdef C2_RIGHTTOLEFT | 
|---|
| 516 | #  undef C2_RIGHTTOLEFT | 
|---|
| 517 | #endif | 
|---|
| 518 |  | 
|---|
| 519 | #ifdef C2_EUROPENUMBER | 
|---|
| 520 | #  undef C2_EUROPENUMBER | 
|---|
| 521 | #endif | 
|---|
| 522 |  | 
|---|
| 523 | #ifdef C2_EUROPESEPARATOR | 
|---|
| 524 | #  undef C2_EUROPESEPARATOR | 
|---|
| 525 | #endif | 
|---|
| 526 |  | 
|---|
| 527 | #ifdef C2_EUROPETERMINATOR | 
|---|
| 528 | #  undef C2_EUROPETERMINATOR | 
|---|
| 529 | #endif | 
|---|
| 530 |  | 
|---|
| 531 | #ifdef C2_ARABICNUMBER | 
|---|
| 532 | #  undef C2_ARABICNUMBER | 
|---|
| 533 | #endif | 
|---|
| 534 |  | 
|---|
| 535 | #ifdef C2_COMMONSEPARATOR | 
|---|
| 536 | #  undef C2_COMMONSEPARATOR | 
|---|
| 537 | #endif | 
|---|
| 538 |  | 
|---|
| 539 | #ifdef C2_BLOCKSEPARATOR | 
|---|
| 540 | #  undef C2_BLOCKSEPARATOR | 
|---|
| 541 | #endif | 
|---|
| 542 |  | 
|---|
| 543 | #ifdef C2_SEGMENTSEPARATOR | 
|---|
| 544 | #  undef C2_SEGMENTSEPARATOR | 
|---|
| 545 | #endif | 
|---|
| 546 |  | 
|---|
| 547 | #ifdef C2_WHITESPACE | 
|---|
| 548 | #  undef C2_WHITESPACE | 
|---|
| 549 | #endif | 
|---|
| 550 |  | 
|---|
| 551 | #ifdef C2_OTHERNEUTRAL | 
|---|
| 552 | #  undef C2_OTHERNEUTRAL | 
|---|
| 553 | #endif | 
|---|
| 554 |  | 
|---|
| 555 | #ifdef C2_NOTAPPLICABLE | 
|---|
| 556 | #  undef C2_NOTAPPLICABLE | 
|---|
| 557 | #endif | 
|---|
| 558 |  | 
|---|
| 559 |  | 
|---|
| 560 | #define  C2_LEFTTORIGHT                  0x0001 | 
|---|
| 561 | #define  C2_RIGHTTOLEFT                  0x0002 | 
|---|
| 562 | #define  C2_EUROPENUMBER                 0x0003 | 
|---|
| 563 | #define  C2_EUROPESEPARATOR              0x0004 | 
|---|
| 564 | #define  C2_EUROPETERMINATOR             0x0005 | 
|---|
| 565 | #define  C2_ARABICNUMBER                 0x0006 | 
|---|
| 566 | #define  C2_COMMONSEPARATOR              0x0007 | 
|---|
| 567 | #define  C2_BLOCKSEPARATOR               0x0008 | 
|---|
| 568 | #define  C2_SEGMENTSEPARATOR             0x0009 | 
|---|
| 569 | #define  C2_WHITESPACE                   0x000A | 
|---|
| 570 | #define  C2_OTHERNEUTRAL                 0x000B | 
|---|
| 571 | #define  C2_NOTAPPLICABLE                0x0000 | 
|---|
| 572 |  | 
|---|
| 573 | /* CType 3 Flag Bits */ | 
|---|
| 574 | #define  C3_NONSPACING                   0x0001 | 
|---|
| 575 | #define  C3_DIACRITIC                    0x0002 | 
|---|
| 576 | #define  C3_VOWELMARK                    0x0004 | 
|---|
| 577 | #define  C3_SYMBOL                       0x0008 | 
|---|
| 578 | #define  C3_KATAKANA                     0x0010 | 
|---|
| 579 | #define  C3_HIRAGANA                     0x0020 | 
|---|
| 580 | #define  C3_HALFWIDTH                    0x0040 | 
|---|
| 581 | #define  C3_FULLWIDTH                    0x0080 | 
|---|
| 582 | #define  C3_IDEOGRAPH                    0x0100 | 
|---|
| 583 | #define  C3_KASHIDA                      0x0200 | 
|---|
| 584 | #define  C3_LEXICAL                      0x0400 | 
|---|
| 585 | #define  C3_ALPHA                        0x8000 | 
|---|
| 586 | #define  C3_NOTAPPLICABLE                0x0000 | 
|---|
| 587 |  | 
|---|
| 588 | typedef DWORD CALTYPE; | 
|---|
| 589 | typedef DWORD CALID; | 
|---|
| 590 |  | 
|---|
| 591 | #if (defined(__IBMCPP__) || defined(__IBMC__)) | 
|---|
| 592 | typedef BOOL (CALLBACK tCALINFO_ENUMPROCA)(LPSTR); | 
|---|
| 593 | typedef BOOL (CALLBACK tCALINFO_ENUMPROCW)(LPWSTR); | 
|---|
| 594 | typedef tCALINFO_ENUMPROCA *CALINFO_ENUMPROCA; | 
|---|
| 595 | typedef tCALINFO_ENUMPROCW *CALINFO_ENUMPROCW; | 
|---|
| 596 | #else | 
|---|
| 597 | typedef BOOL (CALLBACK* CALINFO_ENUMPROCA)(LPSTR); | 
|---|
| 598 | typedef BOOL (CALLBACK* CALINFO_ENUMPROCW)(LPWSTR); | 
|---|
| 599 | #endif | 
|---|
| 600 |  | 
|---|
| 601 |  | 
|---|
| 602 | DECL_WINELIB_TYPE_AW(CALINFO_ENUMPROC) | 
|---|
| 603 |  | 
|---|
| 604 | BOOL  WINAPI EnumCalendarInfoA(CALINFO_ENUMPROCA lpCalInfoEnumProc,LCID Locale,CALID Calendar,CALTYPE CalType); | 
|---|
| 605 | BOOL  WINAPI EnumCalendarInfoW(CALINFO_ENUMPROCW lpCalInfoEnumProc,LCID Locale,CALID Calendar,CALTYPE CalType); | 
|---|
| 606 | #define EnumCalendarInfo WINELIB_NAME_AW(EnumCalendarInfo) | 
|---|
| 607 |  | 
|---|
| 608 | /* FIXME: This does not belong to an interface file */ | 
|---|
| 609 | UINT16      WINAPI CompareString16(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD); | 
|---|
| 610 | INT16       WINAPI GetLocaleInfo16(LCID,LCTYPE,LPSTR,INT16); | 
|---|
| 611 | BOOL16      WINAPI GetStringType16(LCID,DWORD,LPCSTR,INT16,LPWORD); | 
|---|
| 612 |  | 
|---|
| 613 |  | 
|---|
| 614 | LCID WINAPI ConvertDefaultLocale(LCID   Locale); | 
|---|
| 615 |  | 
|---|
| 616 | #ifdef __WIN32OS2__ | 
|---|
| 617 | typedef struct _currencyfmtA { | 
|---|
| 618 | UINT    NumDigits; | 
|---|
| 619 | UINT    LeadingZero; | 
|---|
| 620 | UINT    Grouping; | 
|---|
| 621 | LPSTR   lpDecimalSep; | 
|---|
| 622 | LPSTR   lpThousandSep; | 
|---|
| 623 | UINT    NegativeOrder; | 
|---|
| 624 | UINT    PositiveOrder; | 
|---|
| 625 | LPSTR   lpCurrencySymbol; | 
|---|
| 626 | } CURRENCYFMTA, *LPCURRENCYFMTA; | 
|---|
| 627 |  | 
|---|
| 628 | typedef struct _currencyfmtW { | 
|---|
| 629 | UINT    NumDigits; | 
|---|
| 630 | UINT    LeadingZero; | 
|---|
| 631 | UINT    Grouping; | 
|---|
| 632 | LPWSTR  lpDecimalSep; | 
|---|
| 633 | LPWSTR  lpThousandSep; | 
|---|
| 634 | UINT    NegativeOrder; | 
|---|
| 635 | UINT    PositiveOrder; | 
|---|
| 636 | LPWSTR  lpCurrencySymbol; | 
|---|
| 637 | } CURRENCYFMTW, *LPCURRENCYFMTW; | 
|---|
| 638 | #endif //__WIN32OS2__ | 
|---|
| 639 |  | 
|---|
| 640 | #endif  /* __WINE_WINNLS_H */ | 
|---|