From afddcfdbd87dca4c6da4acee5a11f84db62988d6 Mon Sep 17 00:00:00 2001
From: Francois Gouget <fgouget@codeweavers.com>
Date: Wed, 27 Sep 2000 22:31:28 +0000
Subject: [PATCH] Added various type and macro definitions that are needed to
 compile the latest MFC.

---
 include/commctrl.h |  3 +++
 include/commdlg.h  |  2 ++
 include/oleauto.h  |  4 ++++
 include/winbase.h  |  3 +++
 include/winerror.h |  4 ++++
 include/wtypes.h   | 19 ++++++++++++++++++-
 6 files changed, 34 insertions(+), 1 deletion(-)

diff --git a/include/commctrl.h b/include/commctrl.h
index 733ce430759..57da501e8ce 100644
--- a/include/commctrl.h
+++ b/include/commctrl.h
@@ -3091,12 +3091,15 @@ typedef struct tagTCITEMW
 #define CBEM_SETITEMA         (WM_USER+5)
 #define CBEM_SETITEMW         (WM_USER+12)
 #define CBEM_SETITEM            WINELIB_NAME_AW(CBEM_SETITEM)
+#define CBEM_DELETEITEM         CB_DELETESTRING
 #define CBEM_GETCOMBOCONTROL    (WM_USER+6)
 #define CBEM_GETEDITCONTROL     (WM_USER+7)
 #define CBEM_SETEXSTYLE         (WM_USER+8)
 #define CBEM_GETEXSTYLE         (WM_USER+9)
 #define CBEM_GETEXTENDEDSTYLE   (WM_USER+9)
 #define CBEM_SETEXTENDEDSTYLE   (WM_USER+14)
+#define CBEM_SETUNICODEFORMAT   CCM_SETUNICODEFORMAT
+#define CBEM_GETUNICODEFORMAT   CCM_GETUNICODEFORMAT
 #define CBEM_HASEDITCHANGED     (WM_USER+10)
 #define CBEM_SETUNICODEFORMAT   CCM_SETUNICODEFORMAT
 #define CBEM_GETUNICODEFORMAT   CCM_GETUNICODEFORMAT
diff --git a/include/commdlg.h b/include/commdlg.h
index b628972789b..3fd165206f7 100644
--- a/include/commdlg.h
+++ b/include/commdlg.h
@@ -34,6 +34,8 @@ extern "C" {
 #define OFN_EXPLORER                 0x00080000
 #define OFN_NODEREFERENCELINKS       0x00100000
 #define OFN_LONGNAMES                0x00200000
+#define OFN_ENABLEINCLUDENOTIFY      0x00400000
+#define OFN_ENABLESIZING             0x00800000
 
 /* WINE internal flags */
 #define OFN_UNICODE		     0x40000000	/*to differ between 32W/A hook*/
diff --git a/include/oleauto.h b/include/oleauto.h
index e5d2d02c817..4d137bcf901 100644
--- a/include/oleauto.h
+++ b/include/oleauto.h
@@ -526,5 +526,9 @@ HRESULT WINAPI DispCallFunc(void* pvInstance, ULONG oVft, CALLCONV cc,
             VARTYPE vtReturn, UINT  cActuals, VARTYPE* prgvt,
             VARIANTARG** prgpvarg, VARIANT* pvargResult);
 
+#define VARCMP_LT   0
+#define VARCMP_EQ   1
+#define VARCMP_GT   2
+#define VARCMP_NULL 3
 
 #endif /*__WINE_OLEAUTO_H*/
diff --git a/include/winbase.h b/include/winbase.h
index 13e0e9c9218..7098724d306 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -432,6 +432,9 @@ typedef struct
 #define LPTR (LMEM_FIXED | LMEM_ZEROINIT)
 #define LHND (LMEM_MOVEABLE | LMEM_ZEROINIT)
 
+#define NONZEROLHND         (LMEM_MOVEABLE)
+#define NONZEROLPTR         (LMEM_FIXED)
+
 #define GMEM_FIXED          0x0000
 #define GMEM_MOVEABLE       0x0002
 #define GMEM_NOCOMPACT      0x0010
diff --git a/include/winerror.h b/include/winerror.h
index d52237a3a4e..52bed2cec0b 100644
--- a/include/winerror.h
+++ b/include/winerror.h
@@ -32,6 +32,10 @@ extern int WIN32_LastError;
 #define HRESULT_FACILITY(hr)  (((hr) >> 16) & 0x1FFF)
 #define SCODE_FACILITY(sc)  (((sc) >> 16) & 0x1FFF)
 
+#define FACILITY_NT_BIT         0x10000000
+#define HRESULT_FROM_WIN32(x)   ((x) ? ((HRESULT) (((x) & 0x0000FFFF) | (FACILITY_WIN32 << 16) | 0x80000000)) : 0 )
+#define HRESULT_FROM_NT(x)      ((HRESULT) ((x) | FACILITY_NT_BIT))
+
 /* SCODE <-> HRESULT functions */
 /* This macros is obsolete and should not be used in new apps. */
 #define GetScode(hr)         ((SCODE)(hr))
diff --git a/include/wtypes.h b/include/wtypes.h
index 759994eaede..bf2b8d0a82c 100644
--- a/include/wtypes.h
+++ b/include/wtypes.h
@@ -102,13 +102,30 @@ typedef enum tagCLSCTX
     CLSCTX_REMOTE_SERVER     = 0x10,
     CLSCTX_INPROC_HANDLER16  = 0x20,
     CLSCTX_INPROC_SERVERX86  = 0x40,
-    CLSCTX_INPROC_HANDLERX86 = 0x80
+    CLSCTX_INPROC_HANDLERX86 = 0x80,
+    CLSCTX_ESERVER_HANDLER   = 0x100
 } CLSCTX;
 
 #define CLSCTX_INPROC           (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER)
 #define CLSCTX_ALL              (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER)
 #define CLSCTX_SERVER           (CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER)
 
+typedef enum tagMSHLFLAGS
+{
+    MSHLFLAGS_NORMAL        = 0,
+    MSHLFLAGS_TABLESTRONG   = 1,
+    MSHLFLAGS_TABLEWEAK     = 2,
+    MSHLFLAGS_NOPING        = 4
+} MSHLFLAGS;
+
+typedef enum tagMSHCTX
+{
+    MSHCTX_LOCAL            = 0,
+    MSHCTX_NOSHAREDMEM      = 1,
+    MSHCTX_DIFFERENTMACHINE = 2,
+    MSHCTX_INPROC           = 3
+} MSHCTX;
+
 typedef unsigned short VARTYPE;
 
 typedef ULONG PROPID;
-- 
GitLab