source: trunk/include/win/wine/obj_control.h

Last change on this file was 7915, checked in by sandervl, 24 years ago

header updates

File size: 19.4 KB
Line 
1/*
2 * Defines the COM interfaces and APIs related to structured data storage.
3 *
4 * Depends on 'obj_base.h'.
5 */
6
7#ifndef __WINE_WINE_OBJ_CONTROL_H
8#define __WINE_WINE_OBJ_CONTROL_H
9
10struct tagMSG;
11
12#ifdef __cplusplus
13extern "C" {
14#endif /* defined(__cplusplus) */
15
16/*****************************************************************************
17 * Declare the structures
18 */
19typedef enum tagGUIDKIND
20{
21 GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1
22} GUIDKIND;
23
24typedef enum tagREADYSTATE
25{
26 READYSTATE_UNINITIALIZED = 0,
27 READYSTATE_LOADING = 1,
28 READYSTATE_LOADED = 2,
29 READYSTATE_INTERACTIVE = 3,
30 READYSTATE_COMPLETE = 4
31} READYSTATE;
32
33typedef struct tagExtentInfo
34{
35 ULONG cb;
36 DWORD dwExtentMode;
37 SIZEL sizelProposed;
38} DVEXTENTINFO;
39
40typedef struct tagVARIANT_BLOB
41{
42 DWORD clSize;
43 DWORD rpcReserved;
44 ULONGLONG ahData[1];
45} wireVARIANT_BLOB;
46
47typedef struct tagUserVARIANT
48{
49 wireVARIANT_BLOB pVarBlob;
50} UserVARIANT;
51
52typedef struct tagLICINFO
53{
54 LONG cbLicInfo;
55 BOOL fRuntimeKeyAvail;
56 BOOL fLicVerified;
57} LICINFO, *LPLICINFO;
58
59typedef struct tagCONTROLINFO
60{
61 ULONG cb;
62 HACCEL hAccel;
63 USHORT cAccel;
64 DWORD dwFlags;
65} CONTROLINFO, *LPCONTROLINFO;
66
67typedef enum tagCTRLINFO
68{
69 CTRLINFO_EATS_RETURN = 1,
70 CTRLINFO_EATS_ESCAPE = 2
71} CTRLINFO;
72
73typedef struct tagPOINTF
74{
75 FLOAT x;
76 FLOAT y;
77} POINTF, *LPPOINTF;
78
79typedef enum tagXFORMCOORDS
80{
81 XFORMCOORDS_POSITION = 0x1,
82 XFORMCOORDS_SIZE = 0x2,
83 XFORMCOORDS_HIMETRICTOCONTAINER = 0x4,
84 XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8
85} XFORMCOORDS;
86
87typedef enum tagACTIVATEFLAGS
88{
89 ACTIVATE_WINDOWLESS = 1
90} ACTIVATE_FLAGS;
91
92typedef enum tagOLEDCFLAGS
93{
94 OLEDC_NODRAW = 0x1,
95 OLEDC_PAINTBKGND = 0x2,
96 OLEDC_OFFSCREEN = 0x4
97} OLEDCFLAGS;
98
99typedef enum tagDVASPECT2
100{
101 DVASPECT_OPAQUE = 16,
102 DVASPECT_TRANSPARENT = 32
103} DVASPECT2;
104
105typedef enum tagHITRESULT
106{
107 HITRESULT_OUTSIDE = 0,
108 HITRESULT_TRANSPARENT = 1,
109 HITRESULT_CLOSE = 2,
110 HITRESULT_HIT = 3
111} HITRESULT;
112
113typedef enum tagAspectInfoFlag
114{
115 DVASPECTINFOFLAG_CANOPTIMIZE = 1
116} DVASPECTINFOFLAG;
117
118typedef struct tagAspectInfo
119{
120 ULONG cb;
121 DWORD dwFlags;
122} DVASPECTINFO;
123
124typedef enum tagVIEWSTATUS
125{
126 VIEWSTATUS_OPAQUE = 1,
127 VIEWSTATUS_SOLIDBKGND = 2,
128 VIEWSTATUS_DVASPECTOPAQUE = 4,
129 VIEWSTATUS_DVASPECTTRANSPARENT = 8
130} VIEWSTATUS;
131
132/*****************************************************************************
133 * Predeclare the interfaces
134 */
135DEFINE_GUID(IID_IOleControl, 0xb196b288, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
136typedef struct IOleControl IOleControl, *LPOLECONTROL;
137
138DEFINE_GUID(IID_IOleControlSite, 0xb196b289, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
139typedef struct IOleControlSite IOleControlSite, *LPOLECONTROLSITE;
140
141DEFINE_GUID(IID_IOleInPlaceSiteEx, 0x9c2cad80L, 0x3424, 0x11cf, 0xb6, 0x70, 0x00, 0xaa, 0x00, 0x4c, 0xd6, 0xd8);
142typedef struct IOleInPlaceSiteEx IOleInPlaceSiteEx, *LPOLEINPLACESITEEX;
143
144DEFINE_OLEGUID(IID_IOleInPlaceSiteWindowless, 0x00000000L, 0, 0); /* FIXME - NEED GUID */
145typedef struct IOleInPlaceSiteWindowless IOleInPlaceSiteWindowless, *LPOLEINPLACESITEWINDOWLESS;
146
147DEFINE_OLEGUID(IID_IOleInPlaceObjectWindowless, 0x00000000L, 0, 0); /* FIXME - NEED GUID */
148typedef struct IOleInPlaceObjectWindowless IOleInPlaceObjectWindowless, *LPOLEINPLACEOBJECTWINDOWLESS;
149
150DEFINE_GUID(IID_IClassFactory2, 0xb196b28f, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
151typedef struct IClassFactory2 IClassFactory2, *LPCLASSFACTORY2;
152
153DEFINE_GUID(IID_IViewObjectEx, 0x00000000, 0x0000, 0x0000, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00); /* FIXME need GUID */
154typedef struct IViewObjectEx IViewObjectEx, *LPVIEWOBJECTEX;
155
156DEFINE_GUID(IID_IProvideClassInfo, 0xb196b283, 0xbab4, 0x101a, 0xb6, 0x9c, 0x00, 0xaa, 0x00, 0x34, 0x1d, 0x07);
157typedef struct IProvideClassInfo IProvideClassInfo, *LPPROVIDECLASSINFO;
158
159DEFINE_GUID(IID_IProvideClassInfo2, 0xa6bc3ac0, 0xdbaa, 0x11ce, 0x9d, 0xe3, 0x00, 0xaa, 0x00, 0x4b, 0xb8, 0x51);
160typedef struct IProvideClassInfo2 IProvideClassInfo2, *LPPROVIDECLASSINFO2;
161
162/*****************************************************************************
163 * IOleControl interface
164 */
165#define ICOM_INTERFACE IOleControl
166#define IOleControl_METHODS \
167 ICOM_METHOD1(HRESULT,GetControlInfo, CONTROLINFO*,pCI) \
168 ICOM_METHOD1(HRESULT,OnMnemonic, struct tagMSG*,pMsg) \
169 ICOM_METHOD1(HRESULT,OnAmbientPropertyChange, DISPID,dispID) \
170 ICOM_METHOD1(HRESULT,FreezeEvents, BOOL,bFreeze)
171#define IOleControl_IMETHODS \
172 IUnknown_IMETHODS \
173 IOleControl_METHODS
174ICOM_DEFINE(IOleControl,IUnknown)
175#undef ICOM_INTERFACE
176
177/*** IUnknown methods ***/
178#define IOleControl_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
179#define IOleControl_AddRef(p) ICOM_CALL (AddRef,p)
180#define IOleControl_Release(p) ICOM_CALL (Release,p)
181/*** IOleControl methods ***/
182#define IOleControl_GetControlInfo(p,a) ICOM_CALL1(GetControlInfo,p,a)
183#define IOleControl_OnMnemonic(p,a) ICOM_CALL1(OnMnemonic,p,a)
184#define IOleControl_OnAmbientPropertyChange(p,a) ICOM_CALL1(OnAmbientPropertyChange,p,a)
185#define IOleControl_FreezeEvents(p,a) ICOM_CALL1(FreezeEvents,p,a)
186
187
188/*****************************************************************************
189 * IOleControlSite interface
190 */
191#define ICOM_INTERFACE IOleControlSite
192#define IOleControlSite_METHODS \
193 ICOM_METHOD (HRESULT,OnControlInfoChanged) \
194 ICOM_METHOD1(HRESULT,LockInPlaceActive, BOOL,fLock) \
195 ICOM_METHOD1(HRESULT,GetExtendedControl, IDispatch**,ppDisp) \
196 ICOM_METHOD3(HRESULT,TransformCoords, POINTL*,pPtlHimetric, POINTF*,pPtfContainer, DWORD,dwFlags) \
197 ICOM_METHOD2(HRESULT,TranslateAccelerator, struct tagMSG*,pMsg, DWORD,grfModifiers) \
198 ICOM_METHOD1(HRESULT,OnFocus, BOOL,fGotFocus) \
199 ICOM_METHOD (HRESULT,ShowPropertyFrame)
200#define IOleControlSite_IMETHODS \
201 IUnknown_IMETHODS \
202 IOleControlSite_METHODS
203ICOM_DEFINE(IOleControlSite,IUnknown)
204#undef ICOM_INTERFACE
205
206/*** IUnknown methods ***/
207#define IOleControlSite_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
208#define IOleControlSite_AddRef(p) ICOM_CALL (AddRef,p)
209#define IOleControlSite_Release(p) ICOM_CALL (Release,p)
210/*** IOleControlSite methods ***/
211#define IOleControlSite_OnControlInfoChanged(p) ICOM_CALL1(OnControlInfoChanged,p)
212#define IOleControlSite_LockInPlaceActive(p,a) ICOM_CALL1(LockInPlaceActive,p,a)
213#define IOleControlSite_GetExtendedControl(p,a) ICOM_CALL1(GetExtendedControl,p,a)
214#define IOleControlSite_TransformCoords(p,a,b,c) ICOM_CALL1(TransformCoords,p,a,b,c)
215#define IOleControlSite_TranslateAccelerator(p,a,b) ICOM_CALL1(TranslateAccelerator,p,a,b)
216#define IOleControlSite_OnFocus(p,a) ICOM_CALL1(OnFocus,p,a)
217#define IOleControlSite_ShowPropertyFrame(p) ICOM_CALL1(ShowPropertyFrame,p)
218
219
220/*****************************************************************************
221 * IOleInPlaceSiteEx interface
222 */
223#define ICOM_INTERFACE IOleInPlaceSiteEx
224#define IOleInPlaceSiteEx_METHODS \
225 ICOM_METHOD2(HRESULT,OnInPlaceActivateEx, BOOL*,pfNoRedraw, DWORD,dwFlags) \
226 ICOM_METHOD1(HRESULT,OnInPlaceDeactivateEx, BOOL,fNoRedraw) \
227 ICOM_METHOD (HRESULT,RequestUIActivate)
228#define IOleInPlaceSiteEx_IMETHODS \
229 IOleInPlaceSite_IMETHODS \
230 IOleInPlaceSiteEx_METHODS
231ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite)
232#undef ICOM_INTERFACE
233
234/*** IUnknown methods ***/
235#define IOleInPlaceSiteEx_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
236#define IOleInPlaceSiteEx_AddRef(p) ICOM_CALL (AddRef,p)
237#define IOleInPlaceSiteEx_Release(p) ICOM_CALL (Release,p)
238/*** IOleWindow methods ***/
239#define IOleInPlaceSiteEx_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
240#define IOleInPlaceSiteEx_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
241/*** IOleInPlaceSite methods ***/
242#define IOleInPlaceSiteEx_CanInPlaceActivate(p) ICOM_CALL (CanInPlaceActivate,p)
243#define IOleInPlaceSiteEx_OnInPlaceActivate(p) ICOM_CALL (OnInPlaceActivate,p)
244#define IOleInPlaceSiteEx_OnUIActivate(p) ICOM_CALL (OnUIActivate,p)
245#define IOleInPlaceSiteEx_GetWindowContext(p,a,b,c,d,e) ICOM_CALL5(GetWindowContext,p,a,b,c,d,e)
246#define IOleInPlaceSiteEx_Scroll(p,a) ICOM_CALL1(Scroll,p,a)
247#define IOleInPlaceSiteEx_OnUIDeactivate(p,a) ICOM_CALL1(OnUIDeactivate,p,a)
248#define IOleInPlaceSiteEx_OnInPlaceDeactivate(p) ICOM_CALL (OnInPlaceDeactivate,p)
249#define IOleInPlaceSiteEx_DiscardUndoState(p) ICOM_CALL (DiscardUndoState,p)
250#define IOleInPlaceSiteEx_DeactivateAndUndo(p) ICOM_CALL (DeactivateAndUndo,p)
251#define IOleInPlaceSiteEx_OnPosRectChange(p,a) ICOM_CALL1(OnPosRectChange,p,a)
252/*** IOleInPlaceSiteEx methods ***/
253#define IOleInPlaceSiteEx_OnInPlaceActivateEx(p,a,b) ICOM_CALL2(OnInPlaceActivateEx,p,a,b)
254#define IOleInPlaceSiteEx_OnInPlaceDeactivateEx(p,a) ICOM_CALL1(OnInPlaceDeactivateEx,p,a)
255#define IOleInPlaceSiteEx_RequestUIActivate(p) ICOM_CALL (RequestUIActivate,p)
256
257
258/*****************************************************************************
259 * IOleInPlaceSiteWindowless interface
260 */
261#define ICOM_INTERFACE IOleInPlaceSiteWindowless
262#define IOleInPlaceSiteWindowless_METHODS \
263 ICOM_METHOD (HRESULT,CanWindowlessActivate) \
264 ICOM_METHOD (HRESULT,GetCapture) \
265 ICOM_METHOD1(HRESULT,SetCapture, BOOL,fCapture) \
266 ICOM_METHOD (HRESULT,GetFocus) \
267 ICOM_METHOD1(HRESULT,SetFocus, BOOL,fFocus) \
268 ICOM_METHOD3(HRESULT,GetDC, LPCRECT,pRect, DWORD,grfFlags, HDC*,phDC) \
269 ICOM_METHOD1(HRESULT,ReleaseDC, HDC,hDC) \
270 ICOM_METHOD2(HRESULT,InvalidateRect, LPCRECT,pRect, BOOL,fErase) \
271 ICOM_METHOD2(HRESULT,InvalidateRgn, HRGN,hRgn, BOOL,fErase) \
272 ICOM_METHOD4(HRESULT,ScrollRect, INT,dx, INT,dy, LPCRECT,pRectScroll, LPCRECT,pRectClip) \
273 ICOM_METHOD1(HRESULT,AdjustRect, LPRECT,prc) \
274 ICOM_METHOD4(HRESULT,OnDefWindowMessage, UINT,msg, WPARAM,wParam, LPARAM,lParam, LRESULT*,plResult)
275#define IOleInPlaceSiteWindowless_IMETHODS \
276 IOleInPlaceSite_IMETHODS \
277 IOleInPlaceSiteWindowless_METHODS
278ICOM_DEFINE(IOleInPlaceSiteWindowless,IOleInPlaceSite)
279#undef ICOM_INTERFACE
280
281/*** IUnknown methods ***/
282#define IOleInPlaceSiteWindowless_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
283#define IOleInPlaceSiteWindowless_AddRef(p) ICOM_CALL (AddRef,p)
284#define IOleInPlaceSiteWindowless_Release(p) ICOM_CALL (Release,p)
285/*** IOleWindow methods ***/
286#define IOleInPlaceSiteWindowless_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
287#define IOleInPlaceSiteWindowless_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
288/*** IOleInPlaceSitemethods ***/
289#define IOleInPlaceSiteWindowless_CanInPlaceActivate(p) ICOM_CALL (CanInPlaceActivate,p)
290#define IOleInPlaceSiteWindowless_OnInPlaceActivate(p) ICOM_CALL (OnInPlaceActivate,p)
291#define IOleInPlaceSiteWindowless_OnUIActivate(p) ICOM_CALL (OnUIActivate,p)
292#define IOleInPlaceSiteWindowless_GetWindowContext(p,a,b,c,d,e) ICOM_CALL5(GetWindowContext,p,a,b,c,d,e)
293#define IOleInPlaceSiteWindowless_Scroll(p,a) ICOM_CALL1(Scroll,p,a)
294#define IOleInPlaceSiteWindowless_OnUIDeactivate(p,a) ICOM_CALL1(OnUIDeactivate,p,a)
295#define IOleInPlaceSiteWindowless_OnInPlaceDeactivate(p) ICOM_CALL (OnInPlaceDeactivate,p)
296#define IOleInPlaceSiteWindowless_DiscardUndoState(p) ICOM_CALL (DiscardUndoState,p)
297#define IOleInPlaceSiteWindowless_DeactivateAndUndo(p) ICOM_CALL (DeactivateAndUndo,p)
298#define IOleInPlaceSiteWindowless_OnPosRectChange(p,a) ICOM_CALL1(OnPosRectChange,p,a)
299/*** IOleInPlaceSitemethods ***/
300#define IOleInPlaceSiteWindowless_CanWindowlessActivate(p) ICOM_CALL (CanInPlaceActivate,p)
301#define IOleInPlaceSiteWindowless_GetCapture(p) ICOM_CALL (OnInPlaceActivate,p)
302#define IOleInPlaceSiteWindowless_SetCapture(p,a) ICOM_CALL1(OnUIActivate,p,a)
303#define IOleInPlaceSiteWindowless_GetFocus(p) ICOM_CALL (GetWindowContext,p)
304#define IOleInPlaceSiteWindowless_SetFocus(p,a) ICOM_CALL1(Scroll,p,a)
305#define IOleInPlaceSiteWindowless_GetDC(p,a,b,c) ICOM_CALL3(OnUIDeactivate,p,a,b,c)
306#define IOleInPlaceSiteWindowless_ReleaseDC(p,a) ICOM_CALL1(OnInPlaceDeactivate,p,a)
307#define IOleInPlaceSiteWindowless_InvalidateRect(p,a,b) ICOM_CALL2(DiscardUndoState,p,a,b)
308#define IOleInPlaceSiteWindowless_InvalidateRgn(p,a,b) ICOM_CALL2(DeactivateAndUndo,p,a,b)
309#define IOleInPlaceSiteWindowless_ScrollRect(p,a,b,c,d) ICOM_CALL4(OnPosRectChange,p,a,b,c,d)
310#define IOleInPlaceSiteWindowless_AdjustRect(p,a) ICOM_CALL1(OnPosRectChange,p,a)
311#define IOleInPlaceSiteWindowless_OnDefWindowMessage(p,a,b,c,d) ICOM_CALL4(OnPosRectChange,p,a,b,c,d)
312
313
314/*****************************************************************************
315 * IOleInPlaceObjectWindowless interface
316 */
317#define ICOM_INTERFACE IOleInPlaceObjectWindowless
318#define IOleInPlaceObjectWindowless_METHODS \
319 ICOM_METHOD4(HRESULT,OnWindowMessage, UINT,msg, WPARAM,wParam, LPARAM,lParam, LRESULT*,plResult) \
320 ICOM_METHOD1(HRESULT,GetDropTarget, IDropTarget**,ppDropTarget)
321#define IOleInPlaceObjectWindowless_IMETHODS \
322 IOleInPlaceObject_IMETHODS \
323 IOleInPlaceObjectWindowless_METHODS
324ICOM_DEFINE(IOleInPlaceObjectWindowless,IOleInPlaceObject)
325#undef ICOM_INTERFACE
326
327/*** IUnknown methods ***/
328#define IOleInPlaceObjectWindowless_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
329#define IOleInPlaceObjectWindowless_AddRef(p) ICOM_CALL (AddRef,p)
330#define IOleInPlaceObjectWindowless_Release(p) ICOM_CALL (Release,p)
331/*** IOleWindow methods ***/
332#define IOleInPlaceObjectWindowless_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
333#define IOleInPlaceObjectWindowless_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
334/*** IOleInPlaceObject methods ***/
335#define IOleInPlaceObjectWindowless_InPlaceDeactivate(p) ICOM_CALL (InPlaceDeactivate,p)
336#define IOleInPlaceObjectWindowless_UIDeactivate(p) ICOM_CALL (UIDeactivate,p)
337#define IOleInPlaceObjectWindowless_SetObjectRects(p,a,b) ICOM_CALL2(SetObjectRects,p,a,b)
338#define IOleInPlaceObjectWindowless_ReactivateAndUndo(p) ICOM_CALL (ReactivateAndUndo,p)
339/*** IOleInPlaceObjectWindowless methods ***/
340#define IOleInPlaceObjectWindowless_OnWindowMessage(p,a,b,c,d) ICOM_CALL4(OnWindowMessage,p,a,b,c,d)
341#define IOleInPlaceObjectWindowless_GetDropTarget(p,a) ICOM_CALL1(GetDropTarget,p,a)
342
343
344/*****************************************************************************
345 * IClassFactory2 interface
346 */
347#define ICOM_INTERFACE IClassFactory2
348#define IClassFactory2_METHODS \
349 ICOM_METHOD1(HRESULT,GetLicInfo, LICINFO*,pLicInfo) \
350 ICOM_METHOD2(HRESULT,RequestLicKey, DWORD,dwReserved, BSTR*,pBstrKey) \
351 ICOM_METHOD5(HRESULT,CreateInstanceLic, IUnknown*,pUnkOuter, IUnknown*,pUnkReserved, REFIID,riid, BSTR,bstrKey, PVOID*,ppvObj)
352#define IClassFactory2_IMETHODS \
353 IClassFactory_IMETHODS \
354 IClassFactory2_METHODS
355ICOM_DEFINE(IClassFactory2,IClassFactory)
356#undef ICOM_INTERFACE
357
358/*** IUnknown methods ***/
359#define IClassFactory2_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
360#define IClassFactory2_AddRef(p) ICOM_CALL (AddRef,p)
361#define IClassFactory2_Release(p) ICOM_CALL (Release,p)
362/*** IClassFactory methods ***/
363#define IClassFactory2_CreateInstance(p,a,b,c) ICOM_CALL3(CreateInstance,p,a,b,c)
364#define IClassFactory2_LockServer(p,a) ICOM_CALL1(LockServer,p,a)
365/*** IClassFactory2 methods ***/
366#define IClassFactory2_GetLicInfo(p,a) ICOM_CALL1(GetLicInfo,p,a)
367#define IClassFactory2_RequestLicKey(p,a,b) ICOM_CALL2(RequestLicKey,p,a,b)
368#define IClassFactory2_CreateInstanceLic(p,a,b,c,d,e) ICOM_CALL5(CreateInstanceLic,p,a,b,c,d,e)
369
370
371/*****************************************************************************
372 * IViewObject interface
373 */
374#define ICOM_INTERFACE IViewObjectEx
375#define IViewObjectEx_METHODS \
376 ICOM_METHOD2(HRESULT,GetRect, DWORD,dwAspect, LPRECTL,pRect) \
377 ICOM_METHOD1(HRESULT,GetViewStatus, DWORD*,pdwStatus) \
378 ICOM_METHOD5(HRESULT,QueryHitPoint, DWORD,dwAspect, LPCRECT,pRectBounds, POINT,ptlLoc, LONG,lCloseHint, DWORD*,pHitResult) \
379 ICOM_METHOD5(HRESULT,QueryHitRect, DWORD,dwAspect, LPCRECT,pRectBounds, LPCRECT,pRectLoc, LONG,lCloseHint, DWORD*,pHitResult) \
380 ICOM_METHOD6(HRESULT,GetNaturalExtent, DWORD,dwAspect, LONG,lindex, DVTARGETDEVICE*,ptd, HDC,hicTargetDev, DVEXTENTINFO*,pExtentInfo, LPSIZEL,pSizel)
381#define IViewObjectEx_IMETHODS \
382 IViewObject2_IMETHODS \
383 IViewObjectEx_METHODS
384ICOM_DEFINE(IViewObjectEx,IViewObject2)
385#undef ICOM_INTERFACE
386
387/*** IUnknown methods ***/
388#define IViewObjectEx_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
389#define IViewObjectEx_AddRef(p) ICOM_CALL (AddRef,p)
390#define IViewObjectEx_Release(p) ICOM_CALL (Release,p)
391/*** IViewObject methods ***/
392#define IViewObjectEx_Draw(p,a,b,c,d,e,f,g,h,i,j) ICOM_CALL10(Draw,p,a,b,c,d,e,f,g,h,i,j)
393#define IViewObjectEx_GetColorSet(p,a,b,c,d,e,f) ICOM_CALL6(GetColorSet,p,a,b,c,d,e,f)
394#define IViewObjectEx_Freeze(p,a,b,c,d) ICOM_CALL4(Freeze,p,a,b,c,d)
395#define IViewObjectEx_Unfreeze(p,a) ICOM_CALL1(Unfreeze,p,a)
396#define IViewObjectEx_SetAdvise(p,a,b,c) ICOM_CALL3(SetAdvise,p,a,b,c)
397#define IViewObjectEx_GetAdvise(p,a,b,c) ICOM_CALL3(GetAdvise,p,a,b,c)
398/*** IViewObject2 methods ***/
399#define IViewObjectEx_GetExtent(p,a,b,c,d) ICOM_CALL4(GetExtent,p,a,b,c,d)
400/*** IViewObjectEx methods ***/
401#define IViewObjectEx_GetRect(p,a,b) ICOM_CALL2(GetRect,p,a,b)
402#define IViewObjectEx_GetViewStatus(p,a) ICOM_CALL1(GetViewStatus,p,a)
403#define IViewObjectEx_QueryHitPoint(p,a,b,c,d,e) ICOM_CALL5(QueryHitPoint,p,a,b,c,d,e)
404#define IViewObjectEx_QueryHitRect(p,a,b,c,d,e) ICOM_CALL5(QueryHitRect,p,a,b,c,d,e)
405#define IViewObjectEx_GetNaturalExtent(p,a,b,c,d,e,f) ICOM_CALL6(GetNaturalExtent,p,a,b,c,d,e,f)
406
407
408/*****************************************************************************
409 * IProvideClassInfo interface
410 */
411#ifdef __WINE__
412#undef GetClassInfo
413#endif
414
415#define ICOM_INTERFACE IProvideClassInfo
416#define IProvideClassInfo_METHODS \
417 ICOM_METHOD1(HRESULT,GetClassInfo, ITypeInfo**,ppTI)
418#define IProvideClassInfo_IMETHODS \
419 IUnknown_IMETHODS \
420 IProvideClassInfo_METHODS
421ICOM_DEFINE(IProvideClassInfo,IUnknown)
422#undef ICOM_INTERFACE
423
424/*** IUnknown methods ***/
425#define IProvideClassInfo_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
426#define IProvideClassInfo_AddRef(p) ICOM_CALL (AddRef,p)
427#define IProvideClassInfo_Release(p) ICOM_CALL (Release,p)
428/*** IProvideClassInfo methods ***/
429#define IProvideClassInfo_GetClassInfo(p,a) ICOM_CALL1(GetClassInfo,p,a)
430
431
432
433/*****************************************************************************
434 * IProvideClassInfo2 interface
435 */
436#define ICOM_INTERFACE IProvideClassInfo2
437#define IProvideClassInfo2_METHODS \
438 ICOM_METHOD2(HRESULT,GetGUID, DWORD,dwGuidKind, GUID*,pGUID)
439#define IProvideClassInfo2_IMETHODS \
440 IProvideClassInfo_IMETHODS \
441 IProvideClassInfo2_METHODS
442ICOM_DEFINE(IProvideClassInfo2,IProvideClassInfo)
443#undef ICOM_INTERFACE
444
445/*** IUnknown methods ***/
446#define IProvideClassInfo2_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
447#define IProvideClassInfo2_AddRef(p) ICOM_CALL (AddRef,p)
448#define IProvideClassInfo2_Release(p) ICOM_CALL (Release,p)
449/*** IProvideClassInfo methods ***/
450#define IProvideClassInfo2_GetClassInfo(p,a) ICOM_CALL1(GetClassInfo,p,a)
451/*** IProvideClassInfo2 methods ***/
452#define IProvideClassInfo2_GetGUID(p,a,b) ICOM_CALL2(GetGUID,p,a,b)
453
454#ifdef __cplusplus
455} /* extern "C" */
456#endif /* defined(__cplusplus) */
457
458#endif /* __WINE_WINE_OBJ_CONTROL_H */
Note: See TracBrowser for help on using the repository browser.