Diff

Not logged in

Differences From Artifact [7ac912f533a75996]:

To Artifact [36a7fbecd1a8b466]:


5 * * 5 * * 6 * Translated from MinGW Windows headers * 6 * Translated from MinGW Windows headers * 7 * by Stewart Gordon * 7 * by Stewart Gordon * 8 * * 8 * * 9 * Placed into public domain * 9 * Placed into public domain * 10 \***********************************************************************/ 10 \***********************************************************************/ 11 module win32.winnls; 11 module win32.winnls; 12 pragma(lib, "kernel32.lib"); | 12 pragma(lib, "kernel32"); 13 13 14 private import win32.basetsd, win32.w32api, win32.winbase, win32.windef; 14 private import win32.basetsd, win32.w32api, win32.winbase, win32.windef; 15 15 16 alias DWORD LCTYPE, CALTYPE, CALID, LGRPID, GEOID, GEOTYPE, GEOCLASS; 16 alias DWORD LCTYPE, CALTYPE, CALID, LGRPID, GEOID, GEOTYPE, GEOCLASS; 17 17 18 const size_t 18 const size_t 19 MAX_DEFAULTCHAR = 2, 19 MAX_DEFAULTCHAR = 2, ................................................................................................................................................................................ 461 LGRPID_ARABIC, 461 LGRPID_ARABIC, 462 LGRPID_VIETNAMESE, 462 LGRPID_VIETNAMESE, 463 LGRPID_INDIC, 463 LGRPID_INDIC, 464 LGRPID_GEORGIAN, 464 LGRPID_GEORGIAN, 465 LGRPID_ARMENIAN // = 17 465 LGRPID_ARMENIAN // = 17 466 } 466 } 467 467 468 static if (WINVER >= 0x500) { | 468 static if (_WIN32_WINNT >= 0x500) { 469 enum : LCTYPE { 469 enum : LCTYPE { 470 LOCALE_SYEARMONTH = 0x1006, 470 LOCALE_SYEARMONTH = 0x1006, 471 LOCALE_SENGCURRNAME = 0x1007, 471 LOCALE_SENGCURRNAME = 0x1007, 472 LOCALE_SNATIVECURRNAME = 0x1008, 472 LOCALE_SNATIVECURRNAME = 0x1008, 473 LOCALE_IDEFAULTEBCDICCODEPAGE = 0x1012, 473 LOCALE_IDEFAULTEBCDICCODEPAGE = 0x1012, 474 LOCALE_SSORTNAME = 0x1013, 474 LOCALE_SSORTNAME = 0x1013, 475 LOCALE_IDIGITSUBSTITUTION = 0x1014, 475 LOCALE_IDIGITSUBSTITUTION = 0x1014, ................................................................................................................................................................................ 487 enum : CALTYPE { 487 enum : CALTYPE { 488 CAL_SYEARMONTH = 47, 488 CAL_SYEARMONTH = 47, 489 CAL_ITWODIGITYEARMAX = 48, 489 CAL_ITWODIGITYEARMAX = 48, 490 CAL_NOUSEROVERRIDE = LOCALE_NOUSEROVERRIDE, 490 CAL_NOUSEROVERRIDE = LOCALE_NOUSEROVERRIDE, 491 CAL_RETURN_NUMBER = LOCALE_RETURN_NUMBER, 491 CAL_RETURN_NUMBER = LOCALE_RETURN_NUMBER, 492 CAL_USE_CP_ACP = LOCALE_USE_CP_ACP 492 CAL_USE_CP_ACP = LOCALE_USE_CP_ACP 493 } 493 } 494 } // (WINVER >= 0x500) | 494 } // (_WIN32_WINNT >= 0x500) 495 495 496 extern (Windows) { 496 extern (Windows) { 497 alias BOOL function(LPSTR) CALINFO_ENUMPROCA; 497 alias BOOL function(LPSTR) CALINFO_ENUMPROCA; 498 alias BOOL function(LPWSTR) CALINFO_ENUMPROCW; 498 alias BOOL function(LPWSTR) CALINFO_ENUMPROCW; 499 alias BOOL function(LPSTR, CALID) CALINFO_ENUMPROCEXA; 499 alias BOOL function(LPSTR, CALID) CALINFO_ENUMPROCEXA; 500 alias BOOL function(LPWSTR, CALID) CALINFO_ENUMPROCEXW; 500 alias BOOL function(LPWSTR, CALID) CALINFO_ENUMPROCEXW; 501 alias BOOL function(LGRPID, LPSTR, LPSTR, DWORD, LONG_PTR) 501 alias BOOL function(LGRPID, LPSTR, LPSTR, DWORD, LONG_PTR) ................................................................................................................................................................................ 641 int FoldStringW(DWORD, LPCWSTR, int, LPWSTR, int); 641 int FoldStringW(DWORD, LPCWSTR, int, LPWSTR, int); 642 UINT GetACP(); 642 UINT GetACP(); 643 int GetCalendarInfoA(LCID, CALID, CALTYPE, LPSTR, int, LPDWORD); 643 int GetCalendarInfoA(LCID, CALID, CALTYPE, LPSTR, int, LPDWORD); 644 int GetCalendarInfoW(LCID, CALID, CALTYPE, LPWSTR, int, LPDWORD); 644 int GetCalendarInfoW(LCID, CALID, CALTYPE, LPWSTR, int, LPDWORD); 645 BOOL GetCPInfo(UINT, LPCPINFO); 645 BOOL GetCPInfo(UINT, LPCPINFO); 646 BOOL GetCPInfoExA(UINT, DWORD, LPCPINFOEXA); 646 BOOL GetCPInfoExA(UINT, DWORD, LPCPINFOEXA); 647 BOOL GetCPInfoExW(UINT, DWORD, LPCPINFOEXW); 647 BOOL GetCPInfoExW(UINT, DWORD, LPCPINFOEXW); 648 int GetCurrencyFormatA(LCID, DWORD, LPCSTR, CPtr!(CURRENCYFMTA), LPSTR, | 648 int GetCurrencyFormatA(LCID, DWORD, LPCSTR, const(CURRENCYFMTA)*, LPSTR 649 int GetCurrencyFormatW(LCID, DWORD, LPCWSTR, CPtr!(CURRENCYFMTW), LPWST | 649 int GetCurrencyFormatW(LCID, DWORD, LPCWSTR, const(CURRENCYFMTW)*, LPWS 650 int); 650 int); 651 int GetDateFormatA(LCID, DWORD, CPtr!(SYSTEMTIME), LPCSTR, LPSTR, int); | 651 int GetDateFormatA(LCID, DWORD, const(SYSTEMTIME)*, LPCSTR, LPSTR, int) 652 int GetDateFormatW(LCID, DWORD, CPtr!(SYSTEMTIME), LPCWSTR, LPWSTR, int | 652 int GetDateFormatW(LCID, DWORD, const(SYSTEMTIME)*, LPCWSTR, LPWSTR, in 653 int GetGeoInfoA(GEOID, GEOTYPE, LPSTR, int, LANGID); 653 int GetGeoInfoA(GEOID, GEOTYPE, LPSTR, int, LANGID); 654 int GetGeoInfoW(GEOID, GEOTYPE, LPWSTR, int, LANGID); 654 int GetGeoInfoW(GEOID, GEOTYPE, LPWSTR, int, LANGID); 655 int GetLocaleInfoA(LCID, LCTYPE, LPSTR, int); 655 int GetLocaleInfoA(LCID, LCTYPE, LPSTR, int); 656 int GetLocaleInfoW(LCID, LCTYPE, LPWSTR, int); 656 int GetLocaleInfoW(LCID, LCTYPE, LPWSTR, int); 657 BOOL GetNLSVersion(NLS_FUNCTION, LCID, LPNLSVERSIONINFO); 657 BOOL GetNLSVersion(NLS_FUNCTION, LCID, LPNLSVERSIONINFO); 658 int GetNumberFormatA(LCID, DWORD, LPCSTR, CPtr!(NUMBERFMTA), LPSTR, int | 658 int GetNumberFormatA(LCID, DWORD, LPCSTR, const(NUMBERFMTA)*, LPSTR, in 659 int GetNumberFormatW(LCID, DWORD, LPCWSTR, CPtr!(NUMBERFMTW), LPWSTR, i | 659 int GetNumberFormatW(LCID, DWORD, LPCWSTR, const(NUMBERFMTW)*, LPWSTR, 660 UINT GetOEMCP(); 660 UINT GetOEMCP(); 661 BOOL GetStringTypeA(LCID, DWORD, LPCSTR, int, LPWORD); 661 BOOL GetStringTypeA(LCID, DWORD, LPCSTR, int, LPWORD); 662 BOOL GetStringTypeW(DWORD, LPCWSTR, int, LPWORD); 662 BOOL GetStringTypeW(DWORD, LPCWSTR, int, LPWORD); 663 BOOL GetStringTypeExA(LCID, DWORD, LPCSTR, int, LPWORD); 663 BOOL GetStringTypeExA(LCID, DWORD, LPCSTR, int, LPWORD); 664 BOOL GetStringTypeExW(LCID, DWORD, LPCWSTR, int, LPWORD); 664 BOOL GetStringTypeExW(LCID, DWORD, LPCWSTR, int, LPWORD); 665 LANGID GetSystemDefaultLangID(); 665 LANGID GetSystemDefaultLangID(); 666 LCID GetSystemDefaultLCID(); 666 LCID GetSystemDefaultLCID(); 667 LCID GetThreadLocale(); 667 LCID GetThreadLocale(); 668 int GetTimeFormatA(LCID, DWORD, CPtr!(SYSTEMTIME), LPCSTR, LPSTR, int); | 668 int GetTimeFormatA(LCID, DWORD, const(SYSTEMTIME)*, LPCSTR, LPSTR, int) 669 int GetTimeFormatW(LCID, DWORD, CPtr!(SYSTEMTIME), LPCWSTR, LPWSTR, int | 669 int GetTimeFormatW(LCID, DWORD, const(SYSTEMTIME)*, LPCWSTR, LPWSTR, in 670 LANGID GetUserDefaultLangID(); 670 LANGID GetUserDefaultLangID(); 671 LCID GetUserDefaultLCID(); 671 LCID GetUserDefaultLCID(); 672 GEOID GetUserGeoID(GEOCLASS); 672 GEOID GetUserGeoID(GEOCLASS); 673 BOOL IsDBCSLeadByte(BYTE); 673 BOOL IsDBCSLeadByte(BYTE); 674 BOOL IsDBCSLeadByteEx(UINT, BYTE); 674 BOOL IsDBCSLeadByteEx(UINT, BYTE); 675 BOOL IsNLSDefinedString(NLS_FUNCTION, DWORD, LPNLSVERSIONINFO, LPCWSTR, 675 BOOL IsNLSDefinedString(NLS_FUNCTION, DWORD, LPNLSVERSIONINFO, LPCWSTR, 676 int); 676 int); ................................................................................................................................................................................ 684 BOOL SetLocaleInfoA(LCID, LCTYPE, LPCSTR); 684 BOOL SetLocaleInfoA(LCID, LCTYPE, LPCSTR); 685 BOOL SetLocaleInfoW(LCID, LCTYPE, LPCWSTR); 685 BOOL SetLocaleInfoW(LCID, LCTYPE, LPCWSTR); 686 BOOL SetThreadLocale(LCID); 686 BOOL SetThreadLocale(LCID); 687 BOOL SetUserGeoID(GEOID); 687 BOOL SetUserGeoID(GEOID); 688 int WideCharToMultiByte(UINT, DWORD, LPCWSTR, int, LPSTR, int, LPCSTR, 688 int WideCharToMultiByte(UINT, DWORD, LPCWSTR, int, LPSTR, int, LPCSTR, 689 LPBOOL); 689 LPBOOL); 690 690 691 static if (WINVER >= 0x410) { | 691 static if (_WIN32_WINNT >= 0x410) { 692 BOOL EnumCalendarInfoExA(CALINFO_ENUMPROCEXA, LCID, CALID, CALTY 692 BOOL EnumCalendarInfoExA(CALINFO_ENUMPROCEXA, LCID, CALID, CALTY 693 BOOL EnumCalendarInfoExW(CALINFO_ENUMPROCEXW, LCID, CALID, CALTY 693 BOOL EnumCalendarInfoExW(CALINFO_ENUMPROCEXW, LCID, CALID, CALTY 694 BOOL EnumDateFormatsExA(DATEFMT_ENUMPROCEXA, LCID, DWORD); 694 BOOL EnumDateFormatsExA(DATEFMT_ENUMPROCEXA, LCID, DWORD); 695 BOOL EnumDateFormatsExW(DATEFMT_ENUMPROCEXW, LCID, DWORD); 695 BOOL EnumDateFormatsExW(DATEFMT_ENUMPROCEXW, LCID, DWORD); 696 BOOL IsValidLanguageGroup(LGRPID, DWORD); 696 BOOL IsValidLanguageGroup(LGRPID, DWORD); 697 } 697 } 698 698 699 static if (WINVER >= 0x500) { | 699 static if (_WIN32_WINNT >= 0x500) { 700 LANGID GetSystemDefaultUILanguage(); 700 LANGID GetSystemDefaultUILanguage(); 701 LANGID GetUserDefaultUILanguage(); 701 LANGID GetUserDefaultUILanguage(); 702 702 703 static if (_WIN32_WINNT_ONLY) { < 704 BOOL EnumSystemLanguageGroupsA(LANGUAGEGROUP_ENUMPROCA, | 703 BOOL EnumSystemLanguageGroupsA(LANGUAGEGROUP_ENUMPROCA, DWORD, 705 LONG_PTR); | 704 LONG_PTR); 706 BOOL EnumSystemLanguageGroupsW(LANGUAGEGROUP_ENUMPROCW, | 705 BOOL EnumSystemLanguageGroupsW(LANGUAGEGROUP_ENUMPROCW, DWORD, 707 LONG_PTR); | 706 LONG_PTR); 708 BOOL EnumLanguageGroupLocalesA(LANGGROUPLOCALE_ENUMPROCA | 707 BOOL EnumLanguageGroupLocalesA(LANGGROUPLOCALE_ENUMPROCA, LGRPID 709 DWORD, LONG_PTR); | 708 DWORD, LONG_PTR); 710 BOOL EnumLanguageGroupLocalesW(LANGGROUPLOCALE_ENUMPROCW | 709 BOOL EnumLanguageGroupLocalesW(LANGGROUPLOCALE_ENUMPROCW, LGRPID 711 DWORD, LONG_PTR); | 710 DWORD, LONG_PTR); 712 BOOL EnumUILanguagesA(UILANGUAGE_ENUMPROCA, DWORD, LONG_ | 711 BOOL EnumUILanguagesA(UILANGUAGE_ENUMPROCA, DWORD, LONG_PTR); 713 BOOL EnumUILanguagesW(UILANGUAGE_ENUMPROCW, DWORD, LONG_ | 712 BOOL EnumUILanguagesW(UILANGUAGE_ENUMPROCW, DWORD, LONG_PTR); 714 } < 715 } 713 } 716 } 714 } 717 715 718 version (Unicode) { 716 version (Unicode) { 719 alias CALINFO_ENUMPROCW CALINFO_ENUMPROC; 717 alias CALINFO_ENUMPROCW CALINFO_ENUMPROC; 720 alias CALINFO_ENUMPROCEXW CALINFO_ENUMPROCEX; 718 alias CALINFO_ENUMPROCEXW CALINFO_ENUMPROCEX; 721 alias LOCALE_ENUMPROCW LOCALE_ENUMPROC; 719 alias LOCALE_ENUMPROCW LOCALE_ENUMPROC; ................................................................................................................................................................................ 747 alias GetNumberFormatW GetNumberFormat; 745 alias GetNumberFormatW GetNumberFormat; 748 alias GetStringTypeExW GetStringTypeEx; 746 alias GetStringTypeExW GetStringTypeEx; 749 alias GetTimeFormatW GetTimeFormat; 747 alias GetTimeFormatW GetTimeFormat; 750 alias LCMapStringW LCMapString; 748 alias LCMapStringW LCMapString; 751 alias SetCalendarInfoW SetCalendarInfo; 749 alias SetCalendarInfoW SetCalendarInfo; 752 alias SetLocaleInfoW SetLocaleInfo; 750 alias SetLocaleInfoW SetLocaleInfo; 753 751 754 static if (WINVER >= 0x410) { | 752 static if (_WIN32_WINNT >= 0x410) { 755 alias EnumCalendarInfoExW EnumCalendarInfoEx; 753 alias EnumCalendarInfoExW EnumCalendarInfoEx; 756 alias EnumDateFormatsExW EnumDateFormatsEx; 754 alias EnumDateFormatsExW EnumDateFormatsEx; 757 } 755 } 758 756 759 static if (_WIN32_WINNT_ONLY && WINVER >= 0x500) { | 757 static if (_WIN32_WINNT >= 0x500) { 760 alias EnumSystemLanguageGroupsW EnumSystemLanguageGroups; 758 alias EnumSystemLanguageGroupsW EnumSystemLanguageGroups; 761 alias EnumLanguageGroupLocalesW EnumLanguageGroupLocales; 759 alias EnumLanguageGroupLocalesW EnumLanguageGroupLocales; 762 alias EnumUILanguagesW EnumUILanguages; 760 alias EnumUILanguagesW EnumUILanguages; 763 } 761 } 764 762 765 } else { 763 } else { 766 alias CALINFO_ENUMPROCA CALINFO_ENUMPROC; 764 alias CALINFO_ENUMPROCA CALINFO_ENUMPROC; ................................................................................................................................................................................ 794 alias GetNumberFormatA GetNumberFormat; 792 alias GetNumberFormatA GetNumberFormat; 795 alias GetStringTypeExA GetStringTypeEx; 793 alias GetStringTypeExA GetStringTypeEx; 796 alias GetTimeFormatA GetTimeFormat; 794 alias GetTimeFormatA GetTimeFormat; 797 alias LCMapStringA LCMapString; 795 alias LCMapStringA LCMapString; 798 alias SetCalendarInfoA SetCalendarInfo; 796 alias SetCalendarInfoA SetCalendarInfo; 799 alias SetLocaleInfoA SetLocaleInfo; 797 alias SetLocaleInfoA SetLocaleInfo; 800 798 801 static if (WINVER >= 0x410) { | 799 static if (_WIN32_WINNT >= 0x410) { 802 alias EnumCalendarInfoExA EnumCalendarInfoEx; 800 alias EnumCalendarInfoExA EnumCalendarInfoEx; 803 alias EnumDateFormatsExA EnumDateFormatsEx; 801 alias EnumDateFormatsExA EnumDateFormatsEx; 804 } 802 } 805 803 806 static if (_WIN32_WINNT_ONLY && WINVER >= 0x500) { | 804 static if (_WIN32_WINNT >= 0x500) { 807 alias EnumSystemLanguageGroupsA EnumSystemLanguageGroups; 805 alias EnumSystemLanguageGroupsA EnumSystemLanguageGroups; 808 alias EnumLanguageGroupLocalesA EnumLanguageGroupLocales; 806 alias EnumLanguageGroupLocalesA EnumLanguageGroupLocales; 809 alias EnumUILanguagesA EnumUILanguages; 807 alias EnumUILanguagesA EnumUILanguages; 810 } 808 } 811 } 809 }