source: Daodan/MinGW/include/oleidl.h@ 1092

Last change on this file since 1092 was 1046, checked in by alloc, 8 years ago

Daodan: Added Windows MinGW and build batch file

File size: 22.6 KB
Line 
1#ifndef _OLEIDL_H
2#define _OLEIDL_H
3#if __GNUC__ >=3
4#pragma GCC system_header
5#endif
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11#include <objfwd.h>
12
13#define MK_ALT 32
14
15typedef _COM_interface IParseDisplayName *LPPARSEDISPLAYNAME;
16typedef _COM_interface IOleContainer *LPOLECONTAINER;
17typedef _COM_interface IOleClientSite *LPOLECLIENTSITE;
18typedef _COM_interface IOleObject *LPOLEOBJECT;
19typedef _COM_interface IDropTarget *LPDROPTARGET;
20typedef _COM_interface IDropSource *LPDROPSOURCE;
21typedef _COM_interface IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
22typedef _COM_interface IEnumOLEVERB *LPENUMOLEVERB;
23typedef _COM_interface IOleWindow *LPOLEWINDOW;
24typedef _COM_interface IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
25typedef _COM_interface IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
26typedef _COM_interface IOleInPlaceFrame *LPOLEINPLACEFRAME;
27typedef _COM_interface IOleAdviseHolder *LPOLEADVISEHOLDER;
28typedef _COM_interface IViewObject *LPVIEWOBJECT;
29typedef _COM_interface IViewObject2 *LPVIEWOBJECT2;
30typedef _COM_interface IOleCache *LPOLECACHE;
31typedef _COM_interface IOleCache2 *LPOLECACHE2;
32typedef _COM_interface IOleCacheControl *LPOLECACHECONTROL;
33
34typedef enum tagBINDSPEED
35{
36 BINDSPEED_INDEFINITE=1,
37 BINDSPEED_MODERATE,
38 BINDSPEED_IMMEDIATE
39} BINDSPEED;
40typedef enum tagOLEWHICHMK {
41 OLEWHICHMK_CONTAINER=1,
42 OLEWHICHMK_OBJREL,
43 OLEWHICHMK_OBJFULL
44} OLEWHICHMK;
45typedef enum tagOLEGETMONIKER {
46 OLEGETMONIKER_ONLYIFTHERE=1,
47 OLEGETMONIKER_FORCEASSIGN,
48 OLEGETMONIKER_UNASSIGN,
49 OLEGETMONIKER_TEMPFORUSER
50} OLEGETMONIKER;
51typedef enum tagUSERCLASSTYPE {
52 USERCLASSTYPE_FULL=1,
53 USERCLASSTYPE_SHORT,
54 USERCLASSTYPE_APPNAME
55} USERCLASSTYPE;
56
57#ifdef __GNUC__
58__extension__ /* IS0 C says enums limited to range of int */
59#endif
60typedef enum tagDROPEFFECT {
61 DROPEFFECT_NONE=0,
62 DROPEFFECT_COPY=1,
63 DROPEFFECT_MOVE=2,
64 DROPEFFECT_LINK=4,
65 DROPEFFECT_SCROLL=0x80000000
66} DROPEFFECT;
67typedef struct tagOleMenuGroupWidths {
68 LONG width[6];
69} OLEMENUGROUPWIDTHS,*LPOLEMENUGROUPWIDTHS;
70typedef HGLOBAL HOLEMENU;
71typedef enum tagOLECLOSE {
72 OLECLOSE_SAVEIFDIRTY,
73 OLECLOSE_NOSAVE,
74 OLECLOSE_PROMPTSAVE
75} OLECLOSE;
76typedef struct tagOLEVERB {
77 LONG lVerb;
78 LPWSTR lpszVerbName;
79 DWORD fuFlags;
80 DWORD grfAttribs;
81} OLEVERB,*LPOLEVERB;
82typedef RECT BORDERWIDTHS;
83typedef LPRECT LPBORDERWIDTHS;
84typedef LPCRECT LPCBORDERWIDTHS;
85typedef struct tagOIFI {
86 UINT cb;
87 BOOL fMDIApp;
88 HWND hwndFrame;
89 HACCEL haccel;
90 UINT cAccelEntries;
91}OLEINPLACEFRAMEINFO,*LPOLEINPLACEFRAMEINFO;
92
93DECLARE_ENUMERATOR(OLEVERB);
94typedef IEnumOLEVERB IEnumOleVerb;
95
96EXTERN_C const IID IID_IParseDisplayName;
97#define INTERFACE IParseDisplayName
98DECLARE_INTERFACE_(IParseDisplayName,IUnknown)
99{
100 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
101 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
102 STDMETHOD_(ULONG,Release)(THIS) PURE;
103 STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
104};
105#undef INTERFACE
106
107#ifdef COBJMACROS
108#define IParseDisplayName_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
109#define IParseDisplayName_AddRef(T) (T)->lpVtbl->AddRef(T)
110#define IParseDisplayName_Release(T) (T)->lpVtbl->Release(T)
111#define IParseDisplayName_ParseDisplayName(T,a,b,c,d) (T)->lpVtbl->ParseDisplayName(T,a,b,c,d)
112#endif
113
114EXTERN_C const IID IID_IOleContainer;
115#define INTERFACE IOleContainer
116DECLARE_INTERFACE_(IOleContainer,IParseDisplayName)
117{
118 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
119 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
120 STDMETHOD_(ULONG,Release)(THIS) PURE;
121 STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
122 STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
123 STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
124};
125#undef INTERFACE
126
127EXTERN_C const IID IID_IOleItemContainer;
128#define INTERFACE IOleItemContainer
129DECLARE_INTERFACE_(IOleItemContainer,IOleContainer)
130{
131 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
132 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
133 STDMETHOD_(ULONG,Release)(THIS) PURE;
134 STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
135 STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
136 STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
137 STDMETHOD(GetObject)(THIS_ LPOLESTR,DWORD,IBindCtx*,REFIID,void**) PURE;
138 STDMETHOD(GetObjectStorage)(THIS_ LPOLESTR,IBindCtx*,REFIID,void**) PURE;
139 STDMETHOD(IsRunning)(THIS_ LPOLESTR) PURE;
140};
141#undef INTERFACE
142
143#ifdef COBJMACROS
144#define IOleItemContainer_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
145#define IOleItemContainer_AddRef(T) (T)->lpVtbl->AddRef(T)
146#define IOleItemContainer_Release(T) (T)->lpVtbl->Release(T)
147#define IOleItemContainer_ParseDisplayName(T,a,b,c,d) (T)->lpVtbl->ParseDisplayName(T,a,b,c,d)
148#define IOleItemContainer_EnumObjects(T,a,b) (T)->lpVtbl->EnumObjects(T,a,b)
149#define IOleItemContainer_LockContainer(T,a) (T)->lpVtbl->LockContainer(T,a)
150#define IOleItemContainer_GetObject(T,a,b,c,d,e) (T)->lpVtbl->GetObject(T,a,b,c,d,e)
151#define IOleItemContainer_GetObjectStorage(T,a,b,c,d) (T)->lpVtbl->GetObjectStorage(T,a,b,c,d)
152#define IOleItemContainer_IsRunning(T,a) (T)->lpVtbl->IsRunning(T,a)
153#endif
154
155EXTERN_C const IID IID_IOleClientSite;
156#define INTERFACE IOleClientSite
157DECLARE_INTERFACE_(IOleClientSite,IUnknown)
158{
159 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
160 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
161 STDMETHOD_(ULONG,Release)(THIS) PURE;
162 STDMETHOD(SaveObject)(THIS) PURE;
163 STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
164 STDMETHOD(GetContainer)(THIS_ LPOLECONTAINER*) PURE;
165 STDMETHOD(ShowObject)(THIS) PURE;
166 STDMETHOD(OnShowWindow)(THIS_ BOOL) PURE;
167 STDMETHOD(RequestNewObjectLayout)(THIS) PURE;
168};
169#undef INTERFACE
170
171#ifdef COBJMACROS
172#define IOleClientSite_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
173#define IOleClientSite_AddRef(T) (T)->lpVtbl->AddRef(T)
174#define IOleClientSite_Release(T) (T)->lpVtbl->Release(T)
175#define IOleClientSite_SaveObject(T) (T)->lpVtbl->SaveObject(T)
176#define IOleClientSite_GetMoniker(T,a,b,c) (T)->lpVtbl->GetMoniker(T,a,b,c)
177#define IOleClientSite_GetContainer(T,a) (T)->lpVtbl->GetContainer(T,a)
178#define IOleClientSite_ShowObject(T) (T)->lpVtbl->ShowObject(T)
179#define IOleClientSite_OnShowWindow(T,a) (T)->lpVtbl->OnShowWindow(T,a)
180#define IOleClientSite_RequestNewObjectLayout(T) (T)->lpVtbl->RequestNewObjectLayout(T)
181#endif
182
183EXTERN_C const IID IID_IOleObject;
184#define INTERFACE IOleObject
185DECLARE_INTERFACE_(IOleObject,IUnknown)
186{
187 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
188 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
189 STDMETHOD_(ULONG,Release)(THIS) PURE;
190 STDMETHOD(SetClientSite)(THIS_ LPOLECLIENTSITE) PURE;
191 STDMETHOD(GetClientSite)(THIS_ LPOLECLIENTSITE*) PURE;
192 STDMETHOD(SetHostNames)(THIS_ LPCOLESTR,LPCOLESTR) PURE;
193 STDMETHOD(Close)(THIS_ DWORD) PURE;
194 STDMETHOD(SetMoniker)(THIS_ DWORD,LPMONIKER) PURE;
195 STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
196 STDMETHOD(InitFromData)(THIS_ LPDATAOBJECT,BOOL,DWORD) PURE;
197 STDMETHOD(GetClipboardData)(THIS_ DWORD,LPDATAOBJECT*) PURE;
198 STDMETHOD(DoVerb)(THIS_ LONG,LPMSG,LPOLECLIENTSITE,LONG,HWND,LPCRECT) PURE;
199 STDMETHOD(EnumVerbs)(THIS_ LPENUMOLEVERB*) PURE;
200 STDMETHOD(Update)(THIS) PURE;
201 STDMETHOD(IsUpToDate)(THIS) PURE;
202 STDMETHOD(GetUserClassID)(THIS_ LPCLSID) PURE;
203 STDMETHOD(GetUserType)(THIS_ DWORD,LPOLESTR*) PURE;
204 STDMETHOD(SetExtent)(THIS_ DWORD,SIZEL*) PURE;
205 STDMETHOD(GetExtent)(THIS_ DWORD,SIZEL*) PURE;
206 STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
207 STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
208 STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
209 STDMETHOD(GetMiscStatus)(THIS_ DWORD,PDWORD) PURE;
210 STDMETHOD(SetColorScheme)(THIS_ LPLOGPALETTE) PURE;
211};
212#undef INTERFACE
213
214#ifdef COBJMACROS
215#define IOleObject_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
216#define IOleObject_AddRef(T) (T)->lpVtbl->AddRef(T)
217#define IOleObject_Release(T) (T)->lpVtbl->Release(T)
218#define IOleObject_SetClientSite(T,a) (T)->lpVtbl->SetClientSite(T,a)
219#define IOleObject_GetClientSite(T,a) (T)->lpVtbl->GetClientSite(T,a)
220#define IOleObject_SetHostNames(T,a,b) (T)->lpVtbl->SetHostNames(T,a,b)
221#define IOleObject_Close(T,a) (T)->lpVtbl->Close(T,a)
222#define IOleObject_SetMoniker(T,a,b) (T)->lpVtbl->SetMoniker(T,a,b)
223#define IOleObject_GetMoniker(T,a,b,c) (T)->lpVtbl->GetMoniker(T,a,b,c)
224#define IOleObject_InitFromData(T,a,b,c) (T)->lpVtbl->InitFromData(T,a,b,c)
225#define IOleObject_GetClipboardData(T,a,b) (T)->lpVtbl->GetClipboardData(T,a,b)
226#define IOleObject_DoVerb(T,a,b,c,d,e,f) (T)->lpVtbl->DoVerb(T,a,b,c,d,e,f)
227#define IOleObject_EnumVerbs(T,a) (T)->lpVtbl->EnumVerbs(T,a)
228#define IOleObject_Update(T) (T)->lpVtbl->Update(T)
229#define IOleObject_IsUpToDate(T) (T)->lpVtbl->IsUpToDate(T)
230#define IOleObject_GetUserClassID(T,a) (T)->lpVtbl->GetUserClassID(T,a)
231#define IOleObject_GetUserType(T,a,b) (T)->lpVtbl->GetUserType(T,a,b)
232#define IOleObject_SetExtent(T,a,b) (T)->lpVtbl->SetExtent(T,a,b)
233#define IOleObject_GetExtent(T,a,b) (T)->lpVtbl->GetExtent(T,a,b)
234#define IOleObject_Advise(T,a,b) (T)->lpVtbl->Advise(T,a,b)
235#define IOleObject_Unadvise(T,a) (T)->lpVtbl->Unadvise(T,a)
236#define IOleObject_EnumAdvise(T,a) (T)->lpVtbl->EnumAdvise(T,a)
237#define IOleObject_GetMiscStatus(T,a,b) (T)->lpVtbl->GetMiscStatus(T,a,b)
238#define IOleObject_SetColorScheme(T,a) (T)->lpVtbl->SetColorScheme(T,a)
239#endif
240
241EXTERN_C const IID IID_IOleWindow;
242#define INTERFACE IOleWindow
243DECLARE_INTERFACE_(IOleWindow,IUnknown)
244{
245 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
246 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
247 STDMETHOD_(ULONG,Release)(THIS) PURE;
248 STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
249 STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
250};
251#undef INTERFACE
252
253#ifdef COBJMACROS
254#define IOleWindow_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
255#define IOleWindow_AddRef(T) (T)->lpVtbl->AddRef(T)
256#define IOleWindow_Release(T) (T)->lpVtbl->Release(T)
257#define IOleWindow_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
258#define IOleWindow_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
259#endif
260
261EXTERN_C const IID IID_IOleInPlaceUIWindow;
262#define INTERFACE IOleInPlaceUIWindow
263DECLARE_INTERFACE_(IOleInPlaceUIWindow,IOleWindow)
264{
265 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
266 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
267 STDMETHOD_(ULONG,Release)(THIS) PURE;
268 STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
269 STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
270 STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
271 STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
272 STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
273 STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
274};
275#undef INTERFACE
276
277EXTERN_C const IID IID_IOleInPlaceObject;
278#define INTERFACE IOleInPlaceObject
279DECLARE_INTERFACE_(IOleInPlaceObject,IOleWindow)
280{
281 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
282 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
283 STDMETHOD_(ULONG,Release)(THIS) PURE;
284 STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
285 STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
286 STDMETHOD(InPlaceDeactivate)(THIS) PURE;
287 STDMETHOD(UIDeactivate)(THIS) PURE;
288 STDMETHOD(SetObjectRects)(THIS_ LPCRECT,LPCRECT) PURE;
289 STDMETHOD(ReactivateAndUndo)(THIS) PURE;
290};
291#undef INTERFACE
292
293EXTERN_C const IID IID_IOleInPlaceActiveObject;
294#define INTERFACE IOleInPlaceActiveObject
295DECLARE_INTERFACE_(IOleInPlaceActiveObject,IOleWindow)
296{
297 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
298 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
299 STDMETHOD_(ULONG,Release)(THIS) PURE;
300 STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
301 STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
302 STDMETHOD(TranslateAccelerator)(THIS_ LPMSG) PURE;
303 STDMETHOD(OnFrameWindowActivate)(THIS_ BOOL) PURE;
304 STDMETHOD(OnDocWindowActivate)(THIS_ BOOL) PURE;
305 STDMETHOD(ResizeBorder)(THIS_ LPCRECT,LPOLEINPLACEUIWINDOW,BOOL) PURE;
306 STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
307};
308#undef INTERFACE
309
310EXTERN_C const IID IID_IOleInPlaceFrame;
311#define INTERFACE IOleInPlaceFrame
312DECLARE_INTERFACE_(IOleInPlaceFrame,IOleInPlaceUIWindow)
313{
314 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
315 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
316 STDMETHOD_(ULONG,Release)(THIS) PURE;
317 STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
318 STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
319 STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
320 STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
321 STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
322 STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
323 STDMETHOD(InsertMenus)(THIS_ HMENU,LPOLEMENUGROUPWIDTHS) PURE;
324 STDMETHOD(SetMenu)(THIS_ HMENU,HOLEMENU,HWND) PURE;
325 STDMETHOD(RemoveMenus)(THIS_ HMENU) PURE;
326 STDMETHOD(SetStatusText)(THIS_ LPCOLESTR) PURE;
327 STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
328 STDMETHOD(TranslateAccelerator)(THIS_ LPMSG,WORD) PURE;
329};
330#undef INTERFACE
331
332#ifdef COBJMACROS
333#define IOleInPlaceFrame_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
334#define IOleInPlaceFrame_AddRef(T) (T)->lpVtbl->AddRef(T)
335#define IOleInPlaceFrame_Release(T) (T)->lpVtbl->Release(T)
336#define IOleInPlaceFrame_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
337#define IOleInPlaceFrame_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
338#define IOleInPlaceFrame_GetBorder(T,a) (T)->lpVtbl->GetBorder(T,a)
339#define IOleInPlaceFrame_RequestBorderSpace(T,a) (T)->lpVtbl->RequestBorderSpace(T,a)
340#define IOleInPlaceFrame_SetBorderSpace(T,a) (T)->lpVtbl->SetBorderSpace(T,a)
341#define IOleInPlaceFrame_SetActiveObject(T,a,b) (T)->lpVtbl->SetActiveObject(T,a,b)
342#define IOleInPlaceFrame_InsertMenus(T,a,b) (T)->lpVtbl->InsertMenus(T,a,b)
343#define IOleInPlaceFrame_SetMenu(T,a,b,c) (T)->lpVtbl->SetMenu(T,a,b,c)
344#define IOleInPlaceFrame_RemoveMenus(T,a) (T)->lpVtbl->RemoveMenus(T,a)
345#define IOleInPlaceFrame_SetStatusText(T,a) (T)->lpVtbl->SetStatusText(T,a)
346#define IOleInPlaceFrame_EnableModeless(T,a) (T)->lpVtbl->EnableModeless(T,a)
347#define IOleInPlaceFrame_TranslateAccelerator(T,a,b) (T)->lpVtbl->TranslateAccelerator(T,a,b)
348#endif
349
350EXTERN_C const IID IID_IOleInPlaceSite;
351#define INTERFACE IOleInPlaceSite
352DECLARE_INTERFACE_(IOleInPlaceSite,IOleWindow)
353{
354 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
355 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
356 STDMETHOD_(ULONG,Release)(THIS) PURE;
357 STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
358 STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
359 STDMETHOD(CanInPlaceActivate)(THIS) PURE;
360 STDMETHOD(OnInPlaceActivate)(THIS) PURE;
361 STDMETHOD(OnUIActivate)(THIS) PURE;
362 STDMETHOD(GetWindowContext)(THIS_ IOleInPlaceFrame**,IOleInPlaceUIWindow**,LPRECT,LPRECT,LPOLEINPLACEFRAMEINFO) PURE;
363 STDMETHOD(Scroll)(THIS_ SIZE) PURE;
364 STDMETHOD(OnUIDeactivate)(THIS_ BOOL) PURE;
365 STDMETHOD(OnInPlaceDeactivate)(THIS) PURE;
366 STDMETHOD(DiscardUndoState)(THIS) PURE;
367 STDMETHOD(DeactivateAndUndo)(THIS) PURE;
368 STDMETHOD(OnPosRectChange)(THIS_ LPCRECT) PURE;
369};
370#undef INTERFACE
371
372EXTERN_C const IID IID_IOleAdviseHolder;
373#define INTERFACE IOleAdviseHolder
374DECLARE_INTERFACE_(IOleAdviseHolder,IUnknown)
375{
376 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
377 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
378 STDMETHOD_(ULONG,Release)(THIS) PURE;
379 STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
380 STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
381 STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
382 STDMETHOD(SendOnRename)(THIS_ LPMONIKER) PURE;
383 STDMETHOD(SendOnSave)(THIS) PURE;
384 STDMETHOD(SendOnClose)(THIS) PURE;
385};
386#undef INTERFACE
387
388#ifdef COBJMACROS
389#define IOleAdviseHolder_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
390#define IOleAdviseHolder_AddRef(T) (T)->lpVtbl->AddRef(T)
391#define IOleAdviseHolder_Release(T) (T)->lpVtbl->Release(T)
392#define IOleAdviseHolder_Advise(T,a,b) (T)->lpVtbl->Advise(T,a,b)
393#define IOleAdviseHolder_Unadvise(T,a) (T)->lpVtbl->Unadvise(T,a)
394#define IOleAdviseHolder_EnumAdvise(T,a) (T)->lpVtbl->EnumAdvise(T,a)
395#define IOleAdviseHolder_SendOnRename(T,a) (T)->lpVtbl->SendOnRename(T,a)
396#define IOleAdviseHolder_SendOnSave(T) (T)->lpVtbl->SendOnSave(T)
397#define IOleAdviseHolder_SendOnClose(T) (T)->lpVtbl->SendOnClose(T)
398#endif
399
400EXTERN_C const IID IID_IDropSource;
401#define INTERFACE IDropSource
402DECLARE_INTERFACE_(IDropSource,IUnknown)
403{
404 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
405 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
406 STDMETHOD_(ULONG,Release)(THIS) PURE;
407 STDMETHOD(QueryContinueDrag)(THIS_ BOOL,DWORD) PURE;
408 STDMETHOD(GiveFeedback)(THIS_ DWORD) PURE;
409};
410#undef INTERFACE
411
412#ifdef COBJMACROS
413#define IDropSource_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
414#define IDropSource_AddRef(T) (T)->lpVtbl->AddRef(T)
415#define IDropSource_Release(T) (T)->lpVtbl->Release(T)
416#define IDropSource_QueryContinueDrag(T,a,b) (T)->lpVtbl->QueryContinueDrag(T,a,b)
417#define IDropSource_GiveFeedback(T,a) (T)->lpVtbl->GiveFeedback(T,a)
418#endif
419
420EXTERN_C const IID IID_IDropTarget;
421#define INTERFACE IDropTarget
422DECLARE_INTERFACE_(IDropTarget,IUnknown)
423{
424 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
425 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
426 STDMETHOD_(ULONG,Release)(THIS) PURE;
427 STDMETHOD(DragEnter)(THIS_ LPDATAOBJECT,DWORD,POINTL,PDWORD) PURE;
428 STDMETHOD(DragOver)(THIS_ DWORD,POINTL,PDWORD) PURE;
429 STDMETHOD(DragLeave)(THIS) PURE;
430 STDMETHOD(Drop)(THIS_ LPDATAOBJECT,DWORD,POINTL,PDWORD) PURE;
431};
432#undef INTERFACE
433
434#ifdef COBJMACROS
435#define IDropTarget_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
436#define IDropTarget_AddRef(T) (T)->lpVtbl->AddRef(T)
437#define IDropTarget_Release(T) (T)->lpVtbl->Release(T)
438#define IDropTarget_DragEnter(T,a,b,c,d) (T)->lpVtbl->DragEnter(T,a,b,c,d)
439#define IDropTarget_DragOver(T,a,b,c) (T)->lpVtbl->DragOver(T,a,b,c)
440#define IDropTarget_DragLeave(T) (T)->lpVtbl->DragLeave(T)
441#define IDropTarget_Drop(T,a,b,c,d) (T)->lpVtbl->Drop(T,a,b,c,d)
442#endif
443
444typedef BOOL(CALLBACK *__IView_pfncont)(DWORD);
445EXTERN_C const IID IID_IViewObject;
446#define INTERFACE IViewObject
447DECLARE_INTERFACE_(IViewObject,IUnknown)
448{
449 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
450 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
451 STDMETHOD_(ULONG,Release)(THIS) PURE;
452 STDMETHOD(Draw)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,HDC,LPCRECTL,LPCRECTL,__IView_pfncont pfnContinue,DWORD) PURE;
453 STDMETHOD(GetColorSet)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,LPLOGPALETTE*) PURE;
454 STDMETHOD(Freeze)(THIS_ DWORD,LONG,PVOID,PDWORD) PURE;
455 STDMETHOD(Unfreeze)(THIS_ DWORD) PURE;
456 STDMETHOD(SetAdvise)(THIS_ DWORD,DWORD,IAdviseSink*) PURE;
457 STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
458};
459#undef INTERFACE
460
461#ifdef COBJMACROS
462#define IViewObject_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
463#define IViewObject_AddRef(T) (T)->lpVtbl->AddRef(T)
464#define IViewObject_Release(T) (T)->lpVtbl->Release(T)
465#define IViewObject_Draw(T,a,b,c,d,e,f,g,h,i,j) (T)->lpVtbl->Draw(T,a,b,c,d,e,f,g,h,i,j)
466#define IViewObject_GetColorSet(T,a,b,c,d,e,f) (T)->lpVtbl->GetColorSet(T,a,b,c,d,e,f)
467#define IViewObject_Freeze(T,a,b,c,d) (T)->lpVtbl->Freeze(T,a,b,c,d)
468#define IViewObject_Unfreeze(T,a) (T)->lpVtbl->Unfreeze(T,a)
469#define IViewObject_SetAdvise(T,a,b,c) (T)->lpVtbl->SetAdvise(T,a,b,c)
470#define IViewObject_GetAdvise(T,a,b,c) (T)->lpVtbl->GetAdvise(T,a,b,c)
471#endif
472
473EXTERN_C const IID IID_IViewObject2;
474#define INTERFACE IViewObject2
475DECLARE_INTERFACE_(IViewObject2,IViewObject)
476{
477 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
478 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
479 STDMETHOD_(ULONG,Release)(THIS) PURE;
480 STDMETHOD(Draw)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,HDC,LPCRECTL,LPCRECTL,__IView_pfncont pfnContinue,DWORD) PURE;
481 STDMETHOD(GetColorSet)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,LPLOGPALETTE*) PURE;
482 STDMETHOD(Freeze)(THIS_ DWORD,LONG,PVOID,PDWORD) PURE;
483 STDMETHOD(Unfreeze)(THIS_ DWORD) PURE;
484 STDMETHOD(SetAdvise)(THIS_ DWORD,DWORD,IAdviseSink*) PURE;
485 STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
486 STDMETHOD(GetExtent)(THIS_ DWORD,LONG,DVTARGETDEVICE*,LPSIZEL) PURE;
487};
488#undef INTERFACE
489
490#ifdef COBJMACROS
491#define IViewObject2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
492#define IViewObject2_AddRef(T) (T)->lpVtbl->AddRef(T)
493#define IViewObject2_Release(T) (T)->lpVtbl->Release(T)
494#define IViewObject2_Draw(T,a,b,c,d,e,f,g,h,i,j) (T)->lpVtbl->Draw(T,a,b,c,d,e,f,g,h,i,j)
495#define IViewObject2_GetColorSet(T,a,b,c,d,e,f) (T)->lpVtbl->GetColorSet(T,a,b,c,d,e,f)
496#define IViewObject2_Freeze(T,a,b,c,d) (T)->lpVtbl->Freeze(T,a,b,c,d)
497#define IViewObject2_Unfreeze(T,a) (T)->lpVtbl->Unfreeze(T,a)
498#define IViewObject2_SetAdvise(T,a,b,c) (T)->lpVtbl->SetAdvise(T,a,b,c)
499#define IViewObject2_GetAdvise(T,a,b,c) (T)->lpVtbl->GetAdvise(T,a,b,c)
500#define IViewObject2_GetExtent(T,a,b,c,d) (T)->lpVtbl->GetExtent(T,a,b,c,d)
501#endif
502
503EXTERN_C const IID IID_IOleCache;
504#define INTERFACE IOleCache
505DECLARE_INTERFACE_(IOleCache,IUnknown)
506{
507 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
508 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
509 STDMETHOD_(ULONG,Release)(THIS) PURE;
510 STDMETHOD(Cache)(THIS_ FORMATETC*,DWORD,DWORD*) PURE;
511 STDMETHOD(Uncache)(THIS_ DWORD) PURE;
512 STDMETHOD(EnumCache)(THIS_ IEnumSTATDATA**);
513 STDMETHOD(InitCache)(THIS_ LPDATAOBJECT);
514 STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL);
515};
516#undef INTERFACE
517
518#ifdef COBJMACROS
519#define IOleCache_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
520#define IOleCache_AddRef(T) (T)->lpVtbl->AddRef(T)
521#define IOleCache_Release(T) (T)->lpVtbl->Release(T)
522#define IOleCache_Cache(T,a,b,c) (T)->lpVtbl->Cache(T,a,b,c)
523#define IOleCache_Uncache(T,a) (T)->lpVtbl->Uncache(T,a)
524#define IOleCache_EnumCache(T,a) (T)->lpVtbl->EnumCache(T,a)
525#define IOleCache_InitCache(T,a) (T)->lpVtbl->InitCache(T,a)
526#define IOleCache_SetData(T,a,b,c) (T)->lpVtbl->SetData(T,a,b,c)
527#endif
528
529EXTERN_C const IID IID_IOleCache2;
530#define INTERFACE IOleCache2
531DECLARE_INTERFACE_(IOleCache2,IOleCache)
532{
533 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
534 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
535 STDMETHOD_(ULONG,Release)(THIS) PURE;
536 STDMETHOD(Cache)(THIS_ FORMATETC*,DWORD,DWORD*) PURE;
537 STDMETHOD(Uncache)(THIS_ DWORD) PURE;
538 STDMETHOD(EnumCache)(THIS_ IEnumSTATDATA**) PURE;
539 STDMETHOD(InitCache)(THIS_ LPDATAOBJECT) PURE;
540 STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
541 STDMETHOD(UpdateCache)(THIS_ LPDATAOBJECT,DWORD,LPVOID) PURE;
542 STDMETHOD(DiscardCache)(THIS_ DWORD) PURE;
543};
544#undef INTERFACE
545
546#ifdef COBJMACROS
547#define IOleCache2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
548#define IOleCache2_AddRef(T) (T)->lpVtbl->AddRef(T)
549#define IOleCache2_Release(T) (T)->lpVtbl->Release(T)
550#define IOleCache2_Cache(T,a,b,c) (T)->lpVtbl->Cache(T,a,b,c)
551#define IOleCache2_Uncache(T,a) (T)->lpVtbl->Uncache(T,a)
552#define IOleCache2_EnumCache(T,a) (T)->lpVtbl->EnumCache(T,a)
553#define IOleCache2_InitCache(T,a) (T)->lpVtbl->InitCache(T,a)
554#define IOleCache2_SetData(T,a,b,c) (T)->lpVtbl->SetData(T,a,b,c)
555#define IOleCache2_UpdateCache(T,a,b,c) (T)->lpVtbl->UpdateCache(T,a,b,c)
556#define IOleCache2_DiscardCache(T,a) (T)->lpVtbl->DiscardCache(T,a)
557#endif
558
559EXTERN_C const IID IID_IOleCacheControl;
560#define INTERFACE IOleCacheControl
561DECLARE_INTERFACE_(IOleCacheControl,IUnknown)
562{
563 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
564 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
565 STDMETHOD_(ULONG,Release)(THIS) PURE;
566 STDMETHOD(OnRun)(THIS_ LPDATAOBJECT) PURE;
567 STDMETHOD(OnStop)(THIS) PURE;
568};
569#undef INTERFACE
570
571#ifdef __cplusplus
572}
573#endif
574#endif
575
Note: See TracBrowser for help on using the repository browser.