| /* |
| * Defines the COM interfaces and APIs from ocidl.h which pertain to Undo/Redo |
| * |
| * Depends on 'obj_base.h'. |
| */ |
| |
| #ifndef __WINE_WINE_OBJ_OLEUNDO_H |
| #define __WINE_WINE_OBJ_OLEUNDO_H |
| |
| |
| #include "winbase.h" |
| |
| /***************************************************************************** |
| * Predeclare the interfaces |
| */ |
| DEFINE_GUID(IID_IQuickActivate, 0xcf51ed10, 0x62fe, 0x11cf, 0xbf, 0x86, 0x00, 0xa0, 0xc9, 0x03, 0x48, 0x36); |
| typedef struct IQuickActivate IQuickActivate,*LPQUICKACTIVATE; |
| |
| DEFINE_GUID(IID_IPointerInactive, 0x55980ba0, 0x35aa, 0x11cf, 0xb6, 0x71, 0x00, 0xaa, 0x00, 0x4c, 0xd6, 0xd8); |
| typedef struct IPointerInactive IPointerInactive,*LPPOINTERINACTIVE; |
| |
| DEFINE_GUID(IID_IAdviseSinkEx, 0x3af24290, 0x0c96, 0x11ce, 0xa0, 0xcf, 0x00, 0xaa, 0x00, 0x60, 0x0a, 0xb8); |
| typedef struct IAdviseSinkEx IAdviseSinkEx,*LPADVISESINKEX; |
| |
| DEFINE_GUID(IID_IOleUndoManager, 0xd001f200, 0xef97, 0x11ce, 0x9b, 0xc9, 0x00, 0xaa, 0x00, 0x60, 0x8e, 0x01); |
| typedef struct IOleUndoManager IOleUndoManager,*LPOLEUNDOMANAGER; |
| |
| DEFINE_GUID(IID_IOleUndoUnit, 0x894ad3b0, 0xef97, 0x11ce, 0x9b, 0xc9, 0x00, 0xaa, 0x00, 0x60, 0x8e, 0x01); |
| typedef struct IOleUndoUnit IOleUndoUnit,*LPOLEUNDOUNIT; |
| |
| DEFINE_GUID(IID_IOleParentUndoUnit, 0xa1faf330, 0xef97, 0x11ce, 0x9b, 0xc9, 0x00, 0xaa, 0x00, 0x60, 0x8e, 0x01); |
| typedef struct IOleParentUndoUnit IOleParentUndoUnit,*LPOLEPARENTUNDOUNIT; |
| |
| DEFINE_GUID(IID_IEnumOleUndoUnits, 0xb3e7c340, 0xef97, 0x11ce, 0x9b, 0xc9, 0x00, 0xaa, 0x00, 0x60, 0x8e, 0x01); |
| typedef struct IEnumOleUndoUnits IEnumOleUndoUnits,*LPENUMOLEUNDOUNITS; |
| |
| /***************************************************************************** |
| * Declare the structures |
| */ |
| typedef enum tagQACONTAINERFLAGS |
| { |
| QACONTAINER_SHOWHATCHING = 0x1, |
| QACONTAINER_SHOWGRABHANDLES = 0x2, |
| QACONTAINER_USERMODE = 0x4, |
| QACONTAINER_DISPLAYASDEFAULT = 0x8, |
| QACONTAINER_UIDEAD = 0x10, |
| QACONTAINER_AUTOCLIP = 0x20, |
| QACONTAINER_MESSAGEREFLECT = 0x40, |
| QACONTAINER_SUPPORTSMNEMONICS = 0x80 |
| } QACONTAINERFLAGS; |
| |
| typedef DWORD OLE_COLOR; |
| |
| typedef struct tagQACONTROL |
| { |
| ULONG cbSize; |
| DWORD dwMiscStatus; |
| DWORD dwViewStatus; |
| DWORD dwEventCookie; |
| DWORD dwPropNotifyCookie; |
| DWORD dwPointerActivationPolicy; |
| } QACONTROL; |
| |
| typedef struct tagQACONTAINER |
| { |
| ULONG cbSize; |
| IOleClientSite *pClientSite; |
| IAdviseSinkEx *pAdviseSink; |
| IPropertyNotifySink *pPropertyNotifySink; |
| IUnknown *pUnkEventSink; |
| DWORD dwAmbientFlags; |
| OLE_COLOR colorFore; |
| OLE_COLOR colorBack; |
| IFont *pFont; |
| IOleUndoManager *pUndoMgr; |
| DWORD dwAppearance; |
| LONG lcid; |
| HPALETTE hpal; |
| struct IBindHost *pBindHost; |
| } QACONTAINER; |
| |
| /***************************************************************************** |
| * IQuickActivate interface |
| */ |
| #define ICOM_INTERFACE IQuickActivate |
| #define IQuickActivate_METHODS \ |
| ICOM_METHOD2(HRESULT,QuickActivate, QACONTAINER*,pQaContainer, QACONTROL*,pQaControl) \ |
| ICOM_METHOD1(HRESULT,SetContentExtent, LPSIZEL,pSizel) \ |
| ICOM_METHOD1(HRESULT,GetContentExtent, LPSIZEL,pSizel) |
| #define IQuickActivate_IMETHODS \ |
| IUnknown_IMETHODS \ |
| IQuickActivate_METHODS |
| ICOM_DEFINE(IQuickActivate,IUnknown) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IQuickActivate_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IQuickActivate_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IQuickActivate_Release(p) ICOM_CALL (Release,p) |
| /*** IQuickActivate methods ***/ |
| #define IQuickActivate_QuickActivate(p,a,b) ICOM_CALL2(QuickActivate,p,a,b) |
| #define IQuickActivate_SetContentExtent(p,a) ICOM_CALL1(SetContentExtent,p,a) |
| #define IQuickActivate_GetContentExtent(p,a) ICOM_CALL1(GetContentExtent,p,a) |
| #endif |
| |
| |
| /***************************************************************************** |
| * IPointerInactive interface |
| */ |
| #define ICOM_INTERFACE IPointerInactive |
| #define IPointerInactive_METHODS \ |
| ICOM_METHOD1(HRESULT,GetActivationPolicy, DWORD*,pdwPolicy) \ |
| ICOM_METHOD4(HRESULT,OnInactiveMoveMouse, LPCRECT,pRectBounds, LONG,x, LONG,y, DWORD,grfKeyState) \ |
| ICOM_METHOD5(HRESULT,OnInactiveSetCursor, LPCRECT,pRectBounds, LONG,x, LONG,y, DWORD,dwMouseMsg, BOOL,fSetAlways) |
| #define IPointerInactive_IMETHODS \ |
| IUnknown_IMETHODS \ |
| IPointerInactive_METHODS |
| ICOM_DEFINE(IPointerInactive,IUnknown) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IPointerInactive_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IPointerInactive_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IPointerInactive_Release(p) ICOM_CALL (Release,p) |
| /*** IPointerInactive methods ***/ |
| #define IPointerInactive_GetActivationPolicy(p,a) ICOM_CALL1(GetActivationPolicy,p,a) |
| #define IPointerInactive_OnInactiveMoveMouse(p,a,b,c,d) ICOM_CALL4(OnInactiveMoveMouse,p,a,b,c,d) |
| #define IPointerInactive_OnInactiveSetCursor(p,a,b,c,d,e) ICOM_CALL5(OnInactiveSetCursor,p,a,b,d,e) |
| #endif |
| |
| |
| /***************************************************************************** |
| * IAdviseSinkEx interface |
| */ |
| #define ICOM_INTERFACE IAdviseSinkEx |
| #define IAdviseSinkEx_METHODS \ |
| ICOM_METHOD1(HRESULT,OnViewStatusChange, DWORD,dwViewStatus) |
| #define IAdviseSinkEx_IMETHODS \ |
| IAdviseSink_IMETHODS \ |
| IAdviseSinkEx_METHODS |
| ICOM_DEFINE(IAdviseSinkEx,IAdviseSink) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IAdviseSinkEx_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IAdviseSinkEx_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IAdviseSinkEx_Release(p) ICOM_CALL (Release,p) |
| /*** IAdviseSink methods ***/ |
| #define IAdviseSinkEx_OnDataChange(p,a,b) ICOM_CALL2(OnDataChange,p,a,b) |
| #define IAdviseSinkEx_OnViewChange(p,a,b) ICOM_CALL2(OnViewChange,p,a,b) |
| #define IAdviseSinkEx_OnRename(p,a) ICOM_CALL1(OnRename,p,a) |
| #define IAdviseSinkEx_OnSave(p) ICOM_CALL (OnSave,p) |
| #define IAdviseSinkEx_OnClose(p) ICOM_CALL (OnClose,p) |
| /*** IAdviseSinkEx methods ***/ |
| #define IAdviseSinkEx_OnViewStatusChange(p,a) ICOM_CALL1(OnViewStatusChange,p,a) |
| #endif |
| |
| |
| /***************************************************************************** |
| * IOleUndoManager interface |
| */ |
| #define ICOM_INTERFACE IOleUndoManager |
| #define IOleUndoManager_METHODS \ |
| ICOM_METHOD1(HRESULT,Open, IOleParentUndoUnit*,pPUU) \ |
| ICOM_METHOD2(HRESULT,Close, IOleParentUndoUnit*,pPUU, BOOL,fCommit) \ |
| ICOM_METHOD1(HRESULT,Add, IOleUndoUnit*,pUU) \ |
| ICOM_METHOD1(HRESULT,GetOpenParentState, DWORD*,pdwState) \ |
| ICOM_METHOD1(HRESULT,DiscardFrom, IOleUndoUnit*,pUU) \ |
| ICOM_METHOD1(HRESULT,UndoTo, IOleUndoUnit*,pUU) \ |
| ICOM_METHOD1(HRESULT,RedoTo, IOleUndoUnit*,pUU) \ |
| ICOM_METHOD1(HRESULT,EnumUndoable, IEnumOleUndoUnits**,ppEnum) \ |
| ICOM_METHOD1(HRESULT,EnumRedoable, IEnumOleUndoUnits**,ppEnum) \ |
| ICOM_METHOD1(HRESULT,GetLastUndoDescription, BSTR*,pBstr) \ |
| ICOM_METHOD1(HRESULT,GetLastRedoDescription, BSTR*,pBstr) \ |
| ICOM_METHOD1(HRESULT,Enable, BOOL,fEnable) |
| #define IOleUndoManager_IMETHODS \ |
| IUnknown_IMETHODS \ |
| IOleUndoManager_METHODS |
| ICOM_DEFINE(IOleUndoManager,IUnknown) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IOleUndoManager_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IOleUndoManager_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IOleUndoManager_Release(p) ICOM_CALL (Release,p) |
| /*** IOleUndoManager methods ***/ |
| #define IOleUndoManager_Open(p,a) ICOM_CALL1(Open,p,a) |
| #define IOleUndoManager_Close(p,a,b) ICOM_CALL2(Close,p,a,b) |
| #define IOleUndoManager_Add(p,a) ICOM_CALL1(Add,p,a) |
| #define IOleUndoManager_GetOpenParentState(p,a) ICOM_CALL1(GetOpenParentState,p,a) |
| #define IOleUndoManager_DiscardFrom(p,a) ICOM_CALL1(DiscardFrom,p,a) |
| #define IOleUndoManager_UndoTo(p,a) ICOM_CALL1(UndoTo,p,a) |
| #define IOleUndoManager_RedoTo(p,a) ICOM_CALL1(RedoTo,p,a) |
| #define IOleUndoManager_EnumUndoable(p,a) ICOM_CALL1(EnumUndoable,p,a) |
| #define IOleUndoManager_EnumRedoable(p,a) ICOM_CALL1(EnumRedoable,p,a) |
| #define IOleUndoManager_GetLastUndoDescription(p,a) ICOM_CALL1(GetLastUndoDescription,p,a) |
| #define IOleUndoManager_GetLastRedoDescription(p,a) ICOM_CALL1(GetLastRedoDescription,p,a) |
| #define IOleUndoManager_Enable(p,a) ICOM_CALL1(Enable,p,a) |
| #endif |
| |
| |
| /***************************************************************************** |
| * IOleUndoUnit interface |
| */ |
| #define ICOM_INTERFACE IOleUndoUnit |
| #define IOleUndoUnit_METHODS \ |
| ICOM_METHOD1(HRESULT,Do, IOleUndoManager*,pUndoManager) \ |
| ICOM_METHOD1(HRESULT,GetDescription, BSTR*,pBstr) \ |
| ICOM_METHOD2(HRESULT,GetUnitType, CLSID*,pClsid, LONG*,plID) \ |
| ICOM_METHOD (HRESULT,OnNextAdd) |
| #define IOleUndoUnit_IMETHODS \ |
| IUnknown_IMETHODS \ |
| IOleUndoUnit_METHODS |
| ICOM_DEFINE(IOleUndoUnit,IUnknown) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IOleUndoUnit_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IOleUndoUnit_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IOleUndoUnit_Release(p) ICOM_CALL (Release,p) |
| /*** IOleUndoUnit methods ***/ |
| #define IOleUndoUnit_Do(p,a) ICOM_CALL1(Do,p,a) |
| #define IOleUndoUnit_GetDescription(p,a) ICOM_CALL1(GetDescription,p,a) |
| #define IOleUndoUnit_GetUnitType(p,a,b) ICOM_CALL2(GetUnitType,p,a,b) |
| #define IOleUndoUnit_OnNextAdd(p) ICOM_CALL (OnNextAdd,p) |
| #endif |
| |
| |
| |
| /***************************************************************************** |
| * IOleUndoUnit interface |
| */ |
| #define ICOM_INTERFACE IOleParentUndoUnit |
| #define IOleParentUndoUnit_METHODS \ |
| ICOM_METHOD1(HRESULT,Open, IOleParentUndoUnit*,pPUU) \ |
| ICOM_METHOD2(HRESULT,Close, IOleParentUndoUnit*,pPUU, BOOL,fCommit) \ |
| ICOM_METHOD1(HRESULT,Add, IOleUndoUnit*,pUU) \ |
| ICOM_METHOD1(HRESULT,FindUnit, IOleUndoUnit*,pUU) \ |
| ICOM_METHOD1(HRESULT,GetParentState, DWORD*,pdwState) |
| #define IOleParentUndoUnit_IMETHODS \ |
| IOleUndoUnit_IMETHODS \ |
| IOleParentUndoUnit_METHODS |
| ICOM_DEFINE(IOleParentUndoUnit,IOleUndoUnit) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IOleParentUndoUnit_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IOleParentUndoUnit_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IOleParentUndoUnit_Release(p) ICOM_CALL (Release,p) |
| /*** IOleUndoUnit methods ***/ |
| #define IOleParentUndoUnit_Do(p,a) ICOM_CALL1(Do,p,a) |
| #define IOleParentUndoUnit_GetDescription(p,a) ICOM_CALL1(GetDescription,p,a) |
| #define IOleParentUndoUnit_GetUnitType(p,a,b) ICOM_CALL2(GetUnitType,p,a,b) |
| #define IOleParentUndoUnit_OnNextAdd(p) ICOM_CALL (OnNextAdd,p) |
| /*** IOleParentUndoUnit methods ***/ |
| #define IOleParentUndoUnit_Open(p,a) ICOM_CALL1(Open,p,a) |
| #define IOleParentUndoUnit_Close(p,a,b) ICOM_CALL2(Close,p,a,b) |
| #define IOleParentUndoUnit_Add(p,a) ICOM_CALL1(Add,p,a) |
| #define IOleParentUndoUnit_FindUnit(p,a) ICOM_CALL1(FindUnit,p,a) |
| #define IOleParentUndoUnit_GetParentState(p,a,b) ICOM_CALL1(GetParentState,p,a) |
| #endif |
| |
| |
| /***************************************************************************** |
| * IEnumOleUndoUnits interface |
| */ |
| #define ICOM_INTERFACE IEnumOleUndoUnits |
| #define IEnumOleUndoUnits_METHODS \ |
| ICOM_METHOD3(HRESULT,Next, ULONG,cElt, IOleUndoUnit**,rgElt, ULONG*,pcEltFetched) \ |
| ICOM_METHOD1(HRESULT,Skip, ULONG,cElt) \ |
| ICOM_METHOD (HRESULT,Reset) \ |
| ICOM_METHOD1(HRESULT,Clone, IEnumOleUndoUnits**,ppEnum) |
| #define IEnumOleUndoUnits_IMETHODS \ |
| IUnknown_IMETHODS \ |
| IEnumOleUndoUnits_METHODS |
| ICOM_DEFINE(IEnumOleUndoUnits,IUnknown) |
| #undef ICOM_INTERFACE |
| |
| #ifdef ICOM_CINTERFACE |
| /*** IUnknown methods ***/ |
| #define IEnumOleUndoUnits_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) |
| #define IEnumOleUndoUnits_AddRef(p) ICOM_CALL (AddRef,p) |
| #define IEnumOleUndoUnits_Release(p) ICOM_CALL (Release,p) |
| /*** IEnumOleUndoUnits methods ***/ |
| #define IEnumOleUndoUnits_Next(p,a,b,c) ICOM_CALL3(Next,p,a,b,c) |
| #define IEnumOleUndoUnits_Skip(p,a) ICOM_CALL1(Skip,p,a) |
| #define IEnumOleUndoUnits_Reset(p,a) ICOM_CALL (Reset,p,a) |
| #define IEnumOleUndoUnits_Clone(p,a) ICOM_CALL1(Clone,p,a) |
| #endif |
| |
| |
| |
| #endif /* __WINE_WINE_OBJ_OLEUNDO_H */ |
| |