Commit 8da94c98 authored by Alexandre Julliard's avatar Alexandre Julliard

Converted ocidl.h to IDL.

parent b7c6280e
......@@ -8,6 +8,7 @@ IDL_SRCS = \
comcat.idl \
oaidl.idl \
objidl.idl \
ocidl.idl \
oleidl.idl \
servprov.idl \
strmif.idl \
......@@ -123,7 +124,6 @@ WINDOWS_INCLUDES = \
ntsecapi.h \
ntstatus.h \
objbase.h \
ocidl.h \
ole2.h \
ole2ver.h \
oleauto.h \
......@@ -242,17 +242,11 @@ WINE_INCLUDES = \
exception.h \
library.h \
obj_commdlgbrowser.h \
obj_connection.h \
obj_contextmenu.h \
obj_control.h \
obj_dockingwindowframe.h \
obj_dragdrophelper.h \
obj_enumidlist.h \
obj_extracticon.h \
obj_olefont.h \
obj_oleundo.h \
obj_picture.h \
obj_property.h \
obj_shellbrowser.h \
obj_shellextinit.h \
obj_shellfolder.h \
......
......@@ -5343,6 +5343,203 @@ void __RPC_STUB ICreateTypeLib2_SetHelpStringDll_Stub(
#endif /* __ICreateTypeLib2_INTERFACE_DEFINED__ */
#ifndef __IErrorLog_FWD_DEFINED__
#define __IErrorLog_FWD_DEFINED__
typedef struct IErrorLog IErrorLog;
#endif
typedef IErrorLog *LPERRORLOG;
/*****************************************************************************
* IErrorLog interface
*/
#ifndef __IErrorLog_INTERFACE_DEFINED__
#define __IErrorLog_INTERFACE_DEFINED__
DEFINE_GUID(IID_IErrorLog, 0x3127ca40, 0x446e, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IErrorLog : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE AddError(
LPCOLESTR pszPropName,
EXCEPINFO* pExcepInfo) = 0;
};
#else
typedef struct IErrorLogVtbl IErrorLogVtbl;
struct IErrorLog {
const IErrorLogVtbl* lpVtbl;
};
struct IErrorLogVtbl {
ICOM_MSVTABLE_COMPAT_FIELDS
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IErrorLog* This,
REFIID riid,
void** ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IErrorLog* This);
ULONG (STDMETHODCALLTYPE *Release)(
IErrorLog* This);
/*** IErrorLog methods ***/
HRESULT (STDMETHODCALLTYPE *AddError)(
IErrorLog* This,
LPCOLESTR pszPropName,
EXCEPINFO* pExcepInfo);
};
/*** IUnknown methods ***/
#define IErrorLog_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IErrorLog_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IErrorLog_Release(p) (p)->lpVtbl->Release(p)
/*** IErrorLog methods ***/
#define IErrorLog_AddError(p,a,b) (p)->lpVtbl->AddError(p,a,b)
#endif
#define IErrorLog_METHODS \
ICOM_MSVTABLE_COMPAT_FIELDS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IErrorLog methods ***/ \
STDMETHOD_(HRESULT,AddError)(THIS_ LPCOLESTR pszPropName, EXCEPINFO* pExcepInfo) PURE;
HRESULT CALLBACK IErrorLog_AddError_Proxy(
IErrorLog* This,
LPCOLESTR pszPropName,
EXCEPINFO* pExcepInfo);
void __RPC_STUB IErrorLog_AddError_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IErrorLog_INTERFACE_DEFINED__ */
#ifndef __IPropertyBag_FWD_DEFINED__
#define __IPropertyBag_FWD_DEFINED__
typedef struct IPropertyBag IPropertyBag;
#endif
typedef IPropertyBag *LPPROPERTYBAG;
/*****************************************************************************
* IPropertyBag interface
*/
#ifndef __IPropertyBag_INTERFACE_DEFINED__
#define __IPropertyBag_INTERFACE_DEFINED__
DEFINE_GUID(IID_IPropertyBag, 0x55272a00, 0x42cb, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IPropertyBag : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE Read(
LPCOLESTR pszPropName,
VARIANT* pVar,
IErrorLog* pErrorLog) = 0;
virtual HRESULT STDMETHODCALLTYPE Write(
LPCOLESTR pszPropName,
VARIANT* pVar) = 0;
};
#else
typedef struct IPropertyBagVtbl IPropertyBagVtbl;
struct IPropertyBag {
const IPropertyBagVtbl* lpVtbl;
};
struct IPropertyBagVtbl {
ICOM_MSVTABLE_COMPAT_FIELDS
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IPropertyBag* This,
REFIID riid,
void** ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IPropertyBag* This);
ULONG (STDMETHODCALLTYPE *Release)(
IPropertyBag* This);
/*** IPropertyBag methods ***/
HRESULT (STDMETHODCALLTYPE *Read)(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT* pVar,
IErrorLog* pErrorLog);
HRESULT (STDMETHODCALLTYPE *Write)(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT* pVar);
};
/*** IUnknown methods ***/
#define IPropertyBag_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPropertyBag_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPropertyBag_Release(p) (p)->lpVtbl->Release(p)
/*** IPropertyBag methods ***/
#define IPropertyBag_Read(p,a,b,c) (p)->lpVtbl->Read(p,a,b,c)
#define IPropertyBag_Write(p,a,b) (p)->lpVtbl->Write(p,a,b)
#endif
#define IPropertyBag_METHODS \
ICOM_MSVTABLE_COMPAT_FIELDS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IPropertyBag methods ***/ \
STDMETHOD_(HRESULT,Read)(THIS_ LPCOLESTR pszPropName, VARIANT* pVar, IErrorLog* pErrorLog) PURE; \
STDMETHOD_(HRESULT,Write)(THIS_ LPCOLESTR pszPropName, VARIANT* pVar) PURE;
HRESULT CALLBACK IPropertyBag_RemoteRead_Proxy(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT* pVar,
IErrorLog* pErrorLog,
DWORD varType,
IUnknown* pUnkObj);
void __RPC_STUB IPropertyBag_RemoteRead_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyBag_Read_Proxy(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT* pVar,
IErrorLog* pErrorLog);
HRESULT __RPC_STUB IPropertyBag_Read_Stub(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT* pVar,
IErrorLog* pErrorLog,
DWORD varType,
IUnknown* pUnkObj);
HRESULT CALLBACK IPropertyBag_Write_Proxy(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT* pVar);
void __RPC_STUB IPropertyBag_Write_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IPropertyBag_INTERFACE_DEFINED__ */
#ifdef __cplusplus
}
#endif
......
......@@ -1576,3 +1576,53 @@ interface ICreateTypeLib2 : ICreateTypeLib
HRESULT SetHelpStringDll(
[in] LPOLESTR szFileName);
}
/*****************************************************************************
* IErrorLog interface
*/
[
object,
uuid(3127ca40-446e-11ce-8135-00aa004bb851),
pointer_default(unique)
]
interface IErrorLog : IUnknown
{
typedef IErrorLog *LPERRORLOG;
HRESULT AddError(
[in] LPCOLESTR pszPropName,
[in] EXCEPINFO *pExcepInfo);
}
/*****************************************************************************
* IPropertyBag interface
*/
[
object,
uuid(55272a00-42cb-11ce-8135-00aa004bb851),
pointer_default(unique)
]
interface IPropertyBag : IUnknown
{
typedef IPropertyBag *LPPROPERTYBAG;
[local]
HRESULT Read(
[in] LPCOLESTR pszPropName,
[in, out] VARIANT *pVar,
[in] IErrorLog *pErrorLog);
[call_as(Read)]
HRESULT RemoteRead(
[in] LPCOLESTR pszPropName,
[out] VARIANT *pVar,
[in] IErrorLog *pErrorLog,
[in] DWORD varType,
[in] IUnknown *pUnkObj);
HRESULT Write(
[in] LPCOLESTR pszPropName,
[in] VARIANT *pVar);
}
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -2500,7 +2500,6 @@ typedef enum tagOLECLOSE {
OLECLOSE_PROMPTSAVE = 2
} OLECLOSE;
struct tagLOGPALETTE;
/*****************************************************************************
* IOleObject interface
*/
......@@ -2589,11 +2588,7 @@ struct IOleObject : public IUnknown
DWORD* pdwStatus) = 0;
virtual HRESULT STDMETHODCALLTYPE SetColorScheme(
struct tagLOGPALETTE {
WORD palVersion;
WORD palNumEntries;
PALETTEENTRY palPalEntry[1];
}* pLogpal) = 0;
LOGPALETTE* pLogpal) = 0;
};
#else
......@@ -2714,7 +2709,7 @@ struct IOleObjectVtbl {
HRESULT (STDMETHODCALLTYPE *SetColorScheme)(
IOleObject* This,
struct tagLOGPALETTE* pLogpal);
LOGPALETTE* pLogpal);
};
......@@ -2774,7 +2769,7 @@ struct IOleObjectVtbl {
STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwConnection) PURE; \
STDMETHOD_(HRESULT,EnumAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; \
STDMETHOD_(HRESULT,GetMiscStatus)(THIS_ DWORD dwAspect, DWORD* pdwStatus) PURE; \
STDMETHOD_(HRESULT,SetColorScheme)(THIS_ struct tagLOGPALETTE* pLogpal) PURE;
STDMETHOD_(HRESULT,SetColorScheme)(THIS_ LOGPALETTE* pLogpal) PURE;
HRESULT CALLBACK IOleObject_SetClientSite_Proxy(
IOleObject* This,
......@@ -2953,7 +2948,7 @@ void __RPC_STUB IOleObject_GetMiscStatus_Stub(
DWORD* pdwStubPhase);
HRESULT CALLBACK IOleObject_SetColorScheme_Proxy(
IOleObject* This,
struct tagLOGPALETTE* pLogpal);
LOGPALETTE* pLogpal);
void __RPC_STUB IOleObject_SetColorScheme_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
......@@ -3231,7 +3226,7 @@ struct IViewObject : public IUnknown
void* pvAspect,
DVTARGETDEVICE* ptd,
HDC hicTargetDev,
struct tagLOGPALETTE** ppColorSet) = 0;
LOGPALETTE** ppColorSet) = 0;
virtual HRESULT STDMETHODCALLTYPE Freeze(
DWORD dwDrawAspect,
......@@ -3294,7 +3289,7 @@ struct IViewObjectVtbl {
void* pvAspect,
DVTARGETDEVICE* ptd,
HDC hicTargetDev,
struct tagLOGPALETTE** ppColorSet);
LOGPALETTE** ppColorSet);
HRESULT (STDMETHODCALLTYPE *Freeze)(
IViewObject* This,
......@@ -3343,7 +3338,7 @@ struct IViewObjectVtbl {
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IViewObject methods ***/ \
STDMETHOD_(HRESULT,Draw)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL (STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) PURE; \
STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, struct tagLOGPALETTE** ppColorSet) PURE; \
STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
......@@ -3395,7 +3390,7 @@ HRESULT CALLBACK IViewObject_RemoteGetColorSet_Proxy(
ULONG_PTR pvAspect,
DVTARGETDEVICE* ptd,
ULONG_PTR hicTargetDev,
struct tagLOGPALETTE** ppColorSet);
LOGPALETTE** ppColorSet);
void __RPC_STUB IViewObject_RemoteGetColorSet_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
......@@ -3408,7 +3403,7 @@ HRESULT CALLBACK IViewObject_GetColorSet_Proxy(
void* pvAspect,
DVTARGETDEVICE* ptd,
HDC hicTargetDev,
struct tagLOGPALETTE** ppColorSet);
LOGPALETTE** ppColorSet);
HRESULT __RPC_STUB IViewObject_GetColorSet_Stub(
IViewObject* This,
DWORD dwDrawAspect,
......@@ -3416,7 +3411,7 @@ HRESULT __RPC_STUB IViewObject_GetColorSet_Stub(
ULONG_PTR pvAspect,
DVTARGETDEVICE* ptd,
ULONG_PTR hicTargetDev,
struct tagLOGPALETTE** ppColorSet);
LOGPALETTE** ppColorSet);
HRESULT CALLBACK IViewObject_RemoteFreeze_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
......@@ -3546,7 +3541,7 @@ struct IViewObject2Vtbl {
void* pvAspect,
DVTARGETDEVICE* ptd,
HDC hicTargetDev,
struct tagLOGPALETTE** ppColorSet);
LOGPALETTE** ppColorSet);
HRESULT (STDMETHODCALLTYPE *Freeze)(
IViewObject2* This,
......@@ -3605,7 +3600,7 @@ struct IViewObject2Vtbl {
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IViewObject methods ***/ \
STDMETHOD_(HRESULT,Draw)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL (STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) PURE; \
STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, struct tagLOGPALETTE** ppColorSet) PURE; \
STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
......
......@@ -728,10 +728,8 @@ interface IOleObject : IUnknown
[in] DWORD dwAspect,
[out] DWORD *pdwStatus);
cpp_quote("struct tagLOGPALETTE;") /* FIXME */
HRESULT SetColorScheme(
[in] struct tagLOGPALETTE *pLogpal);
[in] LOGPALETTE *pLogpal);
}
......@@ -821,7 +819,7 @@ interface IViewObject : IUnknown
[in, unique] void *pvAspect,
[in, unique] DVTARGETDEVICE *ptd,
[in] HDC hicTargetDev,
[out] struct tagLOGPALETTE **ppColorSet);
[out] LOGPALETTE **ppColorSet);
[call_as(GetColorSet)]
HRESULT RemoteGetColorSet(
......@@ -830,7 +828,7 @@ interface IViewObject : IUnknown
[in] ULONG_PTR pvAspect,
[in, unique] DVTARGETDEVICE *ptd,
[in] ULONG_PTR hicTargetDev,
[out] struct tagLOGPALETTE **ppColorSet);
[out] LOGPALETTE **ppColorSet);
[local]
HRESULT Freeze(
......
/*
* Defines the COM interfaces and APIs related to structured data storage.
*
* Depends on 'obj_base.h'.
*
* Copyright (C) 1999 Paul Quinn
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_CONNECTION_H
#define __WINE_WINE_OBJ_CONNECTION_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
/*****************************************************************************
* Declare the structures
*/
typedef struct tagCONNECTDATA
{
IUnknown *pUnk;
DWORD dwCookie;
} CONNECTDATA, *LPCONNECTDATA;
/*****************************************************************************
* Predeclare the interfaces
*/
DEFINE_GUID(IID_IConnectionPoint, 0xb196b286, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
typedef struct IConnectionPoint IConnectionPoint, *LPCONNECTIONPOINT;
DEFINE_GUID(IID_IConnectionPointContainer, 0xb196b284, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
typedef struct IConnectionPointContainer IConnectionPointContainer, *LPCONNECTIONPOINTCONTAINER;
DEFINE_GUID(IID_IEnumConnections, 0xb196b287, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
typedef struct IEnumConnections IEnumConnections, *LPENUMCONNECTIONS;
DEFINE_GUID(IID_IEnumConnectionPoints, 0xb196b285, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
typedef struct IEnumConnectionPoints IEnumConnectionPoints, *LPENUMCONNECTIONPOINTS;
/*****************************************************************************
* IConnectionPoint interface
*/
#define INTERFACE IConnectionPoint
#define IConnectionPoint_METHODS \
IUnknown_METHODS \
STDMETHOD(GetConnectionInterface)(THIS_ IID *pIID) PURE; \
STDMETHOD(GetConnectionPointContainer)(THIS_ IConnectionPointContainer **ppCPC) PURE; \
STDMETHOD(Advise)(THIS_ IUnknown *pUnkSink, DWORD *pdwCookie) PURE; \
STDMETHOD(Unadvise)(THIS_ DWORD dwCookie) PURE; \
STDMETHOD(EnumConnections)(THIS_ IEnumConnections **ppEnum) PURE;
ICOM_DEFINE(IConnectionPoint,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IConnectionPoint_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IConnectionPoint_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IConnectionPoint_Release(p) (p)->lpVtbl->Release(p)
/*** IConnectionPointContainer methods ***/
#define IConnectionPoint_GetConnectionInterface(p,a) (p)->lpVtbl->GetConnectionInterface(p,a)
#define IConnectionPoint_GetConnectionPointContainer(p,a) (p)->lpVtbl->GetConnectionPointContainer(p,a)
#define IConnectionPoint_Advise(p,a,b) (p)->lpVtbl->Advise(p,a,b)
#define IConnectionPoint_Unadvise(p,a) (p)->lpVtbl->Unadvise(p,a)
#define IConnectionPoint_EnumConnections(p,a) (p)->lpVtbl->EnumConnections(p,a)
#endif
/*****************************************************************************
* IConnectionPointContainer interface
*/
#define INTERFACE IConnectionPointContainer
#define IConnectionPointContainer_METHODS \
IUnknown_METHODS \
STDMETHOD(EnumConnectionPoints)(THIS_ IEnumConnectionPoints **ppEnum) PURE; \
STDMETHOD(FindConnectionPoint)(THIS_ REFIID riid, IConnectionPoint **ppCP) PURE;
ICOM_DEFINE(IConnectionPointContainer,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IConnectionPointContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IConnectionPointContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IConnectionPointContainer_Release(p) (p)->lpVtbl->Release(p)
/*** IConnectionPointContainer methods ***/
#define IConnectionPointContainer_EnumConnectionPoints(p,a) (p)->lpVtbl->EnumConnectionPoints(p,a)
#define IConnectionPointContainer_FindConnectionPoint(p,a,b) (p)->lpVtbl->FindConnectionPoint(p,a,b)
#endif
/*****************************************************************************
* IEnumConnections interface
*/
#define INTERFACE IEnumConnections
#define IEnumConnections_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG cConnections, LPCONNECTDATA rgcd, ULONG *pcFectched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG cConnections) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumConnections **ppEnum) PURE;
ICOM_DEFINE(IEnumConnections,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IEnumConnections_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IEnumConnections_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IEnumConnections_Release(p) (p)->lpVtbl->Release(p)
/*** IConnectionPointContainer methods ***/
#define IEnumConnections_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
#define IEnumConnections_Skip(p,a) (p)->lpVtbl->Skip(p,a)
#define IEnumConnections_Reset(p) (p)->lpVtbl->Reset(p)
#define IEnumConnections_Clone(p,a) (p)->lpVtbl->Clone(p,a)
#endif
/*****************************************************************************
* IEnumConnectionPoints interface
*/
#define INTERFACE IEnumConnectionPoints
#define IEnumConnectionPoints_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG cConnections, LPCONNECTIONPOINT *ppCP, ULONG *pcFectched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG cConnections) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumConnections **ppEnum) PURE;
ICOM_DEFINE(IEnumConnectionPoints,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IEnumConnectionPoints_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IEnumConnectionPoints_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IEnumConnectionPoints_Release(p) (p)->lpVtbl->Release(p)
/*** IConnectionPointContainer methods ***/
#define IEnumConnectionPoints_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
#define IEnumConnectionPoints_Skip(p,a) (p)->lpVtbl->Skip(p,a)
#define IEnumConnectionPoints_Reset(p) (p)->lpVtbl->Reset(p)
#define IEnumConnectionPoints_Clone(p,a) (p)->lpVtbl->Clone(p,a)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_CONTROL_H */
/*
* Defines the COM interfaces and APIs related to OLE font support.
*
* Depends on 'obj_base.h'.
*
* Copyright (C) 1999 Francis Beaudet
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_OLEFONT_H
#define __WINE_WINE_OBJ_OLEFONT_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
/*****************************************************************************
* Predeclare the interfaces
*/
DEFINE_GUID(IID_IFont, 0xBEF6E002, 0xA874, 0x101A, 0x8B, 0xBA, 0x00, 0xAA, 0x00, 0x30, 0x0C, 0xAB);
typedef struct IFont IFont,*LPFONT;
DEFINE_GUID(IID_IFontDisp, 0xBEF6E003, 0xA874, 0x101A, 0x8B, 0xBA, 0x00, 0xAA, 0x00, 0x30, 0x0C, 0xAB);
typedef struct IFontDisp IFontDisp,*LPFONTDISP;
typedef TEXTMETRICW TEXTMETRICOLE;
/*****************************************************************************
* IFont interface
*/
#define INTERFACE IFont
#define IFont_METHODS \
IUnknown_METHODS \
STDMETHOD(get_Name)(THIS_ BSTR * pname) PURE; \
STDMETHOD(put_Name)(THIS_ BSTR name) PURE; \
STDMETHOD(get_Size)(THIS_ CY * psize) PURE; \
STDMETHOD(put_Size)(THIS_ CY size) PURE; \
STDMETHOD(get_Bold)(THIS_ BOOL * pbold) PURE; \
STDMETHOD(put_Bold)(THIS_ BOOL bold) PURE; \
STDMETHOD(get_Italic)(THIS_ BOOL * pitalic) PURE; \
STDMETHOD(put_Italic)(THIS_ BOOL italic) PURE; \
STDMETHOD(get_Underline)(THIS_ BOOL * punderline) PURE; \
STDMETHOD(put_Underline)(THIS_ BOOL underline) PURE; \
STDMETHOD(get_Strikethrough)(THIS_ BOOL * pstrikethrough) PURE; \
STDMETHOD(put_Strikethrough)(THIS_ BOOL strikethrough) PURE; \
STDMETHOD(get_Weight)(THIS_ short * pweight) PURE; \
STDMETHOD(put_Weight)(THIS_ short weight) PURE; \
STDMETHOD(get_Charset)(THIS_ short * pcharset) PURE; \
STDMETHOD(put_Charset)(THIS_ short charset) PURE; \
STDMETHOD(get_hFont)(THIS_ HFONT * phfont) PURE; \
STDMETHOD(Clone)(THIS_ IFont ** ppfont) PURE; \
STDMETHOD(IsEqual)(THIS_ IFont * pFontOther) PURE; \
STDMETHOD(SetRatio)(THIS_ long cyLogical, long cyHimetric) PURE; \
STDMETHOD(QueryTextMetrics)(THIS_ TEXTMETRICOLE * ptm) PURE; \
STDMETHOD(AddRefHfont)(THIS_ HFONT hfont) PURE; \
STDMETHOD(ReleaseHfont)(THIS_ HFONT hfont) PURE; \
STDMETHOD(SetHdc)(THIS_ HDC hdc) PURE;
ICOM_DEFINE(IFont,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IFont_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IFont_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IFont_Release(p) (p)->lpVtbl->Release(p)
/*** IFont methods ***/
#define IFont_getName(p,a) (p)->lpVtbl->get_Name(p,a)
#define IFont_putName(p,a) (p)->lpVtbl->put_Name(p,a)
#define IFont_get_Size(p,a) (p)->lpVtbl->get_Size(p,a)
#define IFont_put_Size(p,a) (p)->lpVtbl->put_Size(p,a)
#define IFont_get_Bold(p,a) (p)->lpVtbl->get_Bold(p,a)
#define IFont_put_Bold(p,a) (p)->lpVtbl->put_Bold(p,a)
#define IFont_get_Italic(p,a) (p)->lpVtbl->get_Italic(p,a)
#define IFont_put_Italic(p,a) (p)->lpVtbl->put_Italic(p,a)
#define IFont_get_Underline(p,a) (p)->lpVtbl->get_Underline(p,a)
#define IFont_put_Underline(p,a) (p)->lpVtbl->put_Underline(p,a)
#define IFont_get_Strikethrough(p,a) (p)->lpVtbl->get_Strikethrough(p,a)
#define IFont_put_Strikethrough(p,a) (p)->lpVtbl->put_Strikethrough(p,a)
#define IFont_get_Weight(p,a) (p)->lpVtbl->get_Weight(p,a)
#define IFont_put_Weight(p,a) (p)->lpVtbl->put_Weight(p,a)
#define IFont_get_Charset(p,a) (p)->lpVtbl->get_Charset(p,a)
#define IFont_put_Charset(p,a) (p)->lpVtbl->put_Charset(p,a)
#define IFont_get_hFont(p,a) (p)->lpVtbl->get_hFont(p,a)
#define IFont_put_hFont(p,a) (p)->lpVtbl->put_hFont(p,a)
#define IFont_Clone(p,a) (p)->lpVtbl->Clone(p,a)
#define IFont_IsEqual(p,a) (p)->lpVtbl->IsEqual(p,a)
#define IFont_SetRatio(p,a,b) (p)->lpVtbl->SetRatio(p,a,b)
#define IFont_QueryTextMetrics(p,a) (p)->lpVtbl->QueryTextMetrics(p,a)
#define IFont_AddRefHfont(p,a) (p)->lpVtbl->AddRefHfont(p,a)
#define IFont_ReleaseHfont(p,a) (p)->lpVtbl->ReleaseHfont(p,a)
#define IFont_SetHdc(p,a) (p)->lpVtbl->SetHdc(p,a)
#endif
/*****************************************************************************
* IFont interface
*/
#define INTERFACE IFontDisp
#define IFontDisp_METHODS \
IDispatch_METHODS
ICOM_DEFINE(IFontDisp,IDispatch)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IFontDisp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IFontDisp_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IFontDisp_Release(p) (p)->lpVtbl->Release(p)
/*** IDispatch methods ***/
#define IFontDisp_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
#define IFontDisp_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
#define IFontDisp_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
#define IFontDisp_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
/*** IFontDisp methods ***/
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_OLEFONT_H */
/*
* Defines the COM interfaces and APIs related to OLE picture support.
*
* Depends on 'obj_base.h'.
*
* Copyright (C) 1999 Paul Quinn
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_PICTURE_H
#define __WINE_WINE_OBJ_PICTURE_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
/*****************************************************************************
* Predeclare the structures
*/
typedef UINT OLE_HANDLE;
typedef LONG OLE_XPOS_HIMETRIC;
typedef LONG OLE_YPOS_HIMETRIC;
typedef LONG OLE_XSIZE_HIMETRIC;
typedef LONG OLE_YSIZE_HIMETRIC;
typedef enum tagPicture { /* bitmasks */
PICTURE_SCALABLE = 0x1,
PICTURE_TRANSPARENT = 0x2
} PICTUREATTRIBUTES;
/*****************************************************************************
* Predeclare the interfaces
*/
DEFINE_GUID(IID_IPicture, 0x7bf80980, 0xbf32, 0x101a, 0x8b, 0xbb, 0x00, 0xAA, 0x00, 0x30, 0x0C, 0xAB);
typedef struct IPicture IPicture, *LPPICTURE;
DEFINE_GUID(IID_IPictureDisp, 0x7bf80981, 0xbf32, 0x101a, 0x8b, 0xbb, 0x00, 0xAA, 0x00, 0x30, 0x0C, 0xAB);
typedef struct IPictureDisp IPictureDisp, *LPPICTUREDISP;
/*****************************************************************************
* IPicture interface
*/
#define INTERFACE IPicture
#define IPicture_METHODS \
IUnknown_METHODS \
STDMETHOD(get_Handle)(THIS_ OLE_HANDLE *pHandle) PURE; \
STDMETHOD(get_hPal)(THIS_ OLE_HANDLE *phPal) PURE; \
STDMETHOD(get_Type)(THIS_ SHORT *pType) PURE; \
STDMETHOD(get_Width)(THIS_ OLE_XSIZE_HIMETRIC *pWidth) PURE; \
STDMETHOD(get_Height)(THIS_ OLE_YSIZE_HIMETRIC *pHeight) PURE; \
STDMETHOD(Render)(THIS_ HDC hdc, LONG x, LONG y, LONG cx, LONG cy, OLE_XPOS_HIMETRIC xSrc, OLE_YPOS_HIMETRIC ySrc, OLE_XSIZE_HIMETRIC cxSrc, OLE_YSIZE_HIMETRIC cySrc, LPCRECT pRcWBounds) PURE; \
STDMETHOD(set_hPal)(THIS_ OLE_HANDLE hPal) PURE; \
STDMETHOD(get_CurDC)(THIS_ HDC *phDC) PURE; \
STDMETHOD(SelectPicture)(THIS_ HDC hDCIn, HDC *phDCOut, OLE_HANDLE *phBmpOut) PURE; \
STDMETHOD(get_KeepOriginalFormat)(THIS_ BOOL *pKeep) PURE; \
STDMETHOD(put_KeepOriginalFormat)(THIS_ BOOL Keep) PURE; \
STDMETHOD(PictureChanged)(THIS) PURE; \
STDMETHOD(SaveAsFile)(THIS_ LPSTREAM pStream, BOOL fSaveMemCopy, LONG *pCbSize) PURE; \
STDMETHOD(get_Attributes)(THIS_ DWORD *pDwAttr) PURE;
ICOM_DEFINE(IPicture,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IPicture_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPicture_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPicture_Release(p) (p)->lpVtbl->Release(p)
/*** IPicture methods ***/
#define IPicture_get_Handle(p,a) (p)->lpVtbl->get_Handle(p,a)
#define IPicture_get_hPal(p,a) (p)->lpVtbl->get_hPal(p,a)
#define IPicture_get_Type(p,a) (p)->lpVtbl->get_Type(p,a)
#define IPicture_get_Width(p,a) (p)->lpVtbl->get_Width(p,a)
#define IPicture_get_Height(p,a) (p)->lpVtbl->get_Height(p,a)
#define IPicture_Render(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Render(p,a,b,c,d,e,f,g,h,i,j)
#define IPicture_set_hPal(p,a) (p)->lpVtbl->set_hPal(p,a)
#define IPicture_get_CurDC(p,a) (p)->lpVtbl->get_CurDC(p,a)
#define IPicture_SelectPicture(p,a,b,c) (p)->lpVtbl->SelectPicture(p,a,b,c)
#define IPicture_get_KeepOriginalFormat(p,a) (p)->lpVtbl->get_KeepOriginalFormat(p,a)
#define IPicture_put_KeepOriginalFormat(p,a) (p)->lpVtbl->put_KeepOriginalFormat(p,a)
#define IPicture_PictureChanged(p) (p)->lpVtbl->PictureChanged(p)
#define IPicture_SaveAsFile(p,a,b,c) (p)->lpVtbl->SaveAsFile(p,a,b,c)
#define IPicture_get_Attributes(p,a) (p)->lpVtbl->get_Attributes(p,a)
#endif
/*****************************************************************************
* IPictureDisp interface
*/
#define INTERFACE IPictureDisp
#define IPictureDisp_METHODS \
IDispatch_METHODS
ICOM_DEFINE(IPictureDisp,IDispatch)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IPictureDisp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPictureDisp_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPictureDisp_Release(p) (p)->lpVtbl->Release(p)
/*** IDispatch methods ***/
#define IPictureDisp_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
#define IPictureDisp_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,b,c)
#define IPictureDisp_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
#define IPictureDisp_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
/*** IPictureDisp methods ***/
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_PICTURE_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment