778 lines · 28.7 KB · C
RawDownload
/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the w64 mingw-runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */#ifndef _WINNLS_#define _WINNLS_ #ifdef __cplusplusextern "C" {#endif #ifndef NONLS #define MAX_LEADBYTES 12#define MAX_DEFAULTCHAR 2 #define MB_PRECOMPOSED 0x00000001#define MB_COMPOSITE 0x00000002#define MB_USEGLYPHCHARS 0x00000004#define MB_ERR_INVALID_CHARS 0x00000008 #define WC_COMPOSITECHECK 0x00000200#define WC_DISCARDNS 0x00000010#define WC_SEPCHARS 0x00000020#define WC_DEFAULTCHAR 0x00000040#define WC_NO_BEST_FIT_CHARS 0x00000400 #define CT_CTYPE1 0x00000001#define CT_CTYPE2 0x00000002#define CT_CTYPE3 0x00000004 #define C1_UPPER 0x0001#define C1_LOWER 0x0002#define C1_DIGIT 0x0004#define C1_SPACE 0x0008#define C1_PUNCT 0x0010#define C1_CNTRL 0x0020#define C1_BLANK 0x0040#define C1_XDIGIT 0x0080#define C1_ALPHA 0x0100#define C1_DEFINED 0x0200 #define C2_LEFTTORIGHT 0x0001#define C2_RIGHTTOLEFT 0x0002 #define C2_EUROPENUMBER 0x0003#define C2_EUROPESEPARATOR 0x0004#define C2_EUROPETERMINATOR 0x0005#define C2_ARABICNUMBER 0x0006#define C2_COMMONSEPARATOR 0x0007 #define C2_BLOCKSEPARATOR 0x0008#define C2_SEGMENTSEPARATOR 0x0009#define C2_WHITESPACE 0x000A#define C2_OTHERNEUTRAL 0x000B #define C2_NOTAPPLICABLE 0x0000 #define C3_NONSPACING 0x0001#define C3_DIACRITIC 0x0002#define C3_VOWELMARK 0x0004#define C3_SYMBOL 0x0008 #define C3_KATAKANA 0x0010#define C3_HIRAGANA 0x0020#define C3_HALFWIDTH 0x0040#define C3_FULLWIDTH 0x0080#define C3_IDEOGRAPH 0x0100#define C3_KASHIDA 0x0200#define C3_LEXICAL 0x0400 #define C3_ALPHA 0x8000 #define C3_NOTAPPLICABLE 0x0000 #define NORM_IGNORECASE 0x00000001#define NORM_IGNORENONSPACE 0x00000002#define NORM_IGNORESYMBOLS 0x00000004 #define NORM_IGNOREKANATYPE 0x00010000#define NORM_IGNOREWIDTH 0x00020000 #define MAP_FOLDCZONE 0x00000010#define MAP_PRECOMPOSED 0x00000020#define MAP_COMPOSITE 0x00000040#define MAP_FOLDDIGITS 0x00000080#define MAP_EXPAND_LIGATURES 0x00002000 #define LCMAP_LOWERCASE 0x00000100#define LCMAP_UPPERCASE 0x00000200#define LCMAP_SORTKEY 0x00000400#define LCMAP_BYTEREV 0x00000800 #define LCMAP_HIRAGANA 0x00100000#define LCMAP_KATAKANA 0x00200000#define LCMAP_HALFWIDTH 0x00400000#define LCMAP_FULLWIDTH 0x00800000 #define LCMAP_LINGUISTIC_CASING 0x01000000 #define LCMAP_SIMPLIFIED_CHINESE 0x02000000#define LCMAP_TRADITIONAL_CHINESE 0x04000000 #define LGRPID_INSTALLED 0x00000001#define LGRPID_SUPPORTED 0x00000002 #define LCID_INSTALLED 0x00000001#define LCID_SUPPORTED 0x00000002#define LCID_ALTERNATE_SORTS 0x00000004 #define CP_INSTALLED 0x00000001#define CP_SUPPORTED 0x00000002 #define SORT_STRINGSORT 0x00001000 #define CSTR_LESS_THAN 1#define CSTR_EQUAL 2#define CSTR_GREATER_THAN 3 #define CP_ACP 0#define CP_OEMCP 1#define CP_MACCP 2#define CP_THREAD_ACP 3#define CP_SYMBOL 42 #define CP_UTF7 65000#define CP_UTF8 65001 #define CTRY_DEFAULT 0 #define CTRY_ALBANIA 355#define CTRY_ALGERIA 213#define CTRY_ARGENTINA 54#define CTRY_ARMENIA 374#define CTRY_AUSTRALIA 61#define CTRY_AUSTRIA 43#define CTRY_AZERBAIJAN 994#define CTRY_BAHRAIN 973#define CTRY_BELARUS 375#define CTRY_BELGIUM 32#define CTRY_BELIZE 501#define CTRY_BOLIVIA 591#define CTRY_BRAZIL 55#define CTRY_BRUNEI_DARUSSALAM 673#define CTRY_BULGARIA 359#define CTRY_CANADA 2#define CTRY_CARIBBEAN 1#define CTRY_CHILE 56#define CTRY_COLOMBIA 57#define CTRY_COSTA_RICA 506#define CTRY_CROATIA 385#define CTRY_CZECH 420#define CTRY_DENMARK 45#define CTRY_DOMINICAN_REPUBLIC 1#define CTRY_ECUADOR 593#define CTRY_EGYPT 20#define CTRY_EL_SALVADOR 503#define CTRY_ESTONIA 372#define CTRY_FAEROE_ISLANDS 298#define CTRY_FINLAND 358#define CTRY_FRANCE 33#define CTRY_GEORGIA 995#define CTRY_GERMANY 49#define CTRY_GREECE 30#define CTRY_GUATEMALA 502#define CTRY_HONDURAS 504#define CTRY_HONG_KONG 852#define CTRY_HUNGARY 36#define CTRY_ICELAND 354#define CTRY_INDIA 91#define CTRY_INDONESIA 62#define CTRY_IRAN 981#define CTRY_IRAQ 964#define CTRY_IRELAND 353#define CTRY_ISRAEL 972#define CTRY_ITALY 39#define CTRY_JAMAICA 1#define CTRY_JAPAN 81#define CTRY_JORDAN 962#define CTRY_KAZAKSTAN 7#define CTRY_KENYA 254#define CTRY_KUWAIT 965#define CTRY_KYRGYZSTAN 996#define CTRY_LATVIA 371#define CTRY_LEBANON 961#define CTRY_LIBYA 218#define CTRY_LIECHTENSTEIN 41#define CTRY_LITHUANIA 370#define CTRY_LUXEMBOURG 352#define CTRY_MACAU 853#define CTRY_MACEDONIA 389#define CTRY_MALAYSIA 60#define CTRY_MALDIVES 960#define CTRY_MEXICO 52#define CTRY_MONACO 33#define CTRY_MONGOLIA 976#define CTRY_MOROCCO 212#define CTRY_NETHERLANDS 31#define CTRY_NEW_ZEALAND 64#define CTRY_NICARAGUA 505#define CTRY_NORWAY 47#define CTRY_OMAN 968#define CTRY_PAKISTAN 92#define CTRY_PANAMA 507#define CTRY_PARAGUAY 595#define CTRY_PERU 51#define CTRY_PHILIPPINES 63#define CTRY_POLAND 48#define CTRY_PORTUGAL 351#define CTRY_PRCHINA 86#define CTRY_PUERTO_RICO 1#define CTRY_QATAR 974#define CTRY_ROMANIA 40#define CTRY_RUSSIA 7#define CTRY_SAUDI_ARABIA 966#define CTRY_SERBIA 381#define CTRY_SINGAPORE 65#define CTRY_SLOVAK 421#define CTRY_SLOVENIA 386#define CTRY_SOUTH_AFRICA 27#define CTRY_SOUTH_KOREA 82#define CTRY_SPAIN 34#define CTRY_SWEDEN 46#define CTRY_SWITZERLAND 41#define CTRY_SYRIA 963#define CTRY_TAIWAN 886#define CTRY_TATARSTAN 7#define CTRY_THAILAND 66#define CTRY_TRINIDAD_Y_TOBAGO 1#define CTRY_TUNISIA 216#define CTRY_TURKEY 90#define CTRY_UAE 971#define CTRY_UKRAINE 380#define CTRY_UNITED_KINGDOM 44#define CTRY_UNITED_STATES 1#define CTRY_URUGUAY 598#define CTRY_UZBEKISTAN 7#define CTRY_VENEZUELA 58#define CTRY_VIET_NAM 84#define CTRY_YEMEN 967#define CTRY_ZIMBABWE 263 #define LOCALE_NOUSEROVERRIDE 0x80000000#define LOCALE_USE_CP_ACP 0x40000000#define LOCALE_RETURN_NUMBER 0x20000000 #define LOCALE_ILANGUAGE 0x00000001#define LOCALE_SLANGUAGE 0x00000002#define LOCALE_SENGLANGUAGE 0x00001001#define LOCALE_SABBREVLANGNAME 0x00000003#define LOCALE_SNATIVELANGNAME 0x00000004 #define LOCALE_ICOUNTRY 0x00000005#define LOCALE_SCOUNTRY 0x00000006#define LOCALE_SENGCOUNTRY 0x00001002#define LOCALE_SABBREVCTRYNAME 0x00000007#define LOCALE_SNATIVECTRYNAME 0x00000008 #define LOCALE_IDEFAULTLANGUAGE 0x00000009#define LOCALE_IDEFAULTCOUNTRY 0x0000000A#define LOCALE_IDEFAULTCODEPAGE 0x0000000B#define LOCALE_IDEFAULTANSICODEPAGE 0x00001004#define LOCALE_IDEFAULTMACCODEPAGE 0x00001011 #define LOCALE_SLIST 0x0000000C#define LOCALE_IMEASURE 0x0000000D #define LOCALE_SDECIMAL 0x0000000E#define LOCALE_STHOUSAND 0x0000000F#define LOCALE_SGROUPING 0x00000010#define LOCALE_IDIGITS 0x00000011#define LOCALE_ILZERO 0x00000012#define LOCALE_INEGNUMBER 0x00001010#define LOCALE_SNATIVEDIGITS 0x00000013 #define LOCALE_SCURRENCY 0x00000014#define LOCALE_SINTLSYMBOL 0x00000015#define LOCALE_SMONDECIMALSEP 0x00000016#define LOCALE_SMONTHOUSANDSEP 0x00000017#define LOCALE_SMONGROUPING 0x00000018#define LOCALE_ICURRDIGITS 0x00000019#define LOCALE_IINTLCURRDIGITS 0x0000001A#define LOCALE_ICURRENCY 0x0000001B#define LOCALE_INEGCURR 0x0000001C #define LOCALE_SDATE 0x0000001D#define LOCALE_STIME 0x0000001E#define LOCALE_SSHORTDATE 0x0000001F#define LOCALE_SLONGDATE 0x00000020#define LOCALE_STIMEFORMAT 0x00001003#define LOCALE_IDATE 0x00000021#define LOCALE_ILDATE 0x00000022#define LOCALE_ITIME 0x00000023#define LOCALE_ITIMEMARKPOSN 0x00001005#define LOCALE_ICENTURY 0x00000024#define LOCALE_ITLZERO 0x00000025#define LOCALE_IDAYLZERO 0x00000026#define LOCALE_IMONLZERO 0x00000027#define LOCALE_S1159 0x00000028#define LOCALE_S2359 0x00000029 #define LOCALE_ICALENDARTYPE 0x00001009#define LOCALE_IOPTIONALCALENDAR 0x0000100B#define LOCALE_IFIRSTDAYOFWEEK 0x0000100C#define LOCALE_IFIRSTWEEKOFYEAR 0x0000100D #define LOCALE_SDAYNAME1 0x0000002A#define LOCALE_SDAYNAME2 0x0000002B#define LOCALE_SDAYNAME3 0x0000002C#define LOCALE_SDAYNAME4 0x0000002D#define LOCALE_SDAYNAME5 0x0000002E#define LOCALE_SDAYNAME6 0x0000002F#define LOCALE_SDAYNAME7 0x00000030#define LOCALE_SABBREVDAYNAME1 0x00000031#define LOCALE_SABBREVDAYNAME2 0x00000032#define LOCALE_SABBREVDAYNAME3 0x00000033#define LOCALE_SABBREVDAYNAME4 0x00000034#define LOCALE_SABBREVDAYNAME5 0x00000035#define LOCALE_SABBREVDAYNAME6 0x00000036#define LOCALE_SABBREVDAYNAME7 0x00000037#define LOCALE_SMONTHNAME1 0x00000038#define LOCALE_SMONTHNAME2 0x00000039#define LOCALE_SMONTHNAME3 0x0000003A#define LOCALE_SMONTHNAME4 0x0000003B#define LOCALE_SMONTHNAME5 0x0000003C#define LOCALE_SMONTHNAME6 0x0000003D#define LOCALE_SMONTHNAME7 0x0000003E#define LOCALE_SMONTHNAME8 0x0000003F#define LOCALE_SMONTHNAME9 0x00000040#define LOCALE_SMONTHNAME10 0x00000041#define LOCALE_SMONTHNAME11 0x00000042#define LOCALE_SMONTHNAME12 0x00000043#define LOCALE_SMONTHNAME13 0x0000100E#define LOCALE_SABBREVMONTHNAME1 0x00000044#define LOCALE_SABBREVMONTHNAME2 0x00000045#define LOCALE_SABBREVMONTHNAME3 0x00000046#define LOCALE_SABBREVMONTHNAME4 0x00000047#define LOCALE_SABBREVMONTHNAME5 0x00000048#define LOCALE_SABBREVMONTHNAME6 0x00000049#define LOCALE_SABBREVMONTHNAME7 0x0000004A#define LOCALE_SABBREVMONTHNAME8 0x0000004B#define LOCALE_SABBREVMONTHNAME9 0x0000004C#define LOCALE_SABBREVMONTHNAME10 0x0000004D#define LOCALE_SABBREVMONTHNAME11 0x0000004E#define LOCALE_SABBREVMONTHNAME12 0x0000004F#define LOCALE_SABBREVMONTHNAME13 0x0000100F #define LOCALE_SPOSITIVESIGN 0x00000050#define LOCALE_SNEGATIVESIGN 0x00000051#define LOCALE_IPOSSIGNPOSN 0x00000052#define LOCALE_INEGSIGNPOSN 0x00000053#define LOCALE_IPOSSYMPRECEDES 0x00000054#define LOCALE_IPOSSEPBYSPACE 0x00000055#define LOCALE_INEGSYMPRECEDES 0x00000056#define LOCALE_INEGSEPBYSPACE 0x00000057#define LOCALE_FONTSIGNATURE 0x00000058#define LOCALE_SISO639LANGNAME 0x00000059#define LOCALE_SISO3166CTRYNAME 0x0000005A #define LOCALE_IDEFAULTEBCDICCODEPAGE 0x00001012#define LOCALE_IPAPERSIZE 0x0000100A#define LOCALE_SENGCURRNAME 0x00001007#define LOCALE_SNATIVECURRNAME 0x00001008#define LOCALE_SYEARMONTH 0x00001006#define LOCALE_SSORTNAME 0x00001013#define LOCALE_IDIGITSUBSTITUTION 0x00001014 #define TIME_NOMINUTESORSECONDS 0x00000001#define TIME_NOSECONDS 0x00000002#define TIME_NOTIMEMARKER 0x00000004#define TIME_FORCE24HOURFORMAT 0x00000008 #define DATE_SHORTDATE 0x00000001#define DATE_LONGDATE 0x00000002#define DATE_USE_ALT_CALENDAR 0x00000004#define DATE_YEARMONTH 0x00000008#define DATE_LTRREADING 0x00000010#define DATE_RTLREADING 0x00000020 #define CAL_NOUSEROVERRIDE LOCALE_NOUSEROVERRIDE#define CAL_USE_CP_ACP LOCALE_USE_CP_ACP#define CAL_RETURN_NUMBER LOCALE_RETURN_NUMBER #define CAL_ICALINTVALUE 0x00000001#define CAL_SCALNAME 0x00000002#define CAL_IYEAROFFSETRANGE 0x00000003#define CAL_SERASTRING 0x00000004#define CAL_SSHORTDATE 0x00000005#define CAL_SLONGDATE 0x00000006#define CAL_SDAYNAME1 0x00000007#define CAL_SDAYNAME2 0x00000008#define CAL_SDAYNAME3 0x00000009#define CAL_SDAYNAME4 0x0000000a#define CAL_SDAYNAME5 0x0000000b#define CAL_SDAYNAME6 0x0000000c#define CAL_SDAYNAME7 0x0000000d#define CAL_SABBREVDAYNAME1 0x0000000e#define CAL_SABBREVDAYNAME2 0x0000000f#define CAL_SABBREVDAYNAME3 0x00000010#define CAL_SABBREVDAYNAME4 0x00000011#define CAL_SABBREVDAYNAME5 0x00000012#define CAL_SABBREVDAYNAME6 0x00000013#define CAL_SABBREVDAYNAME7 0x00000014#define CAL_SMONTHNAME1 0x00000015#define CAL_SMONTHNAME2 0x00000016#define CAL_SMONTHNAME3 0x00000017#define CAL_SMONTHNAME4 0x00000018#define CAL_SMONTHNAME5 0x00000019#define CAL_SMONTHNAME6 0x0000001a#define CAL_SMONTHNAME7 0x0000001b#define CAL_SMONTHNAME8 0x0000001c#define CAL_SMONTHNAME9 0x0000001d#define CAL_SMONTHNAME10 0x0000001e#define CAL_SMONTHNAME11 0x0000001f#define CAL_SMONTHNAME12 0x00000020#define CAL_SMONTHNAME13 0x00000021#define CAL_SABBREVMONTHNAME1 0x00000022#define CAL_SABBREVMONTHNAME2 0x00000023#define CAL_SABBREVMONTHNAME3 0x00000024#define CAL_SABBREVMONTHNAME4 0x00000025#define CAL_SABBREVMONTHNAME5 0x00000026#define CAL_SABBREVMONTHNAME6 0x00000027#define CAL_SABBREVMONTHNAME7 0x00000028#define CAL_SABBREVMONTHNAME8 0x00000029#define CAL_SABBREVMONTHNAME9 0x0000002a#define CAL_SABBREVMONTHNAME10 0x0000002b#define CAL_SABBREVMONTHNAME11 0x0000002c#define CAL_SABBREVMONTHNAME12 0x0000002d#define CAL_SABBREVMONTHNAME13 0x0000002e#define CAL_SYEARMONTH 0x0000002f#define CAL_ITWODIGITYEARMAX 0x00000030 #define ENUM_ALL_CALENDARS 0xffffffff #define CAL_GREGORIAN 1#define CAL_GREGORIAN_US 2#define CAL_JAPAN 3#define CAL_TAIWAN 4#define CAL_KOREA 5#define CAL_HIJRI 6#define CAL_THAI 7#define CAL_HEBREW 8#define CAL_GREGORIAN_ME_FRENCH 9#define CAL_GREGORIAN_ARABIC 10#define CAL_GREGORIAN_XLIT_ENGLISH 11#define CAL_GREGORIAN_XLIT_FRENCH 12 #define LGRPID_WESTERN_EUROPE 0x0001#define LGRPID_CENTRAL_EUROPE 0x0002#define LGRPID_BALTIC 0x0003#define LGRPID_GREEK 0x0004#define LGRPID_CYRILLIC 0x0005#define LGRPID_TURKISH 0x0006#define LGRPID_JAPANESE 0x0007#define LGRPID_KOREAN 0x0008#define LGRPID_TRADITIONAL_CHINESE 0x0009#define LGRPID_SIMPLIFIED_CHINESE 0x000a#define LGRPID_THAI 0x000b#define LGRPID_HEBREW 0x000c#define LGRPID_ARABIC 0x000d#define LGRPID_VIETNAMESE 0x000e#define LGRPID_INDIC 0x000f#define LGRPID_GEORGIAN 0x0010#define LGRPID_ARMENIAN 0x0011   typedef DWORD LGRPID;  typedef DWORD LCTYPE;  typedef DWORD CALTYPE;  typedef DWORD CALID;   typedef struct _cpinfo {    UINT MaxCharSize;    BYTE DefaultChar[MAX_DEFAULTCHAR];    BYTE LeadByte[MAX_LEADBYTES];  } CPINFO,*LPCPINFO;   typedef struct _cpinfoexA {    UINT MaxCharSize;    BYTE DefaultChar[MAX_DEFAULTCHAR];    BYTE LeadByte[MAX_LEADBYTES];    WCHAR UnicodeDefaultChar;    UINT CodePage;    CHAR CodePageName[MAX_PATH];  } CPINFOEXA,*LPCPINFOEXA;   typedef struct _cpinfoexW {    UINT MaxCharSize;    BYTE DefaultChar[MAX_DEFAULTCHAR];    BYTE LeadByte[MAX_LEADBYTES];    WCHAR UnicodeDefaultChar;    UINT CodePage;    WCHAR CodePageName[MAX_PATH];  } CPINFOEXW,*LPCPINFOEXW; #ifdef UNICODE  typedef CPINFOEXW CPINFOEX;  typedef LPCPINFOEXW LPCPINFOEX;#else  typedef CPINFOEXA CPINFOEX;

Lines 1–500 of 778.