include: Add definitions for the multisource AutoComplete list (ACLMulti).
diff --git a/include/shlguid.h b/include/shlguid.h
index e07c384..1214a2d 100644
--- a/include/shlguid.h
+++ b/include/shlguid.h
@@ -52,6 +52,10 @@
DEFINE_SHLGUID(IID_IRemoteComputer, 0x000214FEL, 0, 0);
DEFINE_SHLGUID(IID_IQueryInfo, 0x00021500L, 0, 0);
+DEFINE_GUID(IID_IACList, 0x77A130B0L,0x94FD,0x11D0,0xA5,0x44,0x00,0xC0,0x4F,0xD7,0xD0,0x62);
+DEFINE_GUID(IID_IACList2, 0x470141A0L,0x5186,0x11D2,0xBB,0xB6,0x00,0x60,0x97,0x7B,0x46,0x4C);
+DEFINE_GUID(IID_IObjMgr, 0x00BB2761L,0x6A77,0x11D0,0xA5,0x35,0x00,0xC0,0x4F,0xD7,0xD0,0x62);
+
/* avoid duplicate definitions with shobjidl.h (FIXME) */
/* DEFINE_SHLGUID(IID_IShellPropSheetExt, 0x000214E9L, 0, 0); */
/* DEFINE_SHLGUID(IID_IExtractIconA, 0x000214EBL, 0, 0); */
@@ -114,6 +118,7 @@
DEFINE_GUID(CLSID_DragDropHelper, 0x4657278a, 0x411b, 0x11d2, 0x83, 0x9a, 0x00, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
DEFINE_GUID(CLSID_AutoComplete, 0x00bb2763, 0x6a77, 0x11d0, 0xa5, 0x35, 0x00, 0xc0, 0x4f, 0xd7, 0xd0, 0x62);
+DEFINE_GUID(CLSID_ACLMulti, 0x00bb2765, 0x6a77, 0x11d0, 0xa5, 0x35, 0x00, 0xc0, 0x4f, 0xd7, 0xd0, 0x62);
#define PSGUID_SHELLDETAILS {0x28636aa6, 0x953d, 0x11d2, 0xb5, 0xd6, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0}
DEFINE_GUID(FMTID_ShellDetails, 0x28636aa6, 0x953d, 0x11d2, 0xb5, 0xd6, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
diff --git a/include/shlobj.h b/include/shlobj.h
index b5fee16..d92e4cb 100644
--- a/include/shlobj.h
+++ b/include/shlobj.h
@@ -300,6 +300,53 @@
#define IInputObjectSite_OnFocusChangeIS(p,a,b) (p)->lpVtbl->OnFocusChangeIS(p,a,b)
#endif
+/* IObjMgr interface */
+#define INTERFACE IObjMgr
+DECLARE_INTERFACE_(IObjMgr,IUnknown)
+{
+ /*** IUnknown methods ***/
+ STDMETHOD_(HRESULT,QueryInterface) (THIS_ REFIID riid, void** ppvObject) PURE;
+ STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+ STDMETHOD_(ULONG,Release) (THIS) PURE;
+ /*** IObjMgr methods ***/
+ STDMETHOD(Append)(THIS_ LPUNKNOWN punk) PURE;
+ STDMETHOD(Remove)(THIS_ LPUNKNOWN punk) PURE;
+};
+#undef INTERFACE
+
+#if !defined(__cplusplus) || defined(CINTERFACE)
+/*** IUnknown methods ***/
+#define IObjMgr_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
+#define IObjMgr_AddRef(p) (p)->lpVtbl->AddRef(p)
+#define IObjMgr_Release(p) (p)->lpVtbl->Release(p)
+/*** IObjMgr methods ***/
+#define IObjMgr_Append(p,a) (p)->lpVtbl->Append(p,a)
+#define IObjMgr_Remove(p,a) (p)->lpVtbl->Remove(p,a)
+#endif
+
+/* IACList interface */
+#define INTERFACE IACList
+DECLARE_INTERFACE_(IACList,IUnknown)
+{
+ /*** IUnknown methods ***/
+ STDMETHOD_(HRESULT,QueryInterface) (THIS_ REFIID riid, void** ppvObject) PURE;
+ STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+ STDMETHOD_(ULONG,Release) (THIS) PURE;
+ /*** IACList methods ***/
+ STDMETHOD(Expand)(THIS_ LPCOLESTR str) PURE;
+};
+#undef INTERFACE
+
+#if !defined(__cplusplus) || defined(CINTERFACE)
+/*** IUnknown methods ***/
+#define IACList_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
+#define IACList_AddRef(p) (p)->lpVtbl->AddRef(p)
+#define IACList_Release(p) (p)->lpVtbl->Release(p)
+/*** IACList methods ***/
+#define IACList_Expand(p,a) (p)->lpVtbl->Expand(p,a)
+#endif
+
+
/****************************************************************************
* SHAddToRecentDocs API
*/