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

Last change on this file was 10435, checked in by bird, 22 years ago

#682: Drag & Drop fixes.

File size: 20.0 KB
Line 
1/* $Id: obj_inplace.h,v 1.6 2004-01-30 22:22:01 bird Exp $ */
2/*
3 * Defines the COM interfaces and APIs related to structured data storage.
4 *
5 * Depends on 'obj_base.h'.
6 */
7
8#ifndef __WINE_WINE_OBJ_INPLACE_H
9#define __WINE_WINE_OBJ_INPLACE_H
10
11
12#include "winbase.h"
13#include "winuser.h"
14#include "wine/obj_moniker.h"
15
16#ifdef __cplusplus
17extern "C" {
18#endif /* defined(__cplusplus) */
19
20/*****************************************************************************
21 * Predeclare the structures
22 */
23typedef struct tagOleMenuGroupWidths
24{
25 LONG width[ 6 ];
26} OLEMENUGROUPWIDTHS, *LPOLEMENUGROUPWIDTHS;
27
28
29typedef struct tagOleInPlaceFrameInfo
30{
31 UINT cb;
32 BOOL fMDIApp;
33 HWND hwndFrame;
34 HACCEL haccel;
35 UINT cAccelEntries;
36} OLEINPLACEFRAMEINFO, *LPOLEINPLACEFRAMEINFO;
37
38typedef enum tagOLEGETMONIKER
39{
40 OLEGETMONIKER_ONLYIFTHERE = 1,
41 OLEGETMONIKER_FORCEASSIGN = 2,
42 OLEGETMONIKER_UNASSIGN = 3,
43 OLEGETMONIKER_TEMPFORUSER = 4
44} OLEGETMONIKER;
45
46typedef enum tagOLERENDER
47{
48 OLERENDER_NONE = 0,
49 OLERENDER_DRAW = 1,
50 OLERENDER_FORMAT = 2,
51 OLERENDER_ASIS = 3
52} OLERENDER;
53
54typedef enum tagUSERCLASSTYPE
55{
56 USERCLASSTYPE_FULL = 1,
57 USERCLASSTYPE_SHORT = 2,
58 USERCLASSTYPE_APPNAME = 3
59} USERCLASSTYPE;
60
61typedef enum tagOLECLOSE
62{
63 OLECLOSE_SAVEIFDIRTY = 1,
64 OLECLOSE_NOSAVE = 2,
65 OLECLOSE_PROMPTSAVE = 3
66} OLECLOSE;
67
68typedef enum tagOLEUPDATE
69{
70 OLEUPDATE_ALWAYS = 1,
71 OLEUPDATE_ONCALL = 3
72} OLEUPDATE, *LPOLEUPDATE;
73
74typedef struct tagOLEVERB
75{
76 LONG lVerb;
77 LPOLESTR lpszVerbName;
78 DWORD fuFlags;
79 DWORD grfAttribs;
80} OLEVERB, *LPOLEVERB;
81
82typedef enum tagOLELINKBIND
83{
84 OLELINKBIND_EVENIFCLASSDIFF = 1
85} OLELINKBIND;
86
87typedef enum tagOLEWHICHMK
88{
89 OLEWHICHMK_CONTAINER = 1,
90 OLEWHICHMK_OBJREL = 2,
91 OLEWHICHMK_OBJFULL = 3
92} OLEWHICHMK;
93
94typedef enum tagBINDSPEED
95{
96 BINDSPEED_INDEFINITE = 1,
97 BINDSPEED_MODERATE = 2,
98 BINDSPEED_IMMEDIATE = 3
99} BINDSPEED;
100
101typedef enum tagOLECONTF
102{
103 OLECONTF_EMBEDDINGS = 1,
104 OLECONTF_LINKS = 2,
105 OLECONTF_OTHERS = 4,
106 OLECONTF_OLNYUSER = 8,
107 OLECONTF_ONLYIFRUNNING = 16
108} OLECONTF;
109
110typedef HGLOBAL HOLEMENU;
111typedef LPRECT LPBORDERWIDTHS;
112typedef LPCRECT LPCBORDERWIDTHS;
113
114
115/*****************************************************************************
116 * Predeclare the interfaces
117 */
118DEFINE_OLEGUID(IID_IOleWindow, 0x00000114L, 0, 0);
119typedef struct IOleWindow IOleWindow, *LPOLEWINDOW;
120
121DEFINE_OLEGUID(IID_IOleInPlaceObject, 0x00000113L, 0, 0);
122typedef struct IOleInPlaceObject IOleInPlaceObject, *LPOLEINPLACEOBJECT;
123
124DEFINE_OLEGUID(IID_IOleInPlaceActiveObject, 0x00000117L, 0, 0);
125typedef struct IOleInPlaceActiveObject IOleInPlaceActiveObject, *LPOLEINPLACEACTIVEOBJECT;
126
127DEFINE_OLEGUID(IID_IOleInPlaceUIWindow, 0x00000115L, 0, 0);
128typedef struct IOleInPlaceUIWindow IOleInPlaceUIWindow, *LPOLEINPLACEUIWINDOW;
129
130DEFINE_OLEGUID(IID_IOleInPlaceFrame, 0x00000116L, 0, 0);
131typedef struct IOleInPlaceFrame IOleInPlaceFrame, *LPOLEINPLACEFRAME;
132
133DEFINE_OLEGUID(IID_IOleInPlaceSite, 0x00000119L, 0, 0);
134typedef struct IOleInPlaceSite IOleInPlaceSite, *LPOLEINPLACESITE;
135
136DEFINE_OLEGUID(IID_IOleClientSite, 0x00000118L, 0, 0);
137typedef struct IOleClientSite IOleClientSite, *LPOLECLIENTSITE;
138
139DEFINE_OLEGUID(IID_IOleContainer, 0x0000011bL, 0, 0);
140typedef struct IOleContainer IOleContainer, *LPOLECONTAINER;
141
142DEFINE_OLEGUID(IID_IParseDisplayName, 0x0000011aL, 0, 0);
143typedef struct IParseDisplayName IParseDisplayName, *LPPARSEDISPLAYNAME;
144
145DEFINE_OLEGUID(IID_IOleItemContainer, 0x0000011aL, 0, 0);
146typedef struct IOleItemContainer IOleItemContainer, *LPOLEITEMCONTAINER;
147
148DEFINE_OLEGUID(IID_IOleLink, 0x0000011dL, 0, 0);
149typedef struct IOleLink IOleLink, *LPOLELINK;
150
151/*****************************************************************************
152 * IOleWindow interface
153 */
154#define ICOM_INTERFACE IOleWindow
155#define IOleWindow_METHODS \
156 ICOM_METHOD1(HRESULT,GetWindow, HWND*,phwnd) \
157 ICOM_METHOD1(HRESULT,ContextSensitiveHelp, BOOL,fEnterMode)
158#define IOleWindow_IMETHODS \
159 IUnknown_IMETHODS \
160 IOleWindow_METHODS
161ICOM_DEFINE(IOleWindow,IUnknown)
162#undef ICOM_INTERFACE
163
164#ifdef ICOM_CINTERFACE
165/*** IUnknown methods ***/
166#define IOleWindow_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
167#define IOleWindow_AddRef(p) ICOM_CALL (AddRef,p)
168#define IOleWindow_Release(p) ICOM_CALL (Release,p)
169/*** IOleWindow methods ***/
170#define IOleWindow_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
171#define IOleWindow_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
172#endif
173
174
175/*****************************************************************************
176 * IOleInPlaceObject interface
177 */
178#define ICOM_INTERFACE IOleInPlaceObject
179#define IOleInPlaceObject_METHODS \
180 ICOM_METHOD (HRESULT,InPlaceDeactivate) \
181 ICOM_METHOD (HRESULT,UIDeactivate) \
182 ICOM_METHOD2(HRESULT,SetObjectRects, LPCRECT,lprcPosRect, LPCRECT,lprcClipRect) \
183 ICOM_METHOD (HRESULT,ReactivateAndUndo)
184#define IOleInPlaceObject_IMETHODS \
185 IOleWindow_IMETHODS \
186 IOleInPlaceObject_METHODS
187ICOM_DEFINE(IOleInPlaceObject,IOleWindow)
188#undef ICOM_INTERFACE
189
190#ifdef ICOM_CINTERFACE
191/*** IUnknown methods ***/
192#define IOleInPlaceObject_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
193#define IOleInPlaceObject_AddRef(p) ICOM_CALL (AddRef,p)
194#define IOleInPlaceObject_Release(p) ICOM_CALL (Release,p)
195/*** IOleWindow methods ***/
196#define IOleInPlaceObject_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
197#define IOleInPlaceObject_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
198/*** IOleInPlaceObject methods ***/
199#define IOleInPlaceObject_InPlaceDeactivate(p) ICOM_CALL (InPlaceDeactivate,p)
200#define IOleInPlaceObject_UIDeactivate(p) ICOM_CALL (UIDeactivate,p)
201#define IOleInPlaceObject_SetObjectRects(p,a,b) ICOM_CALL2(SetObjectRects,p,a,b)
202#define IOleInPlaceObject_ReactivateAndUndo(p) ICOM_CALL (ReactivateAndUndo,p)
203#endif
204
205/*****************************************************************************
206 * IOleInPlaceActiveObject interface
207 */
208#define ICOM_INTERFACE IOleInPlaceActiveObject
209#define IOleInPlaceActiveObject_METHODS \
210 ICOM_METHOD1(HRESULT,TranslateAccelerator, LPMSG,lpmsg) \
211 ICOM_METHOD1(HRESULT,OnFrameWindowActivate, BOOL,fActivate) \
212 ICOM_METHOD1(HRESULT,OnDocWindowActivate, BOOL,fActivate) \
213 ICOM_METHOD3(HRESULT,ResizeBorder, LPCRECT,prcBorder, IOleInPlaceUIWindow*,pUIWindow, BOOL,fWindowFrame) \
214 ICOM_METHOD1(HRESULT,EnableModeless, BOOL,fEnable)
215#define IOleInPlaceActiveObject_IMETHODS \
216 IOleWindow_IMETHODS \
217 IOleInPlaceActiveObject_METHODS
218ICOM_DEFINE(IOleInPlaceActiveObject,IOleWindow)
219#undef ICOM_INTERFACE
220
221#ifdef ICOM_CINTERFACE
222/*** IUnknown methods ***/
223#define IOleInPlaceActiveObject_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
224#define IOleInPlaceActiveObject_AddRef(p) ICOM_CALL (AddRef,p)
225#define IOleInPlaceActiveObject_Release(p) ICOM_CALL (Release,p)
226/*** IOleWindow methods ***/
227#define IOleInPlaceActiveObject_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
228#define IOleInPlaceActiveObject_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
229/*** IOleInPlaceActiveObject methods ***/
230#define IOleInPlaceActiveObject_TranslateAccelerator(p,a) ICOM_CALL1(TranslateAccelerator,p,a)
231#define IOleInPlaceActiveObject_OnFrameWindowActivate(p,a) ICOM_CALL1(OnFrameWindowActivate,p,a)
232#define IOleInPlaceActiveObject_OnDocWindowActivate(p,a) ICOM_CALL1(OnDocWindowActivate,p,a)
233#define IOleInPlaceActiveObject_ResizeBorder(p,a,b,c) ICOM_CALL3(ResizeBorder,p,a,b,c)
234#define IOleInPlaceActiveObject_EnableModeless(p,a) ICOM_CALL1(EnableModeless,p,a)
235#endif
236
237/*****************************************************************************
238 * IOleInPlaceUIWindow interface
239 */
240#define ICOM_INTERFACE IOleInPlaceUIWindow
241#define IOleInPlaceUIWindow_METHODS \
242 ICOM_METHOD1(HRESULT,GetBorder, LPRECT,lprectBorder) \
243 ICOM_METHOD1(HRESULT,RequestBorderSpace, LPCBORDERWIDTHS,pborderwidths) \
244 ICOM_METHOD1(HRESULT,SetBorderSpace, LPCBORDERWIDTHS,pborderwidths) \
245 ICOM_METHOD2(HRESULT,SetActiveObject, IOleInPlaceActiveObject*,pActiveObject, LPCOLESTR,pszObjName)
246#define IOleInPlaceUIWindow_IMETHODS \
247 IOleWindow_IMETHODS \
248 IOleInPlaceUIWindow_METHODS
249ICOM_DEFINE(IOleInPlaceUIWindow,IOleWindow)
250#undef ICOM_INTERFACE
251
252#ifdef ICOM_CINTERFACE
253/*** IUnknown methods ***/
254#define IOleInPlaceUIWindow_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
255#define IOleInPlaceUIWindow_AddRef(p) ICOM_CALL (AddRef,p)
256#define IOleInPlaceUIWindow_Release(p) ICOM_CALL (Release,p)
257/*** IOleWindow methods ***/
258#define IOleInPlaceUIWindow_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
259#define IOleInPlaceUIWindow_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
260/*** IOleInPlaceUIWindow methods ***/
261#define IOleInPlaceUIWindow_GetBorder(p,a) ICOM_CALL1(GetBorder,p,a)
262#define IOleInPlaceUIWindow_RequestBorderSpace(p,a) ICOM_CALL1(RequestBorderSpace,p,a)
263#define IOleInPlaceUIWindow_SetBorderSpace(p,a) ICOM_CALL1(SetBorderSpace,p,a)
264#define IOleInPlaceUIWindow_SetActiveObject(p,a,b) ICOM_CALL2(SetActiveObject,p,a,b)
265#endif
266
267
268/*****************************************************************************
269 * IOleInPlaceFrame interface
270 */
271#define ICOM_INTERFACE IOleInPlaceFrame
272#define IOleInPlaceFrame_METHODS \
273 ICOM_METHOD2 (HRESULT,InsertMenus, HMENU,hemnuShared, LPOLEMENUGROUPWIDTHS,lpMenuWidths) \
274 ICOM_METHOD3 (HRESULT,SetMenu, HMENU,hemnuShared, HOLEMENU,holemenu, HWND,hwndActiveObject) \
275 ICOM_METHOD1 (HRESULT,RemoveMenus, HMENU,hemnuShared) \
276 ICOM_METHOD1 (HRESULT,SetStatusText, LPCOLESTR,pszStatusText) \
277 ICOM_METHOD1 (HRESULT,EnableModeless, BOOL,fEnable) \
278 ICOM_METHOD2 (HRESULT,TranslateAccelerator, LPMSG,lpmsg, WORD,wID)
279#define IOleInPlaceFrame_IMETHODS \
280 IOleInPlaceUIWindow_IMETHODS \
281 IOleInPlaceFrame_METHODS
282ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow)
283#undef ICOM_INTERFACE
284
285#ifdef ICOM_CINTERFACE
286/*** IUnknown methods ***/
287#define IOleInPlaceFrame_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
288#define IOleInPlaceFrame_AddRef(p) ICOM_CALL (AddRef,p)
289#define IOleInPlaceFrame_Release(p) ICOM_CALL (Release,p)
290/*** IOleWindow methods ***/
291#define IOleInPlaceFrame_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
292#define IOleInPlaceFrame_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
293/*** IOleInPlaceUIWindow methods ***/
294#define IOleInPlaceFrame_GetBorder(p,a) ICOM_CALL1(GetBorder,p,a)
295#define IOleInPlaceFrame_RequestBorderSpace(p,a) ICOM_CALL1(RequestBorderSpace,p,a)
296#define IOleInPlaceFrame_SetBorderSpace(p,a) ICOM_CALL1(SetBorderSpace,p,a)
297#define IOleInPlaceFrame_SetActiveObject(p,a,b) ICOM_CALL2(SetActiveObject,p,a,b)
298/*** IOleInPlaceFrame methods ***/
299#define IOleInPlaceFrame_InsertMenus(p,a,b) ICOM_CALL2(InsertMenus,p,a,b)
300#define IOleInPlaceFrame_SetMenu(p,a,b,c) ICOM_CALL3(SetMenu,p,a,b,c)
301#define IOleInPlaceFrame_RemoveMenus(p,a) ICOM_CALL1(RemoveMenus,p,a)
302#define IOleInPlaceFrame_SetStatusText(p,a) ICOM_CALL1(SetStatusText,p,a)
303#define IOleInPlaceFrame_EnableModeless(p,a) ICOM_CALL1(EnableModeless,p,a)
304#define IOleInPlaceFrame_TranslateAccelerator(p,a,b) ICOM_CALL2(TranslateAccelerator,p,a,b)
305#endif
306
307
308/*****************************************************************************
309 * IOleInPlaceSite interface
310 */
311#define ICOM_INTERFACE IOleInPlaceSite
312#define IOleInPlaceSite_METHODS \
313 ICOM_METHOD (HRESULT,CanInPlaceActivate) \
314 ICOM_METHOD (HRESULT,OnInPlaceActivate) \
315 ICOM_METHOD (HRESULT,OnUIActivate) \
316 ICOM_METHOD5(HRESULT,GetWindowContext, IOleInPlaceFrame**,ppFrame, IOleInPlaceUIWindow**,ppDoc, LPRECT,lprcPosRect, LPRECT,lprcClipRect, LPOLEINPLACEFRAMEINFO,lpFrameInfo) \
317 ICOM_METHOD1(HRESULT,Scroll, SIZE,scrollExtant) \
318 ICOM_METHOD1(HRESULT,OnUIDeactivate, BOOL,fUndoable) \
319 ICOM_METHOD (HRESULT,OnInPlaceDeactivate) \
320 ICOM_METHOD (HRESULT,DiscardUndoState) \
321 ICOM_METHOD (HRESULT,DeactivateAndUndo) \
322 ICOM_METHOD1(HRESULT,OnPosRectChange, LPCRECT,lprcPosRect)
323#define IOleInPlaceSite_IMETHODS \
324 IOleWindow_IMETHODS \
325 IOleInPlaceSite_METHODS
326ICOM_DEFINE(IOleInPlaceSite,IOleWindow)
327#undef ICOM_INTERFACE
328
329#ifdef ICOM_CINTERFACE
330/*** IUnknown methods ***/
331#define IOleInPlaceSite_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
332#define IOleInPlaceSite_AddRef(p) ICOM_CALL (AddRef,p)
333#define IOleInPlaceSite_Release(p) ICOM_CALL (Release,p)
334/*** IOleWindow methods ***/
335#define IOleInPlaceSite_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
336#define IOleInPlaceSite_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
337/*** IOleInPlaceSite methods ***/
338#define IOleInPlaceSite_CanInPlaceActivate(p) ICOM_CALL (CanInPlaceActivate,p)
339#define IOleInPlaceSite_OnInPlaceActivate(p) ICOM_CALL (OnInPlaceActivate,p)
340#define IOleInPlaceSite_OnUIActivate(p) ICOM_CALL (OnUIActivate,p)
341#define IOleInPlaceSite_GetWindowContext(p,a,b,c,d,e) ICOM_CALL5(GetWindowContext,p,a,b,c,d,e)
342#define IOleInPlaceSite_Scroll(p,a) ICOM_CALL1(Scroll,p,a)
343#define IOleInPlaceSite_OnUIDeactivate(p,a) ICOM_CALL1(OnUIDeactivate,p,a)
344#define IOleInPlaceSite_OnInPlaceDeactivate(p) ICOM_CALL (OnInPlaceDeactivate,p)
345#define IOleInPlaceSite_DiscardUndoState(p) ICOM_CALL (DiscardUndoState,p)
346#define IOleInPlaceSite_DeactivateAndUndo(p) ICOM_CALL (DeactivateAndUndo,p)
347#define IOleInPlaceSite_OnPosRectChange(p,a) ICOM_CALL1(OnPosRectChange,p,a)
348#endif
349
350
351/*****************************************************************************
352 * IOleClientSite interface
353 */
354#define ICOM_INTERFACE IOleClientSite
355#define IOleClientSite_METHODS \
356 ICOM_METHOD (HRESULT,SaveObject) \
357 ICOM_METHOD3(HRESULT,GetMoniker, DWORD,dwAssign, DWORD,dwWhichMoniker, IMoniker**,ppmk) \
358 ICOM_METHOD1(HRESULT,GetContainer, IOleContainer**,ppContainer) \
359 ICOM_METHOD (HRESULT,ShowObject) \
360 ICOM_METHOD1(HRESULT,OnShowWindow, BOOL,fShow) \
361 ICOM_METHOD (HRESULT,RequestNewObjectLayout)
362#define IOleClientSite_IMETHODS \
363 IUnknown_IMETHODS \
364 IOleClientSite_METHODS
365ICOM_DEFINE(IOleClientSite,IUnknown)
366#undef ICOM_INTERFACE
367
368#ifdef ICOM_CINTERFACE
369/*** IUnknown methods ***/
370#define IOleClientSite_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
371#define IOleClientSite_AddRef(p) ICOM_CALL (AddRef,p)
372#define IOleClientSite_Release(p) ICOM_CALL (Release,p)
373/*** IOleClientSite methods ***/
374#define IOleClientSite_SaveObject(p) ICOM_CALL (SaveObject,p)
375#define IOleClientSite_GetMoniker(p,a,b,c) ICOM_CALL3(GetMoniker,p,a,b,c)
376#define IOleClientSite_GetContainer(p,a) ICOM_CALL1(GetContainer,p,a)
377#define IOleClientSite_ShowObject(p) ICOM_CALL (ShowObject,p)
378#define IOleClientSite_OnShowWindow(p,a) ICOM_CALL1(OnShowWindow,p,a)
379#define IOleClientSite_RequestNewObjectLayout(p) ICOM_CALL (RequestNewObjectLayout(p)
380#endif
381
382
383/*****************************************************************************
384 * IParseDisplayName interface
385 */
386#define ICOM_INTERFACE IParseDisplayName
387#define IParseDisplayName_METHODS \
388 ICOM_METHOD4(HRESULT,ParseDisplayName, IBindCtx*,pbc, LPOLESTR,pszDisplayName, ULONG*,pchEaten, IMoniker**,ppmkOut)
389#define IParseDisplayName_IMETHODS \
390 IUnknown_IMETHODS \
391 IParseDisplayName_METHODS
392ICOM_DEFINE(IParseDisplayName,IUnknown)
393#undef ICOM_INTERFACE
394
395#ifdef ICOM_CINTERFACE
396/*** IUnknown methods ***/
397#define IParseDisplayName_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
398#define IParseDisplayName_AddRef(p) ICOM_CALL (AddRef,p)
399#define IParseDisplayName_Release(p) ICOM_CALL (Release,p)
400/*** IParseDisplayName methods ***/
401#define IParseDisplayName_ParseDisplayName(p,a,b,c,d) ICOM_CALL4(ParseDisplayName,p,a,b,c,d)
402#endif
403
404
405/*****************************************************************************
406 * IOleContainer interface
407 */
408#define ICOM_INTERFACE IOleContainer
409#define IOleContainer_METHODS \
410 ICOM_METHOD2(HRESULT,EnumObjects, DWORD,grfFlags, IEnumUnknown**,ppenum) \
411 ICOM_METHOD1(HRESULT,LockContainer, BOOL,fLock)
412#define IOleContainer_IMETHODS \
413 IParseDisplayName_IMETHODS \
414 IOleContainer_METHODS
415ICOM_DEFINE(IOleContainer,IParseDisplayName)
416#undef ICOM_INTERFACE
417
418#ifdef ICOM_CINTERFACE
419/*** IUnknown methods ***/
420#define IOleContainer_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
421#define IOleContainer_AddRef(p) ICOM_CALL (AddRef,p)
422#define IOleContainer_Release(p) ICOM_CALL (Release,p)
423/*** IParseDisplayName methods ***/
424#define IOleContainer_ParseDisplayName(p,a,b,c,d) ICOM_CALL4(ParseDisplayName,p,a,b,c,d)
425/*** IOleClientSite methods ***/
426#define IOleContainer_EnumObjects(p,a,b) ICOM_CALL (EnumObjects,p,a,b)
427#define IOleContainer_LockContainer(p,a) ICOM_CALL3(LockContainer,p,a)
428#endif
429
430
431/*****************************************************************************
432 * IOleItemContainer interface
433 */
434#define ICOM_INTERFACE IOleItemContainer
435#define IOleItemContainer_METHODS \
436 ICOM_METHOD5(HRESULT,GetObject, LPOLESTR,pszItem, DWORD,dwSpeedNeeded, IBindCtx*,pbc, REFIID,riid, void**,ppvObject) \
437 ICOM_METHOD4(HRESULT,GetObjectStorage, LPOLESTR,pszItem, IBindCtx*,pbc, REFIID,riid, void**,ppvStorage) \
438 ICOM_METHOD1(HRESULT,IsRunning, LPOLESTR,pszItem)
439#define IOleItemContainer_IMETHODS \
440 IOleContainer_IMETHODS \
441 IOleItemContainer_METHODS
442ICOM_DEFINE(IOleItemContainer,IOleContainer)
443#undef ICOM_INTERFACE
444
445#ifdef ICOM_CINTERFACE
446/*** IUnknown methods ***/
447#define IOleItemContainer_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
448#define IOleItemContainer_AddRef(p) ICOM_CALL (AddRef,p)
449#define IOleItemContainer_Release(p) ICOM_CALL (Release,p)
450/*** IParseDisplayName methods ***/
451#define IOleItemContainer_GetObject(p,a,b,c,d,e) ICOM_CALL5(GetObject,p,a,b,c,d,e)
452#define IOleItemContainer_GetObjectStorage(p,a,b,c,d) ICOM_CALL4(GetObjectStorage,p,a,b,c,d)
453#define IOleItemContainer_IsRunning(p,a) ICOM_CALL1(IsRunning,p,a)
454#endif
455
456
457/*****************************************************************************
458 * IOleItemContainer interface
459 */
460#define ICOM_INTERFACE IOleLink
461#define IOleLink_METHODS \
462 ICOM_METHOD1(HRESULT,SetUpdateOptions, DWORD,dwUpdateOpt) \
463 ICOM_METHOD1(HRESULT,GetUpdateOptions, DWORD*,pdwUpdateOpt) \
464 ICOM_METHOD2(HRESULT,SetSourceMoniker, IMoniker*,pmk, REFCLSID,rclsid) \
465 ICOM_METHOD1(HRESULT,GetSourceMoniker, IMoniker**,ppmk) \
466 ICOM_METHOD1(HRESULT,SetSourceDisplayName, LPCOLESTR,pszStatusText) \
467 ICOM_METHOD1(HRESULT,GetSourceDisplayName, LPOLESTR*,ppszDisplayName) \
468 ICOM_METHOD2(HRESULT,BindToSource, DWORD,bindflags, IBindCtx*,pbc) \
469 ICOM_METHOD (HRESULT,BindIfRunning) \
470 ICOM_METHOD1(HRESULT,GetBoundSource, IUnknown**,ppunk) \
471 ICOM_METHOD (HRESULT,UnBindSource) \
472 ICOM_METHOD1(HRESULT,Update, IBindCtx*,pbc)
473#define IOleLink_IMETHODS \
474 IUnknown_IMETHODS \
475 IOleLink_METHODS
476ICOM_DEFINE(IOleLink,IUnknown)
477#undef ICOM_INTERFACE
478
479#ifdef ICOM_CINTERFACE
480/*** IUnknown methods ***/
481#define IOleLink_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
482#define IOleLink_AddRef(p) ICOM_CALL (AddRef,p)
483#define IOleLink_Release(p) ICOM_CALL (Release,p)
484/*** IOleLink methods ***/
485#define IOleLink_SetUpdateOptions(p,a) ICOM_CALL1(SetUpdateOptions,p,a)
486#define IOleLink_GetUpdateOptions(p,a) ICOM_CALL1(GetUpdateOptions,p,a)
487#define IOleLink_SetSourceMoniker(p,a,b) ICOM_CALL2(SetSourceMoniker,p,a,b)
488#define IOleLink_GetSourceMoniker(p,a) ICOM_CALL1(GetSourceMoniker,p,a)
489#define IOleLink_SetSourceDisplayName(p,a) ICOM_CALL1(SetSourceDisplayName,p,a)
490#define IOleLink_GetSourceDisplayName(p,a) ICOM_CALL1(GetSourceDisplayName,p,a)
491#define IOleLink_BindToSource(p,a,b) ICOM_CALL2(BindToSource,p,a,b)
492#define IOleLink_BindIfRunning(p) ICOM_CALL (BindIfRunning,p)
493#define IOleLink_GetBoundSource(p,a) ICOM_CALL1(GetBoundSource,p,a)
494#define IOleLink_UnBindSource(p) ICOM_CALL (UnBindSource,p)
495#define IOleLink_Update(p,a) ICOM_CALL1(Update,p,a)
496#endif
497
498#ifdef __cplusplus
499} /* extern "C" */
500#endif /* defined(__cplusplus) */
501
502#endif /* __WINE_WINE_OBJ_INPLACE_H */
503
504
Note: See TracBrowser for help on using the repository browser.