summaryrefslogtreecommitdiffstats
path: root/winsup
diff options
context:
space:
mode:
authorChris Sutcliffe <ir0nh34d@users.sourceforge.net>2010-02-18 13:01:56 +0000
committerChris Sutcliffe <ir0nh34d@users.sourceforge.net>2010-02-18 13:01:56 +0000
commit954e9f99fb7b3cfe2acb9aef4c80bf0b63b0f143 (patch)
tree315d6c7fa1e696638ec487d4d8a029c09d8d727c /winsup
parent7cadc91d9843048a161fea8469ffc2508b226a5b (diff)
downloadcygnal-954e9f99fb7b3cfe2acb9aef4c80bf0b63b0f143.tar.gz
cygnal-954e9f99fb7b3cfe2acb9aef4c80bf0b63b0f143.tar.bz2
cygnal-954e9f99fb7b3cfe2acb9aef4c80bf0b63b0f143.zip
2010-02-17 LRN <lrn1986@gmail.com>
* include/shlguid.h (IID_IFolderView): Define. * include/shlobj.h (IFolderView interface): Define. * lib/shell32.c (IID_IFolderView): Export.
Diffstat (limited to 'winsup')
-rw-r--r--winsup/w32api/ChangeLog6
-rw-r--r--winsup/w32api/include/shlguid.h3
-rw-r--r--winsup/w32api/include/shlobj.h27
-rw-r--r--winsup/w32api/lib/shell32.c1
4 files changed, 37 insertions, 0 deletions
diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog
index 824992efb..7a4339f1a 100644
--- a/winsup/w32api/ChangeLog
+++ b/winsup/w32api/ChangeLog
@@ -1,3 +1,9 @@
+2010-02-17 LRN <lrn1986@gmail.com>
+
+ * include/shlguid.h (IID_IFolderView): Define.
+ * include/shlobj.h (IFolderView interface): Define.
+ * lib/shell32.c (IID_IFolderView): Export.
+
2010-01-26 Chris Sutcliffe <ir0n3h4d@users.sourceforge.net>
* include/shldisp.h (AUTOCOMPLETEOPTIONS): Add version guard around
diff --git a/winsup/w32api/include/shlguid.h b/winsup/w32api/include/shlguid.h
index 3583e324b..22469c447 100644
--- a/winsup/w32api/include/shlguid.h
+++ b/winsup/w32api/include/shlguid.h
@@ -79,6 +79,9 @@ extern const GUID IID_IPersistFolder3;
extern const GUID IID_IShellFolder2;
extern const GUID IID_IFileSystemBindData;
#endif
+#if (_WIN32_WINNT >= 0x501)
+extern const GUID IID_IFolderView;
+#endif
#ifdef UNICODE
#define IID_IFileViewer IID_IFileViewerW
#define IID_IShellLink IID_IShellLinkW
diff --git a/winsup/w32api/include/shlobj.h b/winsup/w32api/include/shlobj.h
index 7fb7c610a..e313c2b8a 100644
--- a/winsup/w32api/include/shlobj.h
+++ b/winsup/w32api/include/shlobj.h
@@ -1349,6 +1349,33 @@ DECLARE_INTERFACE_(IShellIconOverlayIdentifier,IUnknown)
};
#undef INTERFACE
+#if (_WIN32_WINNT >= 0x0501) /* WXP */
+typedef _COM_interface IFolderView *LPFOLDERVIEW;
+
+#define INTERFACE IFolderView
+DECLARE_INTERFACE_(IFolderView,IUnknown)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(GetAutoArrange)(THIS) PURE;
+ STDMETHOD(GetCurrentViewMode)(THIS_ UINT) PURE;
+ STDMETHOD(GetDefaultSpacing)(THIS_ POINT*) PURE;
+ STDMETHOD(GetFocusedItem)(THIS_ int*) PURE;
+ STDMETHOD(GetFolder)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD(GetItemPosition)(THIS_ LPCITEMIDLIST,POINT*) PURE;
+ STDMETHOD(GetSelectionMarkedItem)(THIS_ int*) PURE;
+ STDMETHOD(GetSpacing)(THIS_ POINT*) PURE;
+ STDMETHOD(Item)(THIS_ int,LPITEMIDLIST*) PURE;
+ STDMETHOD(ItemCount)(THIS_ UINT,int*) PURE;
+ STDMETHOD(Items)(THIS_ UINT,REFIID,PVOID*) PURE;
+ STDMETHOD(SelectAndPositionItems)(THIS_ UINT,LPCITEMIDLIST*,POINT*,DWORD) PURE;
+ STDMETHOD(SelectItem)(THIS_ int,DWORD) PURE;
+ STDMETHOD(SetCurrentViewMode)(THIS_ UINT) PURE;
+};
+#undef INTERFACE
+#endif /* _WIN32_WINNT >= 0x0501 */
+
#define ISIOI_ICONFILE 0x00000001
#define ISIOI_ICONINDEX 0x00000002
diff --git a/winsup/w32api/lib/shell32.c b/winsup/w32api/lib/shell32.c
index b570e0424..349fd2712 100644
--- a/winsup/w32api/lib/shell32.c
+++ b/winsup/w32api/lib/shell32.c
@@ -77,3 +77,4 @@ DEFINE_GUID(CLSID_MyDocuments,0x450d8fba,0xad25,0x11d0,0x98,0xa8,0x08,0x00,0x36,
DEFINE_GUID(CLSID_FolderShortcut,0x0AFACED1,0xE828,0x11D1,0x91,0x87,0xB5,0x32,0xF1,0xE9,0x57,0x5D);
DEFINE_GUID(CLSID_ShellFSFolder,0xF3364BA0,0x65B9,0x11CE,0xA9,0xBA,0x00,0xAA,0x00,0x4A,0xE8,0x37);
DEFINE_GUID(IID_IShellLinkDataList,0x45E2B4AE,0xB1C3, 0x11D0,0xB9,0x2F,0x00,0xA0,0xC9,0x03,0x12,0xE1);
+DEFINE_GUID(IID_IFolderView,0xCDE725B0L,0xCCC9,0x4519,0x91,0x7E,0x32,0x5D,0x72,0xFA,0xB4,0xCE);