2004-01-03 Filip Navara <xnavara@volny.cz>

* include/cguid.h (CLSID_StdGlobalInterfaceTable): Declare IID.
	* include/oaidl.h (ITypeLib2, ITypeInfo2): Define interfaces,
	declare IID's.
	(IErrorInfo): Add COBJMACROS.
	* include/objbase.h (STGM_NOSNAPSHOT): Add define.
	(CoGetPSClsid): Add protototype,
	(CoRegisterPSClsid): Likewise.
	* include/objidl.h (IMarshal): Correct methods.
	(IMallocSpy): Likewise,
	(LPPSFACTORYBUFFER): Add typedef.
	(IGlobalInterfaceTable): Define interface and COBJMACROS. Declare
	IID.
	(IStorage_CreateStorage, IRpcStubBuffer_Invoke): Fix macros.
	* include/ocidl.h (PROPBAG2_TYPE): Define enum.
	(PROPBAG2, QACONTAINERFLAGS, QACONTAINER, QACONTROL): Define
	structures.
	(IPropertyBag2, IPersistPropertyBag2,IAdviseSinkEx, IPointerInactive,
	IOleUndoUnit, IOleParentUndoUnit, IEnumOleUndoUnits, IOleUndoManager,
	IQuickActivate): Define interfaces. Declare IID's.
	(IPersistPropertyBag2): Add COBJMACROS.
	(LPOLEUNDOMANAGER): Add typedef.
	(LPPROPERTYBAG2): Likewise.
	* include/oleidl.h (LPPARSEDISPLAYNAME): Fix definiton.
	(BINDSPEED): Add definition.
	(IParseDisplayName, IOleItemContainer, IOleObject, IDropSource,
	IDropTarget): Add COBJMACROS.
	* include/wtypes.h (MEMCTX, MSHCTX): Fix enums.
	* include/winerror.h (CO_S_NOTALLINTERFACES): Add define.
	* lib/uuid.c (IID_IGlobalInterfaceTable, IID_IOleUndoManager,
	IID_IPersistPropertyBag2, IID_IPropertyBag2, IID_IRpcProxyBuffer):
	Add definitions.
This commit is contained in:
Danny Smith
2004-01-03 22:12:35 +00:00
parent 0efff769fd
commit b01201ec32
10 changed files with 442 additions and 12 deletions

View File

@ -12,12 +12,14 @@ extern "C" {
typedef interface IErrorLog *LPERRORLOG;
typedef interface IPropertyBag *LPPROPERTYBAG;
typedef interface IPropertyBag2 *LPPROPERTYBAG2;
typedef interface IEnumConnections *LPENUMCONNECTIONS;
typedef interface IConnectionPoint *LPCONNECTIONPOINT;
typedef interface IEnumConnectionPoints *LPENUMCONNECTIONPOINTS;
typedef interface IPropertyPageSite *LPPROPERTYPAGESITE;
typedef interface IFont *LPFONT;
typedef interface IFontDisp *LPFONTDISP;
typedef interface IOleUndoManager *LPOLEUNDOMANAGER;
#ifndef OLE2ANSI
typedef TEXTMETRICW TEXTMETRICOLE;
@ -39,6 +41,63 @@ typedef enum tagREADYSTATE {
READYSTATE_INTERACTIVE = 3,
READYSTATE_COMPLETE = 4
} READYSTATE;
typedef enum tagPROPBAG2_TYPE {
PROPBAG2_TYPE_UNDEFINED = 0,
PROPBAG2_TYPE_DATA = 1,
PROPBAG2_TYPE_URL = 2,
PROPBAG2_TYPE_OBJECT = 3,
PROPBAG2_TYPE_STREAM = 4,
PROPBAG2_TYPE_STORAGE = 5,
PROPBAG2_TYPE_MONIKER = 6
} PROPBAG2_TYPE;
typedef struct tagPROPBAG2
{
DWORD dwType;
VARTYPE vt;
CLIPFORMAT cfType;
DWORD dwHint;
LPOLESTR pstrName;
CLSID clsid;
} PROPBAG2;
enum tagQACONTAINERFLAGS
{
QACONTAINER_SHOWHATCHING = 1,
QACONTAINER_SHOWGRABHANDLES = 2,
QACONTAINER_USERMODE = 4,
QACONTAINER_DISPLAYASDEFAULT = 8,
QACONTAINER_UIDEAD = 16,
QACONTAINER_AUTOCLIP = 32,
QACONTAINER_MESSAGEREFLECT = 64,
QACONTAINER_SUPPORTSMNEMONICS = 128
} QACONTAINERFLAGS;
typedef struct tagQACONTAINER
{
ULONG cbSize;
interface IOleClientSite *pClientSite;
interface IAdviseSinkEx *pAdviseSink;
interface IPropertyNotifySink *pPropertyNotifySink;
IUnknown *pUnkEventSink;
DWORD dwAmbientFlags;
OLE_COLOR colorFore;
OLE_COLOR colorBack;
interface IFont *pFont;
interface IOleUndoManager *pUndoMgr;
DWORD dwAppearance;
LONG lcid;
HPALETTE hpal;
interface IBindHost *pBindHost;
interface IOleControlSite *pOleControlSite;
interface IServiceProvider *pServiceProvider;
} QACONTAINER;
typedef struct tagQACONTROL
{
ULONG cbSize;
DWORD dwMiscStatus;
DWORD dwViewStatus;
DWORD dwEventCookie;
DWORD dwPropNotifyCookie;
DWORD dwPointerActivationPolicy;
} QACONTROL;
typedef struct tagPOINTF {
float x;
float y;
@ -158,6 +217,21 @@ DECLARE_INTERFACE_(IPropertyBag,IUnknown)
STDMETHOD(Write)(THIS_ LPCOLESTR,LPVARIANT) PURE;
};
EXTERN_C const IID IID_IPropertyBag2;
#undef INTERFACE
#define INTERFACE IPropertyBag2
DECLARE_INTERFACE_(IPropertyBag2,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Read)(THIS_ ULONG,PROPBAG2*,LPERRORLOG,VARIANT*,HRESULT*) PURE;
STDMETHOD(Write)(THIS_ ULONG,PROPBAG2*,VARIANT*) PURE;
STDMETHOD(CountProperties)(THIS_ ULONG*) PURE;
STDMETHOD(GetPropertyInfo)(THIS_ ULONG,ULONG,PROPBAG2*,ULONG*) PURE;
STDMETHOD(LoadObject)(THIS_ LPCOLESTR,DWORD,IUnknown*,LPERRORLOG) PURE;
};
EXTERN_C const IID IID_IPersistPropertyBag;
#undef INTERFACE
#define INTERFACE IPersistPropertyBag
@ -182,6 +256,32 @@ DECLARE_INTERFACE_(IPersistPropertyBag,IPersist)
#define IPersistPropertyBag_Save(T,a,b,c) (T)->lpVtbl->Save(T,a,b,c)
#endif
EXTERN_C const IID IID_IPersistPropertyBag2;
#undef INTERFACE
#define INTERFACE IPersistPropertyBag2
DECLARE_INTERFACE_(IPersistPropertyBag2,IPersist)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetClassID)(THIS_ LPCLSID) PURE;
STDMETHOD(InitNew)(THIS) PURE;
STDMETHOD(Load)(THIS_ LPPROPERTYBAG2,LPERRORLOG) PURE;
STDMETHOD(Save)(THIS_ LPPROPERTYBAG2,BOOL,BOOL) PURE;
STDMETHOD(IsDirty)(THIS) PURE;
};
#ifdef COBJMACROS
#define IPersistPropertyBag2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
#define IPersistPropertyBag2_AddRef(T) (T)->lpVtbl->AddRef(T)
#define IPersistPropertyBag2_Release(T) (T)->lpVtbl->Release(T)
#define IPersistPropertyBag2_GetClassID(T,a) (T)->lpVtbl->GetClassID(T,a)
#define IPersistPropertyBag2_InitNew(T) (T)->lpVtbl->InitNew(T)
#define IPersistPropertyBag2_Load(T,a,b) (T)->lpVtbl->Load(T,a,b)
#define IPersistPropertyBag2_Save(T,a,b,c) (T)->lpVtbl->Save(T,a,b,c)
#define IPersistPropertyBag2_IsDirty(T) (T)->lpVtbl->IsDirty(T)
#endif
EXTERN_C const IID IID_IPersistStreamInit;
#undef INTERFACE
#define INTERFACE IPersistStreamInit
@ -544,7 +644,6 @@ DECLARE_INTERFACE_(IOleInPlaceSiteEx,IOleInPlaceSite)
STDMETHOD(DiscardUndoState)(THIS) PURE;
STDMETHOD(DeactivateAndUndo)(THIS) PURE;
STDMETHOD(OnPosRectChange)(THIS_ LPCRECT) PURE;
STDMETHOD(OnInPlaceActivateEx)(THIS_ BOOL*,DWORD) PURE;
STDMETHOD(OnInPlaceDeactivateEx)(THIS_ BOOL) PURE;
STDMETHOD(RequestUIActivate)(THIS) PURE;
@ -601,6 +700,117 @@ DECLARE_INTERFACE_(IOleInPlaceSiteWindowless,IOleInPlaceSiteEx)
STDMETHOD(OnDefWindowMessage)(THIS_ UINT,WPARAM,LPARAM,LRESULT*) PURE;
};
EXTERN_C const IID IID_IAdviseSinkEx;
#undef INTERFACE
#define INTERFACE IAdviseSinkEx
DECLARE_INTERFACE_(IAdviseSinkEx,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD_(void,OnDataChange)(THIS_ FORMATETC*,STGMEDIUM*) PURE;
STDMETHOD_(void,OnViewChange)(THIS_ DWORD,LONG) PURE;
STDMETHOD_(void,OnRename)(THIS_ IMoniker*) PURE;
STDMETHOD_(void,OnSave)(THIS) PURE;
STDMETHOD_(void,OnClose)(THIS) PURE;
STDMETHOD(OnViewStatusChange)(THIS_ DWORD) PURE;
};
EXTERN_C const IID IID_IPointerInactive;
#undef INTERFACE
#define INTERFACE IPointerInactive
DECLARE_INTERFACE_(IPointerInactive,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetActivationPolicy)(THIS_ DWORD*) PURE;
STDMETHOD(OnInactiveMouseMove)(THIS_ LPCRECT,LONG,LONG,DWORD) PURE;
STDMETHOD(OnInactiveSetCursor)(THIS_ LPCRECT,LONG,LONG,DWORD,BOOL) PURE;
};
EXTERN_C const IID IID_IOleUndoUnit;
#undef INTERFACE
#define INTERFACE IOleUndoUnit
DECLARE_INTERFACE_(IOleUndoUnit,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Do)(THIS_ LPOLEUNDOMANAGER) PURE;
STDMETHOD(GetDescription)(THIS_ BSTR*) PURE;
STDMETHOD(GetUnitType)(THIS_ CLSID*,LONG*) PURE;
STDMETHOD(OnNextAdd)(THIS) PURE;
};
EXTERN_C const IID IID_IOleParentUndoUnit;
#undef INTERFACE
#define INTERFACE IOleParentUndoUnit
DECLARE_INTERFACE_(IOleParentUndoUnit,IOleUndoUnit)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Do)(THIS_ LPOLEUNDOMANAGER) PURE;
STDMETHOD(GetDescription)(THIS_ BSTR*) PURE;
STDMETHOD(GetUnitType)(THIS_ CLSID*,LONG*) PURE;
STDMETHOD(OnNextAdd)(THIS) PURE;
STDMETHOD(Open)(THIS_ IOleParentUndoUnit*) PURE;
STDMETHOD(Close)(THIS_ IOleParentUndoUnit*,BOOL) PURE;
STDMETHOD(Add)(THIS_ IOleUndoUnit*) PURE;
STDMETHOD(FindUnit)(THIS_ IOleUndoUnit*) PURE;
STDMETHOD(GetParentState)(THIS_ DWORD*) PURE;
};
EXTERN_C const IID IID_IEnumOleUndoUnits;
#undef INTERFACE
#define INTERFACE IEnumOleUndoUnits
DECLARE_INTERFACE_(IEnumOleUndoUnits,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Next)(THIS_ ULONG,IOleUndoUnit**,ULONG*) PURE;
STDMETHOD(Skip)(THIS_ ULONG) PURE;
STDMETHOD(Reset)(THIS) PURE;
STDMETHOD(Clone)(THIS_ IEnumOleUndoUnits**) PURE;
};
EXTERN_C const IID IID_IOleUndoManager;
#undef INTERFACE
#define INTERFACE IOleUndoManager
DECLARE_INTERFACE_(IOleUndoManager,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Open)(THIS_ IOleParentUndoUnit*) PURE;
STDMETHOD(Close)(THIS_ IOleParentUndoUnit*,BOOL) PURE;
STDMETHOD(Add)(THIS_ IOleUndoUnit*) PURE;
STDMETHOD(GetOpenParentState)(THIS_ DWORD*) PURE;
STDMETHOD(DiscardFrom)(THIS_ IOleUndoUnit*) PURE;
STDMETHOD(UndoTo)(THIS_ IOleUndoUnit*) PURE;
STDMETHOD(RedoTo)(THIS_ IOleUndoUnit*) PURE;
STDMETHOD(EnumUndoable)(THIS_ IEnumOleUndoUnits**) PURE;
STDMETHOD(EnumRedoable)(THIS_ IEnumOleUndoUnits**) PURE;
STDMETHOD(GetLastUndoDescription)(THIS_ BSTR*) PURE;
STDMETHOD(GetLastRedoDescription)(THIS_ BSTR*) PURE;
STDMETHOD(Enable)(THIS_ BOOL) PURE;
};
EXTERN_C const IID IID_IQuickActivate;
#undef INTERFACE
#define INTERFACE IQuickActivate
DECLARE_INTERFACE_(IQuickActivate,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(QuickActivate)(THIS_ QACONTAINER*,QACONTROL*) PURE;
STDMETHOD(SetContentExtent)(THIS_ LPSIZEL) PURE;
STDMETHOD(GetContentExtent)(THIS_ LPSIZEL) PURE;
};
#ifdef __cplusplus
}
#endif