Commit aae3cb61 authored by Alexandre Julliard's avatar Alexandre Julliard

Simplified COM interface declarations, removing the need to define

both an xxx_METHODS and an xxx_IMETHODS macro.
parent 55379110
......@@ -53,6 +53,7 @@ typedef BOOL (CALLBACK *LPENUMMRUCALLBACK)( LPCVOID lpData,
/* Define the COM interface */
#define INTERFACE IDirectPlaySP
#define IDirectPlaySP_METHODS \
IUnknown_METHODS \
STDMETHOD(AddMRUEntry)(THIS_ LPCWSTR lpSection, LPCWSTR lpKey, LPCVOID lpData, DWORD dwDataSize, DWORD dwMaxEntries ) PURE; \
STDMETHOD(CreateAddress)(THIS_ REFGUID guidSP, REFGUID guidDataType, LPCVOID lpData, DWORD dwDataSize, LPVOID lpAddress,LPDWORD lpdwAddressSize) PURE; \
STDMETHOD(EnumAddress)(THIS_ LPDPENUMADDRESSCALLBACK lpEnumAddressCallback, LPCVOID lpAddress, DWORD dwAddressSize, LPVOID lpContext ) PURE; \
......@@ -65,11 +66,6 @@ typedef BOOL (CALLBACK *LPENUMMRUCALLBACK)( LPCVOID lpData,
STDMETHOD(GetSPData)(THIS_ LPVOID *lplpData, LPDWORD dwDataSize, DWORD dwFlags ) PURE; \
STDMETHOD(SetSPData)(THIS_ LPVOID lpData, DWORD dwDataSize, DWORD dwFlags ) PURE; \
STDMETHOD_(VOID,SendComplete)(THIS_ LPVOID , DWORD ) PURE;
#define IDirectPlaySP_IMETHODS \
IUnknown_IMETHODS \
IDirectPlaySP_METHODS
ICOM_DEFINE(IDirectPlaySP,IUnknown)
#undef INTERFACE
......
......@@ -458,6 +458,7 @@ HRESULT WINAPI DPLSPInit(LPSPDATA_INIT);
/* Define the COM interface */
#define INTERFACE IDPLobbySP
#define IDPLobbySP_METHODS \
IUnknown_METHODS \
STDMETHOD(AddGroupToGroup)(THIS_ LPSPDATA_ADDREMOTEGROUPTOGROUP argtg ) PURE; \
STDMETHOD(AddPlayerToGroup)(THIS_ LPSPDATA_ADDREMOTEPLAYERTOGROUP arptg ) PURE; \
STDMETHOD(CreateGroup)(THIS_ LPSPDATA_CREATEREMOTEGROUP crg ) PURE; \
......@@ -474,11 +475,6 @@ HRESULT WINAPI DPLSPInit(LPSPDATA_INIT);
STDMETHOD(SetSessionDesc)(THIS_ LPSPDATA_SETSESSIONDESC ssd ) PURE; \
STDMETHOD(SetSPDataPointer)(THIS_ LPVOID lpData ) PURE; \
STDMETHOD(StartSession)(THIS_ LPSPDATA_STARTSESSIONCOMMAND ssc ) PURE;
#define IDPLobbySP_IMETHODS \
IUnknown_IMETHODS \
IDPLobbySP_METHODS
ICOM_DEFINE(IDPLobbySP,IUnknown)
#undef INTERFACE
......
......@@ -29,15 +29,13 @@ typedef struct IMalloc16 IMalloc16, *LPMALLOC16;
#define INTERFACE IMalloc16
#define IMalloc16_METHODS \
IUnknown_METHODS \
STDMETHOD_(LPVOID,Alloc)(THIS_ DWORD cb) PURE; \
STDMETHOD_(LPVOID,Realloc)(THIS_ LPVOID pv, DWORD cb) PURE; \
STDMETHOD_(void,Free)(THIS_ LPVOID pv) PURE; \
STDMETHOD_(DWORD,GetSize)(THIS_ LPVOID pv) PURE; \
STDMETHOD_(INT16,DidAlloc)(THIS_ LPVOID pv) PURE; \
STDMETHOD_(LPVOID,HeapMinimize)(THIS) PURE;
#define IMalloc16_IMETHODS \
IUnknown_IMETHODS \
IMalloc16_METHODS
ICOM_DEFINE(IMalloc16,IUnknown)
#undef INTERFACE
......@@ -51,6 +49,7 @@ typedef struct ILockBytes16 *LPLOCKBYTES16, ILockBytes16;
#define INTERFACE ILockBytes
#define ILockBytes16_METHODS \
IUnknown_METHODS \
STDMETHOD(ReadAt)(THIS_ ULARGE_INTEGER ulOffset, void *pv, ULONG cb, ULONG *pcbRead) PURE; \
STDMETHOD(WriteAt)(THIS_ ULARGE_INTEGER ulOffset, const void *pv, ULONG cb, ULONG *pcbWritten) PURE; \
STDMETHOD(Flush)(THIS) PURE; \
......@@ -58,11 +57,6 @@ typedef struct ILockBytes16 *LPLOCKBYTES16, ILockBytes16;
STDMETHOD(LockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \
STDMETHOD(UnlockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \
STDMETHOD(Stat)(THIS_ STATSTG *pstatstg, DWORD grfStatFlag) PURE;
#define ILockBytes16_IMETHODS \
IUnknown_IMETHODS \
ILockBytes16_METHODS
ICOM_DEFINE(ILockBytes16,IUnknown)
#undef INTERFACE
......
......@@ -37,13 +37,11 @@ typedef struct ISFHelper ISFHelper, *LPISFHELPER;
#define INTERFACE ISFHelper
#define ISFHelper_METHODS \
IUnknown_METHODS \
STDMETHOD(GetUniqueName)(THIS_ LPSTR lpName, UINT uLen) PURE; \
STDMETHOD(AddFolder)(THIS_ HWND hwnd, LPCSTR lpName, LPITEMIDLIST * ppidlOut) PURE; \
STDMETHOD(DeleteItems)(THIS_ UINT cidl, LPCITEMIDLIST * apidl) PURE; \
STDMETHOD(CopyItems)(THIS_ IShellFolder * pSFFrom, UINT cidl, LPCITEMIDLIST * apidl) PURE;
#define ISFHelper_IMETHODS \
IUnknown_IMETHODS \
ISFHelper_METHODS
ICOM_DEFINE(ISFHelper, IUnknown)
#undef INTERFACE
......
......@@ -582,7 +582,7 @@ HIMAGELIST WINAPI ImageList_LoadImageW(HINSTANCE,LPCWSTR,INT,INT,
COLORREF,UINT,UINT);
#define ImageList_LoadImage WINELIB_NAME_AW(ImageList_LoadImage)
HIMAGELIST WINAPI ImageList_Merge(HIMAGELIST,INT,HIMAGELIST,INT,INT,INT);
#ifdef IStream_IMETHODS
#ifdef IStream_METHODS
HIMAGELIST WINAPI ImageList_Read(LPSTREAM);
#endif
BOOL WINAPI ImageList_Remove(HIMAGELIST,INT);
......@@ -594,7 +594,7 @@ BOOL WINAPI ImageList_SetDragCursorImage(HIMAGELIST,INT,INT,INT);
BOOL WINAPI ImageList_SetIconSize(HIMAGELIST,INT,INT);
BOOL WINAPI ImageList_SetImageCount(HIMAGELIST,INT);
BOOL WINAPI ImageList_SetOverlayImage(HIMAGELIST,INT,INT);
#ifdef IStream_IMETHODS
#ifdef IStream_METHODS
BOOL WINAPI ImageList_Write(HIMAGELIST, LPSTREAM);
#endif
......
......@@ -58,14 +58,9 @@ typedef struct ID3DXFont ID3DXFont, *LPD3DXFONT;
#undef INTERFACE
#define INTERFACE ID3DXBuffer
#define ID3DXBuffer_METHODS \
/*** ID3DXBuffer methods ***/ \
IUnknown_METHODS \
STDMETHOD_(LPVOID,GetBufferPointer)(THIS) PURE; \
STDMETHOD_(DWORD,GetBufferSize)(THIS) PURE;
/*** ID3DXBuffer methods ***/
#define ID3DXBuffer_IMETHODS \
IUnknown_IMETHODS \
ID3DXBuffer_METHODS
ICOM_DEFINE(ID3DXBuffer,IUnknown)
#undef INTERFACE
......@@ -85,15 +80,10 @@ ICOM_DEFINE(ID3DXBuffer,IUnknown)
#undef INTERFACE
#define INTERFACE ID3DXFont
#define ID3DXFont_METHODS \
/*** ID3DXFont methods ***/ \
IUnknown_METHODS \
STDMETHOD(Begin)(THIS) PURE; \
STDMETHOD(DrawTextA)(THIS) PURE; \
STDMETHOD(End)(THIS) PURE;
/*** ID3DXFont methods ***/
#define ID3DXFont_IMETHODS \
IUnknown_IMETHODS \
ID3DXFont_METHODS
ICOM_DEFINE(ID3DXFont,IUnknown)
#undef INTERFACE
......
......@@ -1050,6 +1050,7 @@ DECL_WINELIB_TYPE_AW(LPCDIDEVICEIMAGEINFOHEADER)
*/
#define INTERFACE IDirectInputEffect
#define IDirectInputEffect_METHODS \
IUnknown_METHODS \
STDMETHOD(Initialize)(THIS_ HINSTANCE, DWORD, REFGUID) PURE; \
STDMETHOD(GetEffectGuid)(THIS_ LPGUID) PURE; \
STDMETHOD(GetParameters)(THIS_ LPDIEFFECT, DWORD) PURE; \
......@@ -1060,9 +1061,6 @@ DECL_WINELIB_TYPE_AW(LPCDIDEVICEIMAGEINFOHEADER)
STDMETHOD(Download)(THIS) PURE; \
STDMETHOD(Unload)(THIS) PURE; \
STDMETHOD(Escape)(THIS_ LPDIEFFESCAPE) PURE;
#define IDirectInputEffect_IMETHODS \
IUnknown_IMETHODS \
IDirectInputEffect_METHODS
ICOM_DEFINE(IDirectInputEffect,IUnknown)
#undef INTERFACE
......@@ -1090,6 +1088,7 @@ ICOM_DEFINE(IDirectInputEffect,IUnknown)
*/
#define INTERFACE IDirectInputDeviceA
#define IDirectInputDeviceA_METHODS \
IUnknown_METHODS \
STDMETHOD(GetCapabilities)(THIS_ LPDIDEVCAPS lpDIDevCaps) PURE; \
STDMETHOD(EnumObjects)(THIS_ LPDIENUMDEVICEOBJECTSCALLBACKA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \
STDMETHOD(GetProperty)(THIS_ REFGUID rguidProp, LPDIPROPHEADER pdiph) PURE; \
......@@ -1105,9 +1104,6 @@ ICOM_DEFINE(IDirectInputEffect,IUnknown)
STDMETHOD(GetDeviceInfo)(THIS_ LPDIDEVICEINSTANCEA pdidi) PURE; \
STDMETHOD(RunControlPanel)(THIS_ HWND hwndOwner, DWORD dwFlags) PURE; \
STDMETHOD(Initialize)(THIS_ HINSTANCE hinst, DWORD dwVersion, REFGUID rguid) PURE;
#define IDirectInputDeviceA_IMETHODS \
IUnknown_IMETHODS \
IDirectInputDeviceA_METHODS
ICOM_DEFINE(IDirectInputDeviceA,IUnknown)
#undef INTERFACE
......@@ -1140,6 +1136,7 @@ ICOM_DEFINE(IDirectInputDeviceA,IUnknown)
*/
#define INTERFACE IDirectInputDevice2A
#define IDirectInputDevice2A_METHODS \
IDirectInputDeviceA_METHODS \
STDMETHOD(CreateEffect)(THIS_ REFGUID rguid, LPCDIEFFECT lpeff, LPDIRECTINPUTEFFECT *ppdeff, LPUNKNOWN punkOuter) PURE; \
STDMETHOD(EnumEffects)(THIS_ LPDIENUMEFFECTSCALLBACKA lpCallback, LPVOID pvRef, DWORD dwEffType) PURE; \
STDMETHOD(GetEffectInfo)(THIS_ LPDIEFFECTINFOA pdei, REFGUID rguid) PURE; \
......@@ -1149,9 +1146,6 @@ ICOM_DEFINE(IDirectInputDeviceA,IUnknown)
STDMETHOD(Escape)(THIS_ LPDIEFFESCAPE pesc) PURE; \
STDMETHOD(Poll)(THIS) PURE; \
STDMETHOD(SendDeviceData)(THIS_ DWORD cbObjectData, LPCDIDEVICEOBJECTDATA rgdod, LPDWORD pdwInOut, DWORD fl) PURE;
#define IDirectInputDevice2A_IMETHODS \
IDirectInputDeviceA_IMETHODS \
IDirectInputDevice2A_METHODS
ICOM_DEFINE(IDirectInputDevice2A,IDirectInputDeviceA)
#undef INTERFACE
......@@ -1194,11 +1188,9 @@ ICOM_DEFINE(IDirectInputDevice2A,IDirectInputDeviceA)
*/
#define INTERFACE IDirectInputDevice7A
#define IDirectInputDevice7A_METHODS \
IDirectInputDevice2A_METHODS \
STDMETHOD(EnumEffectsInFile)(THIS_ LPCSTR lpszFileName,LPDIENUMEFFECTSINFILECALLBACK pec,LPVOID pvRef,DWORD dwFlags) PURE; \
STDMETHOD(WriteEffectToFile)(THIS_ LPCSTR lpszFileName,DWORD dwEntries,LPDIFILEEFFECT rgDiFileEft,DWORD dwFlags) PURE;
#define IDirectInputDevice7A_IMETHODS \
IDirectInputDevice2A_IMETHODS \
IDirectInputDevice7A_METHODS
ICOM_DEFINE(IDirectInputDevice7A,IDirectInputDevice2A)
#undef INTERFACE
......@@ -1246,12 +1238,10 @@ ICOM_DEFINE(IDirectInputDevice7A,IDirectInputDevice2A)
*/
#define INTERFACE IDirectInputDevice8A
#define IDirectInputDevice8A_METHODS \
IDirectInputDevice7A_METHODS \
STDMETHOD(BuildActionMap)(THIS_ LPDIACTIONFORMATA lpdiaf, LPCSTR lpszUserName, DWORD dwFlags) PURE; \
STDMETHOD(SetActionMap)(THIS_ LPDIACTIONFORMATA lpdiaf, LPCSTR lpszUserName, DWORD dwFlags) PURE; \
STDMETHOD(GetImageInfo)(THIS_ LPDIDEVICEIMAGEINFOHEADERA lpdiDevImageInfoHeader) PURE;
#define IDirectInputDevice8A_IMETHODS \
IDirectInputDevice7A_IMETHODS \
IDirectInputDevice8A_METHODS
ICOM_DEFINE(IDirectInputDevice8A,IDirectInputDevice7A)
#undef INTERFACE
......@@ -1338,14 +1328,12 @@ extern const DIDATAFORMAT c_dfDIJoystick2;
*/
#define INTERFACE IDirectInputA
#define IDirectInputA_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateDevice)(THIS_ REFGUID rguid, LPDIRECTINPUTDEVICEA *lplpDirectInputDevice, LPUNKNOWN pUnkOuter) PURE; \
STDMETHOD(EnumDevices)(THIS_ DWORD dwDevType, LPDIENUMDEVICESCALLBACKA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \
STDMETHOD(GetDeviceStatus)(THIS_ REFGUID rguidInstance) PURE; \
STDMETHOD(RunControlPanel)(THIS_ HWND hwndOwner, DWORD dwFlags) PURE; \
STDMETHOD(Initialize)(THIS_ HINSTANCE hinst, DWORD dwVersion) PURE;
#define IDirectInputA_IMETHODS \
IUnknown_IMETHODS \
IDirectInputA_METHODS
ICOM_DEFINE(IDirectInputA,IUnknown)
#undef INTERFACE
......@@ -1367,10 +1355,8 @@ ICOM_DEFINE(IDirectInputA,IUnknown)
*/
#define INTERFACE IDirectInput2A
#define IDirectInput2A_METHODS \
IDirectInputA_METHODS \
STDMETHOD(FindDevice)(THIS_ REFGUID rguid, LPCSTR pszName, LPGUID pguidInstance) PURE;
#define IDirectInput2A_IMETHODS \
IDirectInputA_IMETHODS \
IDirectInput2A_METHODS
ICOM_DEFINE(IDirectInput2A,IDirectInputA)
#undef INTERFACE
......@@ -1395,10 +1381,8 @@ ICOM_DEFINE(IDirectInput2A,IDirectInputA)
*/
#define INTERFACE IDirectInput7A
#define IDirectInput7A_METHODS \
IDirectInput2A_METHODS \
STDMETHOD(CreateDeviceEx)(THIS_ REFGUID rguid, REFIID riid, LPVOID *pvOut, LPUNKNOWN lpUnknownOuter) PURE;
#define IDirectInput7A_IMETHODS \
IDirectInput2A_IMETHODS \
IDirectInput7A_METHODS
ICOM_DEFINE(IDirectInput7A,IDirectInput2A)
#undef INTERFACE
......@@ -1427,6 +1411,7 @@ ICOM_DEFINE(IDirectInput7A,IDirectInput2A)
*/
#define INTERFACE IDirectInput8A
#define IDirectInput8A_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateDevice)(THIS_ REFGUID rguid, LPDIRECTINPUTDEVICE8A *lplpDirectInputDevice, LPUNKNOWN pUnkOuter) PURE; \
STDMETHOD(EnumDevices)(THIS_ DWORD dwDevType, LPDIENUMDEVICESCALLBACKA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \
STDMETHOD(GetDeviceStatus)(THIS_ REFGUID rguidInstance) PURE; \
......@@ -1435,9 +1420,6 @@ ICOM_DEFINE(IDirectInput7A,IDirectInput2A)
STDMETHOD(FindDevice)(THIS_ REFGUID rguid, LPCSTR pszName, LPGUID pguidInstance) PURE; \
STDMETHOD(EnumDevicesBySemantics)(THIS_ LPCSTR ptszUserName, LPDIACTIONFORMATA lpdiActionFormat, LPDIENUMDEVICESBYSEMANTICSCBA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \
STDMETHOD(ConfigureDevices)(THIS_ LPDICONFIGUREDEVICESCALLBACK lpdiCallback, LPDICONFIGUREDEVICESPARAMSA lpdiCDParams, DWORD dwFlags, LPVOID pvRefData) PURE;
#define IDirectInput8A_IMETHODS \
IUnknown_IMETHODS \
IDirectInput8A_METHODS
ICOM_DEFINE(IDirectInput8A,IUnknown)
#undef INTERFACE
......
......@@ -67,18 +67,13 @@ DEFINE_GUID(CLSID_DirectMusicWaveTrack, 0xeed36461,0x9ea5,0x11d3,0x9b,0xd1,
#undef INTERFACE
#define INTERFACE IDirectMusicTool
#define IDirectMusicTool_METHODS \
/*** IDirectMusicTool methods ***/ \
IUnknown_METHODS \
STDMETHOD(Init)(THIS_ IDirectMusicGraph *pGraph) PURE; \
STDMETHOD(GetMsgDeliveryType)(THIS_ DWORD *pdwDeliveryType) PURE; \
STDMETHOD(GetMediaTypeArraySize)(THIS_ DWORD *pdwNumElements) PURE; \
STDMETHOD(GetMediaTypes)(THIS_ DWORD **padwMediaTypes, DWORD dwNumElements) PURE; \
STDMETHOD(ProcessPMsg)(THIS_ IDirectMusicPerformance *pPerf, DMUS_PMSG *pPMSG) PURE; \
STDMETHOD(Flush)(THIS_ IDirectMusicPerformance *pPerf, DMUS_PMSG *pPMSG, REFERENCE_TIME rtTime) PURE;
/*** IDirectMusicTool methods ***/
#define IDirectMusicTool_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicTool_METHODS
ICOM_DEFINE(IDirectMusicTool,IUnknown)
#undef INTERFACE
......@@ -103,14 +98,8 @@ ICOM_DEFINE(IDirectMusicTool,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicTool8
#define IDirectMusicTool8_METHODS \
/*** IDirectMusicTool8 methods ***/ \
STDMETHOD(Clone)(THIS_ IDirectMusicTool **ppTool) PURE;
/*** IDirectMusicTool8 methods ***/
#define IDirectMusicTool8_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicTool_METHODS \
IDirectMusicTool8_METHODS
STDMETHOD(Clone)(THIS_ IDirectMusicTool **ppTool) PURE;
ICOM_DEFINE(IDirectMusicTool8,IDirectMusicTool)
#undef INTERFACE
......@@ -156,7 +145,7 @@ typedef enum enumDMUS_TRACKF_FLAGS
#undef INTERFACE
#define INTERFACE IDirectMusicTrack
#define IDirectMusicTrack_METHODS \
/*** IDirectMusicTrack methods ***/ \
IUnknown_METHODS \
STDMETHOD(Init)(THIS_ IDirectMusicSegment *pSegment) PURE; \
STDMETHOD(InitPlay)(THIS_ IDirectMusicSegmentState *pSegmentState, IDirectMusicPerformance *pPerformance, void **ppStateData, DWORD dwVirtualTrackID, DWORD dwFlags) PURE; \
STDMETHOD(EndPlay)(THIS_ void *pStateData) PURE; \
......@@ -167,11 +156,6 @@ typedef enum enumDMUS_TRACKF_FLAGS
STDMETHOD(AddNotificationType)(THIS_ REFGUID rguidNotificationType) PURE; \
STDMETHOD(RemoveNotificationType)(THIS_ REFGUID rguidNotificationType) PURE; \
STDMETHOD(Clone)(THIS_ MUSIC_TIME mtStart, MUSIC_TIME mtEnd, IDirectMusicTrack **ppTrack) PURE;
/*** IDirectMusicTrack methods ***/
#define IDirectMusicTrack_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicTrack_METHODS
ICOM_DEFINE(IDirectMusicTrack,IUnknown)
#undef INTERFACE
......@@ -200,19 +184,12 @@ ICOM_DEFINE(IDirectMusicTrack,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicTrack8
#define IDirectMusicTrack8_METHODS \
/*** IDirectMusicTrack8 methods ***/ \
IDirectMusicTrack_METHODS \
STDMETHOD(PlayEx)(THIS_ void *pStateData, REFERENCE_TIME rtStart, REFERENCE_TIME rtEnd, REFERENCE_TIME rtOffset, DWORD dwFlags, IDirectMusicPerformance *pPerf, IDirectMusicSegmentState *pSegSt, DWORD dwVirtualID) PURE; \
STDMETHOD(GetParamEx)(THIS_ REFGUID rguidType, REFERENCE_TIME rtTime, REFERENCE_TIME *prtNext, void *pParam, void *pStateData, DWORD dwFlags) PURE; \
STDMETHOD(SetParamEx)(THIS_ REFGUID rguidType, REFERENCE_TIME rtTime, void *pParam, void *pStateData, DWORD dwFlags) PURE; \
STDMETHOD(Compose)(THIS_ IUnknown *pContext, DWORD dwTrackGroup, IDirectMusicTrack **ppResultTrack) PURE; \
STDMETHOD(Join)(THIS_ IDirectMusicTrack *pNewTrack, MUSIC_TIME mtJoin, IUnknown *pContext, DWORD dwTrackGroup, IDirectMusicTrack **ppResultTrack) PURE;
/*** IDirectMusicTrack8 methods ***/
#define IDirectMusicTrack8_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicTrack_METHODS \
IDirectMusicTrack8_METHODS
ICOM_DEFINE(IDirectMusicTrack8,IDirectMusicTrack)
#undef INTERFACE
......
......@@ -288,7 +288,7 @@ typedef struct _DMUS_CLOCKINFO8
#undef INTERFACE
#define INTERFACE IDirectMusic
#define IDirectMusic_METHODS \
/*** IDirectMusic methods ***/ \
IUnknown_METHODS \
STDMETHOD(EnumPort)(THIS_ DWORD dwIndex, LPDMUS_PORTCAPS pPortCaps) PURE; \
STDMETHOD(CreateMusicBuffer)(THIS_ LPDMUS_BUFFERDESC pBufferDesc, LPDIRECTMUSICBUFFER **ppBuffer, LPUNKNOWN pUnkOuter) PURE; \
STDMETHOD(CreatePort)(THIS_ REFCLSID rclsidPort, LPDMUS_PORTPARAMS pPortParams, LPDIRECTMUSICPORT *ppPort, LPUNKNOWN pUnkOuter) PURE; \
......@@ -298,11 +298,6 @@ typedef struct _DMUS_CLOCKINFO8
STDMETHOD(Activate)(THIS_ BOOL fEnable) PURE; \
STDMETHOD(GetDefaultPort)(THIS_ LPGUID pguidPort) PURE; \
STDMETHOD(SetDirectSound)(THIS_ LPDIRECTSOUND pDirectSound, HWND hWnd) PURE;
/*** IDirectMusic methods ***/
#define IDirectMusic_IMETHODS \
IUnknown_IMETHODS \
IDirectMusic_METHODS
ICOM_DEFINE(IDirectMusic,IUnknown)
#undef INTERFACE
......@@ -330,14 +325,8 @@ ICOM_DEFINE(IDirectMusic,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusic8
#define IDirectMusic8_METHODS \
/*** IDirectMusic8 methods ***/ \
STDMETHOD(SetExternalMasterClock)(THIS_ IReferenceClock *pClock) PURE;
/*** IDirectMusic8 methods ***/
#define IDirectMusic8_IMETHODS \
IUnknown_IMETHODS \
IDirectMusic_METHODS \
IDirectMusic8_METHODS
STDMETHOD(SetExternalMasterClock)(THIS_ IReferenceClock *pClock) PURE;
ICOM_DEFINE(IDirectMusic8,IDirectMusic)
#undef INTERFACE
......@@ -367,7 +356,7 @@ ICOM_DEFINE(IDirectMusic8,IDirectMusic)
#undef INTERFACE
#define INTERFACE IDirectMusicBuffer
#define IDirectMusicBuffer_METHODS \
/*** IDirectMusicBuffer methods ***/ \
IUnknown_METHODS \
STDMETHOD(Flush)(THIS) PURE; \
STDMETHOD(TotalTime)(THIS_ LPREFERENCE_TIME prtTime) PURE; \
STDMETHOD(PackStructured)(THIS_ REFERENCE_TIME rt, DWORD dwChannelGroup, DWORD dwChannelMessage) PURE; \
......@@ -381,11 +370,6 @@ ICOM_DEFINE(IDirectMusic8,IDirectMusic)
STDMETHOD(GetBufferFormat)(THIS_ LPGUID pGuidFormat) PURE; \
STDMETHOD(SetStartTime)(THIS_ REFERENCE_TIME rt) PURE; \
STDMETHOD(SetUsedBytes)(THIS_ DWORD cb) PURE;
/*** IDirectMusicBuffer methods ***/
#define IDirectMusicBuffer_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicBuffer_METHODS
ICOM_DEFINE(IDirectMusicBuffer,IUnknown)
#undef INTERFACE
......@@ -416,14 +400,9 @@ ICOM_DEFINE(IDirectMusicBuffer,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicInstrument
#define IDirectMusicInstrument_METHODS \
/*** IDirectMusicInstrument methods ***/ \
IUnknown_METHODS \
STDMETHOD(GetPatch)(THIS_ DWORD *pdwPatch) PURE; \
STDMETHOD(SetPatch)(THIS_ DWORD dwPatch) PURE;
/*** IDirectMusicInstrument methods ***/
#define IDirectMusicInstrument_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicInstrument_METHODS
ICOM_DEFINE(IDirectMusicInstrument,IUnknown)
#undef INTERFACE
......@@ -444,13 +423,8 @@ ICOM_DEFINE(IDirectMusicInstrument,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicDownloadedInstrument
#define IDirectMusicDownloadedInstrument_METHODS \
/*** IDirectMusicDownloadedInstrument methods ***/ \
/* none at this time */
/*** IDirectMusicDownloadedInstrument methods ***/
#define IDirectMusicDownloadedInstrument_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicDownloadedInstrument_METHODS
IUnknown_METHODS \
/* no IDirectMusicDownloadedInstrument methods at this time */
ICOM_DEFINE(IDirectMusicDownloadedInstrument,IUnknown)
#undef INTERFACE
......@@ -470,14 +444,9 @@ ICOM_DEFINE(IDirectMusicDownloadedInstrument,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicCollection
#define IDirectMusicCollection_METHODS \
/*** IDirectMusicCollection methods ***/ \
IUnknown_METHODS \
STDMETHOD(GetInstrument)(THIS_ DWORD dwPatch, IDirectMusicInstrument **ppInstrument) PURE; \
STDMETHOD(EnumInstrument)(THIS_ DWORD dwIndex, DWORD *pdwPatch, LPWSTR pwszName, DWORD dwNameLen) PURE;
/*** IDirectMusicCollection methods ***/
#define IDirectMusicCollection_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicCollection_METHODS
ICOM_DEFINE(IDirectMusicCollection,IUnknown)
#undef INTERFACE
......@@ -498,13 +467,8 @@ ICOM_DEFINE(IDirectMusicCollection,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicDownload
#define IDirectMusicDownload_METHODS \
/*** IDirectMusicDownload methods ***/ \
IUnknown_METHODS \
STDMETHOD(GetBuffer)(THIS_ void **ppvBuffer, DWORD *pdwSize) PURE;
/*** IDirectMusicDownload methods ***/
#define IDirectMusicDownload_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicDownload_METHODS
ICOM_DEFINE(IDirectMusicDownload,IUnknown)
#undef INTERFACE
......@@ -524,18 +488,13 @@ ICOM_DEFINE(IDirectMusicDownload,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicPortDownload
#define IDirectMusicPortDownload_METHODS \
/*** IDirectMusicPortDownload methods ***/ \
IUnknown_METHODS \
STDMETHOD(GetBuffer)(THIS_ DWORD dwDLId, IDirectMusicDownload **ppIDMDownload) PURE; \
STDMETHOD(AllocateBuffer)(THIS_ DWORD dwSize, IDirectMusicDownload **ppIDMDownload) PURE; \
STDMETHOD(GetDLId)(THIS_ DWORD *pdwStartDLId, DWORD dwCount) PURE; \
STDMETHOD(GetAppend)(THIS_ DWORD *pdwAppend) PURE; \
STDMETHOD(Download)(THIS_ IDirectMusicDownload *pIDMDownload) PURE; \
STDMETHOD(Unload)(THIS_ IDirectMusicDownload *pIDMDownload) PURE;
/*** IDirectMusicPortDownload methods ***/
#define IDirectMusicPortDownload_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicPortDownload_METHODS
ICOM_DEFINE(IDirectMusicPortDownload,IUnknown)
#undef INTERFACE
......@@ -606,7 +565,7 @@ ICOM_DEFINE(IDirectMusicPortDownload,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicPort
#define IDirectMusicPort_METHODS \
/*** IDirectMusicPort methods ***/ \
IUnknown_METHODS \
STDMETHOD(PlayBuffer)(THIS_ LPDIRECTMUSICBUFFER pBuffer) PURE; \
STDMETHOD(SetReadNotificationHandle)(THIS_ HANDLE hEvent) PURE; \
STDMETHOD(Read)(THIS_ LPDIRECTMUSICBUFFER pBuffer) PURE; \
......@@ -623,11 +582,6 @@ ICOM_DEFINE(IDirectMusicPortDownload,IUnknown)
STDMETHOD(GetChannelPriority)(THIS_ DWORD dwChannelGroup, DWORD dwChannel, LPDWORD pdwPriority) PURE; \
STDMETHOD(SetDirectSound)(THIS_ LPDIRECTSOUND pDirectSound, LPDIRECTSOUNDBUFFER pDirectSoundBuffer) PURE; \
STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX pWaveFormatEx, LPDWORD pdwWaveFormatExSize, LPDWORD pdwBufferSize) PURE;
/*** IDirectMusicPort methods ***/
#define IDirectMusicPort_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicPort_METHODS
ICOM_DEFINE(IDirectMusicPort,IUnknown)
#undef INTERFACE
......@@ -662,13 +616,8 @@ ICOM_DEFINE(IDirectMusicPort,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicThru
#define IDirectMusicThru_METHODS \
/*** IDirectMusicThru methods ***/ \
IUnknown_METHODS \
STDMETHOD(ThruChannel)(THIS_ DWORD dwSourceChannelGroup, DWORD dwSourceChannel, DWORD dwDestinationChannelGroup, DWORD dwDestinationChannel, LPDIRECTMUSICPORT pDestinationPort) PURE;
/*** IDirectMusicThru methods ***/
#define IDirectMusicThru_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicThru_METHODS
ICOM_DEFINE(IDirectMusicThru,IUnknown)
#undef INTERFACE
......@@ -692,16 +641,11 @@ ICOM_DEFINE(IDirectMusicThru,IUnknown)
#undef INTERFACE
#define INTERFACE IReferenceClock
#define IReferenceClock_METHODS \
/*** IReferenceClock methods ***/ \
IUnknown_METHODS \
STDMETHOD(GetTime)(THIS_ REFERENCE_TIME *pTime) PURE; \
STDMETHOD(AdviseTime)(THIS_ REFERENCE_TIME baseTime, REFERENCE_TIME streamTime, HANDLE hEvent, DWORD *pdwAdviseCookie) PURE; \
STDMETHOD(AdvisePeriodic)(THIS_ REFERENCE_TIME startTime, REFERENCE_TIME periodTime, HANDLE hSemaphore, DWORD *pdwAdviseCookie) PURE; \
STDMETHOD(Unadvise)(THIS_ DWORD dwAdviseCookie) PURE;
/*** IReferenceClock methods ***/
#define IReferenceClock_IMETHODS \
IUnknown_IMETHODS \
IReferenceClock_METHODS
ICOM_DEFINE(IReferenceClock,IUnknown)
#undef INTERFACE
......
......@@ -66,7 +66,7 @@ typedef struct _DMUS_VOICE_STATE
#undef INTERFACE
#define INTERFACE IDirectMusicSynth
#define IDirectMusicSynth_METHODS \
/*** IDirectMusicSynth methods ***/ \
IUnknown_METHODS \
STDMETHOD(Open)(THIS_ LPDMUS_PORTPARAMS pPortParams) PURE; \
STDMETHOD(Close)(THIS) PURE; \
STDMETHOD(SetNumChannelGroups)(THIS_ DWORD dwGroups) PURE; \
......@@ -84,11 +84,6 @@ typedef struct _DMUS_VOICE_STATE
STDMETHOD(GetChannelPriority)(THIS_ DWORD dwChannelGroup, DWORD dwChannel, LPDWORD pdwPriority) PURE; \
STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX pWaveFormatEx, LPDWORD pdwWaveFormatExSiz) PURE; \
STDMETHOD(GetAppend)(THIS_ DWORD *pdwAppend) PURE;
/*** IDirectMusicSynth methods ***/
#define IDirectMusicSynth_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicSynth_METHODS
ICOM_DEFINE(IDirectMusicSynth,IUnknown)
#undef INTERFACE
......@@ -124,18 +119,12 @@ ICOM_DEFINE(IDirectMusicSynth,IUnknown)
#undef INTERFACE
#define INTERFACE IDirectMusicSynth8
#define IDirectMusicSynth8_METHODS \
/*** IDirectMusicSynth8 methods ***/ \
IDirectMusicSynth_METHODS \
STDMETHOD(PlayVoice)(THIS_ REFERENCE_TIME rt, DWORD dwVoiceId, DWORD dwChannelGroup, DWORD dwChannel, DWORD dwDLId, long prPitch, long vrVolume, SAMPLE_TIME stVoiceStart, SAMPLE_TIME stLoopStart, SAMPLE_TIME stLoopEnd) PURE; \
STDMETHOD(StopVoice)(THIS_ REFERENCE_TIME rt, DWORD dwVoiceId) PURE; \
STDMETHOD(GetVoiceState)(THIS_ DWORD dwVoice[], DWORD cbVoice, DMUS_VOICE_STATE dwVoiceState[]) PURE; \
STDMETHOD(Refresh)(THIS_ DWORD dwDownloadID, DWORD dwFlags) PURE; \
STDMETHOD(AssignChannelToBuses)(THIS_ DWORD dwChannelGroup, DWORD dwChannel, LPDWORD pdwBuses, DWORD cBuses) PURE;
/*** IDirectMusicSynth methods ***/
#define IDirectMusicSynth8_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicSynth_METHODS \
IDirectMusicSynth8_METHODS
ICOM_DEFINE(IDirectMusicSynth8,IDirectMusicSynth)
#undef INTERFACE
......@@ -177,7 +166,7 @@ ICOM_DEFINE(IDirectMusicSynth8,IDirectMusicSynth)
#undef INTERFACE
#define INTERFACE IDirectMusicSynthSink
#define IDirectMusicSynthSink_METHODS \
/*** IDirectMusicSynthSink methods ***/ \
IUnknown_METHODS \
STDMETHOD(Init)(THIS_ IDirectMusicSynth *pSynth) PURE; \
STDMETHOD(SetMasterClock)(THIS_ IReferenceClock *pClock) PURE; \
STDMETHOD(GetLatencyClock)(THIS_ IReferenceClock **ppClock) PURE; \
......@@ -186,11 +175,6 @@ ICOM_DEFINE(IDirectMusicSynth8,IDirectMusicSynth)
STDMETHOD(RefTimeToSample)(THIS_ REFERENCE_TIME rfTime, LONGLONG *pllSampleTime) PURE; \
STDMETHOD(SetDirectSound)(THIS_ LPDIRECTSOUND pDirectSound, LPDIRECTSOUNDBUFFER pDirectSoundBuffer) PURE; \
STDMETHOD(GetDesiredBufferSize)(THIS_ LPDWORD pdwBufferSizeInSamples) PURE;
/*** IDirectMusicSynthSink methods ***/
#define IDirectMusicSynthSink_IMETHODS \
IUnknown_IMETHODS \
IDirectMusicSynthSink_METHODS
ICOM_DEFINE(IDirectMusicSynthSink,IUnknown)
#undef INTERFACE
......
......@@ -195,12 +195,10 @@ typedef struct IPrint IPrint, *LPPRINT;
*/
#define INTERFACE IOleDocument
#define IOleDocument_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateView)(THIS_ IOleInPlaceSite *pIPSite, IStream *pstm, DWORD dwReserved, IOleDocumentView **ppView) PURE; \
STDMETHOD(GetDocMiscStatus)(THIS_ DWORD *pdwStatus) PURE; \
STDMETHOD(EnumViews)(THIS_ IEnumOleDocumentViews **ppEnum, IOleDocumentView **ppView) PURE;
#define IOleDocument_IMETHODS \
IUnknown_IMETHODS \
IOleDocument_METHODS
ICOM_DEFINE(IOleDocument,IUnknown)
#undef INTERFACE
......@@ -221,10 +219,8 @@ ICOM_DEFINE(IOleDocument,IUnknown)
*/
#define INTERFACE IOleDocumentSite
#define IOleDocumentSite_METHODS \
IUnknown_METHODS \
STDMETHOD(ActivateMe)(THIS_ IOleDocumentView *pViewToActivate) PURE;
#define IOleDocumentSite_IMETHODS \
IUnknown_IMETHODS \
IOleDocumentSite_METHODS
ICOM_DEFINE(IOleDocumentSite,IUnknown)
#undef INTERFACE
......@@ -243,6 +239,7 @@ ICOM_DEFINE(IOleDocumentSite,IUnknown)
*/
#define INTERFACE IOleDocumentView
#define IOleDocumentView_METHODS \
IUnknown_METHODS \
STDMETHOD(SetInPlaceSite)(THIS_ IOleInPlaceSite *pIPSite) PURE; \
STDMETHOD(GetInPlaceSite)(THIS_ IOleInPlaceSite **ppIPSite) PURE; \
STDMETHOD(GetDocument)(THIS_ IUnknown **ppunk) PURE; \
......@@ -256,9 +253,6 @@ ICOM_DEFINE(IOleDocumentSite,IUnknown)
STDMETHOD(SaveViewState)(THIS_ LPSTREAM pstm) PURE; \
STDMETHOD(ApplyViewState)(THIS_ LPSTREAM pstm) PURE; \
STDMETHOD(Clone)(THIS_ IOleInPlaceSite *pIPSiteNew, IOleDocumentView **ppViewNew) PURE;
#define IOleDocumentView_IMETHODS \
IUnknown_IMETHODS \
IOleDocumentView_METHODS
ICOM_DEFINE(IOleDocumentView,IUnknown)
#undef INTERFACE
......@@ -289,13 +283,11 @@ ICOM_DEFINE(IOleDocumentView,IUnknown)
*/
#define INTERFACE IEnumOleDocumentViews
#define IEnumOleDocumentViews_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG cViews, IOleDocumentView **rgpView, ULONG *pcFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG cViews) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumOleDocumentViews **ppEnum) PURE;
#define IEnumOleDocumentViews_IMETHODS \
IUnknown_IMETHODS \
IEnumOleDocumentViews_METHODS
ICOM_DEFINE(IEnumOleDocumentViews,IUnknown)
#undef INTERFACE
......@@ -317,11 +309,9 @@ ICOM_DEFINE(IEnumOleDocumentViews,IUnknown)
*/
#define INTERFACE IOleCommandTarget
#define IOleCommandTarget_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryStatus)(THIS_ const GUID *pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText) PURE; \
STDMETHOD(Exec)(THIS_ const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut) PURE;
#define IOleCommandTarget_IMETHODS \
IUnknown_IMETHODS \
IOleCommandTarget_METHODS
ICOM_DEFINE(IOleCommandTarget,IUnknown)
#undef INTERFACE
......@@ -341,11 +331,9 @@ ICOM_DEFINE(IOleCommandTarget,IUnknown)
*/
#define INTERFACE IContinueCallback
#define IContinueCallback_METHODS \
IUnknown_METHODS \
STDMETHOD(FContinue)(THIS) PURE; \
STDMETHOD(FContinuePrinting)(THIS_ LONG nCntPrinted, LONG nCurPage, WCHAR *pwszPrintStatus) PURE;
#define IContinueCallback_IMETHODS \
IUnknown_IMETHODS \
IContinueCallback_METHODS
ICOM_DEFINE(IContinueCallback,IUnknown)
#undef INTERFACE
......@@ -365,12 +353,10 @@ ICOM_DEFINE(IContinueCallback,IUnknown)
*/
#define INTERFACE IPrint
#define IPrint_METHODS \
IUnknown_METHODS \
STDMETHOD(SetInitialPageNum)(THIS_ LONG nFirstPage) PURE; \
STDMETHOD(GetPageInfo)(THIS_ LONG *pnFirstPage, LONG *pcPages) PURE; \
STDMETHOD(Print)(THIS_ DWORD grfFlags, DVTARGETDEVICE **pptd, PAGESET **ppPageSet, STGMEDIUM *pstgmOptions, IContinueCallback *pcallback, LONG nFirstPage, LONG *pcPagesPrinted, LONG *pnLastPage) PURE;
#define IPrint_IMETHODS \
IUnknown_IMETHODS \
IPrint_METHODS
ICOM_DEFINE(IPrint,IUnknown)
#undef INTERFACE
......
......@@ -421,6 +421,7 @@ typedef BOOL (CALLBACK *LPDPENUMSESSIONSCALLBACK2)(
*/
#define INTERFACE IDirectPlay
#define IDirectPlay_METHODS \
IUnknown_METHODS \
STDMETHOD(AddPlayerToGroup)(THIS_ DPID idGroup, DPID idPlayer) PURE; \
STDMETHOD(Close)(THIS) PURE; \
STDMETHOD(CreatePlayer)(THIS_ LPDPID lpidPlayer, LPSTR lpPlayerName, LPSTR, LPHANDLE) PURE; \
......@@ -443,9 +444,6 @@ typedef BOOL (CALLBACK *LPDPENUMSESSIONSCALLBACK2)(
STDMETHOD(SaveSession)(THIS_ LPSTR) PURE; \
STDMETHOD(Send)(THIS_ DPID idFrom, DPID idTo, DWORD dwFlags, LPVOID lpData, DWORD dwDataSize) PURE; \
STDMETHOD(SetPlayerName)(THIS_ DPID idPlayer, LPSTR lpPlayerName, LPSTR) PURE;
#define IDirectPlay_IMETHODS \
IUnknown_IMETHODS \
IDirectPlay_METHODS
ICOM_DEFINE(IDirectPlay,IUnknown)
#undef INTERFACE
......@@ -485,6 +483,7 @@ ICOM_DEFINE(IDirectPlay,IUnknown)
*/
#define INTERFACE IDirectPlay2
#define IDirectPlay2_METHODS \
IUnknown_METHODS \
STDMETHOD(AddPlayerToGroup)(THIS_ DPID idGroup, DPID idPlayer) PURE; \
STDMETHOD(Close)(THIS) PURE; \
STDMETHOD(CreateGroup)(THIS_ LPDPID lpidGroup, LPDPNAME lpGroupName, LPVOID lpData, DWORD dwDataSize, DWORD dwFlags) PURE; \
......@@ -514,9 +513,6 @@ ICOM_DEFINE(IDirectPlay,IUnknown)
STDMETHOD(SetPlayerData)(THIS_ DPID idPlayer, LPVOID lpData, DWORD dwDataSize, DWORD dwFlags) PURE; \
STDMETHOD(SetPlayerName)(THIS_ DPID idPlayer, LPDPNAME lpPlayerName, DWORD dwFlags) PURE; \
STDMETHOD(SetSessionDesc)(THIS_ LPDPSESSIONDESC2 lpSessDesc, DWORD dwFlags) PURE;
#define IDirectPlay2_IMETHODS \
IUnknown_IMETHODS \
IDirectPlay2_METHODS
ICOM_DEFINE(IDirectPlay2,IUnknown)
#undef INTERFACE
......@@ -563,6 +559,7 @@ ICOM_DEFINE(IDirectPlay2,IUnknown)
*/
#define INTERFACE IDirectPlay3
#define IDirectPlay3_METHODS \
IDirectPlay2_METHODS \
STDMETHOD(AddGroupToGroup)(THIS_ DPID idParentGroup, DPID idGroup) PURE; \
STDMETHOD(CreateGroupInGroup)(THIS_ DPID idParentGroup, LPDPID lpidGroup, LPDPNAME lpGroupName, LPVOID lpData, DWORD dwDataSize, DWORD dwFlags) PURE; \
STDMETHOD(DeleteGroupFromGroup)(THIS_ DPID idParentGroup, DPID idGroup) PURE; \
......@@ -578,9 +575,6 @@ ICOM_DEFINE(IDirectPlay2,IUnknown)
STDMETHOD(GetGroupParent)(THIS_ DPID idGroup, LPDPID lpidParent) PURE; \
STDMETHOD(GetPlayerAccount)(THIS_ DPID idPlayer, DWORD dwFlags, LPVOID lpData, LPDWORD lpdwDataSize) PURE; \
STDMETHOD(GetPlayerFlags)(THIS_ DPID idPlayer, LPDWORD lpdwFlags) PURE;
#define IDirectPlay3_IMETHODS \
IDirectPlay2_IMETHODS \
IDirectPlay3_METHODS
ICOM_DEFINE(IDirectPlay3,IDirectPlay2)
#undef INTERFACE
......@@ -642,16 +636,13 @@ ICOM_DEFINE(IDirectPlay3,IDirectPlay2)
*/
#define INTERFACE IDirectPlay4
#define IDirectPlay4_METHODS \
IDirectPlay3_METHODS \
STDMETHOD(GetGroupOwner)(THIS_ DPID , LPDPID ) PURE; \
STDMETHOD(SetGroupOwner)(THIS_ DPID , DPID ) PURE; \
STDMETHOD(SendEx)(THIS_ DPID , DPID , DWORD , LPVOID , DWORD , DWORD , DWORD , LPVOID , LPDWORD ) PURE; \
STDMETHOD(GetMessageQueue)(THIS_ DPID , DPID , DWORD , LPDWORD , LPDWORD ) PURE; \
STDMETHOD(CancelMessage)(THIS_ DWORD , DWORD ) PURE; \
STDMETHOD(CancelPriority)(THIS_ DWORD , DWORD , DWORD ) PURE;
#define IDirectPlay4_IMETHODS \
IDirectPlay3_IMETHODS \
IDirectPlay4_METHODS
ICOM_DEFINE(IDirectPlay4,IDirectPlay3)
#undef INTERFACE
......
......@@ -370,6 +370,7 @@ typedef BOOL (CALLBACK *LPDPLENUMLOCALAPPLICATIONSCALLBACK)(
*/
#define INTERFACE IDirectPlayLobby
#define IDirectPlayLobby_METHODS \
IUnknown_METHODS \
STDMETHOD(Connect)(THIS_ DWORD, LPDIRECTPLAY2*, IUnknown*) PURE; \
STDMETHOD(CreateAddress)(THIS_ REFGUID, REFGUID, LPCVOID, DWORD, LPVOID, LPDWORD) PURE; \
STDMETHOD(EnumAddress)(THIS_ LPDPENUMADDRESSCALLBACK, LPCVOID, DWORD, LPVOID) PURE; \
......@@ -381,9 +382,6 @@ typedef BOOL (CALLBACK *LPDPLENUMLOCALAPPLICATIONSCALLBACK)(
STDMETHOD(SendLobbyMessage)(THIS_ DWORD, DWORD, LPVOID, DWORD) PURE; \
STDMETHOD(SetConnectionSettings)(THIS_ DWORD, DWORD, LPDPLCONNECTION) PURE; \
STDMETHOD(SetLobbyMessageEvent)(THIS_ DWORD, DWORD, HANDLE) PURE;
#define IDirectPlayLobby_IMETHODS \
IUnknown_IMETHODS \
IDirectPlayLobby_METHODS
ICOM_DEFINE(IDirectPlayLobby,IUnknown)
#undef INTERFACE
......@@ -392,10 +390,8 @@ ICOM_DEFINE(IDirectPlayLobby,IUnknown)
*/
#define INTERFACE IDirectPlayLobby2
#define IDirectPlayLobby2_METHODS \
IDirectPlayLobby_METHODS \
STDMETHOD(CreateCompoundAddress)(THIS_ LPCDPCOMPOUNDADDRESSELEMENT, DWORD, LPVOID, LPDWORD) PURE;
#define IDirectPlayLobby2_IMETHODS \
IDirectPlayLobby_IMETHODS \
IDirectPlayLobby2_METHODS
ICOM_DEFINE(IDirectPlayLobby2,IDirectPlayLobby)
#undef INTERFACE
......@@ -404,14 +400,11 @@ ICOM_DEFINE(IDirectPlayLobby2,IDirectPlayLobby)
*/
#define INTERFACE IDirectPlayLobby3
#define IDirectPlayLobby3_METHODS \
IDirectPlayLobby2_METHODS \
STDMETHOD(ConnectEx)(THIS_ DWORD, REFIID, LPVOID *, IUnknown *) PURE; \
STDMETHOD(RegisterApplication)(THIS_ DWORD, LPDPAPPLICATIONDESC) PURE; \
STDMETHOD(UnregisterApplication)(THIS_ DWORD, REFGUID) PURE; \
STDMETHOD(WaitForConnectionSettings)(THIS_ DWORD) PURE;
#define IDirectPlayLobby3_IMETHODS \
IDirectPlayLobby2_IMETHODS \
IDirectPlayLobby3_METHODS
ICOM_DEFINE(IDirectPlayLobby3,IDirectPlayLobby2)
#undef INTERFACE
......
......@@ -134,15 +134,13 @@ typedef struct _DSCDRIVERCAPS
*/
#define INTERFACE IDsDriver
#define IDsDriver_METHODS \
IUnknown_METHODS \
STDMETHOD(GetDriverDesc)(THIS_ PDSDRIVERDESC pDsDriverDesc) PURE; \
STDMETHOD(Open)(THIS) PURE; \
STDMETHOD(Close)(THIS) PURE; \
STDMETHOD(GetCaps)(THIS_ PDSDRIVERCAPS pDsDrvCaps) PURE; \
STDMETHOD(CreateSoundBuffer)(THIS_ LPWAVEFORMATEX pwfx,DWORD dwFlags,DWORD dwCardAddress,LPDWORD pdwcbBufferSize,LPBYTE *ppbBuffer,LPVOID *ppvObj) PURE; \
STDMETHOD(DuplicateSoundBuffer)(THIS_ PIDSDRIVERBUFFER pIDsDriverBuffer,LPVOID *ppvObj) PURE;
#define IDsDriver_IMETHODS \
IUnknown_METHODS \
IDsDriver_METHODS
ICOM_DEFINE(IDsDriver,IUnknown)
#undef INTERFACE
......@@ -165,6 +163,7 @@ ICOM_DEFINE(IDsDriver,IUnknown)
*/
#define INTERFACE IDsDriverBuffer
#define IDsDriverBuffer_METHODS \
IUnknown_METHODS \
STDMETHOD(Lock)(THIS_ LPVOID *ppvAudio1,LPDWORD pdwLen1,LPVOID *pdwAudio2,LPDWORD pdwLen2,DWORD dwWritePosition,DWORD dwWriteLen,DWORD dwFlags) PURE; \
STDMETHOD(Unlock)(THIS_ LPVOID pvAudio1,DWORD dwLen1,LPVOID pvAudio2,DWORD dwLen2) PURE; \
STDMETHOD(SetFormat)(THIS_ LPWAVEFORMATEX pwfxToSet) PURE; \
......@@ -174,9 +173,6 @@ ICOM_DEFINE(IDsDriver,IUnknown)
STDMETHOD(GetPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor,LPDWORD lpdwCurrentWriteCursor) PURE; \
STDMETHOD(Play)(THIS_ DWORD dwReserved1,DWORD dwReserved2,DWORD dwFlags) PURE; \
STDMETHOD(Stop)(THIS) PURE;
#define IDsDriverBuffer_IMETHODS \
IUnknown_METHODS \
IDsDriverBuffer_METHODS
ICOM_DEFINE(IDsDriverBuffer,IUnknown)
#undef INTERFACE
......@@ -202,12 +198,10 @@ ICOM_DEFINE(IDsDriverBuffer,IUnknown)
*/
#define INTERFACE IDsDriverPropertySet
#define IDsDriverPropertySet_METHODS \
IUnknown_METHODS \
STDMETHOD(Get)(THIS_ PDSPROPERTY pDsProperty,LPVOID pPropertyParams,ULONG cbPropertyParams,LPVOID pPropertyData,ULONG cbPropertyData,PULONG pcbReturnedData) PURE; \
STDMETHOD(Set)(THIS_ PDSPROPERTY pDsProperty,LPVOID pPropertyParams,ULONG cbPropertyParams,LPVOID pPropertyData,ULONG cbPropertyData) PURE; \
STDMETHOD(QuerySupport)(THIS_ REFGUID PropertySetId,ULONG PropertyId,PULONG pSupport) PURE;
#define IDsDriverPropertySet_IMETHODS \
IUnknown_METHODS \
IDsDriverPropertySet_METHODS
ICOM_DEFINE(IDsDriverPropertySet,IUnknown)
#undef INTERFACE
......@@ -262,10 +256,8 @@ typedef enum
*/
#define INTERFACE IDsDriverNotify
#define IDsDriverNotify_METHODS \
STDMETHOD(SetNotificationPositions)(THIS_ DWORD dwPositionNotifies,LPCDSBPOSITIONNOTIFY pcPositionNotifies) PURE;
#define IDsDriverNotify_IMETHODS \
IUnknown_METHODS \
IDsDriverNotify_METHODS
STDMETHOD(SetNotificationPositions)(THIS_ DWORD dwPositionNotifies,LPCDSBPOSITIONNOTIFY pcPositionNotifies) PURE;
ICOM_DEFINE(IDsDriverNotify,IUnknown)
#undef INTERFACE
......@@ -283,14 +275,12 @@ ICOM_DEFINE(IDsDriverNotify,IUnknown)
*/
#define INTERFACE IDsCaptureDriver
#define IDsCaptureDriver_METHODS \
IUnknown_METHODS \
STDMETHOD(GetDriverDesc)(THIS_ PDSDRIVERDESC pDsDriverDesc) PURE; \
STDMETHOD(Open)(THIS) PURE; \
STDMETHOD(Close)(THIS) PURE; \
STDMETHOD(GetCaps)(THIS_ PDSCDRIVERCAPS pDsDrvCaps) PURE; \
STDMETHOD(CreateCaptureBuffer)(THIS_ LPWAVEFORMATEX pwfx,DWORD dwFlags,DWORD dwCardAddress,LPDWORD pdwcbBufferSize,LPBYTE *ppbBuffer,LPVOID *ppvObj) PURE;
#define IDsCaptureDriver_IMETHODS \
IUnknown_METHODS \
IDsCaptureDriver_METHODS
ICOM_DEFINE(IDsCaptureDriver,IUnknown)
#undef INTERFACE
......@@ -312,6 +302,7 @@ ICOM_DEFINE(IDsCaptureDriver,IUnknown)
*/
#define INTERFACE IDsCaptureDriverBuffer
#define IDsCaptureDriverBuffer_METHODS \
IUnknown_METHODS \
STDMETHOD(Lock)(THIS_ LPVOID *ppvAudio1,LPDWORD pdwLen1,LPVOID *ppvAudio2,LPDWORD pdwLen2,DWORD dwWritePosition,DWORD dwWriteLen,DWORD dwFlags) PURE; \
STDMETHOD(Unlock)(THIS_ LPVOID pvAudio1,DWORD dwLen1,LPVOID pvAudio2,DWORD dwLen2) PURE; \
STDMETHOD(SetFormat)(THIS_ LPWAVEFORMATEX pwfxToSet) PURE; \
......@@ -319,9 +310,6 @@ ICOM_DEFINE(IDsCaptureDriver,IUnknown)
STDMETHOD(GetStatus)(THIS_ LPDWORD lpdwStatus) PURE; \
STDMETHOD(Start)(THIS_ DWORD dwFlags) PURE; \
STDMETHOD(Stop)(THIS) PURE;
#define IDsCaptureDriverBuffer_IMETHODS \
IUnknown_METHODS \
IDsCaptureDriverBuffer_METHODS
ICOM_DEFINE(IDsCaptureDriverBuffer,IUnknown)
#undef INTERFACE
......
......@@ -332,6 +332,7 @@ extern HRESULT WINAPI GetDeviceID(LPCGUID lpGuidSrc, LPGUID lpGuidDest);
*/
#define INTERFACE IDirectSound
#define IDirectSound_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateSoundBuffer)(THIS_ LPDSBUFFERDESC lpcDSBufferDesc, LPLPDIRECTSOUNDBUFFER lplpDirectSoundBuffer, IUnknown *pUnkOuter) PURE; \
STDMETHOD(GetCaps)(THIS_ LPDSCAPS lpDSCaps) PURE; \
STDMETHOD(DuplicateSoundBuffer)(THIS_ LPDIRECTSOUNDBUFFER lpDsbOriginal, LPLPDIRECTSOUNDBUFFER lplpDsbDuplicate) PURE; \
......@@ -340,9 +341,6 @@ extern HRESULT WINAPI GetDeviceID(LPCGUID lpGuidSrc, LPGUID lpGuidDest);
STDMETHOD(GetSpeakerConfig)(THIS_ LPDWORD lpdwSpeakerConfig) PURE; \
STDMETHOD(SetSpeakerConfig)(THIS_ DWORD dwSpeakerConfig) PURE; \
STDMETHOD(Initialize)(THIS_ LPCGUID lpcGuid) PURE;
#define IDirectSound_IMETHODS \
IUnknown_IMETHODS \
IDirectSound_METHODS
ICOM_DEFINE(IDirectSound,IUnknown)
#undef INTERFACE
......@@ -368,6 +366,7 @@ ICOM_DEFINE(IDirectSound,IUnknown)
*/
#define INTERFACE IDirectSound8
#define IDirectSound8_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateSoundBuffer)(THIS_ LPDSBUFFERDESC lpcDSBufferDesc, LPLPDIRECTSOUNDBUFFER8 lplpDirectSoundBuffer, IUnknown *pUnkOuter) PURE; \
STDMETHOD(GetCaps)(THIS_ LPDSCAPS lpDSCaps) PURE; \
STDMETHOD(DuplicateSoundBuffer)(THIS_ LPDIRECTSOUNDBUFFER8 lpDsbOriginal, LPLPDIRECTSOUNDBUFFER8 lplpDsbDuplicate) PURE; \
......@@ -377,9 +376,6 @@ ICOM_DEFINE(IDirectSound,IUnknown)
STDMETHOD(SetSpeakerConfig)(THIS_ DWORD dwSpeakerConfig) PURE; \
STDMETHOD(Initialize)(THIS_ LPCGUID lpcGuid) PURE; \
STDMETHOD(VerifyCertification)(THIS_ LPDWORD pdwCertified) PURE;
#define IDirectSound8_IMETHODS \
IUnknown_IMETHODS \
IDirectSound8_METHODS
ICOM_DEFINE(IDirectSound8,IUnknown)
#undef INTERFACE
......@@ -407,6 +403,7 @@ ICOM_DEFINE(IDirectSound8,IUnknown)
*/
#define INTERFACE IDirectSoundBuffer
#define IDirectSoundBuffer_METHODS \
IUnknown_METHODS \
STDMETHOD(GetCaps)(THIS_ LPDSBCAPS lpDSBufferCaps) PURE; \
STDMETHOD(GetCurrentPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor, LPDWORD lpdwCurrentWriteCursor) PURE; \
STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX lpwfxFormat, DWORD dwSizeAllocated, LPDWORD lpdwSizeWritten) PURE; \
......@@ -425,9 +422,6 @@ ICOM_DEFINE(IDirectSound8,IUnknown)
STDMETHOD(Stop)(THIS) PURE; \
STDMETHOD(Unlock)(THIS_ LPVOID lpvAudioPtr1, DWORD dwAudioBytes1, LPVOID lpvAudioPtr2, DWORD dwAudioPtr2) PURE; \
STDMETHOD(Restore)(THIS) PURE;
#define IDirectSoundBuffer_IMETHODS \
IUnknown_IMETHODS \
IDirectSoundBuffer_METHODS
ICOM_DEFINE(IDirectSoundBuffer,IUnknown)
#undef INTERFACE
......@@ -463,6 +457,7 @@ ICOM_DEFINE(IDirectSoundBuffer,IUnknown)
*/
#define INTERFACE IDirectSoundBuffer8
#define IDirectSoundBuffer8_METHODS \
IUnknown_METHODS \
STDMETHOD(GetCaps)(THIS_ LPDSBCAPS lpDSBufferCaps) PURE; \
STDMETHOD(GetCurrentPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor, LPDWORD lpdwCurrentWriteCursor) PURE; \
STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX lpwfxFormat, DWORD dwSizeAllocated, LPDWORD lpdwSizeWritten) PURE; \
......@@ -484,9 +479,6 @@ ICOM_DEFINE(IDirectSoundBuffer,IUnknown)
STDMETHOD(SetFX)(THIS_ DWORD dwEffectsCount, LPDSEFFECTDESC pDSFXDesc, LPDWORD pdwResultCodes) PURE; \
STDMETHOD(AcquireResources)(THIS_ DWORD dwFlags, DWORD dwEffectsCount, LPDWORD pdwResultCodes) PURE; \
STDMETHOD(GetObjectInPath)(THIS_ REFGUID rguidObject, DWORD dwIndex, REFGUID rguidInterface, LPVOID *ppObject) PURE;
#define IDirectSoundBuffer8_IMETHODS \
IUnknown_IMETHODS \
IDirectSoundBuffer8_METHODS
ICOM_DEFINE(IDirectSoundBuffer8,IUnknown)
#undef INTERFACE
......@@ -526,13 +518,10 @@ ICOM_DEFINE(IDirectSoundBuffer8,IUnknown)
*/
#define INTERFACE IDirectSoundCapture
#define IDirectSoundCapture_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateCaptureBuffer)(THIS_ LPCDSCBUFFERDESC lpcDSCBufferDesc,LPDIRECTSOUNDCAPTUREBUFFER *lplpDSCaptureBuffer, LPUNKNOWN pUnk) PURE; \
STDMETHOD(GetCaps)(THIS_ LPDSCCAPS lpDSCCaps) PURE; \
STDMETHOD(Initialize)(THIS_ LPCGUID lpcGUID) PURE;
#define IDirectSoundCapture_IMETHODS \
IUnknown_IMETHODS \
IDirectSoundCapture_METHODS
ICOM_DEFINE(IDirectSoundCapture,IUnknown)
#undef INTERFACE
......@@ -550,6 +539,7 @@ ICOM_DEFINE(IDirectSoundCapture,IUnknown)
*/
#define INTERFACE IDirectSoundCaptureBuffer
#define IDirectSoundCaptureBuffer_METHODS \
IUnknown_METHODS \
STDMETHOD(GetCaps)(THIS_ LPDSCBCAPS lpDSCBCaps) PURE; \
STDMETHOD(GetCurrentPosition)(THIS_ LPDWORD lpdwCapturePosition,LPDWORD lpdwReadPosition) PURE; \
STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX lpwfxFormat, DWORD dwSizeAllocated, LPDWORD lpdwSizeWritten) PURE; \
......@@ -559,10 +549,6 @@ ICOM_DEFINE(IDirectSoundCapture,IUnknown)
STDMETHOD(Start)(THIS_ DWORD dwFlags) PURE; \
STDMETHOD(Stop)(THIS) PURE; \
STDMETHOD(Unlock)(THIS_ LPVOID lpvAudioPtr1, DWORD dwAudioBytes1, LPVOID lpvAudioPtr2, DWORD dwAudioBytes2) PURE;
#define IDirectSoundCaptureBuffer_IMETHODS \
IUnknown_IMETHODS \
IDirectSoundCaptureBuffer_METHODS
ICOM_DEFINE(IDirectSoundCaptureBuffer,IUnknown)
#undef INTERFACE
......@@ -586,12 +572,9 @@ ICOM_DEFINE(IDirectSoundCaptureBuffer,IUnknown)
*/
#define INTERFACE IDirectSoundCaptureBuffer8
#define IDirectSoundCaptureBuffer8_METHODS \
IDirectSoundCaptureBuffer_METHODS \
STDMETHOD(GetObjectInPath)(THIS_ REFGUID rguidObject, DWORD dwIndex, REFGUID rguidInterface, LPVOID *ppObject) PURE; \
STDMETHOD(GetFXStatus)(THIS_ DWORD dwFXCount, LPDWORD pdwFXStatus) PURE;
#define IDirectSoundCaptureBuffer8_IMETHODS \
IDirectSoundCaptureBuffer_IMETHODS \
IDirectSoundCaptureBuffer8_METHODS
ICOM_DEFINE(IDirectSoundCaptureBuffer8,IDirectSoundCaptureBuffer)
#undef INTERFACE
......@@ -621,10 +604,8 @@ ICOM_DEFINE(IDirectSoundCaptureBuffer8,IDirectSoundCaptureBuffer)
#define INTERFACE IDirectSoundNotify
#define IDirectSoundNotify_METHODS \
IUnknown_METHODS \
STDMETHOD(SetNotificationPositions)(THIS_ DWORD cPositionNotifies, LPCDSBPOSITIONNOTIFY lpcPositionNotifies) PURE;
#define IDirectSoundNotify_IMETHODS \
IUnknown_IMETHODS \
IDirectSoundNotify_METHODS
ICOM_DEFINE(IDirectSoundNotify,IUnknown)
#undef INTERFACE
......@@ -684,6 +665,7 @@ typedef const DS3DLISTENER *LPCDS3DLISTENER;
#define INTERFACE IDirectSound3DListener
#define IDirectSound3DListener_METHODS \
IUnknown_METHODS \
STDMETHOD(GetAllParameters)(THIS_ LPDS3DLISTENER lpListener) PURE; \
STDMETHOD(GetDistanceFactor)(THIS_ LPD3DVALUE lpflDistanceFactor) PURE; \
STDMETHOD(GetDopplerFactor)(THIS_ LPD3DVALUE lpflDopplerFactor) PURE; \
......@@ -699,9 +681,6 @@ typedef const DS3DLISTENER *LPCDS3DLISTENER;
STDMETHOD(SetRolloffFactor)(THIS_ D3DVALUE flRolloffFactor, DWORD dwApply) PURE; \
STDMETHOD(SetVelocity)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply) PURE; \
STDMETHOD(CommitDeferredSettings)(THIS) PURE;
#define IDirectSound3DListener_IMETHODS \
IUnknown_IMETHODS \
IDirectSound3DListener_METHODS
ICOM_DEFINE(IDirectSound3DListener,IUnknown)
#undef INTERFACE
......@@ -749,6 +728,7 @@ typedef const DS3DBUFFER *LPCDS3DBUFFER;
#define INTERFACE IDirectSound3DBuffer
#define IDirectSound3DBuffer_METHODS \
IUnknown_METHODS \
STDMETHOD(GetAllParameters)(THIS_ LPDS3DBUFFER lpDs3dBuffer) PURE; \
STDMETHOD(GetConeAngles)(THIS_ LPDWORD lpdwInsideConeAngle, LPDWORD lpdwOutsideConeAngle) PURE; \
STDMETHOD(GetConeOrientation)(THIS_ LPD3DVECTOR lpvOrientation) PURE; \
......@@ -767,9 +747,6 @@ typedef const DS3DBUFFER *LPCDS3DBUFFER;
STDMETHOD(SetMode)(THIS_ DWORD dwMode, DWORD dwApply) PURE; \
STDMETHOD(SetPosition)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply) PURE; \
STDMETHOD(SetVelocity)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply) PURE;
#define IDirectSound3DBuffer_IMETHODS \
IUnknown_IMETHODS \
IDirectSound3DBuffer_METHODS
ICOM_DEFINE(IDirectSound3DBuffer,IUnknown)
#undef INTERFACE
......@@ -807,12 +784,10 @@ ICOM_DEFINE(IDirectSound3DBuffer,IUnknown)
#define INTERFACE IKsPropertySet
#define IKsPropertySet_METHODS \
IUnknown_METHODS \
STDMETHOD(Get)(THIS_ REFGUID rgid,ULONG x1,LPVOID p1,ULONG x2,LPVOID p2,ULONG x3,ULONG *px4) PURE;\
STDMETHOD(Set)(THIS_ REFGUID rgid,ULONG x1,LPVOID p1,ULONG x2,LPVOID p2,ULONG x3) PURE;\
STDMETHOD(QuerySupport)(THIS_ REFGUID rgid,ULONG x1,ULONG *px2) PURE;
#define IKsPropertySet_IMETHODS \
IUnknown_IMETHODS \
IKsPropertySet_METHODS
ICOM_DEFINE(IKsPropertySet,IUnknown)
#undef INTERFACE
......@@ -831,10 +806,8 @@ ICOM_DEFINE(IKsPropertySet,IUnknown)
*/
#define INTERFACE IDirectSoundFullDuplex
#define IDirectSoundFullDuplex_METHODS \
IUnknown_METHODS \
STDMETHOD(Initialize)(THIS_ LPCGUID pCaptureGuid,LPCGUID pRendererGuid,LPCDSCBUFFERDESC lpDscBufferDesc,LPCDSBUFFERDESC lpDsBufferDesc,HWND hWnd,DWORD dwLevel,LPLPDIRECTSOUNDCAPTUREBUFFER8 lplpDirectSoundCaptureBuffer8,LPLPDIRECTSOUNDBUFFER8 lplpDirectSoundBuffer8) PURE;
#define IDirectSoundFullDuplex_IMETHODS \
IUnknown_IMETHODS \
IDirectSoundFullDuplex_METHODS
ICOM_DEFINE(IDirectSoundFullDuplex,IUnknown)
#undef INTERFACE
......
......@@ -75,15 +75,13 @@
*
* #define INTERFACE IDirect3D
* #define IDirect3D_METHODS \
* IUnknown_METHODS \
* STDMETHOD(Initialize)(THIS_ REFIID) PURE; \
* STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK, LPVOID) PURE; \
* STDMETHOD(CreateLight)(THIS_ LPDIRECT3DLIGHT*, IUnknown*) PURE; \
* STDMETHOD(CreateMaterial)(THIS_ LPDIRECT3DMATERIAL*, IUnknown*) PURE; \
* STDMETHOD(CreateViewport)(THIS_ LPDIRECT3DVIEWPORT*, IUnknown*) PURE; \
* STDMETHOD(FindDevice)(THIS_ LPD3DFINDDEVICESEARCH, LPD3DFINDDEVICERESULT) PURE;
* #define IDirect3D_IMETHODS \
* IUnknown_IMETHODS \
* IDirect3D_METHODS
* ICOM_DEFINE(IDirect3D,IUnknown)
* #undef INTERFACE
*
......@@ -107,16 +105,12 @@
* name everywhere. Note however that because of the way macros work, a macro like STDMETHOD
* cannot use 'INTERFACE##_VTABLE' because this would give 'INTERFACE_VTABLE' and not
* 'IDirect3D_VTABLE'.
* - ICOM_METHODS defines the methods specific to this interface. It is then aggregated with the
* inherited methods to form ICOM_IMETHODS.
* - ICOM_IMETHODS defines the list of methods that are inheritable from this interface. It must
* - ICOM_METHODS defines the list of methods that are inheritable from this interface. It must
* be written manually (rather than using a macro to generate the equivalent code) to avoid
* macro recursion (which compilers don't like).
* macro recursion (which compilers don't like). It must start with the METHODS definition
* of the parent interface so that method inheritance works properly.
* - The ICOM_DEFINE finally declares all the structures necessary for the interface. We have to
* explicitly use the interface name for macro expansion reasons again.
* Inherited methods are inherited in C by using the IDirect3D_METHODS macro and the parent's
* Xxx_IMETHODS macro. In C++ we need only use the IDirect3D_METHODS since method inheritance
* is taken care of by the language.
* - The 'undef INTERFACE' is here to remind you that using INTERFACE in the following macros
* will not work.
* - Finally the set of 'IDirect3D_Xxx' macros is a standard set of macros defined to ease access
......@@ -166,7 +160,7 @@
* the user needs to know to use the interface. Of course the structure we will define to
* implement this interface will have more fields but the first one will match this pointer.
* - The code generated by ICOM_DEFINE defines both the structure representing the interface and
* the structure for the jump table. ICOM_DEFINE uses the parent's Xxx_IMETHODS macro to
* the structure for the jump table. ICOM_DEFINE uses the parent's Xxx_METHODS macro to
* automatically repeat the prototypes of all the inherited methods and then uses IDirect3D_METHODS
* to define the IDirect3D methods.
* - Each method is declared as a pointer to function field in the jump table. The implementation
......@@ -258,13 +252,6 @@
#define BEGIN_INTERFACE
#define END_INTERFACE
/* Wine-specific macros */
#define ICOM_DEFINE(iface,ibase) \
DECLARE_INTERFACE_(iface,ibase) { \
iface##_METHODS \
} ICOM_COM_INTERFACE_ATTRIBUTE;
#else /* __cplusplus && !CINTERFACE */
/* C interface */
......@@ -302,14 +289,12 @@
#define BEGIN_INTERFACE
#define END_INTERFACE
#endif /* __cplusplus && !CINTERFACE */
/* Wine-specific macros */
#define ICOM_DEFINE(iface,ibase) \
DECLARE_INTERFACE_(iface,ibase) { \
ICOM_MSVTABLE_COMPAT_FIELDS \
ibase##_IMETHODS \
iface##_METHODS \
};
DECLARE_INTERFACE_(iface,ibase) { iface##_METHODS } ICOM_COM_INTERFACE_ATTRIBUTE;
#define ICOM_VTABLE(iface) iface##Vtbl
#define ICOM_VFIELD(iface) ICOM_VTABLE(iface)* lpVtbl
......@@ -320,8 +305,6 @@
#define ICOM_THIS_MULTI(impl,field,iface) impl* const This=(impl*)((char*)(iface) - offsetof(impl,field))
#define ICOM_CTHIS_MULTI(impl,field,iface) const impl* const This=(const impl*)((char*)(iface) - offsetof(impl,field))
#endif /* __cplusplus && !CINTERFACE */
#include "objidl.h"
#ifndef RC_INVOKED
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -642,6 +642,7 @@ DECL_WINELIB_TYPE_AW(LPOLEUICHANGESOURCE)
*/
#define INTERFACE IOleUILinkContainerA
#define IOleUILinkContainerA_METHODS \
IUnknown_METHODS \
STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE; \
STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE; \
STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE; \
......@@ -653,14 +654,12 @@ DECL_WINELIB_TYPE_AW(LPOLEUICHANGESOURCE)
STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE; \
STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE; \
STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE;
#define IOleUILinkContainerA_IMETHODS \
IUnknown_IMETHODS \
IOleUILinkContainerA_METHODS
ICOM_DEFINE(IOleUILinkContainerA, IUnknown)
#undef INTERFACE
#define INTERFACE IOleUILinkContainerW
#define IOleUILinkContainerW_METHODS \
IUnknown_METHODS \
STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE; \
STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE; \
STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE; \
......@@ -672,9 +671,6 @@ ICOM_DEFINE(IOleUILinkContainerA, IUnknown)
STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE; \
STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE; \
STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE;
#define IOleUILinkContainerW_IMETHODS \
IUnknown_IMETHODS \
IOleUILinkContainerW_METHODS
ICOM_DEFINE(IOleUILinkContainerW, IUnknown)
#undef INTERFACE
......@@ -704,19 +700,15 @@ DECL_WINELIB_TYPE_AW(LPOLEUILINKCONTAINER)
*/
#define INTERFACE IOleUILinkInfoA
#define IOleUILinkInfoA_METHODS \
IOleUILinkContainerA_METHODS \
STDMETHOD(GetLastUpdate)(THIS_ DWORD dwLink, FILETIME *lpLastUpdate) PURE;
#define IOleUILinkInfoA_IMETHODS \
IOleUILinkContainerA_IMETHODS \
IOleUILinkInfoA_METHODS
ICOM_DEFINE(IOleUILinkInfoA, IOleUILinkContainerA)
#undef INTERFACE
#define INTERFACE IOleUILinkInfoW
#define IOleUILinkInfoW_METHODS \
IOleUILinkContainerW_METHODS \
STDMETHOD(GetLastUpdate)(THIS_ DWORD dwLink, FILETIME *lpLastUpdate) PURE;
#define IOleUILinkInfoW_IMETHODS \
IOleUILinkContainerW_IMETHODS \
IOleUILinkInfoW_METHODS
ICOM_DEFINE(IOleUILinkInfoW, IOleUILinkContainerW)
#undef INTERFACE
......@@ -748,6 +740,7 @@ DECL_WINELIB_TYPE_AW(LPOLEUILINKINFO)
*/
#define INTERFACE IOleUIObjInfoA
#define IOleUIObjInfoA_METHODS \
IUnknown_METHODS \
STDMETHOD(GetObjectInfo)(THIS_ DWORD dwObject, DWORD *lpdwObjSize, LPSTR *lplpszLabel, \
LPSTR *lplpszType, LPSTR *lplpszShortType, LPSTR *lplpszLocation) PURE; \
STDMETHOD(GetConvertInfo)(THIS_ DWORD dwObject, CLSID *lpClassID, WORD *lpwFormat, \
......@@ -756,14 +749,12 @@ DECL_WINELIB_TYPE_AW(LPOLEUILINKINFO)
STDMETHOD(GetViewInfo)(THIS_ DWORD dwObject, HGLOBAL *phMetaPict, DWORD *pdvAspect, INT *pnCurrentScale) PURE; \
STDMETHOD(SetViewInfo)(THIS_ DWORD dwObject, HGLOBAL hMetaPict, DWORD dvAspect, \
INT nCurrentScale, BOOL bRelativeToOrig) PURE;
#define IOleUIObjInfoA_IMETHODS \
IUnknown_IMETHODS \
IOleUIObjInfoA_METHODS
ICOM_DEFINE(IOleUIObjInfoA, IUnknown)
#undef INTERFACE
#define INTERFACE IOleUIObjInfoW
#define IOleUIObjInfoW_METHODS \
IUnknown_METHODS \
STDMETHOD(GetObjectInfo)(THIS_ DWORD dwObject, DWORD *lpdwObjSize, LPWSTR *lplpszLabel, \
LPWSTR *lplpszType, LPWSTR *lplpszShortType, LPWSTR *lplpszLocation) PURE; \
STDMETHOD(GetConvertInfo)(THIS_ DWORD dwObject, CLSID *lpClassID, WORD *lpwFormat, \
......@@ -772,9 +763,6 @@ ICOM_DEFINE(IOleUIObjInfoA, IUnknown)
STDMETHOD(GetViewInfo)(THIS_ DWORD dwObject, HGLOBAL *phMetaPict, DWORD *pdvAspect, INT *pnCurrentScale) PURE; \
STDMETHOD(SetViewInfo)(THIS_ DWORD dwObject, HGLOBAL hMetaPict, DWORD dvAspect, \
INT nCurrentScale, BOOL bRelativeToOrig) PURE;
#define IOleUIObjInfoW_IMETHODS \
IUnknown_IMETHODS \
IOleUIObjInfoW_METHODS
ICOM_DEFINE(IOleUIObjInfoW, IUnknown)
#undef INTERFACE
......
......@@ -42,10 +42,8 @@ typedef struct IServiceProvider IServiceProvider,*LPSERVICEPROVIDER;
*/
#define INTERFACE IServiceProvider
#define IServiceProvider_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryService)(THIS_ REFGUID guidService, REFIID riid, void **ppvObject) PURE;
#define IServiceProvider_IMETHODS \
IUnknown_IMETHODS \
IServiceProvider_METHODS
ICOM_DEFINE(IServiceProvider,IUnknown)
#undef INTERFACE
......
......@@ -124,10 +124,8 @@ typedef GUID SHELLVIEWID;
#define INTERFACE IShellIcon
#define IShellIcon_METHODS \
IUnknown_METHODS \
STDMETHOD(GetIconOf)(THIS_ LPCITEMIDLIST pidl, UINT flags, LPINT lpIconIndex) PURE;
#define IShellIcon_IMETHODS \
IUnknown_IMETHODS \
IShellIcon_METHODS
ICOM_DEFINE(IShellIcon, IUnknown)
#undef INTERFACE
......
......@@ -245,14 +245,12 @@ typedef struct IQueryAssociations IQueryAssociations,*LPQUERYASSOCIATIONS;
#define INTERFACE IQueryAssociations
#define IQueryAssociations_METHODS \
IUnknown_METHODS \
STDMETHOD(Init)(THIS_ ASSOCF flags, LPCWSTR pszAssoc, HKEY hkProgid, HWND hwnd) PURE; \
STDMETHOD(GetString)(THIS_ ASSOCF flags, ASSOCSTR str, LPCWSTR pszExtra, LPWSTR pszOut, DWORD * pcchOut) PURE; \
STDMETHOD(GetKey)(THIS_ ASSOCF flags, ASSOCKEY key, LPCWSTR pszExtra, HKEY * phkeyOut) PURE; \
STDMETHOD(GetData)(THIS_ ASSOCF flags, ASSOCDATA data, LPCWSTR pszExtra, LPVOID pvOut, DWORD * pcbOut) PURE; \
STDMETHOD(GetEnum)(THIS_ ASSOCF flags, ASSOCENUM assocenum, LPCWSTR pszExtra, REFIID riid, LPVOID * ppvOut) PURE;
#define IQueryAssociations_IMETHODS \
IUnknown_IMETHODS \
IQueryAssociations_METHODS
ICOM_DEFINE(IQueryAssociations,IUnknown)
#undef INTERFACE
......@@ -843,7 +841,7 @@ VOID WINAPI ColorRGBToHLS(COLORREF,LPWORD,LPWORD,LPWORD);
/* Stream functions */
#if !defined(NO_SHLWAPI_STREAM) && defined(IStream_IMETHODS)
#if !defined(NO_SHLWAPI_STREAM) && defined(IStream_METHODS)
IStream * WINAPI SHOpenRegStreamA(HKEY,LPCSTR,LPCSTR,DWORD);
IStream * WINAPI SHOpenRegStreamW(HKEY,LPCWSTR,LPCWSTR,DWORD);
......@@ -880,7 +878,7 @@ HRESULT WINAPI SHCreateStreamWrapper(LPBYTE,DWORD,DWORD,IStream**);
HRESULT WINAPI SHAutoComplete(HWND,DWORD);
/* Threads */
#if defined(IUnknown_IMETHODS)
#if defined(IUnknown_METHODS)
HRESULT WINAPI SHGetThreadRef(IUnknown**);
HRESULT WINAPI SHSetThreadRef(IUnknown*);
#endif
......@@ -897,7 +895,7 @@ HRESULT WINAPI SHReleaseThreadRef();
BOOL WINAPI SHCreateThread(LPTHREAD_START_ROUTINE,void*,DWORD,LPTHREAD_START_ROUTINE);
#if defined(IBindCtx_IMETHODS)
#if defined(IBindCtx_METHODS)
BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*);
#endif
......
......@@ -8,22 +8,17 @@
extern "C" {
#endif
#include "wtypes.h"
#if defined(__cplusplus) && !defined(CINTERFACE)
#ifdef ICOM_USE_COM_INTERFACE_ATTRIBUTE
#define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))
#else
#define ICOM_COM_INTERFACE_ATTRIBUTE
#endif
#if defined(ICOM_USE_COM_INTERFACE_ATTRIBUTE) && defined(__cplusplus) && !defined(CINTERFACE)
# define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))
#else
# define ICOM_COM_INTERFACE_ATTRIBUTE
#endif
#if defined(ICOM_MSVTABLE_COMPAT) && (!defined(__cplusplus) || defined(CINTERFACE))
# define ICOM_MSVTABLE_COMPAT_FIELDS long dummyRTTI1,dummyRTTI2;
# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,
#else
#ifdef ICOM_MSVTABLE_COMPAT
#define ICOM_MSVTABLE_COMPAT_FIELDS \
long dummyRTTI1; \
long dummyRTTI2;
#define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,
#else
#define ICOM_MSVTABLE_COMPAT_FIELDS
#define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
#endif
# define ICOM_MSVTABLE_COMPAT_FIELDS
# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
#endif
typedef struct IUnknown IUnknown;
typedef IUnknown *LPUNKNOWN;
......@@ -68,12 +63,6 @@ struct IUnknownVtbl {
};
#define IUnknown_IMETHODS \
/*** IUnknown methods ***/ \
HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \
ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \
ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This);
/*** IUnknown methods ***/
#define IUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IUnknown_AddRef(p) (p)->lpVtbl->AddRef(p)
......@@ -81,6 +70,13 @@ struct IUnknownVtbl {
#endif
#define IUnknown_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;
HRESULT CALLBACK IUnknown_QueryInterface_Proxy(
IUnknown* This,
REFIID riid,
......@@ -157,15 +153,6 @@ struct IClassFactoryVtbl {
};
#define IClassFactory_IMETHODS \
/*** IUnknown methods ***/ \
HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \
ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \
ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \
/*** IClassFactory methods ***/ \
HRESULT (STDMETHODCALLTYPE *CreateInstance)(INTERFACE *This, IUnknown* pUnkOuter, REFIID riid, void** ppvObject); \
HRESULT (STDMETHODCALLTYPE *LockServer)(INTERFACE *This, BOOL fLock);
/*** IUnknown methods ***/
#define IClassFactory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IClassFactory_AddRef(p) (p)->lpVtbl->AddRef(p)
......@@ -176,6 +163,16 @@ struct IClassFactoryVtbl {
#endif
#define IClassFactory_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; \
/*** IClassFactory methods ***/ \
STDMETHOD_(HRESULT,CreateInstance)(THIS_ IUnknown* pUnkOuter, REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(HRESULT,LockServer)(THIS_ BOOL fLock) PURE;
HRESULT CALLBACK IClassFactory_RemoteCreateInstance_Proxy(
IClassFactory* This,
REFIID riid,
......
......@@ -21,22 +21,17 @@ import "wtypes.idl";
/* COM vtable compatibility macros for g++ */
/* Included here because the generated header needs them */
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote(" #ifdef ICOM_USE_COM_INTERFACE_ATTRIBUTE")
cpp_quote(" #define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))")
cpp_quote(" #else")
cpp_quote(" #define ICOM_COM_INTERFACE_ATTRIBUTE")
cpp_quote(" #endif")
cpp_quote("#if defined(ICOM_USE_COM_INTERFACE_ATTRIBUTE) && defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("# define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))")
cpp_quote("#else")
cpp_quote(" #ifdef ICOM_MSVTABLE_COMPAT")
cpp_quote(" #define ICOM_MSVTABLE_COMPAT_FIELDS \\")
cpp_quote(" long dummyRTTI1; \\")
cpp_quote(" long dummyRTTI2;")
cpp_quote(" #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,")
cpp_quote(" #else")
cpp_quote(" #define ICOM_MSVTABLE_COMPAT_FIELDS")
cpp_quote(" #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE")
cpp_quote(" #endif")
cpp_quote("# define ICOM_COM_INTERFACE_ATTRIBUTE")
cpp_quote("#endif")
cpp_quote("#if defined(ICOM_MSVTABLE_COMPAT) && (!defined(__cplusplus) || defined(CINTERFACE))")
cpp_quote("# define ICOM_MSVTABLE_COMPAT_FIELDS long dummyRTTI1,dummyRTTI2;")
cpp_quote("# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,")
cpp_quote("#else")
cpp_quote("# define ICOM_MSVTABLE_COMPAT_FIELDS")
cpp_quote("# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE")
cpp_quote("#endif")
/* Interfaces */
......
......@@ -172,15 +172,13 @@ typedef enum BINDSTATUS {
*/
#define INTERFACE IBinding
#define IBinding_METHODS \
IUnknown_METHODS \
STDMETHOD(Abort)(THIS) PURE; \
STDMETHOD(Suspend)(THIS) PURE; \
STDMETHOD(Resume)(THIS) PURE; \
STDMETHOD(SetPriority)(THIS_ LONG nPriority) PURE; \
STDMETHOD(GetPriority)(THIS_ LONG *pnPriority) PURE; \
STDMETHOD(GetBindResult)(THIS_ CLSID *pclsidProtocol, DWORD *pdwResult, LPOLESTR *pszResult, DWORD *pdwReserved) PURE;
#define IBinding_IMETHODS \
IUnknown_IMETHODS \
IBinding_METHODS
ICOM_DEFINE(IBinding,IUnknown)
#undef INTERFACE
......@@ -203,6 +201,7 @@ ICOM_DEFINE(IBinding,IUnknown)
*/
#define INTERFACE IBindStatusCallback
#define IBindStatusCallback_METHODS \
IUnknown_METHODS \
STDMETHOD(OnStartBinding)(THIS_ DWORD dwReserved, IBinding *pib) PURE; \
STDMETHOD(GetPriority)(THIS_ LONG *pnPriority) PURE; \
STDMETHOD(OnLowResource)(THIS) PURE; \
......@@ -211,9 +210,6 @@ ICOM_DEFINE(IBinding,IUnknown)
STDMETHOD(GetBindInfo)(THIS_ DWORD *grfBINDF, BINDINFO *pbindinfo) PURE; \
STDMETHOD(OnDataAvailable)(THIS_ DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed) PURE; \
STDMETHOD(OnObjectAvailable)(THIS_ REFIID iid, IUnknown *punk) PURE;
#define IBindStatusCallback_IMETHODS \
IUnknown_IMETHODS \
IBindStatusCallback_METHODS
ICOM_DEFINE(IBindStatusCallback,IUnknown)
#undef INTERFACE
......@@ -238,12 +234,10 @@ ICOM_DEFINE(IBindStatusCallback,IUnknown)
*/
#define INTERFACE IBindHost
#define IBindHost_METHODS \
IUnknown_METHODS \
STDMETHOD(CreateMoniker)(THIS_ LPOLESTR szName, IBindCtx *pBC, IMoniker **ppmk, DWORD dwReserved) PURE; \
STDMETHOD(MonikerBindToStorage)(THIS_ IMoniker *pMk, IBindCtx *pBC, IBindStatusCallback *pBSC, REFIID riid, LPVOID *ppvObj) PURE; \
STDMETHOD(MonikerBindToObject)(THIS_ IMoniker *pMk, IBindCtx *pBC, IBindStatusCallback *pBSC, REFIID riid, LPVOID *ppvObj) PURE;
#define IBindHost_IMETHODS \
IUnknown_IMETHODS \
IBindHost_METHODS
ICOM_DEFINE(IBindHost,IUnknown)
#undef INTERFACE
......@@ -281,10 +275,8 @@ typedef enum _tagQUERYOPTION {
*/
#define INTERFACE IWinInetInfo
#define IWinInetInfo_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD *pcbBuf) PURE;
#define IWinInetInfo_IMETHODS \
IUnknown_IMETHODS \
IWinInetInfo_METHODS
ICOM_DEFINE(IWinInetInfo,IUnknown)
#undef INTERFACE
......@@ -302,10 +294,8 @@ ICOM_DEFINE(IWinInetInfo,IUnknown)
*/
#define INTERFACE IWinInetHttpInfo
#define IWinInetHttpInfo_METHODS \
IWinInetInfo_METHODS \
STDMETHOD(QueryInfo)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD *pcbBuf, DWORD *pdwFlags, DWORD *pdwReserved) PURE;
#define IWinInetHttpInfo_IMETHODS \
IWinInetInfo_IMETHODS \
IWinInetHttpInfo_METHODS
ICOM_DEFINE(IWinInetHttpInfo,IWinInetInfo)
#undef INTERFACE
......
......@@ -988,7 +988,8 @@ DEFINE_AVIGUID(CLSID_AVIFile, 0x00020000, 0, 0);
* IAVIStream interface
*/
#define INTERFACE IAVIStream
#define IAVIStream_METHODS \
#define IAVIStream_METHODS \
IUnknown_METHODS \
STDMETHOD(Create)(THIS_ LPARAM lParam1, LPARAM lParam2) PURE; \
STDMETHOD(Info)(THIS_ AVISTREAMINFOW *psi, LONG lSize) PURE; \
STDMETHOD_(LONG,FindSample)(THIS_ LONG lPos, LONG lFlags) PURE; \
......@@ -1000,9 +1001,6 @@ DEFINE_AVIGUID(CLSID_AVIFile, 0x00020000, 0, 0);
STDMETHOD(ReadData)(THIS_ DWORD fcc, LPVOID lpBuffer, LONG *lpcbBuffer) PURE; \
STDMETHOD(WriteData)(THIS_ DWORD fcc, LPVOID lpBuffer, LONG cbBuffer) PURE; \
STDMETHOD(SetInfo)(THIS_ AVISTREAMINFOW *plInfo, LONG cbInfo) PURE;
#define IAVIStream_IMETHODS \
IUnknown_IMETHODS \
IAVIStream_METHODS
ICOM_DEFINE(IAVIStream, IUnknown)
#undef INTERFACE
......@@ -1090,7 +1088,8 @@ LONG WINAPI AVIStreamTimeToSample(PAVISTREAM pstream, LONG lTime);
*/
/* In Win32 this interface uses UNICODE only */
#define INTERFACE IAVIFile
#define IAVIFile_METHODS \
#define IAVIFile_METHODS \
IUnknown_METHODS \
STDMETHOD(Info)(THIS_ AVIFILEINFOW *pfi, LONG lSize) PURE; \
STDMETHOD(GetStream)(THIS_ PAVISTREAM *ppStream, DWORD fccType, LONG lParam) PURE; \
STDMETHOD(CreateStream)(THIS_ PAVISTREAM *ppStream, AVISTREAMINFOW *psi) PURE; \
......@@ -1098,9 +1097,6 @@ LONG WINAPI AVIStreamTimeToSample(PAVISTREAM pstream, LONG lTime);
STDMETHOD(ReadData)(THIS_ DWORD fcc, LPVOID lpBuffer, LONG *lpcbBuffer) PURE; \
STDMETHOD(EndRecord)(THIS) PURE; \
STDMETHOD(DeleteStream)(THIS_ DWORD fccType, LONG lParam) PURE;
#define IAVIFile_IMETHODS \
IUnknown_IMETHODS \
IAVIFile_METHODS
ICOM_DEFINE(IAVIFile,IUnknown)
#undef INTERFACE
......@@ -1143,14 +1139,12 @@ HRESULT WINAPI AVIFileEndRecord(PAVIFILE pfile);
* IGetFrame interface
*/
#define INTERFACE IGetFrame
#define IGetFrame_METHODS \
#define IGetFrame_METHODS \
IUnknown_METHODS \
STDMETHOD_(LPVOID,GetFrame)(THIS_ LONG lPos) PURE; \
STDMETHOD(Begin)(THIS_ LONG lStart, LONG lEnd, LONG lRate) PURE; \
STDMETHOD(End)(THIS) PURE; \
STDMETHOD(SetFormat)(THIS_ LPBITMAPINFOHEADER lpbi, LPVOID lpBits, INT x, INT y, INT dx, INT dy) PURE;
#define IGetFrame_IMETHODS \
IUnknown_IMETHODS \
IGetFrame_METHODS
ICOM_DEFINE(IGetFrame,IUnknown)
#undef INTERFACE
......
......@@ -50,14 +50,12 @@ typedef struct IOleCacheControl IOleCacheControl, *LPOLECACHECONTROL;
*/
#define INTERFACE IOleCache
#define IOleCache_METHODS \
IUnknown_METHODS \
STDMETHOD(Cache)(THIS_ FORMATETC *pformatetc, DWORD advf, DWORD * pdwConnection) PURE; \
STDMETHOD(Uncache)(THIS_ DWORD dwConnection) PURE; \
STDMETHOD(EnumCache)(THIS_ IEnumSTATDATA **ppenumSTATDATA) PURE; \
STDMETHOD(InitCache)(THIS_ IDataObject *pDataObject) PURE; \
STDMETHOD(SetData)(THIS_ FORMATETC *pformatetc, STGMEDIUM *pmedium, BOOL fRelease) PURE;
#define IOleCache_IMETHODS \
IUnknown_IMETHODS \
IOleCache_METHODS
ICOM_DEFINE(IOleCache,IUnknown)
#undef INTERFACE
......@@ -80,11 +78,9 @@ ICOM_DEFINE(IOleCache,IUnknown)
*/
#define INTERFACE IOleCache2
#define IOleCache2_METHODS \
IOleCache_METHODS \
STDMETHOD(UpdateCache)(THIS_ LPDATAOBJECT pDataObject, DWORD grfUpdf, LPVOID pReserved) PURE; \
STDMETHOD(DiscardCache)(THIS_ DWORD dwDiscardOptions) PURE;
#define IOleCache2_IMETHODS \
IOleCache_IMETHODS \
IOleCache2_METHODS
ICOM_DEFINE(IOleCache2,IOleCache)
#undef INTERFACE
......@@ -110,11 +106,9 @@ ICOM_DEFINE(IOleCache2,IOleCache)
*/
#define INTERFACE IOleCacheControl
#define IOleCacheControl_METHODS \
IUnknown_METHODS \
STDMETHOD(OnRun)(THIS_ LPDATAOBJECT pDataObject) PURE; \
STDMETHOD(OnStop)(THIS) PURE;
#define IOleCacheControl_IMETHODS \
IUnknown_IMETHODS \
IOleCacheControl_METHODS
ICOM_DEFINE(IOleCacheControl,IUnknown)
#undef INTERFACE
......
......@@ -93,15 +93,13 @@ DEFINE_OLEGUID(CLSID_StdComponentCategoriesMgr, 0x0002E005L, 0, 0);
*/
#define INTERFACE ICatInformation
#define ICatInformation_METHODS \
IUnknown_METHODS \
STDMETHOD(EnumCategories)(THIS_ LCID lcid, IEnumCATEGORYINFO ** ppenumCatInfo) PURE; \
STDMETHOD(GetCategoryDesc)(THIS_ REFCATID rcatid, LCID lcid, PWCHAR * ppszDesc) PURE; \
STDMETHOD(EnumClassesOfCategories)(THIS_ ULONG cImplemented, CATID * rgcatidImpl, ULONG cRequired, CATID * rgcatidReq, IEnumCLSID ** ppenumCLSID) PURE; \
STDMETHOD(IsClassOfCategories)(THIS_ REFCLSID rclsid, ULONG cImplemented, CATID * rgcatidImpl, ULONG cRequired, CATID * rgcatidReq) PURE; \
STDMETHOD(EnumImplCategoriesOfClass)(THIS_ REFCLSID rclsid, IEnumCATID ** ppenumCATID) PURE; \
STDMETHOD(EnumReqCategoriesOfClass)(THIS_ REFCLSID rclsid, IEnumCATID ** ppenumCATID) PURE;
#define ICatInformation_IMETHODS \
IUnknown_IMETHODS \
ICatInformation_METHODS
ICOM_DEFINE(ICatInformation,IUnknown)
#undef INTERFACE
......@@ -124,15 +122,13 @@ ICOM_DEFINE(ICatInformation,IUnknown)
*/
#define INTERFACE ICatRegister
#define ICatRegister_METHODS \
IUnknown_METHODS \
STDMETHOD(RegisterCategories)(THIS_ ULONG cCategories, CATEGORYINFO * rgCategoryInfo) PURE; \
STDMETHOD(UnRegisterCategories)(THIS_ ULONG cCategories, CATID * rgcatid) PURE; \
STDMETHOD(RegisterClassImplCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; \
STDMETHOD(UnRegisterClassImplCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; \
STDMETHOD(RegisterClassReqCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; \
STDMETHOD(UnRegisterClassReqCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE;
#define ICatRegister_IMETHODS \
IUnknown_IMETHODS \
ICatRegister_METHODS
ICOM_DEFINE(ICatRegister,IUnknown)
#undef INTERFACE
......@@ -155,13 +151,11 @@ ICOM_DEFINE(ICatRegister,IUnknown)
*/
#define INTERFACE IEnumCATEGORYINFO
#define IEnumCATEGORYINFO_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG celt, CATEGORYINFO * rgelt, ULONG * pceltFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumCATEGORYINFO ** ppenum) PURE;
#define IEnumCATEGORYINFO_IMETHODS \
IUnknown_IMETHODS \
IEnumCATEGORYINFO_METHODS
ICOM_DEFINE(IEnumCATEGORYINFO,IUnknown)
#undef INTERFACE
......
......@@ -36,12 +36,10 @@ typedef struct ICommDlgBrowser ICommDlgBrowser, *LPCOMMDLGBROWSER;
#define INTERFACE ICommDlgBrowser
#define ICommDlgBrowser_METHODS \
IUnknown_METHODS \
STDMETHOD(OnDefaultCommand)(THIS_ IShellView * IShellView) PURE; \
STDMETHOD(OnStateChange)(THIS_ IShellView * IShellView, ULONG uChange) PURE; \
STDMETHOD(IncludeObject)(THIS_ IShellView * IShellView, LPCITEMIDLIST pidl) PURE;
#define ICommDlgBrowser_IMETHODS \
IUnknown_IMETHODS \
ICommDlgBrowser_METHODS
ICOM_DEFINE(ICommDlgBrowser,IUnknown)
#undef INTERFACE
......
......@@ -57,14 +57,12 @@ typedef struct IEnumConnectionPoints IEnumConnectionPoints, *LPENUMCONNECTIONPOI
*/
#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;
#define IConnectionPoint_IMETHODS \
IUnknown_IMETHODS \
IConnectionPoint_METHODS
ICOM_DEFINE(IConnectionPoint,IUnknown)
#undef INTERFACE
......@@ -87,11 +85,9 @@ ICOM_DEFINE(IConnectionPoint,IUnknown)
*/
#define INTERFACE IConnectionPointContainer
#define IConnectionPointContainer_METHODS \
IUnknown_METHODS \
STDMETHOD(EnumConnectionPoints)(THIS_ IEnumConnectionPoints **ppEnum) PURE; \
STDMETHOD(FindConnectionPoint)(THIS_ REFIID riid, IConnectionPoint **ppCP) PURE;
#define IConnectionPointContainer_IMETHODS \
IUnknown_IMETHODS \
IConnectionPointContainer_METHODS
ICOM_DEFINE(IConnectionPointContainer,IUnknown)
#undef INTERFACE
......@@ -111,13 +107,11 @@ ICOM_DEFINE(IConnectionPointContainer,IUnknown)
*/
#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;
#define IEnumConnections_IMETHODS \
IUnknown_IMETHODS \
IEnumConnections_METHODS
ICOM_DEFINE(IEnumConnections,IUnknown)
#undef INTERFACE
......@@ -138,13 +132,11 @@ ICOM_DEFINE(IEnumConnections,IUnknown)
*/
#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;
#define IEnumConnectionPoints_IMETHODS \
IUnknown_IMETHODS \
IEnumConnectionPoints_METHODS
ICOM_DEFINE(IEnumConnectionPoints,IUnknown)
#undef INTERFACE
......
......@@ -125,14 +125,12 @@ typedef struct tagCMInvokeCommandInfoEx
#define INTERFACE IContextMenu
#define IContextMenu_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryContextMenu)(THIS_ HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags) PURE; \
STDMETHOD(InvokeCommand)(THIS_ LPCMINVOKECOMMANDINFO lpici) PURE; \
STDMETHOD(GetCommandString)(THIS_ UINT idCmd, UINT uType, UINT * pwReserved, LPSTR pszName, UINT cchMax) PURE; \
STDMETHOD(HandleMenuMsg)(THIS_ UINT uMsg, WPARAM wParam, LPARAM lParam) PURE; \
void * guard; /*possibly another nasty entry from ContextMenu3 ?*/
#define IContextMenu_IMETHODS \
IUnknown_IMETHODS \
IContextMenu_METHODS
ICOM_DEFINE(IContextMenu,IUnknown)
#undef INTERFACE
......
......@@ -180,13 +180,11 @@ typedef struct IProvideClassInfo2 IProvideClassInfo2, *LPPROVIDECLASSINFO2;
*/
#define INTERFACE IOleControl
#define IOleControl_METHODS \
IUnknown_METHODS \
STDMETHOD(GetControlInfo)(THIS_ CONTROLINFO *pCI) PURE; \
STDMETHOD(OnMnemonic)(THIS_ struct tagMSG *pMsg) PURE; \
STDMETHOD(OnAmbientPropertyChange)(THIS_ DISPID dispID) PURE; \
STDMETHOD(FreezeEvents)(THIS_ BOOL bFreeze) PURE;
#define IOleControl_IMETHODS \
IUnknown_IMETHODS \
IOleControl_METHODS
ICOM_DEFINE(IOleControl,IUnknown)
#undef INTERFACE
......@@ -208,6 +206,7 @@ ICOM_DEFINE(IOleControl,IUnknown)
*/
#define INTERFACE IOleControlSite
#define IOleControlSite_METHODS \
IUnknown_METHODS \
STDMETHOD(OnControlInfoChanged)(THIS) PURE; \
STDMETHOD(LockInPlaceActive)(THIS_ BOOL fLock) PURE; \
STDMETHOD(GetExtendedControl)(THIS_ IDispatch **ppDisp) PURE; \
......@@ -215,9 +214,6 @@ ICOM_DEFINE(IOleControl,IUnknown)
STDMETHOD(TranslateAccelerator)(THIS_ struct tagMSG *pMsg, DWORD grfModifiers) PURE; \
STDMETHOD(OnFocus)(THIS_ BOOL fGotFocus) PURE; \
STDMETHOD(ShowPropertyFrame)(THIS) PURE;
#define IOleControlSite_IMETHODS \
IUnknown_IMETHODS \
IOleControlSite_METHODS
ICOM_DEFINE(IOleControlSite,IUnknown)
#undef INTERFACE
......@@ -242,12 +238,10 @@ ICOM_DEFINE(IOleControlSite,IUnknown)
*/
#define INTERFACE IOleInPlaceSiteEx
#define IOleInPlaceSiteEx_METHODS \
IOleInPlaceSite_METHODS \
STDMETHOD(OnInPlaceActivateEx)(THIS_ BOOL *pfNoRedraw, DWORD dwFlags) PURE; \
STDMETHOD(OnInPlaceDeactivateEx)(THIS_ BOOL fNoRedraw) PURE; \
STDMETHOD(RequestUIActivate)(THIS) PURE;
#define IOleInPlaceSiteEx_IMETHODS \
IOleInPlaceSite_IMETHODS \
IOleInPlaceSiteEx_METHODS
ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite)
#undef INTERFACE
......@@ -282,6 +276,7 @@ ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite)
*/
#define INTERFACE IOleInPlaceSiteWindowless
#define IOleInPlaceSiteWindowless_METHODS \
IOleInPlaceSite_METHODS \
STDMETHOD(CanWindowlessActivate)(THIS) PURE; \
STDMETHOD(GetCapture)(THIS) PURE; \
STDMETHOD(SetCapture)(THIS_ BOOL fCapture) PURE; \
......@@ -294,9 +289,6 @@ ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite)
STDMETHOD(ScrollRect)(THIS_ INT dx, INT dy, LPCRECT pRectScroll, LPCRECT pRectClip) PURE; \
STDMETHOD(AdjustRect)(THIS_ LPRECT prc) PURE; \
STDMETHOD(OnDefWindowMessage)(THIS_ UINT msg, WPARAM wParam, LPARAM lParam, LRESULT *plResult) PURE;
#define IOleInPlaceSiteWindowless_IMETHODS \
IOleInPlaceSite_IMETHODS \
IOleInPlaceSiteWindowless_METHODS
ICOM_DEFINE(IOleInPlaceSiteWindowless,IOleInPlaceSite)
#undef INTERFACE
......@@ -340,11 +332,9 @@ ICOM_DEFINE(IOleInPlaceSiteWindowless,IOleInPlaceSite)
*/
#define INTERFACE IOleInPlaceObjectWindowless
#define IOleInPlaceObjectWindowless_METHODS \
IOleInPlaceObject_METHODS \
STDMETHOD(OnWindowMessage)(THIS_ UINT msg, WPARAM wParam, LPARAM lParam, LRESULT *plResult) PURE; \
STDMETHOD(GetDropTarget)(THIS_ IDropTarget **ppDropTarget) PURE;
#define IOleInPlaceObjectWindowless_IMETHODS \
IOleInPlaceObject_IMETHODS \
IOleInPlaceObjectWindowless_METHODS
ICOM_DEFINE(IOleInPlaceObjectWindowless,IOleInPlaceObject)
#undef INTERFACE
......@@ -372,12 +362,10 @@ ICOM_DEFINE(IOleInPlaceObjectWindowless,IOleInPlaceObject)
*/
#define INTERFACE IClassFactory2
#define IClassFactory2_METHODS \
IClassFactory_METHODS \
STDMETHOD(GetLicInfo)(THIS_ LICINFO *pLicInfo) PURE; \
STDMETHOD(RequestLicKey)(THIS_ DWORD dwReserved, BSTR *pBstrKey) PURE; \
STDMETHOD(CreateInstanceLic)(THIS_ IUnknown *pUnkOuter, IUnknown *pUnkReserved, REFIID riid, BSTR bstrKey, PVOID *ppvObj) PURE;
#define IClassFactory2_IMETHODS \
IClassFactory_IMETHODS \
IClassFactory2_METHODS
ICOM_DEFINE(IClassFactory2,IClassFactory)
#undef INTERFACE
......@@ -401,14 +389,12 @@ ICOM_DEFINE(IClassFactory2,IClassFactory)
*/
#define INTERFACE IViewObjectEx
#define IViewObjectEx_METHODS \
IViewObject2_METHODS \
STDMETHOD(GetRect)(THIS_ DWORD dwAspect, LPRECTL pRect) PURE; \
STDMETHOD(GetViewStatus)(THIS_ DWORD *pdwStatus) PURE; \
STDMETHOD(QueryHitPoint)(THIS_ DWORD dwAspect, LPCRECT pRectBounds, POINT ptlLoc, LONG lCloseHint, DWORD *pHitResult) PURE; \
STDMETHOD(QueryHitRect)(THIS_ DWORD dwAspect, LPCRECT pRectBounds, LPCRECT pRectLoc, LONG lCloseHint, DWORD *pHitResult) PURE; \
STDMETHOD(GetNaturalExtent)(THIS_ DWORD dwAspect, LONG lindex, DVTARGETDEVICE *ptd, HDC hicTargetDev, DVEXTENTINFO *pExtentInfo, LPSIZEL pSizel) PURE;
#define IViewObjectEx_IMETHODS \
IViewObject2_IMETHODS \
IViewObjectEx_METHODS
ICOM_DEFINE(IViewObjectEx,IViewObject2)
#undef INTERFACE
......@@ -444,10 +430,8 @@ ICOM_DEFINE(IViewObjectEx,IViewObject2)
#define INTERFACE IProvideClassInfo
#define IProvideClassInfo_METHODS \
IUnknown_METHODS \
STDMETHOD(GetClassInfo)(THIS_ ITypeInfo **ppTI) PURE;
#define IProvideClassInfo_IMETHODS \
IUnknown_IMETHODS \
IProvideClassInfo_METHODS
ICOM_DEFINE(IProvideClassInfo,IUnknown)
#undef INTERFACE
......@@ -467,10 +451,8 @@ ICOM_DEFINE(IProvideClassInfo,IUnknown)
*/
#define INTERFACE IProvideClassInfo2
#define IProvideClassInfo2_METHODS \
IProvideClassInfo_METHODS \
STDMETHOD(GetGUID)(THIS_ DWORD dwGuidKind, GUID *pGUID) PURE;
#define IProvideClassInfo2_IMETHODS \
IProvideClassInfo_IMETHODS \
IProvideClassInfo2_METHODS
ICOM_DEFINE(IProvideClassInfo2,IProvideClassInfo)
#undef INTERFACE
......
......@@ -34,12 +34,10 @@ DEFINE_GUID (IID_IDockingWindowFrame, 0x47D2657AL, 0x7B27, 0x11D0, 0x8C, 0xA9, 0
#define INTERFACE IDockingWindowFrame
#define IDockingWindowFrame_METHODS \
IOleWindow_METHODS \
STDMETHOD(AddToolbar)(THIS_ IUnknown * punkSrc, LPCWSTR pwszItem, DWORD dwAddFlags) PURE; \
STDMETHOD(RemoveToolbar)(THIS_ IUnknown * punkSrc, DWORD dwRemoveFlags) PURE; \
STDMETHOD(FindToolbar)(THIS_ LPCWSTR pwszItem, REFIID riid, LPVOID * ppvObj) PURE;
#define IDockingWindowFrame_IMETHODS \
IOleWindow_IMETHODS \
IDockingWindowFrame_METHODS
ICOM_DEFINE(IDockingWindowFrame,IOleWindow)
#undef INTERFACE
......
......@@ -54,11 +54,9 @@ typedef struct IDropTarget IDropTarget,*LPDROPTARGET;
*/
#define INTERFACE IDropSource
#define IDropSource_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryContinueDrag)(THIS_ BOOL fEscapePressed, DWORD grfKeyState) PURE; \
STDMETHOD(GiveFeedback)(THIS_ DWORD dwEffect) PURE;
#define IDropSource_IMETHODS \
IUnknown_IMETHODS \
IDropSource_METHODS
ICOM_DEFINE(IDropSource,IUnknown)
#undef INTERFACE
......@@ -77,13 +75,11 @@ ICOM_DEFINE(IDropSource,IUnknown)
*/
#define INTERFACE IDropTarget
#define IDropTarget_METHODS \
IUnknown_METHODS \
STDMETHOD(DragEnter)(THIS_ IDataObject * pDataObject, DWORD grfKeyState, POINTL pt, DWORD * pdwEffect) PURE; \
STDMETHOD(DragOver)(THIS_ DWORD grfKeyState, POINTL pt, DWORD * pdwEffect) PURE; \
STDMETHOD(DragLeave)(THIS) PURE; \
STDMETHOD(Drop)(THIS_ IDataObject * pDataObject, DWORD grfKeyState, POINTL pt, DWORD * pdwEffect) PURE;
#define IDropTarget_IMETHODS \
IUnknown_IMETHODS \
IDropTarget_METHODS
ICOM_DEFINE(IDropTarget,IUnknown)
#undef INTERFACE
......
......@@ -48,11 +48,9 @@ typedef struct {
#define INTERFACE IDragSourceHelper
#define IDragSourceHelper_METHODS \
IUnknown_METHODS \
STDMETHOD(InitializeFromBitmap)(THIS_ LPSHDRAGIMAGE pshdi, IDataObject * pDataObject) PURE; \
STDMETHOD(InitializeFromWindow)(THIS_ HWND hwnd, POINT * ppt, IDataObject * pDataObject) PURE;
#define IDragSourceHelper_IMETHODS \
IUnknown_IMETHODS \
IDragSourceHelper_METHODS
ICOM_DEFINE(IDragSourceHelper,IUnknown)
#undef INTERFACE
......@@ -72,14 +70,12 @@ ICOM_DEFINE(IDragSourceHelper,IUnknown)
*/
#define INTERFACE IDropTargetHelper
#define IDropTargetHelper_METHODS \
IUnknown_METHODS \
STDMETHOD(DragEnter)(THIS_ HWND hwndTarget, IDataObject * pDataObject, POINT * ppt, DWORD dwEffect) PURE; \
STDMETHOD(DragLeave)(THIS) PURE; \
STDMETHOD(DragOver)(THIS_ POINT * ppt, DWORD dwEffect) PURE; \
STDMETHOD(Drop)(THIS_ IDataObject * pDataObject, POINT * ppt,DWORD dwEffect) PURE; \
STDMETHOD(Show)(THIS_ BOOL fShow) PURE;
#define IDropTargetHelper_IMETHODS \
IUnknown_IMETHODS \
IDropTargetHelper_METHODS
ICOM_DEFINE(IDropTargetHelper,IUnknown)
#undef INTERFACE
......
......@@ -38,13 +38,11 @@ typedef struct IEnumGUID IEnumGUID, *LPENUMGUID;
*/
#define INTERFACE IEnumGUID
#define IEnumGUID_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG celt, GUID * rgelt, ULONG * pceltFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumGUID ** ppenum) PURE;
#define IEnumGUID_IMETHODS \
IUnknown_IMETHODS \
IEnumGUID_METHODS
ICOM_DEFINE(IEnumGUID,IUnknown)
#undef INTERFACE
......
......@@ -34,13 +34,11 @@ typedef struct IEnumIDList IEnumIDList, *LPENUMIDLIST;
#define INTERFACE IEnumIDList
#define IEnumIDList_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG celt, LPITEMIDLIST * rgelt, ULONG * pceltFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumIDList ** ppenum) PURE;
#define IEnumIDList_IMETHODS \
IUnknown_IMETHODS \
IEnumIDList_METHODS
ICOM_DEFINE(IEnumIDList,IUnknown)
#undef INTERFACE
......
......@@ -46,11 +46,9 @@ typedef struct IExtractIconW IExtractIconW,*LPEXTRACTICONW;
#define INTERFACE IExtractIconA
#define IExtractIconA_METHODS \
IUnknown_METHODS \
STDMETHOD(GetIconLocation)(THIS_ UINT uFlags, LPSTR szIconFile, UINT cchMax, INT * piIndex, UINT * pwFlags) PURE; \
STDMETHOD(Extract)(THIS_ LPCSTR pszFile, UINT nIconIndex, HICON * phiconLarge, HICON * phiconSmall, UINT nIconSize) PURE;
#define IExtractIconA_IMETHODS \
IUnknown_IMETHODS \
IExtractIconA_METHODS
ICOM_DEFINE(IExtractIconA,IUnknown)
#undef INTERFACE
......@@ -65,11 +63,9 @@ ICOM_DEFINE(IExtractIconA,IUnknown)
#define INTERFACE IExtractIconW
#define IExtractIconW_METHODS \
IUnknown_METHODS \
STDMETHOD(GetIconLocation)(THIS_ UINT uFlags, LPWSTR szIconFile, UINT cchMax, INT * piIndex, UINT * pwFlags) PURE; \
STDMETHOD(Extract)(THIS_ LPCWSTR pszFile, UINT nIconIndex, HICON * phiconLarge, HICON * phiconSmall, UINT nIconSize) PURE;
#define IExtractIconW_IMETHODS \
IUnknown_IMETHODS \
IExtractIconW_METHODS
ICOM_DEFINE(IExtractIconW,IUnknown)
#undef INTERFACE
......
......@@ -165,11 +165,9 @@ typedef struct IOleLink IOleLink, *LPOLELINK;
*/
#define INTERFACE IOleWindow
#define IOleWindow_METHODS \
IUnknown_METHODS \
STDMETHOD(GetWindow)(THIS_ HWND *phwnd) PURE; \
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE;
#define IOleWindow_IMETHODS \
IUnknown_IMETHODS \
IOleWindow_METHODS
ICOM_DEFINE(IOleWindow,IUnknown)
#undef INTERFACE
......@@ -189,13 +187,11 @@ ICOM_DEFINE(IOleWindow,IUnknown)
*/
#define INTERFACE IOleInPlaceObject
#define IOleInPlaceObject_METHODS \
IOleWindow_METHODS \
STDMETHOD(InPlaceDeactivate)(THIS) PURE; \
STDMETHOD(UIDeactivate)(THIS) PURE; \
STDMETHOD(SetObjectRects)(THIS_ LPCRECT lprcPosRect, LPCRECT lprcClipRect) PURE; \
STDMETHOD(ReactivateAndUndo)(THIS) PURE;
#define IOleInPlaceObject_IMETHODS \
IOleWindow_IMETHODS \
IOleInPlaceObject_METHODS
ICOM_DEFINE(IOleInPlaceObject,IOleWindow)
#undef INTERFACE
......@@ -219,14 +215,12 @@ ICOM_DEFINE(IOleInPlaceObject,IOleWindow)
*/
#define INTERFACE IOleInPlaceActiveObject
#define IOleInPlaceActiveObject_METHODS \
IOleWindow_METHODS \
STDMETHOD(TranslateAccelerator)(THIS_ struct tagMSG *lpmsg) PURE; \
STDMETHOD(OnFrameWindowActivate)(THIS_ BOOL fActivate) PURE; \
STDMETHOD(OnDocWindowActivate)(THIS_ BOOL fActivate) PURE; \
STDMETHOD(ResizeBorder)(THIS_ LPCRECT prcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fWindowFrame) PURE; \
STDMETHOD(EnableModeless)(THIS_ BOOL fEnable) PURE;
#define IOleInPlaceActiveObject_IMETHODS \
IOleWindow_IMETHODS \
IOleInPlaceActiveObject_METHODS
ICOM_DEFINE(IOleInPlaceActiveObject,IOleWindow)
#undef INTERFACE
......@@ -251,13 +245,11 @@ ICOM_DEFINE(IOleInPlaceActiveObject,IOleWindow)
*/
#define INTERFACE IOleInPlaceUIWindow
#define IOleInPlaceUIWindow_METHODS \
IOleWindow_METHODS \
STDMETHOD(GetBorder)(THIS_ LPRECT lprectBorder) PURE; \
STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
STDMETHOD(SetActiveObject)(THIS_ IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName) PURE;
#define IOleInPlaceUIWindow_IMETHODS \
IOleWindow_IMETHODS \
IOleInPlaceUIWindow_METHODS
ICOM_DEFINE(IOleInPlaceUIWindow,IOleWindow)
#undef INTERFACE
......@@ -282,15 +274,13 @@ ICOM_DEFINE(IOleInPlaceUIWindow,IOleWindow)
*/
#define INTERFACE IOleInPlaceFrame
#define IOleInPlaceFrame_METHODS \
IOleInPlaceUIWindow_METHODS \
STDMETHOD(InsertMenus)(THIS_ HMENU hemnuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \
STDMETHOD(SetMenu)(THIS_ HMENU hemnuShared, HOLEMENU holemenu, HWND hwndActiveObject) PURE; \
STDMETHOD(RemoveMenus)(THIS_ HMENU hemnuShared) PURE; \
STDMETHOD(SetStatusText)(THIS_ LPCOLESTR pszStatusText) PURE; \
STDMETHOD(EnableModeless)(THIS_ BOOL fEnable) PURE; \
STDMETHOD(TranslateAccelerator)(THIS_ struct tagMSG *lpmsg, WORD wID) PURE;
#define IOleInPlaceFrame_IMETHODS \
IOleInPlaceUIWindow_IMETHODS \
IOleInPlaceFrame_METHODS
ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow)
#undef INTERFACE
......@@ -322,6 +312,7 @@ ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow)
*/
#define INTERFACE IOleInPlaceSite
#define IOleInPlaceSite_METHODS \
IOleWindow_METHODS \
STDMETHOD(CanInPlaceActivate)(THIS) PURE; \
STDMETHOD(OnInPlaceActivate)(THIS) PURE; \
STDMETHOD(OnUIActivate)(THIS) PURE; \
......@@ -332,9 +323,6 @@ ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow)
STDMETHOD(DiscardUndoState)(THIS) PURE; \
STDMETHOD(DeactivateAndUndo)(THIS) PURE; \
STDMETHOD(OnPosRectChange)(THIS_ LPCRECT lprcPosRect) PURE;
#define IOleInPlaceSite_IMETHODS \
IOleWindow_IMETHODS \
IOleInPlaceSite_METHODS
ICOM_DEFINE(IOleInPlaceSite,IOleWindow)
#undef INTERFACE
......@@ -365,15 +353,13 @@ ICOM_DEFINE(IOleInPlaceSite,IOleWindow)
*/
#define INTERFACE IOleClientSite
#define IOleClientSite_METHODS \
IUnknown_METHODS \
STDMETHOD(SaveObject)(THIS) PURE; \
STDMETHOD(GetMoniker)(THIS_ DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk) PURE; \
STDMETHOD(GetContainer)(THIS_ IOleContainer **ppContainer) PURE; \
STDMETHOD(ShowObject)(THIS) PURE; \
STDMETHOD(OnShowWindow)(THIS_ BOOL fShow) PURE; \
STDMETHOD(RequestNewObjectLayout)(THIS) PURE;
#define IOleClientSite_IMETHODS \
IUnknown_IMETHODS \
IOleClientSite_METHODS
ICOM_DEFINE(IOleClientSite,IUnknown)
#undef INTERFACE
......@@ -397,10 +383,8 @@ ICOM_DEFINE(IOleClientSite,IUnknown)
*/
#define INTERFACE IParseDisplayName
#define IParseDisplayName_METHODS \
IUnknown_METHODS \
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx *pbc, LPOLESTR pszDisplayName, ULONG *pchEaten, IMoniker **ppmkOut) PURE;
#define IParseDisplayName_IMETHODS \
IUnknown_IMETHODS \
IParseDisplayName_METHODS
ICOM_DEFINE(IParseDisplayName,IUnknown)
#undef INTERFACE
......@@ -419,11 +403,9 @@ ICOM_DEFINE(IParseDisplayName,IUnknown)
*/
#define INTERFACE IOleContainer
#define IOleContainer_METHODS \
IParseDisplayName_METHODS \
STDMETHOD(EnumObjects)(THIS_ DWORD grfFlags, IEnumUnknown **ppenum) PURE; \
STDMETHOD(LockContainer)(THIS_ BOOL fLock) PURE;
#define IOleContainer_IMETHODS \
IParseDisplayName_IMETHODS \
IOleContainer_METHODS
ICOM_DEFINE(IOleContainer,IParseDisplayName)
#undef INTERFACE
......@@ -449,12 +431,10 @@ ICOM_DEFINE(IOleContainer,IParseDisplayName)
#define INTERFACE IOleItemContainer
#define IOleItemContainer_METHODS \
IOleContainer_METHODS \
STDMETHOD(GetObject)(THIS_ LPOLESTR pszItem, DWORD dwSpeedNeeded, IBindCtx *pbc, REFIID riid, void **ppvObject) PURE; \
STDMETHOD(GetObjectStorage)(THIS_ LPOLESTR pszItem, IBindCtx *pbc, REFIID riid, void **ppvStorage) PURE; \
STDMETHOD(IsRunning)(THIS_ LPOLESTR pszItem) PURE;
#define IOleItemContainer_IMETHODS \
IOleContainer_IMETHODS \
IOleItemContainer_METHODS
ICOM_DEFINE(IOleItemContainer,IOleContainer)
#undef INTERFACE
......@@ -475,6 +455,7 @@ ICOM_DEFINE(IOleItemContainer,IOleContainer)
*/
#define INTERFACE IOleLink
#define IOleLink_METHODS \
IUnknown_METHODS \
STDMETHOD(SetUpdateOptions)(THIS_ DWORD dwUpdateOpt) PURE; \
STDMETHOD(GetUpdateOptions)(THIS_ DWORD *pdwUpdateOpt) PURE; \
STDMETHOD(SetSourceMoniker)(THIS_ IMoniker *pmk, REFCLSID rclsid) PURE; \
......@@ -486,9 +467,6 @@ ICOM_DEFINE(IOleItemContainer,IOleContainer)
STDMETHOD(GetBoundSource)(THIS_ IUnknown **ppunk) PURE; \
STDMETHOD(UnBindSource)(THIS) PURE; \
STDMETHOD(Update)(THIS_ IBindCtx *pbc) PURE;
#define IOleLink_IMETHODS \
IUnknown_IMETHODS \
IOleLink_METHODS
ICOM_DEFINE(IOleLink,IUnknown)
#undef INTERFACE
......
......@@ -43,6 +43,7 @@ typedef TEXTMETRICW TEXTMETRICOLE;
*/
#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; \
......@@ -67,9 +68,6 @@ typedef TEXTMETRICW TEXTMETRICOLE;
STDMETHOD(AddRefHfont)(THIS_ HFONT hfont) PURE; \
STDMETHOD(ReleaseHfont)(THIS_ HFONT hfont) PURE; \
STDMETHOD(SetHdc)(THIS_ HDC hdc) PURE;
#define IFont_IMETHODS \
IUnknown_IMETHODS \
IFont_METHODS
ICOM_DEFINE(IFont,IUnknown)
#undef INTERFACE
......@@ -110,10 +108,8 @@ ICOM_DEFINE(IFont,IUnknown)
* IFont interface
*/
#define INTERFACE IFontDisp
#define IFontDisp_METHODS
#define IFontDisp_IMETHODS \
IUnknown_IMETHODS \
IFontDisp_METHODS
#define IFontDisp_METHODS \
IDispatch_METHODS
ICOM_DEFINE(IFontDisp,IDispatch)
#undef INTERFACE
......
......@@ -94,6 +94,7 @@ typedef struct IEnumOLEVERB IEnumOLEVERB, *LPENUMOLEVERB;
*/
#define INTERFACE IOleObject
#define IOleObject_METHODS \
IUnknown_METHODS \
STDMETHOD(SetClientSite)(THIS_ IOleClientSite *pClientSite) PURE; \
STDMETHOD(GetClientSite)(THIS_ IOleClientSite **ppClientSite) PURE; \
STDMETHOD(SetHostNames)(THIS_ LPCOLESTR szContainerApp, LPCOLESTR szContainerObj) PURE; \
......@@ -115,9 +116,6 @@ typedef struct IEnumOLEVERB IEnumOLEVERB, *LPENUMOLEVERB;
STDMETHOD(EnumAdvise)(THIS_ IEnumSTATDATA **ppenumAdvise) PURE; \
STDMETHOD(GetMiscStatus)(THIS_ DWORD dwAspect, DWORD *pdwStatus) PURE; \
STDMETHOD(SetColorScheme)(THIS_ struct tagLOGPALETTE *pLogpal) PURE;
#define IOleObject_IMETHODS \
IUnknown_IMETHODS \
IOleObject_METHODS
ICOM_DEFINE(IOleObject,IUnknown)
#undef INTERFACE
......@@ -156,15 +154,13 @@ ICOM_DEFINE(IOleObject,IUnknown)
*/
#define INTERFACE IOleAdviseHolder
#define IOleAdviseHolder_METHODS \
IUnknown_METHODS \
STDMETHOD(Advise)(THIS_ IAdviseSink *pAdvise, DWORD *pdwConnection) PURE; \
STDMETHOD(Unadvise)(THIS_ DWORD dwConnection) PURE; \
STDMETHOD(EnumAdvise)(THIS_ IEnumSTATDATA **ppenumAdvise) PURE; \
STDMETHOD(SendOnRename)(THIS_ IMoniker *pmk) PURE; \
STDMETHOD(SendOnSave)(THIS) PURE; \
STDMETHOD(SendOnClose)(THIS) PURE;
#define IOleAdviseHolder_IMETHODS \
IUnknown_IMETHODS \
IOleAdviseHolder_METHODS
ICOM_DEFINE(IOleAdviseHolder,IUnknown)
#undef INTERFACE
......@@ -188,13 +184,11 @@ ICOM_DEFINE(IOleAdviseHolder,IUnknown)
*/
#define INTERFACE IEnumOLEVERB
#define IEnumOLEVERB_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG celt, LPOLEVERB rgelt, ULONG *pceltFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumOLEVERB **ppenum) PURE;
#define IEnumOLEVERB_IMETHODS \
IUnknown_IMETHODS \
IEnumOLEVERB_METHODS
ICOM_DEFINE(IEnumOLEVERB,IUnknown)
#undef INTERFACE
......
......@@ -101,12 +101,10 @@ typedef struct tagQACONTAINER
*/
#define INTERFACE IQuickActivate
#define IQuickActivate_METHODS \
IUnknown_METHODS \
STDMETHOD(QuickActivate)(THIS_ QACONTAINER *pQaContainer, QACONTROL *pQaControl) PURE; \
STDMETHOD(SetContentExtent)(THIS_ LPSIZEL pSizel) PURE; \
STDMETHOD(GetContentExtent)(THIS_ LPSIZEL pSizel) PURE;
#define IQuickActivate_IMETHODS \
IUnknown_IMETHODS \
IQuickActivate_METHODS
ICOM_DEFINE(IQuickActivate,IUnknown)
#undef INTERFACE
......@@ -127,12 +125,10 @@ ICOM_DEFINE(IQuickActivate,IUnknown)
*/
#define INTERFACE IPointerInactive
#define IPointerInactive_METHODS \
IUnknown_METHODS \
STDMETHOD(GetActivationPolicy)(THIS_ DWORD *pdwPolicy) PURE; \
STDMETHOD(OnInactiveMouseMove)(THIS_ LPCRECT pRectBounds, LONG x, LONG y, DWORD grfKeyState) PURE; \
STDMETHOD(OnInactiveSetCursor)(THIS_ LPCRECT pRectBounds, LONG x, LONG y, DWORD dwMouseMsg, BOOL fSetAlways) PURE;
#define IPointerInactive_IMETHODS \
IUnknown_IMETHODS \
IPointerInactive_METHODS
ICOM_DEFINE(IPointerInactive,IUnknown)
#undef INTERFACE
......@@ -153,10 +149,8 @@ ICOM_DEFINE(IPointerInactive,IUnknown)
*/
#define INTERFACE IAdviseSinkEx
#define IAdviseSinkEx_METHODS \
IAdviseSink_METHODS \
STDMETHOD(OnViewStatusChange)(THIS_ DWORD dwViewStatus) PURE;
#define IAdviseSinkEx_IMETHODS \
IAdviseSink_IMETHODS \
IAdviseSinkEx_METHODS
ICOM_DEFINE(IAdviseSinkEx,IAdviseSink)
#undef INTERFACE
......@@ -181,6 +175,7 @@ ICOM_DEFINE(IAdviseSinkEx,IAdviseSink)
*/
#define INTERFACE IOleUndoManager
#define IOleUndoManager_METHODS \
IUnknown_METHODS \
STDMETHOD(Open)(THIS_ IOleParentUndoUnit *pPUU) PURE; \
STDMETHOD(Close)(THIS_ IOleParentUndoUnit *pPUU, BOOL fCommit) PURE; \
STDMETHOD(Add)(THIS_ IOleUndoUnit *pUU) PURE; \
......@@ -193,9 +188,6 @@ ICOM_DEFINE(IAdviseSinkEx,IAdviseSink)
STDMETHOD(GetLastUndoDescription)(THIS_ BSTR *pBstr) PURE; \
STDMETHOD(GetLastRedoDescription)(THIS_ BSTR *pBstr) PURE; \
STDMETHOD(Enable)(THIS_ BOOL fEnable) PURE;
#define IOleUndoManager_IMETHODS \
IUnknown_IMETHODS \
IOleUndoManager_METHODS
ICOM_DEFINE(IOleUndoManager,IUnknown)
#undef INTERFACE
......@@ -225,13 +217,11 @@ ICOM_DEFINE(IOleUndoManager,IUnknown)
*/
#define INTERFACE IOleUndoUnit
#define IOleUndoUnit_METHODS \
IUnknown_METHODS \
STDMETHOD(Do)(THIS_ IOleUndoManager *pUndoManager) PURE; \
STDMETHOD(GetDescription)(THIS_ BSTR *pBstr) PURE; \
STDMETHOD(GetUnitType)(THIS_ CLSID *pClsid, LONG *plID) PURE; \
STDMETHOD(OnNextAdd)(THIS) PURE;
#define IOleUndoUnit_IMETHODS \
IUnknown_IMETHODS \
IOleUndoUnit_METHODS
ICOM_DEFINE(IOleUndoUnit,IUnknown)
#undef INTERFACE
......@@ -254,14 +244,12 @@ ICOM_DEFINE(IOleUndoUnit,IUnknown)
*/
#define INTERFACE IOleParentUndoUnit
#define IOleParentUndoUnit_METHODS \
IOleUndoUnit_METHODS \
STDMETHOD(Open)(THIS_ IOleParentUndoUnit *pPUU) PURE; \
STDMETHOD(Close)(THIS_ IOleParentUndoUnit *pPUU, BOOL fCommit) PURE; \
STDMETHOD(Add)(THIS_ IOleUndoUnit *pUU) PURE; \
STDMETHOD(FindUnit)(THIS_ IOleUndoUnit *pUU) PURE; \
STDMETHOD(GetParentState)(THIS_ DWORD *pdwState) PURE;
#define IOleParentUndoUnit_IMETHODS \
IOleUndoUnit_IMETHODS \
IOleParentUndoUnit_METHODS
ICOM_DEFINE(IOleParentUndoUnit,IOleUndoUnit)
#undef INTERFACE
......@@ -289,13 +277,11 @@ ICOM_DEFINE(IOleParentUndoUnit,IOleUndoUnit)
*/
#define INTERFACE IEnumOleUndoUnits
#define IEnumOleUndoUnits_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG cElt, IOleUndoUnit **rgElt, ULONG *pcEltFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG cElt) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumOleUndoUnits **ppEnum) PURE;
#define IEnumOleUndoUnits_IMETHODS \
IUnknown_IMETHODS \
IEnumOleUndoUnits_METHODS
ICOM_DEFINE(IEnumOleUndoUnits,IUnknown)
#undef INTERFACE
......
......@@ -49,15 +49,13 @@ typedef BOOL (CALLBACK *IVO_ContCallback)(DWORD);
#define INTERFACE IViewObject
#define IViewObject_METHODS \
IUnknown_METHODS \
STDMETHOD(Draw)(THIS_ DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, IVO_ContCallback pfnContinue, DWORD dwContinue) PURE; \
STDMETHOD(GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDevice, struct tagLOGPALETTE **ppColorSet) PURE; \
STDMETHOD(Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void *pvAspect, DWORD *pdwFreeze) PURE; \
STDMETHOD(Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
STDMETHOD(SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink *pAdvSink) PURE; \
STDMETHOD(GetAdvise)(THIS_ DWORD *pAspects, DWORD *pAdvf, IAdviseSink **ppAdvSink) PURE;
#define IViewObject_IMETHODS \
IUnknown_IMETHODS \
IViewObject_METHODS
ICOM_DEFINE(IViewObject,IUnknown)
#undef INTERFACE
......@@ -82,10 +80,8 @@ ICOM_DEFINE(IViewObject,IUnknown)
*/
#define INTERFACE IViewObject2
#define IViewObject2_METHODS \
IViewObject_METHODS \
STDMETHOD(GetExtent)(THIS_ DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE *ptd, LPSIZEL lpsizel) PURE;
#define IViewObject2_IMETHODS \
IViewObject_IMETHODS \
IViewObject2_METHODS
ICOM_DEFINE(IViewObject2,IViewObject)
#undef INTERFACE
......
......@@ -55,6 +55,7 @@ typedef struct IPictureDisp IPictureDisp, *LPPICTUREDISP;
*/
#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; \
......@@ -69,9 +70,6 @@ typedef struct IPictureDisp IPictureDisp, *LPPICTUREDISP;
STDMETHOD(PictureChanged)(THIS) PURE; \
STDMETHOD(SaveAsFile)(THIS_ LPSTREAM pStream, BOOL fSaveMemCopy, LONG *pCbSize) PURE; \
STDMETHOD(get_Attributes)(THIS_ DWORD *pDwAttr) PURE;
#define IPicture_IMETHODS \
IUnknown_IMETHODS \
IPicture_METHODS
ICOM_DEFINE(IPicture,IUnknown)
#undef INTERFACE
......@@ -102,10 +100,8 @@ ICOM_DEFINE(IPicture,IUnknown)
* IPictureDisp interface
*/
#define INTERFACE IPictureDisp
#define IPictureDisp_METHODS
#define IPictureDisp_IMETHODS \
IDispatch_IMETHODS \
IPictureDisp_METHODS
#define IPictureDisp_METHODS \
IDispatch_METHODS
ICOM_DEFINE(IPictureDisp,IDispatch)
#undef INTERFACE
......
......@@ -138,6 +138,7 @@ typedef struct IPerPropertyBrowsing IPerPropertyBrowsing,*LPPERPROPERTYBROWSING;
*/
#define INTERFACE IPropertyPage
#define IPropertyPage_METHODS \
IUnknown_METHODS \
STDMETHOD(SetPageSite)(THIS_ IPropertyPageSite *pPageSite) PURE; \
STDMETHOD(Activate)(THIS_ HWND hWndParent, LPCRECT pRect, BOOL bModal) PURE; \
STDMETHOD(Deactivate)(THIS) PURE; \
......@@ -149,9 +150,6 @@ typedef struct IPerPropertyBrowsing IPerPropertyBrowsing,*LPPERPROPERTYBROWSING;
STDMETHOD(Apply)(THIS) PURE; \
STDMETHOD(Help)(THIS_ LPCOLESTR pszHelpDir) PURE; \
STDMETHOD(TranslateAccelerator)(THIS_ MSG *pMsg) PURE;
#define IPropertyPage_IMETHODS \
IUnknown_IMETHODS \
IPropertyPage_METHODS
ICOM_DEFINE(IPropertyPage,IUnknown)
#undef INTERFACE
......@@ -180,10 +178,8 @@ ICOM_DEFINE(IPropertyPage,IUnknown)
*/
#define INTERFACE IPropertyPage2
#define IPropertyPage2_METHODS \
IPropertyPage_METHODS \
STDMETHOD(EditProperty)(THIS_ DISPID dispID) PURE;
#define IPropertyPage2_IMETHODS \
IPropertyPage_IMETHODS \
IPropertyPage2_METHODS
ICOM_DEFINE(IPropertyPage2,IPropertyPage)
#undef INTERFACE
......@@ -214,13 +210,11 @@ ICOM_DEFINE(IPropertyPage2,IPropertyPage)
*/
#define INTERFACE IPropertyPageSite
#define IPropertyPageSite_METHODS \
IUnknown_METHODS \
STDMETHOD(OnStatusChange)(THIS_ DWORD dwFlags) PURE; \
STDMETHOD(GetLocaleID)(THIS_ LCID *pLocaleID) PURE; \
STDMETHOD(GetPageContainer)(THIS_ IUnknown **ppUnk) PURE; \
STDMETHOD(TranslateAccelerator)(THIS_ MSG *pMsg) PURE;
#define IPropertyPageSite_IMETHODS \
IUnknown_IMETHODS \
IPropertyPageSite_METHODS
ICOM_DEFINE(IPropertyPageSite,IUnknown)
#undef INTERFACE
......@@ -242,11 +236,9 @@ ICOM_DEFINE(IPropertyPageSite,IUnknown)
*/
#define INTERFACE IPropertyNotifySink
#define IPropertyNotifySink_METHODS \
IUnknown_METHODS \
STDMETHOD(OnChanged)(THIS_ DISPID dispID) PURE; \
STDMETHOD(OnRequestEdit)(THIS_ DISPID dispID) PURE;
#define IPropertyNotifySink_IMETHODS \
IUnknown_IMETHODS \
IPropertyNotifySink_METHODS
ICOM_DEFINE(IPropertyNotifySink,IUnknown)
#undef INTERFACE
......@@ -266,11 +258,9 @@ ICOM_DEFINE(IPropertyNotifySink,IUnknown)
*/
#define INTERFACE ISimpleFrameSite
#define ISimpleFrameSite_METHODS \
IUnknown_METHODS \
STDMETHOD(PreMessageFilter)(THIS_ HWND hWnd, UINT msg, WPARAM wp, LPARAM lp, LRESULT *plResult, DWORD *pwdCookie) PURE; \
STDMETHOD(PostMessageFilter)(THIS_ HWND hWnd, UINT msg, WPARAM wp, LPARAM lp, LRESULT *plResult, DWORD pwdCookie) PURE;
#define ISimpleFrameSite_IMETHODS \
IUnknown_IMETHODS \
ISimpleFrameSite_METHODS
ICOM_DEFINE(ISimpleFrameSite,IUnknown)
#undef INTERFACE
......@@ -290,14 +280,12 @@ ICOM_DEFINE(ISimpleFrameSite,IUnknown)
*/
#define INTERFACE IPersistStreamInit
#define IPersistStreamInit_METHODS \
IPersist_METHODS \
STDMETHOD(IsDirty)(THIS) PURE; \
STDMETHOD(Load)(THIS_ LPSTREAM pStm) PURE; \
STDMETHOD(Save)(THIS_ LPSTREAM pStm, BOOL fClearDirty) PURE; \
STDMETHOD(GetSizeMax)(THIS_ ULARGE_INTEGER *pcbSize) PURE; \
STDMETHOD(InitNew)(THIS) PURE;
#define IPersistStreamInit_IMETHODS \
IPersist_IMETHODS \
IPersistStreamInit_METHODS
ICOM_DEFINE(IPersistStreamInit,IPersist)
#undef INTERFACE
......@@ -322,14 +310,12 @@ ICOM_DEFINE(IPersistStreamInit,IPersist)
*/
#define INTERFACE IPersistMemory
#define IPersistMemory_METHODS \
IPersist_METHODS \
STDMETHOD(IsDirty)(THIS) PURE; \
STDMETHOD(Load)(THIS_ LPVOID pMem, ULONG cbSize) PURE; \
STDMETHOD(Save)(THIS_ LPVOID pMem, BOOL fClearDirty, ULONG cbSize) PURE; \
STDMETHOD(GetSizeMax)(THIS_ ULONG *pCbSize) PURE; \
STDMETHOD(InitNew)(THIS) PURE;
#define IPersistMemory_IMETHODS \
IPersist_IMETHODS \
IPersistMemory_METHODS
ICOM_DEFINE(IPersistMemory,IPersist)
#undef INTERFACE
......@@ -354,12 +340,10 @@ ICOM_DEFINE(IPersistMemory,IPersist)
*/
#define INTERFACE IPersistPropertyBag
#define IPersistPropertyBag_METHODS \
IPersist_METHODS \
STDMETHOD(InitNew)(THIS) PURE; \
STDMETHOD(Load)(THIS_ IPropertyBag *pPropBag, IErrorLog *pErrorLog) PURE; \
STDMETHOD(Save)(THIS_ IPropertyBag *pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) PURE;
#define IPersistPropertyBag_IMETHODS \
IPersist_IMETHODS \
IPersistPropertyBag_METHODS
ICOM_DEFINE(IPersistPropertyBag,IPersist)
#undef INTERFACE
......@@ -382,13 +366,11 @@ ICOM_DEFINE(IPersistPropertyBag,IPersist)
*/
#define INTERFACE IPersistPropertyBag2
#define IPersistPropertyBag2_METHODS \
IPersist_METHODS \
STDMETHOD(InitNew)(THIS) PURE; \
STDMETHOD(Load)(THIS_ IPropertyBag2 *pPropBag, IErrorLog *pErrorLog) PURE; \
STDMETHOD(Save)(THIS_ IPropertyBag2 *pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) PURE; \
STDMETHOD(IsDirty)(THIS) PURE;
#define IPersistPropertyBag2_IMETHODS \
IPersist_IMETHODS \
IPersistPropertyBag2_METHODS
STDMETHOD(IsDirty)(THIS) PURE;
ICOM_DEFINE(IPersistPropertyBag2,IPersist)
#undef INTERFACE
......@@ -412,10 +394,8 @@ ICOM_DEFINE(IPersistPropertyBag2,IPersist)
*/
#define INTERFACE IErrorLog
#define IErrorLog_METHODS \
IUnknown_METHODS \
STDMETHOD(AddError)(THIS_ LPCOLESTR pszPropName, EXCEPINFO *pExcepInfo) PURE;
#define IErrorLog_IMETHODS \
IUnknown_IMETHODS \
IErrorLog_METHODS
ICOM_DEFINE(IErrorLog,IUnknown)
#undef INTERFACE
......@@ -434,11 +414,9 @@ ICOM_DEFINE(IErrorLog,IUnknown)
*/
#define INTERFACE IPropertyBag
#define IPropertyBag_METHODS \
IUnknown_METHODS \
STDMETHOD(Read)(THIS_ LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog) PURE; \
STDMETHOD(Write)(THIS_ LPCOLESTR pszPropName, VARIANT *pVar) PURE;
#define IPropertyBag_IMETHODS \
IUnknown_IMETHODS \
IPropertyBag_METHODS
ICOM_DEFINE(IPropertyBag,IUnknown)
#undef INTERFACE
......@@ -458,14 +436,12 @@ ICOM_DEFINE(IPropertyBag,IUnknown)
*/
#define INTERFACE IPropertyBag2
#define IPropertyBag2_METHODS \
IUnknown_METHODS \
STDMETHOD(Read)(THIS_ ULONG cProperties, PROPBAG2 *pPropBag, IErrorLog *pErrLog, VARIANT *pvarValue, HRESULT *phrError) PURE; \
STDMETHOD(Write)(THIS_ ULONG cProperties, PROPBAG2 *pPropBag, VARIANT *pvarValue) PURE; \
STDMETHOD(CountProperties)(THIS_ ULONG *pcProperties) PURE; \
STDMETHOD(GetPropertyInfo)(THIS_ ULONG iProperty, ULONG cProperties, PROPBAG2 *pPropBag, ULONG *pcProperties) PURE; \
STDMETHOD(LoadObject)(THIS_ LPCOLESTR pstrName, DWORD dwHint, IUnknown *pUnkObject, IErrorLog *pErrLog) PURE;
#define IPropertyBag2_IMETHODS \
IUnknown_IMETHODS \
IPropertyBag2_METHODS
ICOM_DEFINE(IPropertyBag2,IUnknown)
#undef INTERFACE
......@@ -488,10 +464,8 @@ ICOM_DEFINE(IPropertyBag2,IUnknown)
*/
#define INTERFACE ISpecifyPropertyPages
#define ISpecifyPropertyPages_METHODS \
IUnknown_METHODS \
STDMETHOD(GetPages)(THIS_ CAUUID *pPages) PURE;
#define ISpecifyPropertyPages_IMETHODS \
IUnknown_IMETHODS \
ISpecifyPropertyPages_METHODS
ICOM_DEFINE(ISpecifyPropertyPages,IUnknown)
#undef INTERFACE
......@@ -510,13 +484,11 @@ ICOM_DEFINE(ISpecifyPropertyPages,IUnknown)
*/
#define INTERFACE IPerPropertyBrowsing
#define IPerPropertyBrowsing_METHODS \
IUnknown_METHODS \
STDMETHOD(GetDisplayString)(THIS_ DISPID dispID, BSTR *pBstr) PURE; \
STDMETHOD(MapPropertyToPage)(THIS_ DISPID dispID, CLSID *pClsid) PURE; \
STDMETHOD(GetPredefinedStrings)(THIS_ DISPID dispID, CALPOLESTR *pCaStringsOut, CADWORD *pCaCookiesOut) PURE; \
STDMETHOD(GetPredefinedValue)(THIS_ DISPID dispID, DWORD dwCookie, VARIANT *pVarOut) PURE;
#define IPerPropertyBrowsing_IMETHODS \
IUnknown_IMETHODS \
IPerPropertyBrowsing_METHODS
ICOM_DEFINE(IPerPropertyBrowsing,IUnknown)
#undef INTERFACE
......
......@@ -42,10 +42,8 @@ typedef struct IServiceProvider IServiceProvider, *LPSERVICEPROVIDER;
*/
#define INTERFACE IServiceProvider
#define IServiceProvider_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryService)(THIS_ REFGUID guidService, REFIID riid, void ** ppv) PURE;
#define IServiceProvider_IMETHODS \
IUnknown_IMETHODS \
IServiceProvider_METHODS
ICOM_DEFINE(IServiceProvider,IUnknown)
#undef INTERFACE
......
......@@ -68,6 +68,7 @@ DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00,
#define INTERFACE IShellBrowser
#define IShellBrowser_METHODS \
IOleWindow_METHODS \
STDMETHOD(InsertMenusSB)(THIS_ HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \
STDMETHOD(SetMenuSB)(THIS_ HMENU hmenuShared, HOLEMENU holemenuReserved, HWND hwndActiveObject) PURE; \
STDMETHOD(RemoveMenusSB)(THIS_ HMENU hmenuShared) PURE; \
......@@ -81,9 +82,6 @@ DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00,
STDMETHOD(QueryActiveShellView)(THIS_ IShellView ** IShellView) PURE; \
STDMETHOD(OnViewWindowActive)(THIS_ IShellView * IShellView) PURE; \
STDMETHOD(SetToolbarItems)(THIS_ LPTBBUTTON lpButtons, UINT nButtons, UINT uFlags) PURE;
#define IShellBrowser_IMETHODS \
IOleWindow_IMETHODS \
IShellBrowser_METHODS
ICOM_DEFINE(IShellBrowser,IOleWindow)
#undef INTERFACE
......
......@@ -29,10 +29,8 @@ typedef struct IShellExtInit IShellExtInit, *LPSHELLEXTINIT;
#define INTERFACE IShellExtInit
#define IShellExtInit_METHODS \
IUnknown_METHODS \
STDMETHOD(Initialize)(THIS_ LPCITEMIDLIST pidlFolder, LPDATAOBJECT lpdobj, HKEY hkeyProgID) PURE;
#define IShellExtInit_IMETHODS \
IUnknown_IMETHODS \
IShellExtInit_METHODS
ICOM_DEFINE(IShellExtInit,IUnknown)
#undef INTERFACE
......
......@@ -80,13 +80,11 @@ typedef struct
#define INTERFACE IEnumExtraSearch
#define IEnumExtraSearch_METHODS \
IUnknown_METHODS \
STDMETHOD(Next)(THIS_ ULONG celt, LPEXTRASEARCH * rgelt, ULONG * pceltFetched) PURE; \
STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD(Reset)(THIS) PURE; \
STDMETHOD(Clone)(THIS_ IEnumExtraSearch ** ppenum) PURE;
#define IEnumExtraSearch_IMETHODS \
IUnknown_IMETHODS \
IEnumExtraSearch_METHODS
ICOM_DEFINE(IEnumExtraSearch,IUnknown)
#undef INTERFACE
......@@ -200,6 +198,7 @@ DWORD WINAPI SHGetDesktopFolder(IShellFolder * *);
*/
#define INTERFACE IShellFolder
#define IShellFolder_METHODS \
IUnknown_METHODS \
STDMETHOD(ParseDisplayName)(THIS_ HWND hwndOwner,LPBC pbcReserved, LPOLESTR lpszDisplayName, ULONG * pchEaten, LPITEMIDLIST * ppidl, ULONG * pdwAttributes) PURE; \
STDMETHOD(EnumObjects)(THIS_ HWND hwndOwner, DWORD grfFlags, LPENUMIDLIST * ppenumIDList) PURE;\
STDMETHOD(BindToObject)(THIS_ LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, LPVOID * ppvOut) PURE;\
......@@ -210,9 +209,6 @@ DWORD WINAPI SHGetDesktopFolder(IShellFolder * *);
STDMETHOD(GetUIObjectOf)(THIS_ HWND hwndOwner, UINT cidl, LPCITEMIDLIST * apidl, REFIID riid, UINT * prgfInOut, LPVOID * ppvOut) PURE;\
STDMETHOD(GetDisplayNameOf)(THIS_ LPCITEMIDLIST pidl, DWORD uFlags, LPSTRRET lpName) PURE;\
STDMETHOD(SetNameOf)(THIS_ HWND hwndOwner, LPCITEMIDLIST pidl,LPCOLESTR lpszName, DWORD uFlags,LPITEMIDLIST * ppidlOut) PURE;
#define IShellFolder_IMETHODS \
IUnknown_IMETHODS \
IShellFolder_METHODS
ICOM_DEFINE(IShellFolder,IUnknown)
#undef INTERFACE
......@@ -274,6 +270,7 @@ typedef struct
#define INTERFACE IShellFolder2
#define IShellFolder2_METHODS \
IShellFolder_METHODS \
STDMETHOD(GetDefaultSearchGUID)(THIS_ LPGUID lpguid) PURE;\
STDMETHOD(EnumSearches)(THIS_ LPENUMEXTRASEARCH * ppEnum) PURE; \
STDMETHOD(GetDefaultColumn)(THIS_ DWORD dwReserved, ULONG * pSort, ULONG * pDisplay) PURE;\
......@@ -281,9 +278,6 @@ typedef struct
STDMETHOD(GetDetailsEx)(THIS_ LPCITEMIDLIST pidl, const SHCOLUMNID * pscid, VARIANT * pv) PURE;\
STDMETHOD(GetDetailsOf)(THIS_ LPCITEMIDLIST pidl, UINT iColumn, LPSHELLDETAILS pDetails) PURE;\
STDMETHOD(MapNameToSCID)(THIS_ LPCWSTR pwszName, SHCOLUMNID * pscid) PURE;
#define IShellFolder2_IMETHODS \
IShellFolder_METHODS \
IShellFolder2_METHODS
ICOM_DEFINE(IShellFolder2, IShellFolder)
#undef INTERFACE
......@@ -319,10 +313,8 @@ ICOM_DEFINE(IShellFolder2, IShellFolder)
#define INTERFACE IPersistFolder
#define IPersistFolder_METHODS \
IPersist_METHODS \
STDMETHOD(Initialize)(THIS_ LPCITEMIDLIST pidl) PURE;
#define IPersistFolder_IMETHODS \
IPersist_IMETHODS \
IPersistFolder_METHODS
ICOM_DEFINE(IPersistFolder, IPersist)
#undef INTERFACE
......@@ -343,11 +335,8 @@ ICOM_DEFINE(IPersistFolder, IPersist)
#define INTERFACE IPersistFolder2
#define IPersistFolder2_METHODS \
STDMETHOD(GetCurFolder)(THIS_ LPITEMIDLIST * pidl) PURE;
#define IPersistFolder2_IMETHODS \
IPersist_IMETHODS \
IPersistFolder_METHODS \
IPersistFolder2_METHODS
STDMETHOD(GetCurFolder)(THIS_ LPITEMIDLIST * pidl) PURE;
ICOM_DEFINE(IPersistFolder2, IPersistFolder)
#undef INTERFACE
......@@ -379,13 +368,9 @@ typedef struct {
#define INTERFACE IPersistFolder3
#define IPersistFolder3_METHODS \
IPersistFolder2_METHODS \
STDMETHOD(InitializeEx)(THIS_ IBindCtx * pbc, LPCITEMIDLIST pidlRoot, const PERSIST_FOLDER_TARGET_INFO * ppfti) PURE;\
STDMETHOD(GetFolderTargetInfo)(THIS_ PERSIST_FOLDER_TARGET_INFO * ppfti) PURE;
#define IPersistFolder3_IMETHODS \
IPersist_IMETHODS \
IPersistFolder_METHODS \
IPersistFolder2_METHODS \
IPersistFolder3_METHODS
ICOM_DEFINE(IPersistFolder3, IPersistFolder2)
#undef INTERFACE
......
......@@ -54,6 +54,7 @@ typedef enum
*/
#define INTERFACE IShellLinkA
#define IShellLinkA_METHODS \
IUnknown_METHODS \
STDMETHOD(GetPath)(THIS_ LPSTR pszFile, INT cchMaxPath, WIN32_FIND_DATAA * pfd, DWORD fFlags) PURE; \
STDMETHOD(GetIDList)(THIS_ LPITEMIDLIST * ppidl) PURE; \
STDMETHOD(SetIDList)(THIS_ LPCITEMIDLIST pidl) PURE; \
......@@ -72,9 +73,6 @@ typedef enum
STDMETHOD(SetRelativePath)(THIS_ LPCSTR pszPathRel, DWORD dwReserved) PURE; \
STDMETHOD(Resolve)(THIS_ HWND hwnd, DWORD fFlags) PURE; \
STDMETHOD(SetPath)(THIS_ LPCSTR pszFile) PURE;
#define IShellLinkA_IMETHODS \
IUnknown_IMETHODS \
IShellLinkA_METHODS
ICOM_DEFINE(IShellLinkA,IUnknown)
#undef INTERFACE
......@@ -109,6 +107,7 @@ ICOM_DEFINE(IShellLinkA,IUnknown)
*/
#define INTERFACE IShellLinkW
#define IShellLinkW_METHODS \
IUnknown_METHODS \
STDMETHOD(GetPath)(THIS_ LPWSTR pszFile, INT cchMaxPath, WIN32_FIND_DATAA * pfd, DWORD fFlags) PURE; \
STDMETHOD(GetIDList)(THIS_ LPITEMIDLIST * ppidl) PURE; \
STDMETHOD(SetIDList)(THIS_ LPCITEMIDLIST pidl) PURE; \
......@@ -127,9 +126,6 @@ ICOM_DEFINE(IShellLinkA,IUnknown)
STDMETHOD(SetRelativePath)(THIS_ LPCWSTR pszPathRel, DWORD dwReserved) PURE; \
STDMETHOD(Resolve)(THIS_ HWND hwnd, DWORD fFlags) PURE; \
STDMETHOD(SetPath)(THIS_ LPCWSTR pszFile) PURE;
#define IShellLinkW_IMETHODS \
IUnknown_IMETHODS \
IShellLinkW_METHODS
ICOM_DEFINE(IShellLinkW,IUnknown)
#undef INTERFACE
......
......@@ -129,6 +129,7 @@ typedef enum
#define INTERFACE IShellView
#define IShellView_METHODS \
IOleWindow_METHODS \
STDMETHOD(TranslateAccelerator)(THIS_ LPMSG lpmsg) PURE; \
STDMETHOD(EnableModeless)(THIS_ BOOL fEnable) PURE; \
STDMETHOD(UIActivate)(THIS_ UINT uState) PURE; \
......@@ -141,9 +142,6 @@ typedef enum
STDMETHOD(SelectItem)(THIS_ LPCITEMIDLIST pidlItem, UINT uFlags) PURE; \
STDMETHOD(GetItemObject)(THIS_ UINT uItem, REFIID riid, LPVOID * ppv) PURE; \
STDMETHOD(EditItem)(THIS_ LPCITEMIDLIST pidlItem) PURE;
#define IShellView_IMETHODS \
IOleWindow_IMETHODS \
IShellView_METHODS
ICOM_DEFINE(IShellView,IOleWindow)
#undef INTERFACE
......
......@@ -65,6 +65,7 @@ typedef enum RefreshConstants
*/
#define INTERFACE IWebBrowser
#define IWebBrowser_METHODS \
IDispatch_METHODS \
STDMETHOD(GoBack)(THIS) PURE; \
STDMETHOD(GoForward)(THIS) PURE; \
STDMETHOD(GoHome)(THIS) PURE; \
......@@ -91,9 +92,6 @@ typedef enum RefreshConstants
STDMETHOD(get_LocationName)(THIS_ BSTR *LocationName) PURE; \
STDMETHOD(get_LocationURL)(THIS_ BSTR *LocationURL) PURE; \
STDMETHOD(get_Busy)(THIS_ VARIANT *pBool) PURE;
#define IWebBrowser_IMETHODS \
IDispatch_IMETHODS \
IWebBrowser_METHODS
ICOM_DEFINE(IWebBrowser,IDispatch)
#undef INTERFACE
......@@ -137,6 +135,7 @@ ICOM_DEFINE(IWebBrowser,IDispatch)
#define INTERFACE IWebBrowserApp
#define IWebBrowserApp_METHODS \
IWebBrowser_METHODS \
STDMETHOD(Quit)(THIS) PURE; \
STDMETHOD(ClientToWindow)(THIS_ int *pcx,int *pcy) PURE; \
STDMETHOD(PutProperty)(THIS_ BSTR szProperty,VARIANT vtValue) PURE; \
......@@ -157,10 +156,6 @@ ICOM_DEFINE(IWebBrowser,IDispatch)
STDMETHOD(put_MenuBar)(THIS_ VARIANT_BOOL Value) PURE; \
STDMETHOD(get_FullScreen)(THIS_ VARIANT_BOOL *pbFullScreen) PURE; \
STDMETHOD(put_FullScreen)(THIS_ VARIANT_BOOL bFullScreen) PURE;
#define IWebBrowserApp_IMETHODS \
IDispatch_IMETHODS \
IWebBrowser_METHODS \
IWebBrowserApp_METHODS
ICOM_DEFINE(IWebBrowserApp,IWebBrowser)
#undef INTERFACE
......
......@@ -438,20 +438,20 @@ static void write_icom_method_def(type_t *iface)
arg = NEXT_LINK(arg);
}
}
fprintf(header, " \\\n ");
fprintf(header, " \\\n STDMETHOD_(");
write_type(header, def->type, def, def->tname);
fprintf(header, " (STDMETHODCALLTYPE *");
fprintf(header, ",");
write_name(header, def);
fprintf(header, ")(INTERFACE *This");
fprintf(header, ")(%s", arg ? "THIS_ " : "THIS" );
while (arg) {
fprintf(header, ", ");
write_type(header, arg->type, arg, arg->tname);
fprintf(header, " ");
write_name(header,arg);
write_array(header, arg->array, 0);
arg = PREV_LINK(arg);
if (arg) fprintf(header, ", ");
}
fprintf(header, ");");
fprintf(header, ") PURE;");
}
cur = PREV_LINK(cur);
}
......@@ -711,15 +711,16 @@ void write_com_interface(type_t *iface)
indentation--;
fprintf(header, "};\n");
fprintf(header, "\n");
if (compat_icom) {
fprintf(header, "#define %s_IMETHODS", iface->name);
write_icom_method_def(iface);
fprintf(header, "\n\n");
}
write_method_macro(iface, iface->name);
fprintf(header, "\n");
fprintf(header, "#endif\n");
fprintf(header, "\n");
if (compat_icom) {
fprintf(header, "#define %s_METHODS \\\n", iface->name);
fprintf(header, " ICOM_MSVTABLE_COMPAT_FIELDS");
write_icom_method_def(iface);
fprintf(header, "\n\n");
}
write_method_proto(iface);
fprintf(header, "\n");
......
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