Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--winsup/w32api/ChangeLog13
-rwxr-xr-xwinsup/w32api/include/shldisp.h61
-rw-r--r--winsup/w32api/include/shlguid.h7
-rw-r--r--winsup/w32api/include/shlobj.h11
-rw-r--r--winsup/w32api/lib/shell32.c7
5 files changed, 99 insertions, 0 deletions
diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog
index ba18fd3b8..0141d2959 100644
--- a/winsup/w32api/ChangeLog
+++ b/winsup/w32api/ChangeLog
@@ -1,3 +1,16 @@
+2004-12-23 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
+
+ * include/shldisp.h (IAutoComplete): Added interface definiton.
+ * include/shldisp.h (IAutoComplete2): Added interface definiton.
+ * include/shldisp.h (ACO_AUTOSUGGEST): Added definition.
+ * include/shlobj.h (IObjMgr): Added interface definiton.
+ * lib/shell32.c (CLSID_AutoComplete, IID_AutoComplete,
+ IID_AutoComplete2, CLSID_ACLMulti, IID_IObjMgr,
+ CLSID_ACListISF, IID_IACList): Added GUIDs.
+ * include/shlguid.h (CLSID_AutoComplete, IID_AutoComplete,
+ IID_AutoComplete2, CLSID_ACLMulti, IID_IObjMgr,
+ CLSID_ACListISF, IID_IACList): Added GUIDs.
+
2004-12-23 Danny Smith <dannysmith@users.sourceforge.net>
* include/commctrl.h (CDRF_NOTIFYSUBITEMDRAW): Add define.
diff --git a/winsup/w32api/include/shldisp.h b/winsup/w32api/include/shldisp.h
new file mode 100755
index 000000000..913e2d28c
--- /dev/null
+++ b/winsup/w32api/include/shldisp.h
@@ -0,0 +1,61 @@
+#ifndef _SHLDISP_H
+#define _SHLDISP_H
+#if __GNUC__ >= 3
+#pragma GCC system_header
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define ACO_AUTOSUGGEST 0x01
+
+#undef INTERFACE
+#define INTERFACE IAutoComplete
+DECLARE_INTERFACE_(IAutoComplete, IUnknown)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(Init)(THIS_ HWND,IUnknown*,LPCOLESTR,LPCOLESTR) PURE;
+ STDMETHOD(Enable)(THIS_ BOOL) PURE;
+};
+typedef IAutoComplete *LPAUTOCOMPLETE;
+
+#ifdef COBJMACROS
+#define IAutoComplete_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IAutoComplete_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IAutoComplete_Release(T) (T)->lpVtbl->Release(T)
+#define IAutoComplete_Init(T,a,b,c,d) (T)->lpVtbl->Init(T,a,b,c,d)
+#define IAutoComplete_Enable(T,a) (T)->lpVtbl->Enable(T,a)
+#endif
+
+#undef INTERFACE
+#define INTERFACE IAutoComplete2
+DECLARE_INTERFACE_(IAutoComplete2, IAutoComplete)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(Init)(THIS_ HWND,IUnknown*,LPCOLESTR,LPCOLESTR) PURE;
+ STDMETHOD(Enable)(THIS_ BOOL) PURE;
+ STDMETHOD(SetOptions)(THIS_ DWORD) PURE;
+ STDMETHOD(GetOptions)(THIS_ DWORD*) PURE;
+};
+typedef IAutoComplete2 *LPAUTOCOMPLETE2;
+
+#ifdef COBJMACROS
+#define IAutoComplete2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IAutoComplete2_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IAutoComplete2_Release(T) (T)->lpVtbl->Release(T)
+#define IAutoComplete2_Init(T,a,b,c,d) (T)->lpVtbl->Init(T,a,b,c,d)
+#define IAutoComplete2_Enable(T,a) (T)->lpVtbl->Enable(T,a)
+#define IAutoComplete2_SetOptions(T,a) (T)->lpVtbl->Enable(T,a)
+#define IAutoComplete2_GetOptions(T,a) (T)->lpVtbl->Enable(T,a)
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SHLDISP_H */
diff --git a/winsup/w32api/include/shlguid.h b/winsup/w32api/include/shlguid.h
index 5bbc7af41..2a37a3ca5 100644
--- a/winsup/w32api/include/shlguid.h
+++ b/winsup/w32api/include/shlguid.h
@@ -63,6 +63,13 @@ extern const GUID IID_IUniformResourceLocator;
extern const GUID CLSID_DragDropHelper;
extern const GUID IID_IDropTargetHelper;
extern const GUID IID_IDragSourceHelper;
+extern const GUID CLSID_AutoComplete;
+extern const GUID IID_IAutoComplete;
+extern const GUID IID_IAutoComplete2;
+extern const GUID CLSID_ACLMulti;
+extern const GUID IID_IObjMgr;
+extern const GUID CLSID_ACListISF;
+extern const GUID IID_IACList;
#if (_WIN32_IE >= 0x400 || _WIN32_WINNT >= 0x500)
extern const GUID IID_IPersistFolder2;
#endif
diff --git a/winsup/w32api/include/shlobj.h b/winsup/w32api/include/shlobj.h
index fcc722aa0..6e513ba84 100644
--- a/winsup/w32api/include/shlobj.h
+++ b/winsup/w32api/include/shlobj.h
@@ -554,6 +554,17 @@ typedef IEnumIDList *LPENUMIDLIST;
#endif
#undef INTERFACE
+#define INTERFACE IObjMgr
+DECLARE_INTERFACE_(IObjMgr, IUnknown)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(Append)(THIS_ IUnknown*) PURE;
+ STDMETHOD(Remove)(THIS_ IUnknown*) PURE;
+};
+
+#undef INTERFACE
#define INTERFACE IContextMenu
DECLARE_INTERFACE_(IContextMenu,IUnknown)
{
diff --git a/winsup/w32api/lib/shell32.c b/winsup/w32api/lib/shell32.c
index 8dc72fd02..0b703fba9 100644
--- a/winsup/w32api/lib/shell32.c
+++ b/winsup/w32api/lib/shell32.c
@@ -60,3 +60,10 @@ DEFINE_GUID(IID_IDropTargetHelper,0x4657278BL,0x411B,0x11D2,0x83,0x9A,0x0,0xC0,0
DEFINE_GUID(IID_IDragSourceHelper,0xDE5BF786L,0x477A,0x11D2,0x83,0x9D,0x0,0xC0,0x4F,0xD9,0x18,0xD0);
DEFINE_GUID(IID_IColumnProvider,0xE8025004,0x1C42,0x11D2,0xBE,0x2C,0x0,0xA0,0xC9,0xA8,0x3D,0xA1);
DEFINE_GUID(IID_IShellIconOverlayIdentifier,0x0C6C4200L,0xC589,0x11D0,0x99,0x9A,0x00,0xC0,0x4F,0xD6,0x55,0xE1);
+DEFINE_GUID(CLSID_AutoComplete,0x00bb2763,0x6a77,0x11d0,0xa5,0x35,0x00,0xc0,0x4f,0xd7,0xd0,0x62);
+DEFINE_GUID(IID_IAutoComplete,0x00bb2762,0x6a77,0x11d0,0xa5,0x35,0x00,0xc0,0x4f,0xd7,0xd0,0x62);
+DEFINE_GUID(IID_IAutoComplete2,0xeac04bc0,0x3791,0x11d2,0xbb,0x95,0x00,0x60,0x97,0x7b,0x46,0x4c);
+DEFINE_GUID(CLSID_ACLMulti,0x00bb2765,0x6a77,0x11d0,0xa5,0x35,0x00,0xc0,0x4f,0xd7,0xd0,0x62);
+DEFINE_GUID(IID_IObjMgr,0x00bb2761,0x6a77,0x11d0,0xa5,0x35,0x00,0xc0,0x4f,0xd7,0xd0,0x62);
+DEFINE_GUID(CLSID_ACListISF,0x03c036f1,0xa186,0x11D0,0x82,0x4a,0x00,0xaa,0x00,0x5b,0x43,0x83);
+DEFINE_GUID(IID_IACList,0x77a130b0,0x94fd,0x11D0,0xa5,0x44,0x00,0xc0,0x4f,0xd7,0xd0,0x62);