Fix sublanguage IDs in .rc files:
[reactos.git] / reactos / w32api / include / wtypes.h
index 3269642..18a963b 100644 (file)
 extern "C" {
 #endif
 
-#ifdef NONAMELESSUNION
-#define DEC_SIGN(d) ((d)->DUMMYUNIONNAME.DUMMYSTRUCTNAME.sign)
-#define DEC_SCALE(d) ((d)->DUMMYUNIONNAME.DUMMYSTRUCTNAME.scale)
-#define DEC_SIGNSCALE(d) ((d)->DUMMYUNIONNAME.signscale)
-#define DEC_MID32(d) ((d)->DUMMYUNIONNAME2.DUMMYSTRUCTNAME2.Mid32)
-#define DEC_LO32(d) ((d)->DUMMYUNIONNAME2.DUMMYSTRUCTNAME2.Lo32)
-#define DEC_LO64(d) ((d)->DUMMYUNIONNAME2.Lo64)
-#else
-#define DEC_SIGN(d) ((d)->sign)
-#define DEC_SCALE(d) ((d)->scale)
-#define DEC_SIGNSCALE(d) ((d)->signscale)
-#define DEC_MID32(d) ((d)->Mid32)
-#define DEC_LO32(d) ((d)->Lo32)
-#define DEC_LO64(d) ((d)->Lo64)
-#endif
-#define DEC_HI32(d) ((d)->Hi32)
-
 #define IID_NULL GUID_NULL
 #define CLSID_NULL GUID_NULL
 #define CBPCLIPDATA(d) ((d).cbSize-sizeof((d).ulClipFmt))
@@ -77,7 +60,7 @@ typedef enum tagCLSCTX {
        CLSCTX_INPROC_SERVER16=8,CLSCTX_REMOTE_SERVER=16
 } CLSCTX;
 typedef enum tagMSHLFLAGS {
-       MSHLFLAGS_NORMAL,MSHLFLAGS_TABLESTRONG,MSHLFLAGS_TABLEWEAK
+       MSHLFLAGS_NORMAL,MSHLFLAGS_TABLESTRONG,MSHLFLAGS_TABLEWEAK,MSHLFLAGS_NOPING
 } MSHLFLAGS;
 typedef struct _FLAGGED_WORD_BLOB {
        unsigned long fFlags;
@@ -160,23 +143,54 @@ typedef struct _HYPER_SIZEDARR {
 typedef double DOUBLE;
 typedef struct tagDEC {
        USHORT wReserved;
-       _ANONYMOUS_UNION union {
-               _ANONYMOUS_STRUCT struct {
+       union {
+               struct {
                        BYTE scale;
                        BYTE sign;
-               }_STRUCT_NAME(s);
+               };
                USHORT signscale;
-       } DUMMYUNIONNAME;
+       };
        ULONG Hi32;
-       _ANONYMOUS_UNION union {
-               _ANONYMOUS_STRUCT struct {
+       union {
+               struct {
                        ULONG Lo32;
                        ULONG Mid32;
-               }_STRUCT_NAME(s2);
+               };
                ULONGLONG Lo64;
-       } DUMMYUNIONNAME2;
+       };
 } DECIMAL;
 typedef void *HMETAFILEPICT;
+typedef struct tagCSPLATFORM {
+    DWORD dwPlatformId;
+    DWORD dwVersionHi;
+    DWORD dwVersionLo;
+    DWORD dwProcessorArch;
+} CSPLATFORM;
+typedef struct tagQUERYCONTEXT {
+    DWORD dwContext;
+    CSPLATFORM Platform;
+    LCID Locale;
+    DWORD dwVersionHi;
+    DWORD dwVersionLo;
+} QUERYCONTEXT;
+typedef struct {
+    DWORD tyspec;
+    union {
+        CLSID clsid;
+        LPOLESTR pFileExt;
+        LPOLESTR pMimeType;
+        LPOLESTR pProgId;
+        LPOLESTR pFileName;
+        struct {
+            LPOLESTR pPackageName;
+            GUID PolicyId;
+        } ByName;
+        struct {
+            GUID ObjectId;
+            GUID PolicyId;
+        } ByObjectId;
+    } tagged_union;
+} uCLSSPEC;
 #ifdef __cplusplus
 }
 #endif