Jay Yang : include: Add header entries required for SHCreateDefaultContextMenu and CDefFolderMenu_Create2 .
Alexandre Julliard
julliard at winehq.org
Tue Aug 2 14:18:27 CDT 2011
Module: wine
Branch: master
Commit: ae3108e66f14cd5f7697999377e9e1426bc6c300
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ae3108e66f14cd5f7697999377e9e1426bc6c300
Author: Jay Yang <jkelleyy at gmail.com>
Date: Mon Aug 1 17:47:47 2011 -0400
include: Add header entries required for SHCreateDefaultContextMenu and CDefFolderMenu_Create2.
---
include/shlobj.h | 24 ++++++++++++++++++++++++
include/shobjidl.idl | 17 +++++++++++++++++
2 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/include/shlobj.h b/include/shlobj.h
index 07981b6..3e9df2c 100644
--- a/include/shlobj.h
+++ b/include/shlobj.h
@@ -1701,6 +1701,30 @@ static inline BOOL ILIsEmpty(LPCITEMIDLIST pidl)
return !(pidl && pidl->mkid.cb);
}
+#include <pshpack8.h>
+
+typedef struct {
+ HWND hwnd;
+ IContextMenuCB *pcmcb;
+ PCIDLIST_ABSOLUTE pidlFolder;
+ IShellFolder *psf;
+ UINT cidl;
+ PCUITEMID_CHILD_ARRAY apidl;
+ IUnknown *punkAssociationInfo;
+ UINT cKeys;
+ const HKEY *aKeys;
+} DEFCONTEXTMENU;
+
+#include <poppack.h>
+
+HRESULT WINAPI SHCreateDefaultContextMenu(const DEFCONTEXTMENU *pdcm, REFIID riid, void **ppv);
+
+typedef HRESULT (CALLBACK *LPFNDFMCALLBACK)(IShellFolder*,HWND,IDataObject*,UINT,WPARAM,LPARAM);
+
+HRESULT WINAPI CDefFolderMenu_Create2(LPCITEMIDLIST pidlFolder, HWND hwnd, UINT cidl,
+ LPCITEMIDLIST *apidl, IShellFolder *psf,
+ LPFNDFMCALLBACK lpfn, UINT nKeys, const HKEY *ahkeys,
+ IContextMenu **ppcm);
#include <poppack.h>
diff --git a/include/shobjidl.idl b/include/shobjidl.idl
index 910118d..e129371 100644
--- a/include/shobjidl.idl
+++ b/include/shobjidl.idl
@@ -1586,6 +1586,23 @@ interface IContextMenu3 : IContextMenu2
}
+[
+ object,
+ uuid(3409e930-5a39-11d1-83fa-00a0c90dc849),
+ pointer_default(unique),
+ local
+]
+interface IContextMenuCB : IUnknown
+{
+ HRESULT CallBack(
+ [in] IShellFolder *psf,
+ [in] HWND hwndOwner,
+ [in] IDataObject *pdtobj,
+ [in] UINT uMsg,
+ [in] WPARAM wParam,
+ [in] LPARAM lParam);
+}
+
/*****************************************************************************
* IShellExecuteHookA interface
*/
More information about the wine-cvs
mailing list