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:
authorDanny Smith <dannysmith@users.sourceforge.net>2005-08-17 12:29:08 +0400
committerDanny Smith <dannysmith@users.sourceforge.net>2005-08-17 12:29:08 +0400
commit38c9e858ac450b9f7a8f9837d666cbd8e33b1e43 (patch)
tree0f4f205641d02e33b73ea68d3a7394e117cf3189 /winsup/w32api/include
parent9a99dcd39c3a40de0bc804f9d80d9a673198bee3 (diff)
2005-08-17 Martin Fuchs <martin-fuchs@gmx.net>
* include/shlobj.h (IContextMenu3): Define. * include/shlguid.h (IID_IContextMenu3): Declare. * lib/shell32.c (IID_IContextMenu3): Define. 2005-08-17 Martin Fuchs <martin-fuchs@gmx.net> * include/shlobj.h (SHFormatDrive): Declaration of function and associated constants.
Diffstat (limited to 'winsup/w32api/include')
-rw-r--r--winsup/w32api/include/shlguid.h1
-rw-r--r--winsup/w32api/include/shlobj.h35
2 files changed, 36 insertions, 0 deletions
diff --git a/winsup/w32api/include/shlguid.h b/winsup/w32api/include/shlguid.h
index 2a37a3ca5..3583e324b 100644
--- a/winsup/w32api/include/shlguid.h
+++ b/winsup/w32api/include/shlguid.h
@@ -36,6 +36,7 @@ extern const GUID IID_ICommDlgBrowser;
extern const GUID IID_IEnumIDList;
extern const GUID IID_IFileViewerSite;
extern const GUID IID_IContextMenu2;
+extern const GUID IID_IContextMenu3;
extern const GUID IID_IShellExecuteHookA;
extern const GUID IID_IPropSheetPage;
extern const GUID IID_INewShortcutHookW;
diff --git a/winsup/w32api/include/shlobj.h b/winsup/w32api/include/shlobj.h
index 07f4bdae4..138d08d6f 100644
--- a/winsup/w32api/include/shlobj.h
+++ b/winsup/w32api/include/shlobj.h
@@ -601,6 +601,21 @@ DECLARE_INTERFACE_(IContextMenu2,IContextMenu)
};
typedef IContextMenu2 *LPCONTEXTMENU2;
+#undef INTERFACE
+#define INTERFACE IContextMenu3
+DECLARE_INTERFACE_(IContextMenu3,IContextMenu2)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(QueryContextMenu)(THIS_ HMENU,UINT,UINT,UINT,UINT) PURE;
+ STDMETHOD(InvokeCommand)(THIS_ LPCMINVOKECOMMANDINFO) PURE;
+ STDMETHOD(GetCommandString)(THIS_ UINT,UINT,PUINT,LPSTR,UINT) PURE;
+ STDMETHOD(HandleMenuMsg)(THIS_ UINT,WPARAM,LPARAM) PURE;
+ STDMETHOD(HandleMenuMsg2)(THIS_ UINT,WPARAM,LPARAM,LRESULT*) PURE;
+};
+typedef IContextMenu3 *LPCONTEXTMENU3;
+
#if (_WIN32_IE >= 0x0500)
#pragma pack(push,8)
typedef struct {
@@ -658,6 +673,17 @@ typedef enum {
#define IContextMenu2_HandleMenuMsg(T,a,b,c) (T)->lpVtbl->HandleMenuMsg(T,a,b,c)
#endif
+#ifdef COBJMACROS
+#define IContextMenu3_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IContextMenu3_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IContextMenu3_Release(T) (T)->lpVtbl->Release(T)
+#define IContextMenu3_QueryContextMenu(T,a,b,c,d,e) (T)->lpVtbl->QueryContextMenu(T,a,b,c,d,e)
+#define IContextMenu3_InvokeCommand(T,a) (T)->lpVtbl->InvokeCommand(T,a)
+#define IContextMenu3_GetCommandString(T,a,b,c,d,e) (T)->lpVtbl->GetCommandString(T,a,b,c,d,e)
+#define IContextMenu3_HandleMenuMsg(T,a,b,c) (T)->lpVtbl->HandleMenuMsg(T,a,b,c)
+#define IContextMenu3_HandleMenuMsg2(T,a,b,c,d) (T)->lpVtbl->HandleMenuMsg(T,a,b,c,d)
+#endif
+
#undef INTERFACE
#define INTERFACE IColumnProvider
DECLARE_INTERFACE_(IColumnProvider,IUnknown)
@@ -1474,6 +1500,15 @@ typedef BROWSEINFOA BROWSEINFO,*PBROWSEINFO,*LPBROWSEINFO;
#define LPFILEGROUPDESCRIPTOR LPFILEGROUPDESCRIPTORA
#endif /* UNICODE */
+DWORD WINAPI SHFormatDrive(HWND,UINT,UINT,UINT);
+
+#define SHFMT_ID_DEFAULT 0xFFFF
+#define SHFMT_OPT_FULL 1
+#define SHFMT_OPT_SYSONLY 2
+#define SHFMT_ERROR 0xFFFFFFFF
+#define SHFMT_CANCEL 0xFFFFFFFE
+#define SHFMT_NOFORMAT 0xFFFFFFFD
+
#pragma pack(pop)
#ifdef __cplusplus
}