mirror of
https://github.com/reactos/reactos.git
synced 2025-01-08 07:11:16 +00:00
More COM interfaces needed for the new explorer
svn path=/trunk/; revision=33205
This commit is contained in:
parent
90985d2f94
commit
8c875b905d
2 changed files with 73 additions and 80 deletions
|
@ -46,35 +46,6 @@ static const GUID SID_HACK_SMenuPopup = {0xD1E7AFEB,0x6A2E,0x11D0,{0x8C,0x78,0x0
|
||||||
#define IDeskBarClient_GetSize(T,a,b) (T)->lpVtbl->GetSize(T,a,b)
|
#define IDeskBarClient_GetSize(T,a,b) (T)->lpVtbl->GetSize(T,a,b)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#define INTERFACE IDeskBar
|
|
||||||
DECLARE_INTERFACE_(IDeskBar,IUnknown)
|
|
||||||
{
|
|
||||||
/*** IUnknown methods ***/
|
|
||||||
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
|
|
||||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
|
||||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
|
||||||
/*** IOleWindow methods ***/
|
|
||||||
STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND*) PURE;
|
|
||||||
STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL) PURE;
|
|
||||||
/*** IDeskBar methods ***/
|
|
||||||
STDMETHOD_(HRESULT,SetClient)(THIS_ IUnknown*) PURE;
|
|
||||||
STDMETHOD_(HRESULT,GetClient)(THIS_ IUnknown**) PURE;
|
|
||||||
STDMETHOD_(HRESULT,OnPosRectChangeDB)(THIS_ RECT*) PURE;
|
|
||||||
};
|
|
||||||
#undef INTERFACE
|
|
||||||
|
|
||||||
#ifdef COBJMACROS
|
|
||||||
#define IDeskBar_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
|
|
||||||
#define IDeskBar_AddRef(T) (T)->lpVtbl->AddRef(T)
|
|
||||||
#define IDeskBar_Release(T) (T)->lpVtbl->Release(T)
|
|
||||||
#define IDeskBar_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
|
|
||||||
#define IDeskBar_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
|
|
||||||
#define IDeskBar_SetClient(T,a) (T)->lpVtbl->SetClient(T,a)
|
|
||||||
#define IDeskBar_GetClient(T,a) (T)->lpVtbl->GetClient(T,a)
|
|
||||||
#define IDeskBar_OnPosRectChangeDB(T,a) (T)->lpVtbl->OnPosRectChangeDB(T,a)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <pshpack8.h>
|
#include <pshpack8.h>
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
|
@ -315,59 +286,8 @@ DECLARE_INTERFACE_(IBanneredBar,IUnknown)
|
||||||
#define IBanneredBar_GetBitmap(T,a) (T)->lpVtbl->GetBitmap(T,a)
|
#define IBanneredBar_GetBitmap(T,a) (T)->lpVtbl->GetBitmap(T,a)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
enum tagMENUPOPUPPOPUPFLAGS
|
|
||||||
{
|
|
||||||
MPPF_SETFOCUS = 0x1,
|
|
||||||
MPPF_INITIALSELECT = 0x2,
|
|
||||||
MPPF_NOANIMATE = 0x4,
|
|
||||||
MPPF_KEYBOARD = 0x10,
|
|
||||||
MPPF_REPOSITION = 0x20,
|
|
||||||
MPPF_FORCEZORDER = 0x40,
|
|
||||||
MPPF_FINALSELECT = 0x80,
|
|
||||||
MPPF_TOP = 0x20000000,
|
|
||||||
MPPF_LEFT = 0x40000000,
|
|
||||||
MPPF_RIGHT = 0x60000000,
|
|
||||||
MPPF_BOTTOM = 0x80000000,
|
|
||||||
MPPF_POS_MASK = 0xE0000000,
|
|
||||||
MPPF_ALIGN_LEFT = 0x2000000,
|
|
||||||
MPPF_ALIGN_RIGHT = 0x4000000,
|
|
||||||
};
|
|
||||||
typedef int MP_POPUPFLAGS;
|
|
||||||
|
|
||||||
#define INTERFACE IMenuPopup
|
|
||||||
DECLARE_INTERFACE_(IMenuPopup,IUnknown)
|
|
||||||
{
|
|
||||||
/*** IUnknown methods ***/
|
|
||||||
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
|
|
||||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
|
||||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
|
||||||
/*** IOleWindow methods ***/
|
|
||||||
STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND*) PURE;
|
|
||||||
STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL) PURE;
|
|
||||||
/*** IDeskBar methods ***/
|
|
||||||
STDMETHOD_(HRESULT,SetClient)(THIS_ IUnknown*) PURE;
|
|
||||||
STDMETHOD_(HRESULT,GetClient)(THIS_ IUnknown**) PURE;
|
|
||||||
STDMETHOD_(HRESULT,OnPosRectChangeDB)(THIS_ RECT*) PURE;
|
|
||||||
/*** IMenuPopup methods ***/
|
|
||||||
STDMETHOD_(HRESULT,Popup)(THIS_ POINTL*,RECTL*,MP_POPUPFLAGS) PURE;
|
|
||||||
STDMETHOD_(HRESULT,OnSelect)(THIS_ DWORD) PURE;
|
|
||||||
STDMETHOD_(HRESULT,SetSubMenu)(THIS_ IMenuPopup*,BOOL) PURE;
|
|
||||||
};
|
|
||||||
#undef INTERFACE
|
|
||||||
|
|
||||||
#ifdef COBJMACROS
|
|
||||||
#define IMenuPopup_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
|
|
||||||
#define IMenuPopup_AddRef(T) (T)->lpVtbl->AddRef(T)
|
|
||||||
#define IMenuPopup_Release(T) (T)->lpVtbl->Release(T)
|
|
||||||
#define IMenuPopup_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
|
|
||||||
#define IMenuPopup_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
|
|
||||||
#define IMenuPopup_SetClient(T,a) (T)->lpVtbl->SetClient(T,a)
|
|
||||||
#define IMenuPopup_GetClient(T,a) (T)->lpVtbl->GetClient(T,a)
|
|
||||||
#define IMenuPopup_OnPosRectChangeDB(T,a) (T)->lpVtbl->OnPosRectChangeDB(T,a)
|
|
||||||
#define IMenuPopup_Popup(T,a,b,c) (T)->lpVtbl->Popup(T,a,b,c)
|
|
||||||
#define IMenuPopup_OnSelect(T,a) (T)->lpVtbl->OnSelect(T,a)
|
|
||||||
#define IMenuPopup_SetSubMenu(T,a,b) (T)->lpVtbl->SetSubMenu(T,a,b)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define INTERFACE IMenuBand
|
#define INTERFACE IMenuBand
|
||||||
DECLARE_INTERFACE_(IMenuBand,IUnknown)
|
DECLARE_INTERFACE_(IMenuBand,IUnknown)
|
||||||
|
|
|
@ -1510,3 +1510,76 @@ interface IDeskBand2 : IDeskBand
|
||||||
|
|
||||||
cpp_quote("#endif // NTDDI_LONGHORN")
|
cpp_quote("#endif // NTDDI_LONGHORN")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60)")
|
||||||
|
|
||||||
|
[
|
||||||
|
uuid(EB0FE173-1A3A-11D0-89B3-00A0C90A90AC),
|
||||||
|
object,
|
||||||
|
pointer_default(unique),
|
||||||
|
local
|
||||||
|
]
|
||||||
|
interface IDeskBar : IOleWindow
|
||||||
|
{
|
||||||
|
HRESULT SetClient([in] IUnknown* punkClient);
|
||||||
|
|
||||||
|
HRESULT GetClient([out] IUnknown** ppunkClient);
|
||||||
|
|
||||||
|
HRESULT OnPosRectChangeDB([in] RECT *prc);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
* IMenuPopup interface
|
||||||
|
*/
|
||||||
|
[
|
||||||
|
uuid(D1E7AFEB-6A2E-11d0-8C78-00C04FD918B4),
|
||||||
|
object,
|
||||||
|
pointer_default(unique),
|
||||||
|
local
|
||||||
|
]
|
||||||
|
interface IMenuPopup : IDeskBar
|
||||||
|
{
|
||||||
|
enum tagMENUPOPUPSELECT
|
||||||
|
{
|
||||||
|
MPOS_EXECUTE = 0,
|
||||||
|
MPOS_FULLCANCEL,
|
||||||
|
MPOS_CANCELLEVEL,
|
||||||
|
MPOS_SELECTLEFT,
|
||||||
|
MPOS_SELECTRIGHT,
|
||||||
|
MPOS_CHILDTRACKING
|
||||||
|
};
|
||||||
|
|
||||||
|
enum tagMENUPOPUPPOPUPFLAGS
|
||||||
|
{
|
||||||
|
MPPF_SETFOCUS = 0x00000001,
|
||||||
|
MPPF_INITIALSELECT = 0x00000002,
|
||||||
|
MPPF_NOANIMATE = 0x00000004,
|
||||||
|
MPPF_KEYBOARD = 0x00000010,
|
||||||
|
MPPF_REPOSITION = 0x00000020,
|
||||||
|
MPPF_FORCEZORDER = 0x00000040,
|
||||||
|
MPPF_FINALSELECT = 0x00000080,
|
||||||
|
MPPF_TOP = 0x20000000,
|
||||||
|
MPPF_LEFT = 0x40000000,
|
||||||
|
MPPF_RIGHT = 0x60000000,
|
||||||
|
MPPF_BOTTOM = 0x80000000,
|
||||||
|
MPPF_POS_MASK = 0xE0000000,
|
||||||
|
MPPF_ALIGN_LEFT = 0x02000000,
|
||||||
|
MPPF_ALIGN_RIGHT = 0x04000000
|
||||||
|
};
|
||||||
|
typedef int MP_POPUPFLAGS;
|
||||||
|
|
||||||
|
HRESULT Popup(
|
||||||
|
[in] POINTL *ppt,
|
||||||
|
[in] RECTL *prcExclude,
|
||||||
|
[in] MP_POPUPFLAGS dwFlags);
|
||||||
|
|
||||||
|
HRESULT OnSelect([in] DWORD dwSelectType);
|
||||||
|
|
||||||
|
HRESULT SetSubMenu(
|
||||||
|
[in] IMenuPopup* pmp,
|
||||||
|
[in] BOOL fSet);
|
||||||
|
}
|
||||||
|
|
||||||
|
cpp_quote("#endif /* _WIN32_IE_IE60 */")
|
||||||
|
|
Loading…
Reference in a new issue