From 60eebda984e2cfd560089269ee53906992ff76fc Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <[email protected]>
Date: Thu, 26 Nov 2020 17:56:04 +0530
Subject: [PATCH 2/2] headers: Add missing APIs in winnls.h.

Signed-off-by: Biswapriyo Nath <[email protected]>
---
 mingw-w64-headers/include/winnls.h | 55 +++++++++++++++++++++++++++++-
 1 file changed, 54 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/winnls.h 
b/mingw-w64-headers/include/winnls.h
index 0e338e0..cd8c602 100644
--- a/mingw-w64-headers/include/winnls.h
+++ b/mingw-w64-headers/include/winnls.h
@@ -346,6 +346,8 @@ extern "C" {
 #define LOCALE_IDEFAULTANSICODEPAGE 0x00001004
 #define LOCALE_IDEFAULTMACCODEPAGE 0x00001011
 
+#define LOCALE_IDIALINGCODE 0x00000005
+
 #define LOCALE_SLIST 0x0000000c
 #define LOCALE_IMEASURE 0x0000000d
 
@@ -372,6 +374,8 @@ extern "C" {
 #define LOCALE_SSHORTDATE 0x0000001f
 #define LOCALE_SLONGDATE 0x00000020
 #define LOCALE_STIMEFORMAT 0x00001003
+#define LOCALE_SAM 0x00000028
+#define LOCALE_SPM 0x00000029
 #define LOCALE_IDATE 0x00000021
 #define LOCALE_ILDATE 0x00000022
 #define LOCALE_ITIME 0x00000023
@@ -485,6 +489,15 @@ extern "C" {
 #define LOCALE_SSORTLOCALE 0x0000007b
 #endif
 
+#if WINVER >= _WIN32_WINNT_WIN8
+#define LOCALE_SRELATIVELONGDATE 0x0000007c
+#endif
+
+#if WINVER >= _WIN32_WINNT_WIN10
+#define LOCALE_SSHORTESTAM 0x0000007e
+#define LOCALE_SSHORTESTPM 0x0000007f
+#endif
+
 #define TIME_NOMINUTESORSECONDS 0x00000001
 #define TIME_NOSECONDS 0x00000002
 #define TIME_NOTIMEMARKER 0x00000004
@@ -500,6 +513,9 @@ extern "C" {
 #if WINVER >= 0x0601
 #define DATE_AUTOLAYOUT 0x00000040
 #endif
+#if WINVER >= _WIN32_WINNT_WINTHRESHOLD
+#define DATE_MONTHDAY 0x00000080
+#endif
 
 #define CAL_NOUSEROVERRIDE LOCALE_NOUSEROVERRIDE
 #define CAL_USE_CP_ACP LOCALE_USE_CP_ACP
@@ -570,6 +586,14 @@ extern "C" {
 #define CAL_SMONTHDAY 0x00000038
 #define CAL_SABBREVERASTRING 0x00000039
 #endif
+#if WINVER >= _WIN32_WINNT_WIN8
+#define CAL_SRELATIVELONGDATE 0x0000003a
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_RS2
+#define CAL_SENGLISHERANAME 0x0000003b
+#define CAL_SENGLISHABBREVERANAME 0x0000003c
+#endif
+#define CAL_SJAPANESEERAFIRSTYEAR 0x0000003d
 
 #define ENUM_ALL_CALENDARS 0xffffffff
 
@@ -766,7 +790,14 @@ extern "C" {
     GEO_TIMEZONES = 0x000a,
     GEO_OFFICIALLANGUAGES = 0x000b,
     GEO_ISO_UN_NUMBER = 0x000c,
-    GEO_PARENT = 0x000d
+    GEO_PARENT = 0x000d,
+    GEO_DIALINGCODE = 0x000e,
+    GEO_CURRENCYCODE= 0x000f,
+    GEO_CURRENCYSYMBOL= 0x0010,
+#if NTDDI_VERSION >= NTDDI_WIN10_RS3
+    GEO_NAME = 0x0011,
+    GEO_ID = 0x0012
+#endif
   };
 
   enum SYSGEOCLASS {
@@ -816,6 +847,9 @@ extern "C" {
   typedef WINBOOL (CALLBACK *CALINFO_ENUMPROCW) (LPWSTR);
   typedef WINBOOL (CALLBACK *CALINFO_ENUMPROCEXW) (LPWSTR, CALID);
   typedef WINBOOL (CALLBACK *GEO_ENUMPROC) (GEOID);
+  #if NTDDI_VERSION >= NTDDI_WIN10_RS3
+  typedef WINBOOL (CALLBACK *GEO_ENUMNAMEPROC) (PWSTR, LPARAM);
+  #endif
 #else
   typedef FARPROC LANGUAGEGROUP_ENUMPROCA;
   typedef FARPROC LANGGROUPLOCALE_ENUMPROCA;
@@ -838,6 +872,9 @@ extern "C" {
   typedef FARPROC TIMEFMT_ENUMPROCW;
   typedef FARPROC CALINFO_ENUMPROCW;
   typedef FARPROC CALINFO_ENUMPROCEXW;
+  #if NTDDI_VERSION >= NTDDI_WIN10_RS3
+  typedef FARPROC GEO_ENUMNAMEPROC;
+  #endif
 #endif
 
 #ifdef UNICODE
@@ -987,6 +1024,7 @@ extern "C" {
   WINBASEAPI int WINAPI GetGeoInfoW (GEOID Location, GEOTYPE GeoType, LPWSTR 
lpGeoData, int cchData, LANGID LangId);
   WINBASEAPI WINBOOL WINAPI EnumSystemGeoID (GEOCLASS GeoClass, GEOID 
ParentGeoId, GEO_ENUMPROC lpGeoEnumProc);
   WINBASEAPI GEOID WINAPI GetUserGeoID (GEOCLASS GeoClass);
+  WINBASEAPI int WINAPI GetUserDefaultGeoName (LPWSTR geoName, int 
geoNameCount);
   WINBASEAPI WINBOOL WINAPI GetCPInfo (UINT CodePage, LPCPINFO lpCPInfo);
   WINBASEAPI WINBOOL WINAPI GetCPInfoExA (UINT CodePage, DWORD dwFlags, 
LPCPINFOEXA lpCPInfoEx);
   WINBASEAPI WINBOOL WINAPI GetCPInfoExW (UINT CodePage, DWORD dwFlags, 
LPCPINFOEXW lpCPInfoEx);
@@ -996,6 +1034,11 @@ extern "C" {
   WINBASEAPI LCID WINAPI LocaleNameToLCID (LPCWSTR lpName, DWORD dwFlags);
 #endif
 
+#if NTDDI_VERSION >= NTDDI_WIN10_RS3
+  WINBASEAPI int WINAPI GetGeoInfoEx (PWSTR location, GEOTYPE geoType, PWSTR 
geoData, int geoDataCount);
+  WINBASEAPI WINBOOL WINAPI SetUserGeoName (PWSTR geoName);
+#endif
+
 #define GetGeoInfo __MINGW_NAME_AW(GetGeoInfo)
 #define GetCPInfoEx __MINGW_NAME_AW(GetCPInfoEx)
 
@@ -1042,6 +1085,16 @@ extern "C" {
 #define EnumLanguageGroupLocales __MINGW_NAME_AW(EnumLanguageGroupLocales)
 #define EnumUILanguages __MINGW_NAME_AW(EnumUILanguages)
 
+#if NTDDI_VERSION >= NTDDI_WIN10_RS3
+  WINBASEAPI WINBOOL WINAPI EnumSystemGeoNames (GEOCLASS geoClass, 
GEO_ENUMNAMEPROC geoEnumProc, LPARAM data);
+#endif
+
+#if NTDDI_VERSION >= NTDDI_WIN10_VB
+  DECLARE_HANDLE(HSAVEDUILANGUAGES);
+  WINBASEAPI WINBOOL WINAPI SetThreadPreferredUILanguages2 (ULONG flags, 
PCZZWSTR languages, PULONG numLanguagesSet, HSAVEDUILANGUAGES *snapshot);
+  WINBASEAPI void WINAPI RestoreThreadPreferredUILanguages (const 
HSAVEDUILANGUAGES snapshot);
+#endif /* NTDDI_WIN10_VB */
+
 #endif
 
 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
-- 
2.29.2

_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to