1 /*** Autogenerated by WIDL 0.1 from oleidl.idl - Do not edit ***/
5 #ifndef __WIDL_OLEIDL_H
6 #define __WIDL_OLEIDL_H
11 typedef enum tagOLERENDER
{
16 } OLERENDER
, *LPOLERENDER
;
18 typedef struct tagOBJECTDESCRIPTOR
{
25 DWORD dwFullUserTypeName
;
27 } OBJECTDESCRIPTOR
, *POBJECTDESCRIPTOR
, *LPOBJECTDESCRIPTOR
, LINKSRCDESCRIPTOR
, *PLINKSRCDESCRIPTOR
, *LPLINKSRCDESCRIPTOR
;
29 #ifndef __IOleWindow_FWD_DEFINED__
30 #define __IOleWindow_FWD_DEFINED__
31 typedef struct IOleWindow IOleWindow
;
34 typedef IOleWindow
*LPOLEWINDOW
;
36 /*****************************************************************************
37 * IOleWindow interface
39 #ifndef __IOleWindow_INTERFACE_DEFINED__
40 #define __IOleWindow_INTERFACE_DEFINED__
42 DEFINE_GUID(IID_IOleWindow
, 0x00000114, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
43 #if defined(__cplusplus) && !defined(CINTERFACE)
44 struct IOleWindow
: public IUnknown
46 virtual HRESULT STDMETHODCALLTYPE
GetWindow(
49 virtual HRESULT STDMETHODCALLTYPE
ContextSensitiveHelp(
54 typedef struct IOleWindowVtbl IOleWindowVtbl
;
56 const IOleWindowVtbl
* lpVtbl
;
58 struct IOleWindowVtbl
{
59 ICOM_MSVTABLE_COMPAT_FIELDS
61 /*** IUnknown methods ***/
62 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
67 ULONG (STDMETHODCALLTYPE
*AddRef
)(
70 ULONG (STDMETHODCALLTYPE
*Release
)(
73 /*** IOleWindow methods ***/
74 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
78 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
84 /*** IUnknown methods ***/
85 #define IOleWindow_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
86 #define IOleWindow_AddRef(p) (p)->lpVtbl->AddRef(p)
87 #define IOleWindow_Release(p) (p)->lpVtbl->Release(p)
88 /*** IOleWindow methods ***/
89 #define IOleWindow_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
90 #define IOleWindow_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
94 #define IOleWindow_METHODS \
95 ICOM_MSVTABLE_COMPAT_FIELDS \
96 /*** IUnknown methods ***/ \
97 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
98 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
99 STDMETHOD_(ULONG,Release)(THIS) PURE; \
100 /*** IOleWindow methods ***/ \
101 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
102 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE;
104 HRESULT CALLBACK
IOleWindow_GetWindow_Proxy(
107 void __RPC_STUB
IOleWindow_GetWindow_Stub(
108 struct IRpcStubBuffer
* This
,
109 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
110 PRPC_MESSAGE pRpcMessage
,
111 DWORD
* pdwStubPhase
);
112 HRESULT CALLBACK
IOleWindow_ContextSensitiveHelp_Proxy(
115 void __RPC_STUB
IOleWindow_ContextSensitiveHelp_Stub(
116 struct IRpcStubBuffer
* This
,
117 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
118 PRPC_MESSAGE pRpcMessage
,
119 DWORD
* pdwStubPhase
);
121 #endif /* __IOleWindow_INTERFACE_DEFINED__ */
123 #ifndef __IOleInPlaceObject_FWD_DEFINED__
124 #define __IOleInPlaceObject_FWD_DEFINED__
125 typedef struct IOleInPlaceObject IOleInPlaceObject
;
128 typedef IOleInPlaceObject
*LPOLEINPLACEOBJECT
;
130 /*****************************************************************************
131 * IOleInPlaceObject interface
133 #ifndef __IOleInPlaceObject_INTERFACE_DEFINED__
134 #define __IOleInPlaceObject_INTERFACE_DEFINED__
136 DEFINE_GUID(IID_IOleInPlaceObject
, 0x00000113, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
137 #if defined(__cplusplus) && !defined(CINTERFACE)
138 struct IOleInPlaceObject
: public IOleWindow
140 virtual HRESULT STDMETHODCALLTYPE
InPlaceDeactivate(
143 virtual HRESULT STDMETHODCALLTYPE
UIDeactivate(
146 virtual HRESULT STDMETHODCALLTYPE
SetObjectRects(
148 LPCRECT lprcClipRect
) = 0;
150 virtual HRESULT STDMETHODCALLTYPE
ReactivateAndUndo(
155 typedef struct IOleInPlaceObjectVtbl IOleInPlaceObjectVtbl
;
156 struct IOleInPlaceObject
{
157 const IOleInPlaceObjectVtbl
* lpVtbl
;
159 struct IOleInPlaceObjectVtbl
{
160 ICOM_MSVTABLE_COMPAT_FIELDS
162 /*** IUnknown methods ***/
163 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
164 IOleInPlaceObject
* This
,
168 ULONG (STDMETHODCALLTYPE
*AddRef
)(
169 IOleInPlaceObject
* This
);
171 ULONG (STDMETHODCALLTYPE
*Release
)(
172 IOleInPlaceObject
* This
);
174 /*** IOleWindow methods ***/
175 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
176 IOleInPlaceObject
* This
,
179 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
180 IOleInPlaceObject
* This
,
183 /*** IOleInPlaceObject methods ***/
184 HRESULT (STDMETHODCALLTYPE
*InPlaceDeactivate
)(
185 IOleInPlaceObject
* This
);
187 HRESULT (STDMETHODCALLTYPE
*UIDeactivate
)(
188 IOleInPlaceObject
* This
);
190 HRESULT (STDMETHODCALLTYPE
*SetObjectRects
)(
191 IOleInPlaceObject
* This
,
193 LPCRECT lprcClipRect
);
195 HRESULT (STDMETHODCALLTYPE
*ReactivateAndUndo
)(
196 IOleInPlaceObject
* This
);
200 /*** IUnknown methods ***/
201 #define IOleInPlaceObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
202 #define IOleInPlaceObject_AddRef(p) (p)->lpVtbl->AddRef(p)
203 #define IOleInPlaceObject_Release(p) (p)->lpVtbl->Release(p)
204 /*** IOleWindow methods ***/
205 #define IOleInPlaceObject_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
206 #define IOleInPlaceObject_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
207 /*** IOleInPlaceObject methods ***/
208 #define IOleInPlaceObject_InPlaceDeactivate(p) (p)->lpVtbl->InPlaceDeactivate(p)
209 #define IOleInPlaceObject_UIDeactivate(p) (p)->lpVtbl->UIDeactivate(p)
210 #define IOleInPlaceObject_SetObjectRects(p,a,b) (p)->lpVtbl->SetObjectRects(p,a,b)
211 #define IOleInPlaceObject_ReactivateAndUndo(p) (p)->lpVtbl->ReactivateAndUndo(p)
215 #define IOleInPlaceObject_METHODS \
216 ICOM_MSVTABLE_COMPAT_FIELDS \
217 /*** IUnknown methods ***/ \
218 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
219 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
220 STDMETHOD_(ULONG,Release)(THIS) PURE; \
221 /*** IOleWindow methods ***/ \
222 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
223 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
224 /*** IOleInPlaceObject methods ***/ \
225 STDMETHOD_(HRESULT,InPlaceDeactivate)(THIS) PURE; \
226 STDMETHOD_(HRESULT,UIDeactivate)(THIS) PURE; \
227 STDMETHOD_(HRESULT,SetObjectRects)(THIS_ LPCRECT lprcPosRect, LPCRECT lprcClipRect) PURE; \
228 STDMETHOD_(HRESULT,ReactivateAndUndo)(THIS) PURE;
230 HRESULT CALLBACK
IOleInPlaceObject_InPlaceDeactivate_Proxy(
231 IOleInPlaceObject
* This
);
232 void __RPC_STUB
IOleInPlaceObject_InPlaceDeactivate_Stub(
233 struct IRpcStubBuffer
* This
,
234 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
235 PRPC_MESSAGE pRpcMessage
,
236 DWORD
* pdwStubPhase
);
237 HRESULT CALLBACK
IOleInPlaceObject_UIDeactivate_Proxy(
238 IOleInPlaceObject
* This
);
239 void __RPC_STUB
IOleInPlaceObject_UIDeactivate_Stub(
240 struct IRpcStubBuffer
* This
,
241 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
242 PRPC_MESSAGE pRpcMessage
,
243 DWORD
* pdwStubPhase
);
244 HRESULT CALLBACK
IOleInPlaceObject_SetObjectRects_Proxy(
245 IOleInPlaceObject
* This
,
247 LPCRECT lprcClipRect
);
248 void __RPC_STUB
IOleInPlaceObject_SetObjectRects_Stub(
249 struct IRpcStubBuffer
* This
,
250 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
251 PRPC_MESSAGE pRpcMessage
,
252 DWORD
* pdwStubPhase
);
253 HRESULT CALLBACK
IOleInPlaceObject_ReactivateAndUndo_Proxy(
254 IOleInPlaceObject
* This
);
255 void __RPC_STUB
IOleInPlaceObject_ReactivateAndUndo_Stub(
256 struct IRpcStubBuffer
* This
,
257 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
258 PRPC_MESSAGE pRpcMessage
,
259 DWORD
* pdwStubPhase
);
261 #endif /* __IOleInPlaceObject_INTERFACE_DEFINED__ */
263 #ifndef __IOleInPlaceUIWindow_FWD_DEFINED__
264 #define __IOleInPlaceUIWindow_FWD_DEFINED__
265 typedef struct IOleInPlaceUIWindow IOleInPlaceUIWindow
;
268 #ifndef __IOleInPlaceActiveObject_FWD_DEFINED__
269 #define __IOleInPlaceActiveObject_FWD_DEFINED__
270 typedef struct IOleInPlaceActiveObject IOleInPlaceActiveObject
;
273 typedef IOleInPlaceActiveObject
*LPOLEINPLACEACTIVEOBJECT
;
276 /*****************************************************************************
277 * IOleInPlaceActiveObject interface
279 #ifndef __IOleInPlaceActiveObject_INTERFACE_DEFINED__
280 #define __IOleInPlaceActiveObject_INTERFACE_DEFINED__
282 DEFINE_GUID(IID_IOleInPlaceActiveObject
, 0x00000117, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
283 #if defined(__cplusplus) && !defined(CINTERFACE)
284 struct IOleInPlaceActiveObject
: public IOleWindow
286 virtual HRESULT STDMETHODCALLTYPE
TranslateAccelerator(
296 virtual HRESULT STDMETHODCALLTYPE
OnFrameWindowActivate(
299 virtual HRESULT STDMETHODCALLTYPE
OnDocWindowActivate(
302 virtual HRESULT STDMETHODCALLTYPE
ResizeBorder(
304 IOleInPlaceUIWindow
* pUIWindow
,
305 BOOL fFrameWindow
) = 0;
307 virtual HRESULT STDMETHODCALLTYPE
EnableModeless(
312 typedef struct IOleInPlaceActiveObjectVtbl IOleInPlaceActiveObjectVtbl
;
313 struct IOleInPlaceActiveObject
{
314 const IOleInPlaceActiveObjectVtbl
* lpVtbl
;
316 struct IOleInPlaceActiveObjectVtbl
{
317 ICOM_MSVTABLE_COMPAT_FIELDS
319 /*** IUnknown methods ***/
320 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
321 IOleInPlaceActiveObject
* This
,
325 ULONG (STDMETHODCALLTYPE
*AddRef
)(
326 IOleInPlaceActiveObject
* This
);
328 ULONG (STDMETHODCALLTYPE
*Release
)(
329 IOleInPlaceActiveObject
* This
);
331 /*** IOleWindow methods ***/
332 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
333 IOleInPlaceActiveObject
* This
,
336 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
337 IOleInPlaceActiveObject
* This
,
340 /*** IOleInPlaceActiveObject methods ***/
341 HRESULT (STDMETHODCALLTYPE
*TranslateAccelerator
)(
342 IOleInPlaceActiveObject
* This
,
343 struct tagMSG
* lpmsg
);
345 HRESULT (STDMETHODCALLTYPE
*OnFrameWindowActivate
)(
346 IOleInPlaceActiveObject
* This
,
349 HRESULT (STDMETHODCALLTYPE
*OnDocWindowActivate
)(
350 IOleInPlaceActiveObject
* This
,
353 HRESULT (STDMETHODCALLTYPE
*ResizeBorder
)(
354 IOleInPlaceActiveObject
* This
,
356 IOleInPlaceUIWindow
* pUIWindow
,
359 HRESULT (STDMETHODCALLTYPE
*EnableModeless
)(
360 IOleInPlaceActiveObject
* This
,
365 /*** IUnknown methods ***/
366 #define IOleInPlaceActiveObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
367 #define IOleInPlaceActiveObject_AddRef(p) (p)->lpVtbl->AddRef(p)
368 #define IOleInPlaceActiveObject_Release(p) (p)->lpVtbl->Release(p)
369 /*** IOleWindow methods ***/
370 #define IOleInPlaceActiveObject_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
371 #define IOleInPlaceActiveObject_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
372 /*** IOleInPlaceActiveObject methods ***/
373 #define IOleInPlaceActiveObject_TranslateAccelerator(p,a) (p)->lpVtbl->TranslateAccelerator(p,a)
374 #define IOleInPlaceActiveObject_OnFrameWindowActivate(p,a) (p)->lpVtbl->OnFrameWindowActivate(p,a)
375 #define IOleInPlaceActiveObject_OnDocWindowActivate(p,a) (p)->lpVtbl->OnDocWindowActivate(p,a)
376 #define IOleInPlaceActiveObject_ResizeBorder(p,a,b,c) (p)->lpVtbl->ResizeBorder(p,a,b,c)
377 #define IOleInPlaceActiveObject_EnableModeless(p,a) (p)->lpVtbl->EnableModeless(p,a)
381 #define IOleInPlaceActiveObject_METHODS \
382 ICOM_MSVTABLE_COMPAT_FIELDS \
383 /*** IUnknown methods ***/ \
384 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
385 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
386 STDMETHOD_(ULONG,Release)(THIS) PURE; \
387 /*** IOleWindow methods ***/ \
388 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
389 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
390 /*** IOleInPlaceActiveObject methods ***/ \
391 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ struct tagMSG* lpmsg) PURE; \
392 STDMETHOD_(HRESULT,OnFrameWindowActivate)(THIS_ BOOL fActivate) PURE; \
393 STDMETHOD_(HRESULT,OnDocWindowActivate)(THIS_ BOOL fActivate) PURE; \
394 STDMETHOD_(HRESULT,ResizeBorder)(THIS_ LPCRECT prcBorder, IOleInPlaceUIWindow* pUIWindow, BOOL fFrameWindow) PURE; \
395 STDMETHOD_(HRESULT,EnableModeless)(THIS_ BOOL fEnable) PURE;
397 HRESULT CALLBACK
IOleInPlaceActiveObject_RemoteTranslateAccelerator_Proxy(
398 IOleInPlaceActiveObject
* This
);
399 void __RPC_STUB
IOleInPlaceActiveObject_RemoteTranslateAccelerator_Stub(
400 struct IRpcStubBuffer
* This
,
401 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
402 PRPC_MESSAGE pRpcMessage
,
403 DWORD
* pdwStubPhase
);
404 HRESULT CALLBACK
IOleInPlaceActiveObject_TranslateAccelerator_Proxy(
405 IOleInPlaceActiveObject
* This
,
406 struct tagMSG
* lpmsg
);
407 HRESULT __RPC_STUB
IOleInPlaceActiveObject_TranslateAccelerator_Stub(
408 IOleInPlaceActiveObject
* This
);
409 HRESULT CALLBACK
IOleInPlaceActiveObject_OnFrameWindowActivate_Proxy(
410 IOleInPlaceActiveObject
* This
,
412 void __RPC_STUB
IOleInPlaceActiveObject_OnFrameWindowActivate_Stub(
413 struct IRpcStubBuffer
* This
,
414 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
415 PRPC_MESSAGE pRpcMessage
,
416 DWORD
* pdwStubPhase
);
417 HRESULT CALLBACK
IOleInPlaceActiveObject_OnDocWindowActivate_Proxy(
418 IOleInPlaceActiveObject
* This
,
420 void __RPC_STUB
IOleInPlaceActiveObject_OnDocWindowActivate_Stub(
421 struct IRpcStubBuffer
* This
,
422 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
423 PRPC_MESSAGE pRpcMessage
,
424 DWORD
* pdwStubPhase
);
425 HRESULT CALLBACK
IOleInPlaceActiveObject_RemoteResizeBorder_Proxy(
426 IOleInPlaceActiveObject
* This
,
429 IOleInPlaceUIWindow
* pUIWindow
,
431 void __RPC_STUB
IOleInPlaceActiveObject_RemoteResizeBorder_Stub(
432 struct IRpcStubBuffer
* This
,
433 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
434 PRPC_MESSAGE pRpcMessage
,
435 DWORD
* pdwStubPhase
);
436 HRESULT CALLBACK
IOleInPlaceActiveObject_ResizeBorder_Proxy(
437 IOleInPlaceActiveObject
* This
,
439 IOleInPlaceUIWindow
* pUIWindow
,
441 HRESULT __RPC_STUB
IOleInPlaceActiveObject_ResizeBorder_Stub(
442 IOleInPlaceActiveObject
* This
,
445 IOleInPlaceUIWindow
* pUIWindow
,
447 HRESULT CALLBACK
IOleInPlaceActiveObject_EnableModeless_Proxy(
448 IOleInPlaceActiveObject
* This
,
450 void __RPC_STUB
IOleInPlaceActiveObject_EnableModeless_Stub(
451 struct IRpcStubBuffer
* This
,
452 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
453 PRPC_MESSAGE pRpcMessage
,
454 DWORD
* pdwStubPhase
);
456 #endif /* __IOleInPlaceActiveObject_INTERFACE_DEFINED__ */
458 typedef IOleInPlaceUIWindow
*LPOLEINPLACEUIWINDOW
;
460 typedef RECT BORDERWIDTHS
;
462 typedef LPRECT LPBORDERWIDTHS
;
464 typedef LPCRECT LPCBORDERWIDTHS
;
466 /*****************************************************************************
467 * IOleInPlaceUIWindow interface
469 #ifndef __IOleInPlaceUIWindow_INTERFACE_DEFINED__
470 #define __IOleInPlaceUIWindow_INTERFACE_DEFINED__
472 DEFINE_GUID(IID_IOleInPlaceUIWindow
, 0x00000115, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
473 #if defined(__cplusplus) && !defined(CINTERFACE)
474 struct IOleInPlaceUIWindow
: public IOleWindow
476 virtual HRESULT STDMETHODCALLTYPE
GetBorder(
477 LPRECT lprectBorder
) = 0;
479 virtual HRESULT STDMETHODCALLTYPE
RequestBorderSpace(
480 LPCBORDERWIDTHS pborderwidths
) = 0;
482 virtual HRESULT STDMETHODCALLTYPE
SetBorderSpace(
483 LPCBORDERWIDTHS pborderwidths
) = 0;
485 virtual HRESULT STDMETHODCALLTYPE
SetActiveObject(
486 IOleInPlaceActiveObject
* pActiveObject
,
487 LPCOLESTR pszObjName
) = 0;
491 typedef struct IOleInPlaceUIWindowVtbl IOleInPlaceUIWindowVtbl
;
492 struct IOleInPlaceUIWindow
{
493 const IOleInPlaceUIWindowVtbl
* lpVtbl
;
495 struct IOleInPlaceUIWindowVtbl
{
496 ICOM_MSVTABLE_COMPAT_FIELDS
498 /*** IUnknown methods ***/
499 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
500 IOleInPlaceUIWindow
* This
,
504 ULONG (STDMETHODCALLTYPE
*AddRef
)(
505 IOleInPlaceUIWindow
* This
);
507 ULONG (STDMETHODCALLTYPE
*Release
)(
508 IOleInPlaceUIWindow
* This
);
510 /*** IOleWindow methods ***/
511 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
512 IOleInPlaceUIWindow
* This
,
515 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
516 IOleInPlaceUIWindow
* This
,
519 /*** IOleInPlaceUIWindow methods ***/
520 HRESULT (STDMETHODCALLTYPE
*GetBorder
)(
521 IOleInPlaceUIWindow
* This
,
522 LPRECT lprectBorder
);
524 HRESULT (STDMETHODCALLTYPE
*RequestBorderSpace
)(
525 IOleInPlaceUIWindow
* This
,
526 LPCBORDERWIDTHS pborderwidths
);
528 HRESULT (STDMETHODCALLTYPE
*SetBorderSpace
)(
529 IOleInPlaceUIWindow
* This
,
530 LPCBORDERWIDTHS pborderwidths
);
532 HRESULT (STDMETHODCALLTYPE
*SetActiveObject
)(
533 IOleInPlaceUIWindow
* This
,
534 IOleInPlaceActiveObject
* pActiveObject
,
535 LPCOLESTR pszObjName
);
539 /*** IUnknown methods ***/
540 #define IOleInPlaceUIWindow_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
541 #define IOleInPlaceUIWindow_AddRef(p) (p)->lpVtbl->AddRef(p)
542 #define IOleInPlaceUIWindow_Release(p) (p)->lpVtbl->Release(p)
543 /*** IOleWindow methods ***/
544 #define IOleInPlaceUIWindow_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
545 #define IOleInPlaceUIWindow_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
546 /*** IOleInPlaceUIWindow methods ***/
547 #define IOleInPlaceUIWindow_GetBorder(p,a) (p)->lpVtbl->GetBorder(p,a)
548 #define IOleInPlaceUIWindow_RequestBorderSpace(p,a) (p)->lpVtbl->RequestBorderSpace(p,a)
549 #define IOleInPlaceUIWindow_SetBorderSpace(p,a) (p)->lpVtbl->SetBorderSpace(p,a)
550 #define IOleInPlaceUIWindow_SetActiveObject(p,a,b) (p)->lpVtbl->SetActiveObject(p,a,b)
554 #define IOleInPlaceUIWindow_METHODS \
555 ICOM_MSVTABLE_COMPAT_FIELDS \
556 /*** IUnknown methods ***/ \
557 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
558 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
559 STDMETHOD_(ULONG,Release)(THIS) PURE; \
560 /*** IOleWindow methods ***/ \
561 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
562 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
563 /*** IOleInPlaceUIWindow methods ***/ \
564 STDMETHOD_(HRESULT,GetBorder)(THIS_ LPRECT lprectBorder) PURE; \
565 STDMETHOD_(HRESULT,RequestBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
566 STDMETHOD_(HRESULT,SetBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
567 STDMETHOD_(HRESULT,SetActiveObject)(THIS_ IOleInPlaceActiveObject* pActiveObject, LPCOLESTR pszObjName) PURE;
569 HRESULT CALLBACK
IOleInPlaceUIWindow_GetBorder_Proxy(
570 IOleInPlaceUIWindow
* This
,
571 LPRECT lprectBorder
);
572 void __RPC_STUB
IOleInPlaceUIWindow_GetBorder_Stub(
573 struct IRpcStubBuffer
* This
,
574 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
575 PRPC_MESSAGE pRpcMessage
,
576 DWORD
* pdwStubPhase
);
577 HRESULT CALLBACK
IOleInPlaceUIWindow_RequestBorderSpace_Proxy(
578 IOleInPlaceUIWindow
* This
,
579 LPCBORDERWIDTHS pborderwidths
);
580 void __RPC_STUB
IOleInPlaceUIWindow_RequestBorderSpace_Stub(
581 struct IRpcStubBuffer
* This
,
582 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
583 PRPC_MESSAGE pRpcMessage
,
584 DWORD
* pdwStubPhase
);
585 HRESULT CALLBACK
IOleInPlaceUIWindow_SetBorderSpace_Proxy(
586 IOleInPlaceUIWindow
* This
,
587 LPCBORDERWIDTHS pborderwidths
);
588 void __RPC_STUB
IOleInPlaceUIWindow_SetBorderSpace_Stub(
589 struct IRpcStubBuffer
* This
,
590 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
591 PRPC_MESSAGE pRpcMessage
,
592 DWORD
* pdwStubPhase
);
593 HRESULT CALLBACK
IOleInPlaceUIWindow_SetActiveObject_Proxy(
594 IOleInPlaceUIWindow
* This
,
595 IOleInPlaceActiveObject
* pActiveObject
,
596 LPCOLESTR pszObjName
);
597 void __RPC_STUB
IOleInPlaceUIWindow_SetActiveObject_Stub(
598 struct IRpcStubBuffer
* This
,
599 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
600 PRPC_MESSAGE pRpcMessage
,
601 DWORD
* pdwStubPhase
);
603 #endif /* __IOleInPlaceUIWindow_INTERFACE_DEFINED__ */
605 #ifndef __IOleInPlaceFrame_FWD_DEFINED__
606 #define __IOleInPlaceFrame_FWD_DEFINED__
607 typedef struct IOleInPlaceFrame IOleInPlaceFrame
;
610 typedef IOleInPlaceFrame
*LPOLEINPLACEFRAME
;
612 typedef struct tagOleInPlaceFrameInfo
{
618 } OLEINPLACEFRAMEINFO
, *LPOLEINPLACEFRAMEINFO
;
620 typedef struct tagOleMenuGroupWidths
{
622 } OLEMENUGROUPWIDTHS
, *LPOLEMENUGROUPWIDTHS
;
624 typedef HGLOBAL HOLEMENU
;
626 /*****************************************************************************
627 * IOleInPlaceFrame interface
629 #ifndef __IOleInPlaceFrame_INTERFACE_DEFINED__
630 #define __IOleInPlaceFrame_INTERFACE_DEFINED__
632 DEFINE_GUID(IID_IOleInPlaceFrame
, 0x00000116, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
633 #if defined(__cplusplus) && !defined(CINTERFACE)
634 struct IOleInPlaceFrame
: public IOleInPlaceUIWindow
636 virtual HRESULT STDMETHODCALLTYPE
InsertMenus(
638 LPOLEMENUGROUPWIDTHS lpMenuWidths
) = 0;
640 virtual HRESULT STDMETHODCALLTYPE
SetMenu(
643 HWND hwndActiveObject
) = 0;
645 virtual HRESULT STDMETHODCALLTYPE
RemoveMenus(
646 HMENU hmenuShared
) = 0;
648 virtual HRESULT STDMETHODCALLTYPE
SetStatusText(
649 LPCOLESTR pszStatusText
) = 0;
651 virtual HRESULT STDMETHODCALLTYPE
EnableModeless(
654 virtual HRESULT STDMETHODCALLTYPE
TranslateAccelerator(
655 struct tagMSG
* lpmsg
,
660 typedef struct IOleInPlaceFrameVtbl IOleInPlaceFrameVtbl
;
661 struct IOleInPlaceFrame
{
662 const IOleInPlaceFrameVtbl
* lpVtbl
;
664 struct IOleInPlaceFrameVtbl
{
665 ICOM_MSVTABLE_COMPAT_FIELDS
667 /*** IUnknown methods ***/
668 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
669 IOleInPlaceFrame
* This
,
673 ULONG (STDMETHODCALLTYPE
*AddRef
)(
674 IOleInPlaceFrame
* This
);
676 ULONG (STDMETHODCALLTYPE
*Release
)(
677 IOleInPlaceFrame
* This
);
679 /*** IOleWindow methods ***/
680 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
681 IOleInPlaceFrame
* This
,
684 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
685 IOleInPlaceFrame
* This
,
688 /*** IOleInPlaceUIWindow methods ***/
689 HRESULT (STDMETHODCALLTYPE
*GetBorder
)(
690 IOleInPlaceFrame
* This
,
691 LPRECT lprectBorder
);
693 HRESULT (STDMETHODCALLTYPE
*RequestBorderSpace
)(
694 IOleInPlaceFrame
* This
,
695 LPCBORDERWIDTHS pborderwidths
);
697 HRESULT (STDMETHODCALLTYPE
*SetBorderSpace
)(
698 IOleInPlaceFrame
* This
,
699 LPCBORDERWIDTHS pborderwidths
);
701 HRESULT (STDMETHODCALLTYPE
*SetActiveObject
)(
702 IOleInPlaceFrame
* This
,
703 IOleInPlaceActiveObject
* pActiveObject
,
704 LPCOLESTR pszObjName
);
706 /*** IOleInPlaceFrame methods ***/
707 HRESULT (STDMETHODCALLTYPE
*InsertMenus
)(
708 IOleInPlaceFrame
* This
,
710 LPOLEMENUGROUPWIDTHS lpMenuWidths
);
712 HRESULT (STDMETHODCALLTYPE
*SetMenu
)(
713 IOleInPlaceFrame
* This
,
716 HWND hwndActiveObject
);
718 HRESULT (STDMETHODCALLTYPE
*RemoveMenus
)(
719 IOleInPlaceFrame
* This
,
722 HRESULT (STDMETHODCALLTYPE
*SetStatusText
)(
723 IOleInPlaceFrame
* This
,
724 LPCOLESTR pszStatusText
);
726 HRESULT (STDMETHODCALLTYPE
*EnableModeless
)(
727 IOleInPlaceFrame
* This
,
730 HRESULT (STDMETHODCALLTYPE
*TranslateAccelerator
)(
731 IOleInPlaceFrame
* This
,
732 struct tagMSG
* lpmsg
,
737 /*** IUnknown methods ***/
738 #define IOleInPlaceFrame_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
739 #define IOleInPlaceFrame_AddRef(p) (p)->lpVtbl->AddRef(p)
740 #define IOleInPlaceFrame_Release(p) (p)->lpVtbl->Release(p)
741 /*** IOleWindow methods ***/
742 #define IOleInPlaceFrame_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
743 #define IOleInPlaceFrame_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
744 /*** IOleInPlaceUIWindow methods ***/
745 #define IOleInPlaceFrame_GetBorder(p,a) (p)->lpVtbl->GetBorder(p,a)
746 #define IOleInPlaceFrame_RequestBorderSpace(p,a) (p)->lpVtbl->RequestBorderSpace(p,a)
747 #define IOleInPlaceFrame_SetBorderSpace(p,a) (p)->lpVtbl->SetBorderSpace(p,a)
748 #define IOleInPlaceFrame_SetActiveObject(p,a,b) (p)->lpVtbl->SetActiveObject(p,a,b)
749 /*** IOleInPlaceFrame methods ***/
750 #define IOleInPlaceFrame_InsertMenus(p,a,b) (p)->lpVtbl->InsertMenus(p,a,b)
751 #define IOleInPlaceFrame_SetMenu(p,a,b,c) (p)->lpVtbl->SetMenu(p,a,b,c)
752 #define IOleInPlaceFrame_RemoveMenus(p,a) (p)->lpVtbl->RemoveMenus(p,a)
753 #define IOleInPlaceFrame_SetStatusText(p,a) (p)->lpVtbl->SetStatusText(p,a)
754 #define IOleInPlaceFrame_EnableModeless(p,a) (p)->lpVtbl->EnableModeless(p,a)
755 #define IOleInPlaceFrame_TranslateAccelerator(p,a,b) (p)->lpVtbl->TranslateAccelerator(p,a,b)
759 #define IOleInPlaceFrame_METHODS \
760 ICOM_MSVTABLE_COMPAT_FIELDS \
761 /*** IUnknown methods ***/ \
762 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
763 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
764 STDMETHOD_(ULONG,Release)(THIS) PURE; \
765 /*** IOleWindow methods ***/ \
766 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
767 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
768 /*** IOleInPlaceUIWindow methods ***/ \
769 STDMETHOD_(HRESULT,GetBorder)(THIS_ LPRECT lprectBorder) PURE; \
770 STDMETHOD_(HRESULT,RequestBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
771 STDMETHOD_(HRESULT,SetBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
772 STDMETHOD_(HRESULT,SetActiveObject)(THIS_ IOleInPlaceActiveObject* pActiveObject, LPCOLESTR pszObjName) PURE; \
773 /*** IOleInPlaceFrame methods ***/ \
774 STDMETHOD_(HRESULT,InsertMenus)(THIS_ HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \
775 STDMETHOD_(HRESULT,SetMenu)(THIS_ HMENU hmenuShared, HOLEMENU holemenu, HWND hwndActiveObject) PURE; \
776 STDMETHOD_(HRESULT,RemoveMenus)(THIS_ HMENU hmenuShared) PURE; \
777 STDMETHOD_(HRESULT,SetStatusText)(THIS_ LPCOLESTR pszStatusText) PURE; \
778 STDMETHOD_(HRESULT,EnableModeless)(THIS_ BOOL fEnable) PURE; \
779 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ struct tagMSG* lpmsg, WORD wID) PURE;
781 HRESULT CALLBACK
IOleInPlaceFrame_InsertMenus_Proxy(
782 IOleInPlaceFrame
* This
,
784 LPOLEMENUGROUPWIDTHS lpMenuWidths
);
785 void __RPC_STUB
IOleInPlaceFrame_InsertMenus_Stub(
786 struct IRpcStubBuffer
* This
,
787 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
788 PRPC_MESSAGE pRpcMessage
,
789 DWORD
* pdwStubPhase
);
790 HRESULT CALLBACK
IOleInPlaceFrame_SetMenu_Proxy(
791 IOleInPlaceFrame
* This
,
794 HWND hwndActiveObject
);
795 void __RPC_STUB
IOleInPlaceFrame_SetMenu_Stub(
796 struct IRpcStubBuffer
* This
,
797 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
798 PRPC_MESSAGE pRpcMessage
,
799 DWORD
* pdwStubPhase
);
800 HRESULT CALLBACK
IOleInPlaceFrame_RemoveMenus_Proxy(
801 IOleInPlaceFrame
* This
,
803 void __RPC_STUB
IOleInPlaceFrame_RemoveMenus_Stub(
804 struct IRpcStubBuffer
* This
,
805 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
806 PRPC_MESSAGE pRpcMessage
,
807 DWORD
* pdwStubPhase
);
808 HRESULT CALLBACK
IOleInPlaceFrame_SetStatusText_Proxy(
809 IOleInPlaceFrame
* This
,
810 LPCOLESTR pszStatusText
);
811 void __RPC_STUB
IOleInPlaceFrame_SetStatusText_Stub(
812 struct IRpcStubBuffer
* This
,
813 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
814 PRPC_MESSAGE pRpcMessage
,
815 DWORD
* pdwStubPhase
);
816 HRESULT CALLBACK
IOleInPlaceFrame_EnableModeless_Proxy(
817 IOleInPlaceFrame
* This
,
819 void __RPC_STUB
IOleInPlaceFrame_EnableModeless_Stub(
820 struct IRpcStubBuffer
* This
,
821 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
822 PRPC_MESSAGE pRpcMessage
,
823 DWORD
* pdwStubPhase
);
824 HRESULT CALLBACK
IOleInPlaceFrame_TranslateAccelerator_Proxy(
825 IOleInPlaceFrame
* This
,
826 struct tagMSG
* lpmsg
,
828 void __RPC_STUB
IOleInPlaceFrame_TranslateAccelerator_Stub(
829 struct IRpcStubBuffer
* This
,
830 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
831 PRPC_MESSAGE pRpcMessage
,
832 DWORD
* pdwStubPhase
);
834 #endif /* __IOleInPlaceFrame_INTERFACE_DEFINED__ */
836 #ifndef __IOleInPlaceSite_FWD_DEFINED__
837 #define __IOleInPlaceSite_FWD_DEFINED__
838 typedef struct IOleInPlaceSite IOleInPlaceSite
;
841 typedef IOleInPlaceSite
*LPOLEINPLACESITE
;
843 /*****************************************************************************
844 * IOleInPlaceSite interface
846 #ifndef __IOleInPlaceSite_INTERFACE_DEFINED__
847 #define __IOleInPlaceSite_INTERFACE_DEFINED__
849 DEFINE_GUID(IID_IOleInPlaceSite
, 0x00000119, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
850 #if defined(__cplusplus) && !defined(CINTERFACE)
851 struct IOleInPlaceSite
: public IOleWindow
853 virtual HRESULT STDMETHODCALLTYPE
CanInPlaceActivate(
856 virtual HRESULT STDMETHODCALLTYPE
OnInPlaceActivate(
859 virtual HRESULT STDMETHODCALLTYPE
OnUIActivate(
862 virtual HRESULT STDMETHODCALLTYPE
GetWindowContext(
863 IOleInPlaceFrame
** ppFrame
,
864 IOleInPlaceUIWindow
** ppDoc
,
867 LPOLEINPLACEFRAMEINFO lpFrameInfo
) = 0;
869 virtual HRESULT STDMETHODCALLTYPE
Scroll(
870 SIZE scrollExtant
) = 0;
872 virtual HRESULT STDMETHODCALLTYPE
OnUIDeactivate(
875 virtual HRESULT STDMETHODCALLTYPE
OnInPlaceDeactivate(
878 virtual HRESULT STDMETHODCALLTYPE
DiscardUndoState(
881 virtual HRESULT STDMETHODCALLTYPE
DeactivateAndUndo(
884 virtual HRESULT STDMETHODCALLTYPE
OnPosRectChange(
885 LPCRECT lprcPosRect
) = 0;
889 typedef struct IOleInPlaceSiteVtbl IOleInPlaceSiteVtbl
;
890 struct IOleInPlaceSite
{
891 const IOleInPlaceSiteVtbl
* lpVtbl
;
893 struct IOleInPlaceSiteVtbl
{
894 ICOM_MSVTABLE_COMPAT_FIELDS
896 /*** IUnknown methods ***/
897 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
898 IOleInPlaceSite
* This
,
902 ULONG (STDMETHODCALLTYPE
*AddRef
)(
903 IOleInPlaceSite
* This
);
905 ULONG (STDMETHODCALLTYPE
*Release
)(
906 IOleInPlaceSite
* This
);
908 /*** IOleWindow methods ***/
909 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
910 IOleInPlaceSite
* This
,
913 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
914 IOleInPlaceSite
* This
,
917 /*** IOleInPlaceSite methods ***/
918 HRESULT (STDMETHODCALLTYPE
*CanInPlaceActivate
)(
919 IOleInPlaceSite
* This
);
921 HRESULT (STDMETHODCALLTYPE
*OnInPlaceActivate
)(
922 IOleInPlaceSite
* This
);
924 HRESULT (STDMETHODCALLTYPE
*OnUIActivate
)(
925 IOleInPlaceSite
* This
);
927 HRESULT (STDMETHODCALLTYPE
*GetWindowContext
)(
928 IOleInPlaceSite
* This
,
929 IOleInPlaceFrame
** ppFrame
,
930 IOleInPlaceUIWindow
** ppDoc
,
933 LPOLEINPLACEFRAMEINFO lpFrameInfo
);
935 HRESULT (STDMETHODCALLTYPE
*Scroll
)(
936 IOleInPlaceSite
* This
,
939 HRESULT (STDMETHODCALLTYPE
*OnUIDeactivate
)(
940 IOleInPlaceSite
* This
,
943 HRESULT (STDMETHODCALLTYPE
*OnInPlaceDeactivate
)(
944 IOleInPlaceSite
* This
);
946 HRESULT (STDMETHODCALLTYPE
*DiscardUndoState
)(
947 IOleInPlaceSite
* This
);
949 HRESULT (STDMETHODCALLTYPE
*DeactivateAndUndo
)(
950 IOleInPlaceSite
* This
);
952 HRESULT (STDMETHODCALLTYPE
*OnPosRectChange
)(
953 IOleInPlaceSite
* This
,
954 LPCRECT lprcPosRect
);
958 /*** IUnknown methods ***/
959 #define IOleInPlaceSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
960 #define IOleInPlaceSite_AddRef(p) (p)->lpVtbl->AddRef(p)
961 #define IOleInPlaceSite_Release(p) (p)->lpVtbl->Release(p)
962 /*** IOleWindow methods ***/
963 #define IOleInPlaceSite_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
964 #define IOleInPlaceSite_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
965 /*** IOleInPlaceSite methods ***/
966 #define IOleInPlaceSite_CanInPlaceActivate(p) (p)->lpVtbl->CanInPlaceActivate(p)
967 #define IOleInPlaceSite_OnInPlaceActivate(p) (p)->lpVtbl->OnInPlaceActivate(p)
968 #define IOleInPlaceSite_OnUIActivate(p) (p)->lpVtbl->OnUIActivate(p)
969 #define IOleInPlaceSite_GetWindowContext(p,a,b,c,d,e) (p)->lpVtbl->GetWindowContext(p,a,b,c,d,e)
970 #define IOleInPlaceSite_Scroll(p,a) (p)->lpVtbl->Scroll(p,a)
971 #define IOleInPlaceSite_OnUIDeactivate(p,a) (p)->lpVtbl->OnUIDeactivate(p,a)
972 #define IOleInPlaceSite_OnInPlaceDeactivate(p) (p)->lpVtbl->OnInPlaceDeactivate(p)
973 #define IOleInPlaceSite_DiscardUndoState(p) (p)->lpVtbl->DiscardUndoState(p)
974 #define IOleInPlaceSite_DeactivateAndUndo(p) (p)->lpVtbl->DeactivateAndUndo(p)
975 #define IOleInPlaceSite_OnPosRectChange(p,a) (p)->lpVtbl->OnPosRectChange(p,a)
979 #define IOleInPlaceSite_METHODS \
980 ICOM_MSVTABLE_COMPAT_FIELDS \
981 /*** IUnknown methods ***/ \
982 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
983 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
984 STDMETHOD_(ULONG,Release)(THIS) PURE; \
985 /*** IOleWindow methods ***/ \
986 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
987 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
988 /*** IOleInPlaceSite methods ***/ \
989 STDMETHOD_(HRESULT,CanInPlaceActivate)(THIS) PURE; \
990 STDMETHOD_(HRESULT,OnInPlaceActivate)(THIS) PURE; \
991 STDMETHOD_(HRESULT,OnUIActivate)(THIS) PURE; \
992 STDMETHOD_(HRESULT,GetWindowContext)(THIS_ IOleInPlaceFrame** ppFrame, IOleInPlaceUIWindow** ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) PURE; \
993 STDMETHOD_(HRESULT,Scroll)(THIS_ SIZE scrollExtant) PURE; \
994 STDMETHOD_(HRESULT,OnUIDeactivate)(THIS_ BOOL fUndoable) PURE; \
995 STDMETHOD_(HRESULT,OnInPlaceDeactivate)(THIS) PURE; \
996 STDMETHOD_(HRESULT,DiscardUndoState)(THIS) PURE; \
997 STDMETHOD_(HRESULT,DeactivateAndUndo)(THIS) PURE; \
998 STDMETHOD_(HRESULT,OnPosRectChange)(THIS_ LPCRECT lprcPosRect) PURE;
1000 HRESULT CALLBACK
IOleInPlaceSite_CanInPlaceActivate_Proxy(
1001 IOleInPlaceSite
* This
);
1002 void __RPC_STUB
IOleInPlaceSite_CanInPlaceActivate_Stub(
1003 struct IRpcStubBuffer
* This
,
1004 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1005 PRPC_MESSAGE pRpcMessage
,
1006 DWORD
* pdwStubPhase
);
1007 HRESULT CALLBACK
IOleInPlaceSite_OnInPlaceActivate_Proxy(
1008 IOleInPlaceSite
* This
);
1009 void __RPC_STUB
IOleInPlaceSite_OnInPlaceActivate_Stub(
1010 struct IRpcStubBuffer
* This
,
1011 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1012 PRPC_MESSAGE pRpcMessage
,
1013 DWORD
* pdwStubPhase
);
1014 HRESULT CALLBACK
IOleInPlaceSite_OnUIActivate_Proxy(
1015 IOleInPlaceSite
* This
);
1016 void __RPC_STUB
IOleInPlaceSite_OnUIActivate_Stub(
1017 struct IRpcStubBuffer
* This
,
1018 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1019 PRPC_MESSAGE pRpcMessage
,
1020 DWORD
* pdwStubPhase
);
1021 HRESULT CALLBACK
IOleInPlaceSite_GetWindowContext_Proxy(
1022 IOleInPlaceSite
* This
,
1023 IOleInPlaceFrame
** ppFrame
,
1024 IOleInPlaceUIWindow
** ppDoc
,
1026 LPRECT lprcClipRect
,
1027 LPOLEINPLACEFRAMEINFO lpFrameInfo
);
1028 void __RPC_STUB
IOleInPlaceSite_GetWindowContext_Stub(
1029 struct IRpcStubBuffer
* This
,
1030 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1031 PRPC_MESSAGE pRpcMessage
,
1032 DWORD
* pdwStubPhase
);
1033 HRESULT CALLBACK
IOleInPlaceSite_Scroll_Proxy(
1034 IOleInPlaceSite
* This
,
1036 void __RPC_STUB
IOleInPlaceSite_Scroll_Stub(
1037 struct IRpcStubBuffer
* This
,
1038 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1039 PRPC_MESSAGE pRpcMessage
,
1040 DWORD
* pdwStubPhase
);
1041 HRESULT CALLBACK
IOleInPlaceSite_OnUIDeactivate_Proxy(
1042 IOleInPlaceSite
* This
,
1044 void __RPC_STUB
IOleInPlaceSite_OnUIDeactivate_Stub(
1045 struct IRpcStubBuffer
* This
,
1046 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1047 PRPC_MESSAGE pRpcMessage
,
1048 DWORD
* pdwStubPhase
);
1049 HRESULT CALLBACK
IOleInPlaceSite_OnInPlaceDeactivate_Proxy(
1050 IOleInPlaceSite
* This
);
1051 void __RPC_STUB
IOleInPlaceSite_OnInPlaceDeactivate_Stub(
1052 struct IRpcStubBuffer
* This
,
1053 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1054 PRPC_MESSAGE pRpcMessage
,
1055 DWORD
* pdwStubPhase
);
1056 HRESULT CALLBACK
IOleInPlaceSite_DiscardUndoState_Proxy(
1057 IOleInPlaceSite
* This
);
1058 void __RPC_STUB
IOleInPlaceSite_DiscardUndoState_Stub(
1059 struct IRpcStubBuffer
* This
,
1060 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1061 PRPC_MESSAGE pRpcMessage
,
1062 DWORD
* pdwStubPhase
);
1063 HRESULT CALLBACK
IOleInPlaceSite_DeactivateAndUndo_Proxy(
1064 IOleInPlaceSite
* This
);
1065 void __RPC_STUB
IOleInPlaceSite_DeactivateAndUndo_Stub(
1066 struct IRpcStubBuffer
* This
,
1067 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1068 PRPC_MESSAGE pRpcMessage
,
1069 DWORD
* pdwStubPhase
);
1070 HRESULT CALLBACK
IOleInPlaceSite_OnPosRectChange_Proxy(
1071 IOleInPlaceSite
* This
,
1072 LPCRECT lprcPosRect
);
1073 void __RPC_STUB
IOleInPlaceSite_OnPosRectChange_Stub(
1074 struct IRpcStubBuffer
* This
,
1075 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1076 PRPC_MESSAGE pRpcMessage
,
1077 DWORD
* pdwStubPhase
);
1079 #endif /* __IOleInPlaceSite_INTERFACE_DEFINED__ */
1081 #ifndef __IParseDisplayName_FWD_DEFINED__
1082 #define __IParseDisplayName_FWD_DEFINED__
1083 typedef struct IParseDisplayName IParseDisplayName
;
1086 typedef IParseDisplayName
*LPPARSEDISPLAYNAME
;
1088 /*****************************************************************************
1089 * IParseDisplayName interface
1091 #ifndef __IParseDisplayName_INTERFACE_DEFINED__
1092 #define __IParseDisplayName_INTERFACE_DEFINED__
1094 DEFINE_GUID(IID_IParseDisplayName
, 0x0000011a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1095 #if defined(__cplusplus) && !defined(CINTERFACE)
1096 struct IParseDisplayName
: public IUnknown
1098 virtual HRESULT STDMETHODCALLTYPE
ParseDisplayName(
1100 LPOLESTR pszDisplayName
,
1102 IMoniker
** ppmkOut
) = 0;
1106 typedef struct IParseDisplayNameVtbl IParseDisplayNameVtbl
;
1107 struct IParseDisplayName
{
1108 const IParseDisplayNameVtbl
* lpVtbl
;
1110 struct IParseDisplayNameVtbl
{
1111 ICOM_MSVTABLE_COMPAT_FIELDS
1113 /*** IUnknown methods ***/
1114 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1115 IParseDisplayName
* This
,
1119 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1120 IParseDisplayName
* This
);
1122 ULONG (STDMETHODCALLTYPE
*Release
)(
1123 IParseDisplayName
* This
);
1125 /*** IParseDisplayName methods ***/
1126 HRESULT (STDMETHODCALLTYPE
*ParseDisplayName
)(
1127 IParseDisplayName
* This
,
1129 LPOLESTR pszDisplayName
,
1131 IMoniker
** ppmkOut
);
1135 /*** IUnknown methods ***/
1136 #define IParseDisplayName_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1137 #define IParseDisplayName_AddRef(p) (p)->lpVtbl->AddRef(p)
1138 #define IParseDisplayName_Release(p) (p)->lpVtbl->Release(p)
1139 /*** IParseDisplayName methods ***/
1140 #define IParseDisplayName_ParseDisplayName(p,a,b,c,d) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d)
1144 #define IParseDisplayName_METHODS \
1145 ICOM_MSVTABLE_COMPAT_FIELDS \
1146 /*** IUnknown methods ***/ \
1147 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1148 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1149 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1150 /*** IParseDisplayName methods ***/ \
1151 STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE;
1153 HRESULT CALLBACK
IParseDisplayName_ParseDisplayName_Proxy(
1154 IParseDisplayName
* This
,
1156 LPOLESTR pszDisplayName
,
1158 IMoniker
** ppmkOut
);
1159 void __RPC_STUB
IParseDisplayName_ParseDisplayName_Stub(
1160 struct IRpcStubBuffer
* This
,
1161 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1162 PRPC_MESSAGE pRpcMessage
,
1163 DWORD
* pdwStubPhase
);
1165 #endif /* __IParseDisplayName_INTERFACE_DEFINED__ */
1167 #ifndef __IOleContainer_FWD_DEFINED__
1168 #define __IOleContainer_FWD_DEFINED__
1169 typedef struct IOleContainer IOleContainer
;
1172 typedef IOleContainer
*LPOLECONTAINER
;
1174 /*****************************************************************************
1175 * IOleContainer interface
1177 #ifndef __IOleContainer_INTERFACE_DEFINED__
1178 #define __IOleContainer_INTERFACE_DEFINED__
1180 DEFINE_GUID(IID_IOleContainer
, 0x0000011b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1181 #if defined(__cplusplus) && !defined(CINTERFACE)
1182 struct IOleContainer
: public IParseDisplayName
1184 virtual HRESULT STDMETHODCALLTYPE
EnumObjects(
1186 IEnumUnknown
** ppenum
) = 0;
1188 virtual HRESULT STDMETHODCALLTYPE
LockContainer(
1193 typedef struct IOleContainerVtbl IOleContainerVtbl
;
1194 struct IOleContainer
{
1195 const IOleContainerVtbl
* lpVtbl
;
1197 struct IOleContainerVtbl
{
1198 ICOM_MSVTABLE_COMPAT_FIELDS
1200 /*** IUnknown methods ***/
1201 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1202 IOleContainer
* This
,
1206 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1207 IOleContainer
* This
);
1209 ULONG (STDMETHODCALLTYPE
*Release
)(
1210 IOleContainer
* This
);
1212 /*** IParseDisplayName methods ***/
1213 HRESULT (STDMETHODCALLTYPE
*ParseDisplayName
)(
1214 IOleContainer
* This
,
1216 LPOLESTR pszDisplayName
,
1218 IMoniker
** ppmkOut
);
1220 /*** IOleContainer methods ***/
1221 HRESULT (STDMETHODCALLTYPE
*EnumObjects
)(
1222 IOleContainer
* This
,
1224 IEnumUnknown
** ppenum
);
1226 HRESULT (STDMETHODCALLTYPE
*LockContainer
)(
1227 IOleContainer
* This
,
1232 /*** IUnknown methods ***/
1233 #define IOleContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1234 #define IOleContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
1235 #define IOleContainer_Release(p) (p)->lpVtbl->Release(p)
1236 /*** IParseDisplayName methods ***/
1237 #define IOleContainer_ParseDisplayName(p,a,b,c,d) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d)
1238 /*** IOleContainer methods ***/
1239 #define IOleContainer_EnumObjects(p,a,b) (p)->lpVtbl->EnumObjects(p,a,b)
1240 #define IOleContainer_LockContainer(p,a) (p)->lpVtbl->LockContainer(p,a)
1244 #define IOleContainer_METHODS \
1245 ICOM_MSVTABLE_COMPAT_FIELDS \
1246 /*** IUnknown methods ***/ \
1247 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1248 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1249 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1250 /*** IParseDisplayName methods ***/ \
1251 STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE; \
1252 /*** IOleContainer methods ***/ \
1253 STDMETHOD_(HRESULT,EnumObjects)(THIS_ DWORD grfFlags, IEnumUnknown** ppenum) PURE; \
1254 STDMETHOD_(HRESULT,LockContainer)(THIS_ BOOL fLock) PURE;
1256 HRESULT CALLBACK
IOleContainer_EnumObjects_Proxy(
1257 IOleContainer
* This
,
1259 IEnumUnknown
** ppenum
);
1260 void __RPC_STUB
IOleContainer_EnumObjects_Stub(
1261 struct IRpcStubBuffer
* This
,
1262 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1263 PRPC_MESSAGE pRpcMessage
,
1264 DWORD
* pdwStubPhase
);
1265 HRESULT CALLBACK
IOleContainer_LockContainer_Proxy(
1266 IOleContainer
* This
,
1268 void __RPC_STUB
IOleContainer_LockContainer_Stub(
1269 struct IRpcStubBuffer
* This
,
1270 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1271 PRPC_MESSAGE pRpcMessage
,
1272 DWORD
* pdwStubPhase
);
1274 #endif /* __IOleContainer_INTERFACE_DEFINED__ */
1276 #ifndef __IOleItemContainer_FWD_DEFINED__
1277 #define __IOleItemContainer_FWD_DEFINED__
1278 typedef struct IOleItemContainer IOleItemContainer
;
1281 typedef IOleItemContainer
*LPOLEITEMCONTAINER
;
1283 typedef enum tagBINDSPEED
{
1284 BINDSPEED_INDEFINITE
= 1,
1285 BINDSPEED_MODERATE
= 2,
1286 BINDSPEED_IMMEDIATE
= 3
1289 typedef enum tagOLECONTF
{
1290 OLECONTF_EMBEDDINGS
= 1,
1292 OLECONTF_OTHERS
= 4,
1293 OLECONTF_OLNYUSER
= 8,
1294 OLECONTF_ONLYIFRUNNING
= 16
1300 /*****************************************************************************
1301 * IOleItemContainer interface
1303 #ifndef __IOleItemContainer_INTERFACE_DEFINED__
1304 #define __IOleItemContainer_INTERFACE_DEFINED__
1306 DEFINE_GUID(IID_IOleItemContainer
, 0x0000011c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1307 #if defined(__cplusplus) && !defined(CINTERFACE)
1308 struct IOleItemContainer
: public IOleContainer
1310 virtual HRESULT STDMETHODCALLTYPE
GetObject(
1312 DWORD dwSpeedNeeded
,
1315 void** ppvObject
) = 0;
1317 virtual HRESULT STDMETHODCALLTYPE
GetObjectStorage(
1321 void** ppvStorage
) = 0;
1323 virtual HRESULT STDMETHODCALLTYPE
IsRunning(
1324 LPOLESTR pszItem
) = 0;
1328 typedef struct IOleItemContainerVtbl IOleItemContainerVtbl
;
1329 struct IOleItemContainer
{
1330 const IOleItemContainerVtbl
* lpVtbl
;
1332 struct IOleItemContainerVtbl
{
1333 ICOM_MSVTABLE_COMPAT_FIELDS
1335 /*** IUnknown methods ***/
1336 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1337 IOleItemContainer
* This
,
1341 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1342 IOleItemContainer
* This
);
1344 ULONG (STDMETHODCALLTYPE
*Release
)(
1345 IOleItemContainer
* This
);
1347 /*** IParseDisplayName methods ***/
1348 HRESULT (STDMETHODCALLTYPE
*ParseDisplayName
)(
1349 IOleItemContainer
* This
,
1351 LPOLESTR pszDisplayName
,
1353 IMoniker
** ppmkOut
);
1355 /*** IOleContainer methods ***/
1356 HRESULT (STDMETHODCALLTYPE
*EnumObjects
)(
1357 IOleItemContainer
* This
,
1359 IEnumUnknown
** ppenum
);
1361 HRESULT (STDMETHODCALLTYPE
*LockContainer
)(
1362 IOleItemContainer
* This
,
1365 /*** IOleItemContainer methods ***/
1366 HRESULT (STDMETHODCALLTYPE
*GetObject
)(
1367 IOleItemContainer
* This
,
1369 DWORD dwSpeedNeeded
,
1374 HRESULT (STDMETHODCALLTYPE
*GetObjectStorage
)(
1375 IOleItemContainer
* This
,
1381 HRESULT (STDMETHODCALLTYPE
*IsRunning
)(
1382 IOleItemContainer
* This
,
1387 /*** IUnknown methods ***/
1388 #define IOleItemContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1389 #define IOleItemContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
1390 #define IOleItemContainer_Release(p) (p)->lpVtbl->Release(p)
1391 /*** IParseDisplayName methods ***/
1392 #define IOleItemContainer_ParseDisplayName(p,a,b,c,d) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d)
1393 /*** IOleContainer methods ***/
1394 #define IOleItemContainer_EnumObjects(p,a,b) (p)->lpVtbl->EnumObjects(p,a,b)
1395 #define IOleItemContainer_LockContainer(p,a) (p)->lpVtbl->LockContainer(p,a)
1396 /*** IOleItemContainer methods ***/
1397 #define IOleItemContainer_GetObject(p,a,b,c,d,e) (p)->lpVtbl->GetObject(p,a,b,c,d,e)
1398 #define IOleItemContainer_GetObjectStorage(p,a,b,c,d) (p)->lpVtbl->GetObjectStorage(p,a,b,c,d)
1399 #define IOleItemContainer_IsRunning(p,a) (p)->lpVtbl->IsRunning(p,a)
1403 #define IOleItemContainer_METHODS \
1404 ICOM_MSVTABLE_COMPAT_FIELDS \
1405 /*** IUnknown methods ***/ \
1406 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1407 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1408 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1409 /*** IParseDisplayName methods ***/ \
1410 STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE; \
1411 /*** IOleContainer methods ***/ \
1412 STDMETHOD_(HRESULT,EnumObjects)(THIS_ DWORD grfFlags, IEnumUnknown** ppenum) PURE; \
1413 STDMETHOD_(HRESULT,LockContainer)(THIS_ BOOL fLock) PURE; \
1414 /*** IOleItemContainer methods ***/ \
1415 STDMETHOD_(HRESULT,GetObject)(THIS_ LPOLESTR pszItem, DWORD dwSpeedNeeded, IBindCtx* pbc, REFIID riid, void** ppvObject) PURE; \
1416 STDMETHOD_(HRESULT,GetObjectStorage)(THIS_ LPOLESTR pszItem, IBindCtx* pbc, REFIID riid, void** ppvStorage) PURE; \
1417 STDMETHOD_(HRESULT,IsRunning)(THIS_ LPOLESTR pszItem) PURE;
1419 HRESULT CALLBACK
IOleItemContainer_GetObject_Proxy(
1420 IOleItemContainer
* This
,
1422 DWORD dwSpeedNeeded
,
1426 void __RPC_STUB
IOleItemContainer_GetObject_Stub(
1427 struct IRpcStubBuffer
* This
,
1428 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1429 PRPC_MESSAGE pRpcMessage
,
1430 DWORD
* pdwStubPhase
);
1431 HRESULT CALLBACK
IOleItemContainer_GetObjectStorage_Proxy(
1432 IOleItemContainer
* This
,
1437 void __RPC_STUB
IOleItemContainer_GetObjectStorage_Stub(
1438 struct IRpcStubBuffer
* This
,
1439 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1440 PRPC_MESSAGE pRpcMessage
,
1441 DWORD
* pdwStubPhase
);
1442 HRESULT CALLBACK
IOleItemContainer_IsRunning_Proxy(
1443 IOleItemContainer
* This
,
1445 void __RPC_STUB
IOleItemContainer_IsRunning_Stub(
1446 struct IRpcStubBuffer
* This
,
1447 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1448 PRPC_MESSAGE pRpcMessage
,
1449 DWORD
* pdwStubPhase
);
1451 #endif /* __IOleItemContainer_INTERFACE_DEFINED__ */
1453 #ifndef __IOleLink_FWD_DEFINED__
1454 #define __IOleLink_FWD_DEFINED__
1455 typedef struct IOleLink IOleLink
;
1458 typedef IOleLink
*LPOLELINK
;
1460 typedef enum tagOLEUPDATE
{
1461 OLEUPDATE_ALWAYS
= 1,
1462 OLEUPDATE_ONCALL
= 3
1463 } OLEUPDATE
, *POLEUPDATE
, *LPOLEUPDATE
;
1465 typedef enum tagOLELINKBIND
{
1466 OLELINKBIND_EVENIFCLASSDIFF
= 1
1469 /*****************************************************************************
1470 * IOleLink interface
1472 #ifndef __IOleLink_INTERFACE_DEFINED__
1473 #define __IOleLink_INTERFACE_DEFINED__
1475 DEFINE_GUID(IID_IOleLink
, 0x0000011d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1476 #if defined(__cplusplus) && !defined(CINTERFACE)
1477 struct IOleLink
: public IUnknown
1479 virtual HRESULT STDMETHODCALLTYPE
SetUpdateOptions(
1480 DWORD dwUpdateOpt
) = 0;
1482 virtual HRESULT STDMETHODCALLTYPE
GetUpdateOptions(
1483 DWORD
* pdwUpdateOpt
) = 0;
1485 virtual HRESULT STDMETHODCALLTYPE
SetSourceMoniker(
1487 REFCLSID rclsid
) = 0;
1489 virtual HRESULT STDMETHODCALLTYPE
GetSourceMoniker(
1490 IMoniker
** ppmk
) = 0;
1492 virtual HRESULT STDMETHODCALLTYPE
SetSourceDisplayName(
1493 LPCOLESTR pszStatusText
) = 0;
1495 virtual HRESULT STDMETHODCALLTYPE
GetSourceDisplayName(
1496 LPOLESTR
* ppszDisplayName
) = 0;
1498 virtual HRESULT STDMETHODCALLTYPE
BindToSource(
1502 virtual HRESULT STDMETHODCALLTYPE
BindIfRunning(
1505 virtual HRESULT STDMETHODCALLTYPE
GetBoundSource(
1506 IUnknown
** ppunk
) = 0;
1508 virtual HRESULT STDMETHODCALLTYPE
UnbindSource(
1511 virtual HRESULT STDMETHODCALLTYPE
Update(
1516 typedef struct IOleLinkVtbl IOleLinkVtbl
;
1518 const IOleLinkVtbl
* lpVtbl
;
1520 struct IOleLinkVtbl
{
1521 ICOM_MSVTABLE_COMPAT_FIELDS
1523 /*** IUnknown methods ***/
1524 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1529 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1532 ULONG (STDMETHODCALLTYPE
*Release
)(
1535 /*** IOleLink methods ***/
1536 HRESULT (STDMETHODCALLTYPE
*SetUpdateOptions
)(
1540 HRESULT (STDMETHODCALLTYPE
*GetUpdateOptions
)(
1542 DWORD
* pdwUpdateOpt
);
1544 HRESULT (STDMETHODCALLTYPE
*SetSourceMoniker
)(
1549 HRESULT (STDMETHODCALLTYPE
*GetSourceMoniker
)(
1553 HRESULT (STDMETHODCALLTYPE
*SetSourceDisplayName
)(
1555 LPCOLESTR pszStatusText
);
1557 HRESULT (STDMETHODCALLTYPE
*GetSourceDisplayName
)(
1559 LPOLESTR
* ppszDisplayName
);
1561 HRESULT (STDMETHODCALLTYPE
*BindToSource
)(
1566 HRESULT (STDMETHODCALLTYPE
*BindIfRunning
)(
1569 HRESULT (STDMETHODCALLTYPE
*GetBoundSource
)(
1573 HRESULT (STDMETHODCALLTYPE
*UnbindSource
)(
1576 HRESULT (STDMETHODCALLTYPE
*Update
)(
1582 /*** IUnknown methods ***/
1583 #define IOleLink_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1584 #define IOleLink_AddRef(p) (p)->lpVtbl->AddRef(p)
1585 #define IOleLink_Release(p) (p)->lpVtbl->Release(p)
1586 /*** IOleLink methods ***/
1587 #define IOleLink_SetUpdateOptions(p,a) (p)->lpVtbl->SetUpdateOptions(p,a)
1588 #define IOleLink_GetUpdateOptions(p,a) (p)->lpVtbl->GetUpdateOptions(p,a)
1589 #define IOleLink_SetSourceMoniker(p,a,b) (p)->lpVtbl->SetSourceMoniker(p,a,b)
1590 #define IOleLink_GetSourceMoniker(p,a) (p)->lpVtbl->GetSourceMoniker(p,a)
1591 #define IOleLink_SetSourceDisplayName(p,a) (p)->lpVtbl->SetSourceDisplayName(p,a)
1592 #define IOleLink_GetSourceDisplayName(p,a) (p)->lpVtbl->GetSourceDisplayName(p,a)
1593 #define IOleLink_BindToSource(p,a,b) (p)->lpVtbl->BindToSource(p,a,b)
1594 #define IOleLink_BindIfRunning(p) (p)->lpVtbl->BindIfRunning(p)
1595 #define IOleLink_GetBoundSource(p,a) (p)->lpVtbl->GetBoundSource(p,a)
1596 #define IOleLink_UnbindSource(p) (p)->lpVtbl->UnbindSource(p)
1597 #define IOleLink_Update(p,a) (p)->lpVtbl->Update(p,a)
1601 #define IOleLink_METHODS \
1602 ICOM_MSVTABLE_COMPAT_FIELDS \
1603 /*** IUnknown methods ***/ \
1604 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1605 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1606 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1607 /*** IOleLink methods ***/ \
1608 STDMETHOD_(HRESULT,SetUpdateOptions)(THIS_ DWORD dwUpdateOpt) PURE; \
1609 STDMETHOD_(HRESULT,GetUpdateOptions)(THIS_ DWORD* pdwUpdateOpt) PURE; \
1610 STDMETHOD_(HRESULT,SetSourceMoniker)(THIS_ IMoniker* pmk, REFCLSID rclsid) PURE; \
1611 STDMETHOD_(HRESULT,GetSourceMoniker)(THIS_ IMoniker** ppmk) PURE; \
1612 STDMETHOD_(HRESULT,SetSourceDisplayName)(THIS_ LPCOLESTR pszStatusText) PURE; \
1613 STDMETHOD_(HRESULT,GetSourceDisplayName)(THIS_ LPOLESTR* ppszDisplayName) PURE; \
1614 STDMETHOD_(HRESULT,BindToSource)(THIS_ DWORD bindflags, IBindCtx* pbc) PURE; \
1615 STDMETHOD_(HRESULT,BindIfRunning)(THIS) PURE; \
1616 STDMETHOD_(HRESULT,GetBoundSource)(THIS_ IUnknown** ppunk) PURE; \
1617 STDMETHOD_(HRESULT,UnbindSource)(THIS) PURE; \
1618 STDMETHOD_(HRESULT,Update)(THIS_ IBindCtx* pbc) PURE;
1620 HRESULT CALLBACK
IOleLink_SetUpdateOptions_Proxy(
1623 void __RPC_STUB
IOleLink_SetUpdateOptions_Stub(
1624 struct IRpcStubBuffer
* This
,
1625 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1626 PRPC_MESSAGE pRpcMessage
,
1627 DWORD
* pdwStubPhase
);
1628 HRESULT CALLBACK
IOleLink_GetUpdateOptions_Proxy(
1630 DWORD
* pdwUpdateOpt
);
1631 void __RPC_STUB
IOleLink_GetUpdateOptions_Stub(
1632 struct IRpcStubBuffer
* This
,
1633 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1634 PRPC_MESSAGE pRpcMessage
,
1635 DWORD
* pdwStubPhase
);
1636 HRESULT CALLBACK
IOleLink_SetSourceMoniker_Proxy(
1640 void __RPC_STUB
IOleLink_SetSourceMoniker_Stub(
1641 struct IRpcStubBuffer
* This
,
1642 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1643 PRPC_MESSAGE pRpcMessage
,
1644 DWORD
* pdwStubPhase
);
1645 HRESULT CALLBACK
IOleLink_GetSourceMoniker_Proxy(
1648 void __RPC_STUB
IOleLink_GetSourceMoniker_Stub(
1649 struct IRpcStubBuffer
* This
,
1650 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1651 PRPC_MESSAGE pRpcMessage
,
1652 DWORD
* pdwStubPhase
);
1653 HRESULT CALLBACK
IOleLink_SetSourceDisplayName_Proxy(
1655 LPCOLESTR pszStatusText
);
1656 void __RPC_STUB
IOleLink_SetSourceDisplayName_Stub(
1657 struct IRpcStubBuffer
* This
,
1658 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1659 PRPC_MESSAGE pRpcMessage
,
1660 DWORD
* pdwStubPhase
);
1661 HRESULT CALLBACK
IOleLink_GetSourceDisplayName_Proxy(
1663 LPOLESTR
* ppszDisplayName
);
1664 void __RPC_STUB
IOleLink_GetSourceDisplayName_Stub(
1665 struct IRpcStubBuffer
* This
,
1666 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1667 PRPC_MESSAGE pRpcMessage
,
1668 DWORD
* pdwStubPhase
);
1669 HRESULT CALLBACK
IOleLink_BindToSource_Proxy(
1673 void __RPC_STUB
IOleLink_BindToSource_Stub(
1674 struct IRpcStubBuffer
* This
,
1675 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1676 PRPC_MESSAGE pRpcMessage
,
1677 DWORD
* pdwStubPhase
);
1678 HRESULT CALLBACK
IOleLink_BindIfRunning_Proxy(
1680 void __RPC_STUB
IOleLink_BindIfRunning_Stub(
1681 struct IRpcStubBuffer
* This
,
1682 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1683 PRPC_MESSAGE pRpcMessage
,
1684 DWORD
* pdwStubPhase
);
1685 HRESULT CALLBACK
IOleLink_GetBoundSource_Proxy(
1688 void __RPC_STUB
IOleLink_GetBoundSource_Stub(
1689 struct IRpcStubBuffer
* This
,
1690 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1691 PRPC_MESSAGE pRpcMessage
,
1692 DWORD
* pdwStubPhase
);
1693 HRESULT CALLBACK
IOleLink_UnbindSource_Proxy(
1695 void __RPC_STUB
IOleLink_UnbindSource_Stub(
1696 struct IRpcStubBuffer
* This
,
1697 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1698 PRPC_MESSAGE pRpcMessage
,
1699 DWORD
* pdwStubPhase
);
1700 HRESULT CALLBACK
IOleLink_Update_Proxy(
1703 void __RPC_STUB
IOleLink_Update_Stub(
1704 struct IRpcStubBuffer
* This
,
1705 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1706 PRPC_MESSAGE pRpcMessage
,
1707 DWORD
* pdwStubPhase
);
1709 #endif /* __IOleLink_INTERFACE_DEFINED__ */
1711 #ifndef __IOleClientSite_FWD_DEFINED__
1712 #define __IOleClientSite_FWD_DEFINED__
1713 typedef struct IOleClientSite IOleClientSite
;
1716 typedef IOleClientSite
*LPOLECLIENTSITE
;
1718 /*****************************************************************************
1719 * IOleClientSite interface
1721 #ifndef __IOleClientSite_INTERFACE_DEFINED__
1722 #define __IOleClientSite_INTERFACE_DEFINED__
1724 DEFINE_GUID(IID_IOleClientSite
, 0x00000118, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1725 #if defined(__cplusplus) && !defined(CINTERFACE)
1726 struct IOleClientSite
: public IUnknown
1728 virtual HRESULT STDMETHODCALLTYPE
SaveObject(
1731 virtual HRESULT STDMETHODCALLTYPE
GetMoniker(
1733 DWORD dwWhichMoniker
,
1734 IMoniker
** ppmk
) = 0;
1736 virtual HRESULT STDMETHODCALLTYPE
GetContainer(
1737 IOleContainer
** ppContainer
) = 0;
1739 virtual HRESULT STDMETHODCALLTYPE
ShowObject(
1742 virtual HRESULT STDMETHODCALLTYPE
OnShowWindow(
1745 virtual HRESULT STDMETHODCALLTYPE
RequestNewObjectLayout(
1750 typedef struct IOleClientSiteVtbl IOleClientSiteVtbl
;
1751 struct IOleClientSite
{
1752 const IOleClientSiteVtbl
* lpVtbl
;
1754 struct IOleClientSiteVtbl
{
1755 ICOM_MSVTABLE_COMPAT_FIELDS
1757 /*** IUnknown methods ***/
1758 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1759 IOleClientSite
* This
,
1763 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1764 IOleClientSite
* This
);
1766 ULONG (STDMETHODCALLTYPE
*Release
)(
1767 IOleClientSite
* This
);
1769 /*** IOleClientSite methods ***/
1770 HRESULT (STDMETHODCALLTYPE
*SaveObject
)(
1771 IOleClientSite
* This
);
1773 HRESULT (STDMETHODCALLTYPE
*GetMoniker
)(
1774 IOleClientSite
* This
,
1776 DWORD dwWhichMoniker
,
1779 HRESULT (STDMETHODCALLTYPE
*GetContainer
)(
1780 IOleClientSite
* This
,
1781 IOleContainer
** ppContainer
);
1783 HRESULT (STDMETHODCALLTYPE
*ShowObject
)(
1784 IOleClientSite
* This
);
1786 HRESULT (STDMETHODCALLTYPE
*OnShowWindow
)(
1787 IOleClientSite
* This
,
1790 HRESULT (STDMETHODCALLTYPE
*RequestNewObjectLayout
)(
1791 IOleClientSite
* This
);
1795 /*** IUnknown methods ***/
1796 #define IOleClientSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1797 #define IOleClientSite_AddRef(p) (p)->lpVtbl->AddRef(p)
1798 #define IOleClientSite_Release(p) (p)->lpVtbl->Release(p)
1799 /*** IOleClientSite methods ***/
1800 #define IOleClientSite_SaveObject(p) (p)->lpVtbl->SaveObject(p)
1801 #define IOleClientSite_GetMoniker(p,a,b,c) (p)->lpVtbl->GetMoniker(p,a,b,c)
1802 #define IOleClientSite_GetContainer(p,a) (p)->lpVtbl->GetContainer(p,a)
1803 #define IOleClientSite_ShowObject(p) (p)->lpVtbl->ShowObject(p)
1804 #define IOleClientSite_OnShowWindow(p,a) (p)->lpVtbl->OnShowWindow(p,a)
1805 #define IOleClientSite_RequestNewObjectLayout(p) (p)->lpVtbl->RequestNewObjectLayout(p)
1809 #define IOleClientSite_METHODS \
1810 ICOM_MSVTABLE_COMPAT_FIELDS \
1811 /*** IUnknown methods ***/ \
1812 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1813 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1814 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1815 /*** IOleClientSite methods ***/ \
1816 STDMETHOD_(HRESULT,SaveObject)(THIS) PURE; \
1817 STDMETHOD_(HRESULT,GetMoniker)(THIS_ DWORD dwAssign, DWORD dwWhichMoniker, IMoniker** ppmk) PURE; \
1818 STDMETHOD_(HRESULT,GetContainer)(THIS_ IOleContainer** ppContainer) PURE; \
1819 STDMETHOD_(HRESULT,ShowObject)(THIS) PURE; \
1820 STDMETHOD_(HRESULT,OnShowWindow)(THIS_ BOOL fShow) PURE; \
1821 STDMETHOD_(HRESULT,RequestNewObjectLayout)(THIS) PURE;
1823 HRESULT CALLBACK
IOleClientSite_SaveObject_Proxy(
1824 IOleClientSite
* This
);
1825 void __RPC_STUB
IOleClientSite_SaveObject_Stub(
1826 struct IRpcStubBuffer
* This
,
1827 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1828 PRPC_MESSAGE pRpcMessage
,
1829 DWORD
* pdwStubPhase
);
1830 HRESULT CALLBACK
IOleClientSite_GetMoniker_Proxy(
1831 IOleClientSite
* This
,
1833 DWORD dwWhichMoniker
,
1835 void __RPC_STUB
IOleClientSite_GetMoniker_Stub(
1836 struct IRpcStubBuffer
* This
,
1837 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1838 PRPC_MESSAGE pRpcMessage
,
1839 DWORD
* pdwStubPhase
);
1840 HRESULT CALLBACK
IOleClientSite_GetContainer_Proxy(
1841 IOleClientSite
* This
,
1842 IOleContainer
** ppContainer
);
1843 void __RPC_STUB
IOleClientSite_GetContainer_Stub(
1844 struct IRpcStubBuffer
* This
,
1845 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1846 PRPC_MESSAGE pRpcMessage
,
1847 DWORD
* pdwStubPhase
);
1848 HRESULT CALLBACK
IOleClientSite_ShowObject_Proxy(
1849 IOleClientSite
* This
);
1850 void __RPC_STUB
IOleClientSite_ShowObject_Stub(
1851 struct IRpcStubBuffer
* This
,
1852 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1853 PRPC_MESSAGE pRpcMessage
,
1854 DWORD
* pdwStubPhase
);
1855 HRESULT CALLBACK
IOleClientSite_OnShowWindow_Proxy(
1856 IOleClientSite
* This
,
1858 void __RPC_STUB
IOleClientSite_OnShowWindow_Stub(
1859 struct IRpcStubBuffer
* This
,
1860 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1861 PRPC_MESSAGE pRpcMessage
,
1862 DWORD
* pdwStubPhase
);
1863 HRESULT CALLBACK
IOleClientSite_RequestNewObjectLayout_Proxy(
1864 IOleClientSite
* This
);
1865 void __RPC_STUB
IOleClientSite_RequestNewObjectLayout_Stub(
1866 struct IRpcStubBuffer
* This
,
1867 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1868 PRPC_MESSAGE pRpcMessage
,
1869 DWORD
* pdwStubPhase
);
1871 #endif /* __IOleClientSite_INTERFACE_DEFINED__ */
1873 #ifndef __IOleCache_FWD_DEFINED__
1874 #define __IOleCache_FWD_DEFINED__
1875 typedef struct IOleCache IOleCache
;
1878 typedef IOleCache
*LPOLECACHE
;
1880 /*****************************************************************************
1881 * IOleCache interface
1883 #ifndef __IOleCache_INTERFACE_DEFINED__
1884 #define __IOleCache_INTERFACE_DEFINED__
1886 DEFINE_GUID(IID_IOleCache
, 0x0000011e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1887 #if defined(__cplusplus) && !defined(CINTERFACE)
1888 struct IOleCache
: public IUnknown
1890 virtual HRESULT STDMETHODCALLTYPE
Cache(
1891 FORMATETC
* pformatetc
,
1893 DWORD
* pdwConnection
) = 0;
1895 virtual HRESULT STDMETHODCALLTYPE
Uncache(
1896 DWORD dwConnection
) = 0;
1898 virtual HRESULT STDMETHODCALLTYPE
EnumCache(
1899 IEnumSTATDATA
** ppenumSTATDATA
) = 0;
1901 virtual HRESULT STDMETHODCALLTYPE
InitCache(
1902 IDataObject
* pDataObject
) = 0;
1904 virtual HRESULT STDMETHODCALLTYPE
SetData(
1905 FORMATETC
* pformatetc
,
1911 typedef struct IOleCacheVtbl IOleCacheVtbl
;
1913 const IOleCacheVtbl
* lpVtbl
;
1915 struct IOleCacheVtbl
{
1916 ICOM_MSVTABLE_COMPAT_FIELDS
1918 /*** IUnknown methods ***/
1919 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1924 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1927 ULONG (STDMETHODCALLTYPE
*Release
)(
1930 /*** IOleCache methods ***/
1931 HRESULT (STDMETHODCALLTYPE
*Cache
)(
1933 FORMATETC
* pformatetc
,
1935 DWORD
* pdwConnection
);
1937 HRESULT (STDMETHODCALLTYPE
*Uncache
)(
1939 DWORD dwConnection
);
1941 HRESULT (STDMETHODCALLTYPE
*EnumCache
)(
1943 IEnumSTATDATA
** ppenumSTATDATA
);
1945 HRESULT (STDMETHODCALLTYPE
*InitCache
)(
1947 IDataObject
* pDataObject
);
1949 HRESULT (STDMETHODCALLTYPE
*SetData
)(
1951 FORMATETC
* pformatetc
,
1957 /*** IUnknown methods ***/
1958 #define IOleCache_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1959 #define IOleCache_AddRef(p) (p)->lpVtbl->AddRef(p)
1960 #define IOleCache_Release(p) (p)->lpVtbl->Release(p)
1961 /*** IOleCache methods ***/
1962 #define IOleCache_Cache(p,a,b,c) (p)->lpVtbl->Cache(p,a,b,c)
1963 #define IOleCache_Uncache(p,a) (p)->lpVtbl->Uncache(p,a)
1964 #define IOleCache_EnumCache(p,a) (p)->lpVtbl->EnumCache(p,a)
1965 #define IOleCache_InitCache(p,a) (p)->lpVtbl->InitCache(p,a)
1966 #define IOleCache_SetData(p,a,b,c) (p)->lpVtbl->SetData(p,a,b,c)
1970 #define IOleCache_METHODS \
1971 ICOM_MSVTABLE_COMPAT_FIELDS \
1972 /*** IUnknown methods ***/ \
1973 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1974 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1975 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1976 /*** IOleCache methods ***/ \
1977 STDMETHOD_(HRESULT,Cache)(THIS_ FORMATETC* pformatetc, DWORD advf, DWORD* pdwConnection) PURE; \
1978 STDMETHOD_(HRESULT,Uncache)(THIS_ DWORD dwConnection) PURE; \
1979 STDMETHOD_(HRESULT,EnumCache)(THIS_ IEnumSTATDATA** ppenumSTATDATA) PURE; \
1980 STDMETHOD_(HRESULT,InitCache)(THIS_ IDataObject* pDataObject) PURE; \
1981 STDMETHOD_(HRESULT,SetData)(THIS_ FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease) PURE;
1983 HRESULT CALLBACK
IOleCache_Cache_Proxy(
1985 FORMATETC
* pformatetc
,
1987 DWORD
* pdwConnection
);
1988 void __RPC_STUB
IOleCache_Cache_Stub(
1989 struct IRpcStubBuffer
* This
,
1990 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1991 PRPC_MESSAGE pRpcMessage
,
1992 DWORD
* pdwStubPhase
);
1993 HRESULT CALLBACK
IOleCache_Uncache_Proxy(
1995 DWORD dwConnection
);
1996 void __RPC_STUB
IOleCache_Uncache_Stub(
1997 struct IRpcStubBuffer
* This
,
1998 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1999 PRPC_MESSAGE pRpcMessage
,
2000 DWORD
* pdwStubPhase
);
2001 HRESULT CALLBACK
IOleCache_EnumCache_Proxy(
2003 IEnumSTATDATA
** ppenumSTATDATA
);
2004 void __RPC_STUB
IOleCache_EnumCache_Stub(
2005 struct IRpcStubBuffer
* This
,
2006 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2007 PRPC_MESSAGE pRpcMessage
,
2008 DWORD
* pdwStubPhase
);
2009 HRESULT CALLBACK
IOleCache_InitCache_Proxy(
2011 IDataObject
* pDataObject
);
2012 void __RPC_STUB
IOleCache_InitCache_Stub(
2013 struct IRpcStubBuffer
* This
,
2014 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2015 PRPC_MESSAGE pRpcMessage
,
2016 DWORD
* pdwStubPhase
);
2017 HRESULT CALLBACK
IOleCache_SetData_Proxy(
2019 FORMATETC
* pformatetc
,
2022 void __RPC_STUB
IOleCache_SetData_Stub(
2023 struct IRpcStubBuffer
* This
,
2024 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2025 PRPC_MESSAGE pRpcMessage
,
2026 DWORD
* pdwStubPhase
);
2028 #endif /* __IOleCache_INTERFACE_DEFINED__ */
2030 #ifndef __IOleCache2_FWD_DEFINED__
2031 #define __IOleCache2_FWD_DEFINED__
2032 typedef struct IOleCache2 IOleCache2
;
2035 typedef IOleCache2
*LPOLECACHE2
;
2037 #define UPDFCACHE_NODATACACHE (0x1)
2039 #define UPDFCACHE_ONSAVECACHE (0x2)
2041 #define UPDFCACHE_ONSTOPCACHE (0x4)
2043 #define UPDFCACHE_NORMALCACHE (0x8)
2045 #define UPDFCACHE_IFBLANK (0x10)
2047 #define UPDFCACHE_ONLYIFBLANK (0x80000000)
2049 #define UPDFCACHE_IFBLANKORONSAVECACHE (UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE)
2051 #define UPDFCACHE_ALL ((DWORD)~UPDFCACHE_ONLYIFBLANK)
2053 #define UPDFCACHE_ALLBUTNODATACACHE (UPDFCACHE_ALL & (DWORD)~UPDFCACHE_NODATACACHE)
2055 typedef enum tagDISCARDCACHE
{
2056 DISCARDCACHE_SAVEIFDIRTY
= 0,
2057 DISCARDCACHE_NOSAVE
= 1
2060 /*****************************************************************************
2061 * IOleCache2 interface
2063 #ifndef __IOleCache2_INTERFACE_DEFINED__
2064 #define __IOleCache2_INTERFACE_DEFINED__
2066 DEFINE_GUID(IID_IOleCache2
, 0x00000128, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2067 #if defined(__cplusplus) && !defined(CINTERFACE)
2068 struct IOleCache2
: public IOleCache
2070 virtual HRESULT STDMETHODCALLTYPE
UpdateCache(
2071 LPDATAOBJECT pDataObject
,
2073 LPVOID pReserved
) = 0;
2075 virtual HRESULT STDMETHODCALLTYPE
DiscardCache(
2076 DWORD dwDiscardOptions
) = 0;
2080 typedef struct IOleCache2Vtbl IOleCache2Vtbl
;
2082 const IOleCache2Vtbl
* lpVtbl
;
2084 struct IOleCache2Vtbl
{
2085 ICOM_MSVTABLE_COMPAT_FIELDS
2087 /*** IUnknown methods ***/
2088 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2093 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2096 ULONG (STDMETHODCALLTYPE
*Release
)(
2099 /*** IOleCache methods ***/
2100 HRESULT (STDMETHODCALLTYPE
*Cache
)(
2102 FORMATETC
* pformatetc
,
2104 DWORD
* pdwConnection
);
2106 HRESULT (STDMETHODCALLTYPE
*Uncache
)(
2108 DWORD dwConnection
);
2110 HRESULT (STDMETHODCALLTYPE
*EnumCache
)(
2112 IEnumSTATDATA
** ppenumSTATDATA
);
2114 HRESULT (STDMETHODCALLTYPE
*InitCache
)(
2116 IDataObject
* pDataObject
);
2118 HRESULT (STDMETHODCALLTYPE
*SetData
)(
2120 FORMATETC
* pformatetc
,
2124 /*** IOleCache2 methods ***/
2125 HRESULT (STDMETHODCALLTYPE
*UpdateCache
)(
2127 LPDATAOBJECT pDataObject
,
2131 HRESULT (STDMETHODCALLTYPE
*DiscardCache
)(
2133 DWORD dwDiscardOptions
);
2137 /*** IUnknown methods ***/
2138 #define IOleCache2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2139 #define IOleCache2_AddRef(p) (p)->lpVtbl->AddRef(p)
2140 #define IOleCache2_Release(p) (p)->lpVtbl->Release(p)
2141 /*** IOleCache methods ***/
2142 #define IOleCache2_Cache(p,a,b,c) (p)->lpVtbl->Cache(p,a,b,c)
2143 #define IOleCache2_Uncache(p,a) (p)->lpVtbl->Uncache(p,a)
2144 #define IOleCache2_EnumCache(p,a) (p)->lpVtbl->EnumCache(p,a)
2145 #define IOleCache2_InitCache(p,a) (p)->lpVtbl->InitCache(p,a)
2146 #define IOleCache2_SetData(p,a,b,c) (p)->lpVtbl->SetData(p,a,b,c)
2147 /*** IOleCache2 methods ***/
2148 #define IOleCache2_UpdateCache(p,a,b,c) (p)->lpVtbl->UpdateCache(p,a,b,c)
2149 #define IOleCache2_DiscardCache(p,a) (p)->lpVtbl->DiscardCache(p,a)
2153 #define IOleCache2_METHODS \
2154 ICOM_MSVTABLE_COMPAT_FIELDS \
2155 /*** IUnknown methods ***/ \
2156 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2157 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2158 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2159 /*** IOleCache methods ***/ \
2160 STDMETHOD_(HRESULT,Cache)(THIS_ FORMATETC* pformatetc, DWORD advf, DWORD* pdwConnection) PURE; \
2161 STDMETHOD_(HRESULT,Uncache)(THIS_ DWORD dwConnection) PURE; \
2162 STDMETHOD_(HRESULT,EnumCache)(THIS_ IEnumSTATDATA** ppenumSTATDATA) PURE; \
2163 STDMETHOD_(HRESULT,InitCache)(THIS_ IDataObject* pDataObject) PURE; \
2164 STDMETHOD_(HRESULT,SetData)(THIS_ FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease) PURE; \
2165 /*** IOleCache2 methods ***/ \
2166 STDMETHOD_(HRESULT,UpdateCache)(THIS_ LPDATAOBJECT pDataObject, DWORD grfUpdf, LPVOID pReserved) PURE; \
2167 STDMETHOD_(HRESULT,DiscardCache)(THIS_ DWORD dwDiscardOptions) PURE;
2169 HRESULT CALLBACK
IOleCache2_RemoteUpdateCache_Proxy(
2171 LPDATAOBJECT pDataObject
,
2173 LONG_PTR pReserved
);
2174 void __RPC_STUB
IOleCache2_RemoteUpdateCache_Stub(
2175 struct IRpcStubBuffer
* This
,
2176 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2177 PRPC_MESSAGE pRpcMessage
,
2178 DWORD
* pdwStubPhase
);
2179 HRESULT CALLBACK
IOleCache2_UpdateCache_Proxy(
2181 LPDATAOBJECT pDataObject
,
2184 HRESULT __RPC_STUB
IOleCache2_UpdateCache_Stub(
2186 LPDATAOBJECT pDataObject
,
2188 LONG_PTR pReserved
);
2189 HRESULT CALLBACK
IOleCache2_DiscardCache_Proxy(
2191 DWORD dwDiscardOptions
);
2192 void __RPC_STUB
IOleCache2_DiscardCache_Stub(
2193 struct IRpcStubBuffer
* This
,
2194 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2195 PRPC_MESSAGE pRpcMessage
,
2196 DWORD
* pdwStubPhase
);
2198 #endif /* __IOleCache2_INTERFACE_DEFINED__ */
2200 #ifndef __IOleCacheControl_FWD_DEFINED__
2201 #define __IOleCacheControl_FWD_DEFINED__
2202 typedef struct IOleCacheControl IOleCacheControl
;
2205 typedef IOleCacheControl
*LPOLECACHECONTROL
;
2207 /*****************************************************************************
2208 * IOleCacheControl interface
2210 #ifndef __IOleCacheControl_INTERFACE_DEFINED__
2211 #define __IOleCacheControl_INTERFACE_DEFINED__
2213 DEFINE_GUID(IID_IOleCacheControl
, 0x00000129, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2214 #if defined(__cplusplus) && !defined(CINTERFACE)
2215 struct IOleCacheControl
: public IUnknown
2217 virtual HRESULT STDMETHODCALLTYPE
OnRun(
2218 LPDATAOBJECT pDataObject
) = 0;
2220 virtual HRESULT STDMETHODCALLTYPE
OnStop(
2225 typedef struct IOleCacheControlVtbl IOleCacheControlVtbl
;
2226 struct IOleCacheControl
{
2227 const IOleCacheControlVtbl
* lpVtbl
;
2229 struct IOleCacheControlVtbl
{
2230 ICOM_MSVTABLE_COMPAT_FIELDS
2232 /*** IUnknown methods ***/
2233 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2234 IOleCacheControl
* This
,
2238 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2239 IOleCacheControl
* This
);
2241 ULONG (STDMETHODCALLTYPE
*Release
)(
2242 IOleCacheControl
* This
);
2244 /*** IOleCacheControl methods ***/
2245 HRESULT (STDMETHODCALLTYPE
*OnRun
)(
2246 IOleCacheControl
* This
,
2247 LPDATAOBJECT pDataObject
);
2249 HRESULT (STDMETHODCALLTYPE
*OnStop
)(
2250 IOleCacheControl
* This
);
2254 /*** IUnknown methods ***/
2255 #define IOleCacheControl_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2256 #define IOleCacheControl_AddRef(p) (p)->lpVtbl->AddRef(p)
2257 #define IOleCacheControl_Release(p) (p)->lpVtbl->Release(p)
2258 /*** IOleCacheControl methods ***/
2259 #define IOleCacheControl_OnRun(p,a) (p)->lpVtbl->OnRun(p,a)
2260 #define IOleCacheControl_OnStop(p) (p)->lpVtbl->OnStop(p)
2264 #define IOleCacheControl_METHODS \
2265 ICOM_MSVTABLE_COMPAT_FIELDS \
2266 /*** IUnknown methods ***/ \
2267 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2268 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2269 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2270 /*** IOleCacheControl methods ***/ \
2271 STDMETHOD_(HRESULT,OnRun)(THIS_ LPDATAOBJECT pDataObject) PURE; \
2272 STDMETHOD_(HRESULT,OnStop)(THIS) PURE;
2274 HRESULT CALLBACK
IOleCacheControl_OnRun_Proxy(
2275 IOleCacheControl
* This
,
2276 LPDATAOBJECT pDataObject
);
2277 void __RPC_STUB
IOleCacheControl_OnRun_Stub(
2278 struct IRpcStubBuffer
* This
,
2279 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2280 PRPC_MESSAGE pRpcMessage
,
2281 DWORD
* pdwStubPhase
);
2282 HRESULT CALLBACK
IOleCacheControl_OnStop_Proxy(
2283 IOleCacheControl
* This
);
2284 void __RPC_STUB
IOleCacheControl_OnStop_Stub(
2285 struct IRpcStubBuffer
* This
,
2286 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2287 PRPC_MESSAGE pRpcMessage
,
2288 DWORD
* pdwStubPhase
);
2290 #endif /* __IOleCacheControl_INTERFACE_DEFINED__ */
2292 #ifndef __IEnumOLEVERB_FWD_DEFINED__
2293 #define __IEnumOLEVERB_FWD_DEFINED__
2294 typedef struct IEnumOLEVERB IEnumOLEVERB
;
2297 typedef IEnumOLEVERB
*LPENUMOLEVERB
;
2299 typedef struct tagOLEVERB
{
2301 LPOLESTR lpszVerbName
;
2304 } OLEVERB
, *LPOLEVERB
;
2306 typedef enum tagOLEVERBATTRIB
{
2307 OLEVERBATTRIB_NEVERDIRTIES
= 1,
2308 OLEVERBATTRIB_ONCONTAINERMENU
= 2
2311 /*****************************************************************************
2312 * IEnumOLEVERB interface
2314 #ifndef __IEnumOLEVERB_INTERFACE_DEFINED__
2315 #define __IEnumOLEVERB_INTERFACE_DEFINED__
2317 DEFINE_GUID(IID_IEnumOLEVERB
, 0x00000104, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2318 #if defined(__cplusplus) && !defined(CINTERFACE)
2319 struct IEnumOLEVERB
: public IUnknown
2321 virtual HRESULT STDMETHODCALLTYPE
Next(
2324 ULONG
* pceltFetched
) = 0;
2326 virtual HRESULT STDMETHODCALLTYPE
Skip(
2329 virtual HRESULT STDMETHODCALLTYPE
Reset(
2332 virtual HRESULT STDMETHODCALLTYPE
Clone(
2333 IEnumOLEVERB
** ppenum
) = 0;
2337 typedef struct IEnumOLEVERBVtbl IEnumOLEVERBVtbl
;
2338 struct IEnumOLEVERB
{
2339 const IEnumOLEVERBVtbl
* lpVtbl
;
2341 struct IEnumOLEVERBVtbl
{
2342 ICOM_MSVTABLE_COMPAT_FIELDS
2344 /*** IUnknown methods ***/
2345 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2350 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2351 IEnumOLEVERB
* This
);
2353 ULONG (STDMETHODCALLTYPE
*Release
)(
2354 IEnumOLEVERB
* This
);
2356 /*** IEnumOLEVERB methods ***/
2357 HRESULT (STDMETHODCALLTYPE
*Next
)(
2361 ULONG
* pceltFetched
);
2363 HRESULT (STDMETHODCALLTYPE
*Skip
)(
2367 HRESULT (STDMETHODCALLTYPE
*Reset
)(
2368 IEnumOLEVERB
* This
);
2370 HRESULT (STDMETHODCALLTYPE
*Clone
)(
2372 IEnumOLEVERB
** ppenum
);
2376 /*** IUnknown methods ***/
2377 #define IEnumOLEVERB_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2378 #define IEnumOLEVERB_AddRef(p) (p)->lpVtbl->AddRef(p)
2379 #define IEnumOLEVERB_Release(p) (p)->lpVtbl->Release(p)
2380 /*** IEnumOLEVERB methods ***/
2381 #define IEnumOLEVERB_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
2382 #define IEnumOLEVERB_Skip(p,a) (p)->lpVtbl->Skip(p,a)
2383 #define IEnumOLEVERB_Reset(p) (p)->lpVtbl->Reset(p)
2384 #define IEnumOLEVERB_Clone(p,a) (p)->lpVtbl->Clone(p,a)
2388 #define IEnumOLEVERB_METHODS \
2389 ICOM_MSVTABLE_COMPAT_FIELDS \
2390 /*** IUnknown methods ***/ \
2391 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2392 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2393 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2394 /*** IEnumOLEVERB methods ***/ \
2395 STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, LPOLEVERB rgelt, ULONG* pceltFetched) PURE; \
2396 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \
2397 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
2398 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumOLEVERB** ppenum) PURE;
2400 HRESULT CALLBACK
IEnumOLEVERB_RemoteNext_Proxy(
2404 ULONG
* pceltFetched
);
2405 void __RPC_STUB
IEnumOLEVERB_RemoteNext_Stub(
2406 struct IRpcStubBuffer
* This
,
2407 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2408 PRPC_MESSAGE pRpcMessage
,
2409 DWORD
* pdwStubPhase
);
2410 HRESULT CALLBACK
IEnumOLEVERB_Next_Proxy(
2414 ULONG
* pceltFetched
);
2415 HRESULT __RPC_STUB
IEnumOLEVERB_Next_Stub(
2419 ULONG
* pceltFetched
);
2420 HRESULT CALLBACK
IEnumOLEVERB_Skip_Proxy(
2423 void __RPC_STUB
IEnumOLEVERB_Skip_Stub(
2424 struct IRpcStubBuffer
* This
,
2425 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2426 PRPC_MESSAGE pRpcMessage
,
2427 DWORD
* pdwStubPhase
);
2428 HRESULT CALLBACK
IEnumOLEVERB_Reset_Proxy(
2429 IEnumOLEVERB
* This
);
2430 void __RPC_STUB
IEnumOLEVERB_Reset_Stub(
2431 struct IRpcStubBuffer
* This
,
2432 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2433 PRPC_MESSAGE pRpcMessage
,
2434 DWORD
* pdwStubPhase
);
2435 HRESULT CALLBACK
IEnumOLEVERB_Clone_Proxy(
2437 IEnumOLEVERB
** ppenum
);
2438 void __RPC_STUB
IEnumOLEVERB_Clone_Stub(
2439 struct IRpcStubBuffer
* This
,
2440 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2441 PRPC_MESSAGE pRpcMessage
,
2442 DWORD
* pdwStubPhase
);
2444 #endif /* __IEnumOLEVERB_INTERFACE_DEFINED__ */
2446 #ifndef __IOleObject_FWD_DEFINED__
2447 #define __IOleObject_FWD_DEFINED__
2448 typedef struct IOleObject IOleObject
;
2451 typedef IOleObject
*LPOLEOBJECT
;
2453 typedef enum tagOLEGETMONIKER
{
2454 OLEGETMONIKER_ONLYIFTHERE
= 1,
2455 OLEGETMONIKER_FORCEASSIGN
= 2,
2456 OLEGETMONIKER_UNASSIGN
= 3,
2457 OLEGETMONIKER_TEMPFORUSER
= 4
2460 typedef enum tagOLEWHICHMK
{
2461 OLEWHICHMK_CONTAINER
= 1,
2462 OLEWHICHMK_OBJREL
= 2,
2463 OLEWHICHMK_OBJFULL
= 3
2466 typedef enum tagUSERCLASSTYPE
{
2467 USERCLASSTYPE_FULL
= 1,
2468 USERCLASSTYPE_SHORT
= 2,
2469 USERCLASSTYPE_APPNAME
= 3
2472 typedef enum tagOLEMISC
{
2473 OLEMISC_RECOMPOSEONRESIZE
= 0x1,
2474 OLEMISC_ONLYICONIC
= 0x2,
2475 OLEMISC_INSERTNOTREPLACE
= 0x4,
2476 OLEMISC_STATIC
= 0x8,
2477 OLEMISC_CANTLINKINSIDE
= 0x10,
2478 OLEMISC_CANLINKBYOLE1
= 0x20,
2479 OLEMISC_ISLINKOBJECT
= 0x40,
2480 OLEMISC_INSIDEOUT
= 0x80,
2481 OLEMISC_ACTIVATEWHENVISIBLE
= 0x100,
2482 OLEMISC_RENDERINGISDEVICEINDEPENDENT
= 0x200,
2483 OLEMISC_INVISIBLEATRUNTIME
= 0x400,
2484 OLEMISC_ALWAYSRUN
= 0x800,
2485 OLEMISC_ACTSLIKEBUTTON
= 0x1000,
2486 OLEMISC_ACTSLIKELABEL
= 0x2000,
2487 OLEMISC_NOUIACTIVATE
= 0x4000,
2488 OLEMISC_ALIGNABLE
= 0x8000,
2489 OLEMISC_SIMPLEFRAME
= 0x10000,
2490 OLEMISC_SETCLIENTSITEFIRST
= 0x20000,
2491 OLEMISC_IMEMODE
= 0x40000,
2492 OLEMISC_IGNOREACTIVATEWHENVISIBLE
= 0x80000,
2493 OLEMISC_WANTSTOMENUMERGE
= 0x100000,
2494 OLEMISC_SUPPORTSMULTILEVELUNDO
= 0x200000
2497 typedef enum tagOLECLOSE
{
2498 OLECLOSE_SAVEIFDIRTY
= 0,
2499 OLECLOSE_NOSAVE
= 1,
2500 OLECLOSE_PROMPTSAVE
= 2
2503 /*****************************************************************************
2504 * IOleObject interface
2506 #ifndef __IOleObject_INTERFACE_DEFINED__
2507 #define __IOleObject_INTERFACE_DEFINED__
2509 DEFINE_GUID(IID_IOleObject
, 0x00000112, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2510 #if defined(__cplusplus) && !defined(CINTERFACE)
2511 struct IOleObject
: public IUnknown
2513 virtual HRESULT STDMETHODCALLTYPE
SetClientSite(
2514 IOleClientSite
* pClientSite
) = 0;
2516 virtual HRESULT STDMETHODCALLTYPE
GetClientSite(
2517 IOleClientSite
** ppClientSite
) = 0;
2519 virtual HRESULT STDMETHODCALLTYPE
SetHostNames(
2520 LPCOLESTR szContainerApp
,
2521 LPCOLESTR szContainerObj
) = 0;
2523 virtual HRESULT STDMETHODCALLTYPE
Close(
2524 DWORD dwSaveOption
) = 0;
2526 virtual HRESULT STDMETHODCALLTYPE
SetMoniker(
2527 DWORD dwWhichMoniker
,
2530 virtual HRESULT STDMETHODCALLTYPE
GetMoniker(
2532 DWORD dwWhichMoniker
,
2533 IMoniker
** ppmk
) = 0;
2535 virtual HRESULT STDMETHODCALLTYPE
InitFromData(
2536 IDataObject
* pDataObject
,
2538 DWORD dwReserved
) = 0;
2540 virtual HRESULT STDMETHODCALLTYPE
GetClipboardData(
2542 IDataObject
** ppDataObject
) = 0;
2544 virtual HRESULT STDMETHODCALLTYPE
DoVerb(
2546 struct tagMSG
* lpmsg
,
2547 IOleClientSite
* pActiveSite
,
2550 LPCRECT lprcPosRect
) = 0;
2552 virtual HRESULT STDMETHODCALLTYPE
EnumVerbs(
2553 IEnumOLEVERB
** ppEnumOleVerb
) = 0;
2555 virtual HRESULT STDMETHODCALLTYPE
Update(
2558 virtual HRESULT STDMETHODCALLTYPE
IsUpToDate(
2561 virtual HRESULT STDMETHODCALLTYPE
GetUserClassID(
2564 virtual HRESULT STDMETHODCALLTYPE
GetUserType(
2566 LPOLESTR
* pszUserType
) = 0;
2568 virtual HRESULT STDMETHODCALLTYPE
SetExtent(
2572 virtual HRESULT STDMETHODCALLTYPE
GetExtent(
2576 virtual HRESULT STDMETHODCALLTYPE
Advise(
2577 IAdviseSink
* pAdvSink
,
2578 DWORD
* pdwConnection
) = 0;
2580 virtual HRESULT STDMETHODCALLTYPE
Unadvise(
2581 DWORD dwConnection
) = 0;
2583 virtual HRESULT STDMETHODCALLTYPE
EnumAdvise(
2584 IEnumSTATDATA
** ppenumAdvise
) = 0;
2586 virtual HRESULT STDMETHODCALLTYPE
GetMiscStatus(
2588 DWORD
* pdwStatus
) = 0;
2590 virtual HRESULT STDMETHODCALLTYPE
SetColorScheme(
2591 LOGPALETTE
* pLogpal
) = 0;
2595 typedef struct IOleObjectVtbl IOleObjectVtbl
;
2597 const IOleObjectVtbl
* lpVtbl
;
2599 struct IOleObjectVtbl
{
2600 ICOM_MSVTABLE_COMPAT_FIELDS
2602 /*** IUnknown methods ***/
2603 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2608 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2611 ULONG (STDMETHODCALLTYPE
*Release
)(
2614 /*** IOleObject methods ***/
2615 HRESULT (STDMETHODCALLTYPE
*SetClientSite
)(
2617 IOleClientSite
* pClientSite
);
2619 HRESULT (STDMETHODCALLTYPE
*GetClientSite
)(
2621 IOleClientSite
** ppClientSite
);
2623 HRESULT (STDMETHODCALLTYPE
*SetHostNames
)(
2625 LPCOLESTR szContainerApp
,
2626 LPCOLESTR szContainerObj
);
2628 HRESULT (STDMETHODCALLTYPE
*Close
)(
2630 DWORD dwSaveOption
);
2632 HRESULT (STDMETHODCALLTYPE
*SetMoniker
)(
2634 DWORD dwWhichMoniker
,
2637 HRESULT (STDMETHODCALLTYPE
*GetMoniker
)(
2640 DWORD dwWhichMoniker
,
2643 HRESULT (STDMETHODCALLTYPE
*InitFromData
)(
2645 IDataObject
* pDataObject
,
2649 HRESULT (STDMETHODCALLTYPE
*GetClipboardData
)(
2652 IDataObject
** ppDataObject
);
2654 HRESULT (STDMETHODCALLTYPE
*DoVerb
)(
2657 struct tagMSG
* lpmsg
,
2658 IOleClientSite
* pActiveSite
,
2661 LPCRECT lprcPosRect
);
2663 HRESULT (STDMETHODCALLTYPE
*EnumVerbs
)(
2665 IEnumOLEVERB
** ppEnumOleVerb
);
2667 HRESULT (STDMETHODCALLTYPE
*Update
)(
2670 HRESULT (STDMETHODCALLTYPE
*IsUpToDate
)(
2673 HRESULT (STDMETHODCALLTYPE
*GetUserClassID
)(
2677 HRESULT (STDMETHODCALLTYPE
*GetUserType
)(
2680 LPOLESTR
* pszUserType
);
2682 HRESULT (STDMETHODCALLTYPE
*SetExtent
)(
2687 HRESULT (STDMETHODCALLTYPE
*GetExtent
)(
2692 HRESULT (STDMETHODCALLTYPE
*Advise
)(
2694 IAdviseSink
* pAdvSink
,
2695 DWORD
* pdwConnection
);
2697 HRESULT (STDMETHODCALLTYPE
*Unadvise
)(
2699 DWORD dwConnection
);
2701 HRESULT (STDMETHODCALLTYPE
*EnumAdvise
)(
2703 IEnumSTATDATA
** ppenumAdvise
);
2705 HRESULT (STDMETHODCALLTYPE
*GetMiscStatus
)(
2710 HRESULT (STDMETHODCALLTYPE
*SetColorScheme
)(
2712 LOGPALETTE
* pLogpal
);
2716 /*** IUnknown methods ***/
2717 #define IOleObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2718 #define IOleObject_AddRef(p) (p)->lpVtbl->AddRef(p)
2719 #define IOleObject_Release(p) (p)->lpVtbl->Release(p)
2720 /*** IOleObject methods ***/
2721 #define IOleObject_SetClientSite(p,a) (p)->lpVtbl->SetClientSite(p,a)
2722 #define IOleObject_GetClientSite(p,a) (p)->lpVtbl->GetClientSite(p,a)
2723 #define IOleObject_SetHostNames(p,a,b) (p)->lpVtbl->SetHostNames(p,a,b)
2724 #define IOleObject_Close(p,a) (p)->lpVtbl->Close(p,a)
2725 #define IOleObject_SetMoniker(p,a,b) (p)->lpVtbl->SetMoniker(p,a,b)
2726 #define IOleObject_GetMoniker(p,a,b,c) (p)->lpVtbl->GetMoniker(p,a,b,c)
2727 #define IOleObject_InitFromData(p,a,b,c) (p)->lpVtbl->InitFromData(p,a,b,c)
2728 #define IOleObject_GetClipboardData(p,a,b) (p)->lpVtbl->GetClipboardData(p,a,b)
2729 #define IOleObject_DoVerb(p,a,b,c,d,e,f) (p)->lpVtbl->DoVerb(p,a,b,c,d,e,f)
2730 #define IOleObject_EnumVerbs(p,a) (p)->lpVtbl->EnumVerbs(p,a)
2731 #define IOleObject_Update(p) (p)->lpVtbl->Update(p)
2732 #define IOleObject_IsUpToDate(p) (p)->lpVtbl->IsUpToDate(p)
2733 #define IOleObject_GetUserClassID(p,a) (p)->lpVtbl->GetUserClassID(p,a)
2734 #define IOleObject_GetUserType(p,a,b) (p)->lpVtbl->GetUserType(p,a,b)
2735 #define IOleObject_SetExtent(p,a,b) (p)->lpVtbl->SetExtent(p,a,b)
2736 #define IOleObject_GetExtent(p,a,b) (p)->lpVtbl->GetExtent(p,a,b)
2737 #define IOleObject_Advise(p,a,b) (p)->lpVtbl->Advise(p,a,b)
2738 #define IOleObject_Unadvise(p,a) (p)->lpVtbl->Unadvise(p,a)
2739 #define IOleObject_EnumAdvise(p,a) (p)->lpVtbl->EnumAdvise(p,a)
2740 #define IOleObject_GetMiscStatus(p,a,b) (p)->lpVtbl->GetMiscStatus(p,a,b)
2741 #define IOleObject_SetColorScheme(p,a) (p)->lpVtbl->SetColorScheme(p,a)
2745 #define IOleObject_METHODS \
2746 ICOM_MSVTABLE_COMPAT_FIELDS \
2747 /*** IUnknown methods ***/ \
2748 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2749 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2750 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2751 /*** IOleObject methods ***/ \
2752 STDMETHOD_(HRESULT,SetClientSite)(THIS_ IOleClientSite* pClientSite) PURE; \
2753 STDMETHOD_(HRESULT,GetClientSite)(THIS_ IOleClientSite** ppClientSite) PURE; \
2754 STDMETHOD_(HRESULT,SetHostNames)(THIS_ LPCOLESTR szContainerApp, LPCOLESTR szContainerObj) PURE; \
2755 STDMETHOD_(HRESULT,Close)(THIS_ DWORD dwSaveOption) PURE; \
2756 STDMETHOD_(HRESULT,SetMoniker)(THIS_ DWORD dwWhichMoniker, IMoniker* pmk) PURE; \
2757 STDMETHOD_(HRESULT,GetMoniker)(THIS_ DWORD dwAssign, DWORD dwWhichMoniker, IMoniker** ppmk) PURE; \
2758 STDMETHOD_(HRESULT,InitFromData)(THIS_ IDataObject* pDataObject, BOOL fCreation, DWORD dwReserved) PURE; \
2759 STDMETHOD_(HRESULT,GetClipboardData)(THIS_ DWORD dwReserved, IDataObject** ppDataObject) PURE; \
2760 STDMETHOD_(HRESULT,DoVerb)(THIS_ LONG iVerb, struct tagMSG* lpmsg, IOleClientSite* pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect) PURE; \
2761 STDMETHOD_(HRESULT,EnumVerbs)(THIS_ IEnumOLEVERB** ppEnumOleVerb) PURE; \
2762 STDMETHOD_(HRESULT,Update)(THIS) PURE; \
2763 STDMETHOD_(HRESULT,IsUpToDate)(THIS) PURE; \
2764 STDMETHOD_(HRESULT,GetUserClassID)(THIS_ CLSID* pClsid) PURE; \
2765 STDMETHOD_(HRESULT,GetUserType)(THIS_ DWORD dwFormOfType, LPOLESTR* pszUserType) PURE; \
2766 STDMETHOD_(HRESULT,SetExtent)(THIS_ DWORD dwDrawAspect, SIZEL* psizel) PURE; \
2767 STDMETHOD_(HRESULT,GetExtent)(THIS_ DWORD dwDrawAspect, SIZEL* psizel) PURE; \
2768 STDMETHOD_(HRESULT,Advise)(THIS_ IAdviseSink* pAdvSink, DWORD* pdwConnection) PURE; \
2769 STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwConnection) PURE; \
2770 STDMETHOD_(HRESULT,EnumAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; \
2771 STDMETHOD_(HRESULT,GetMiscStatus)(THIS_ DWORD dwAspect, DWORD* pdwStatus) PURE; \
2772 STDMETHOD_(HRESULT,SetColorScheme)(THIS_ LOGPALETTE* pLogpal) PURE;
2774 HRESULT CALLBACK
IOleObject_SetClientSite_Proxy(
2776 IOleClientSite
* pClientSite
);
2777 void __RPC_STUB
IOleObject_SetClientSite_Stub(
2778 struct IRpcStubBuffer
* This
,
2779 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2780 PRPC_MESSAGE pRpcMessage
,
2781 DWORD
* pdwStubPhase
);
2782 HRESULT CALLBACK
IOleObject_GetClientSite_Proxy(
2784 IOleClientSite
** ppClientSite
);
2785 void __RPC_STUB
IOleObject_GetClientSite_Stub(
2786 struct IRpcStubBuffer
* This
,
2787 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2788 PRPC_MESSAGE pRpcMessage
,
2789 DWORD
* pdwStubPhase
);
2790 HRESULT CALLBACK
IOleObject_SetHostNames_Proxy(
2792 LPCOLESTR szContainerApp
,
2793 LPCOLESTR szContainerObj
);
2794 void __RPC_STUB
IOleObject_SetHostNames_Stub(
2795 struct IRpcStubBuffer
* This
,
2796 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2797 PRPC_MESSAGE pRpcMessage
,
2798 DWORD
* pdwStubPhase
);
2799 HRESULT CALLBACK
IOleObject_Close_Proxy(
2801 DWORD dwSaveOption
);
2802 void __RPC_STUB
IOleObject_Close_Stub(
2803 struct IRpcStubBuffer
* This
,
2804 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2805 PRPC_MESSAGE pRpcMessage
,
2806 DWORD
* pdwStubPhase
);
2807 HRESULT CALLBACK
IOleObject_SetMoniker_Proxy(
2809 DWORD dwWhichMoniker
,
2811 void __RPC_STUB
IOleObject_SetMoniker_Stub(
2812 struct IRpcStubBuffer
* This
,
2813 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2814 PRPC_MESSAGE pRpcMessage
,
2815 DWORD
* pdwStubPhase
);
2816 HRESULT CALLBACK
IOleObject_GetMoniker_Proxy(
2819 DWORD dwWhichMoniker
,
2821 void __RPC_STUB
IOleObject_GetMoniker_Stub(
2822 struct IRpcStubBuffer
* This
,
2823 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2824 PRPC_MESSAGE pRpcMessage
,
2825 DWORD
* pdwStubPhase
);
2826 HRESULT CALLBACK
IOleObject_InitFromData_Proxy(
2828 IDataObject
* pDataObject
,
2831 void __RPC_STUB
IOleObject_InitFromData_Stub(
2832 struct IRpcStubBuffer
* This
,
2833 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2834 PRPC_MESSAGE pRpcMessage
,
2835 DWORD
* pdwStubPhase
);
2836 HRESULT CALLBACK
IOleObject_GetClipboardData_Proxy(
2839 IDataObject
** ppDataObject
);
2840 void __RPC_STUB
IOleObject_GetClipboardData_Stub(
2841 struct IRpcStubBuffer
* This
,
2842 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2843 PRPC_MESSAGE pRpcMessage
,
2844 DWORD
* pdwStubPhase
);
2845 HRESULT CALLBACK
IOleObject_DoVerb_Proxy(
2848 struct tagMSG
* lpmsg
,
2849 IOleClientSite
* pActiveSite
,
2852 LPCRECT lprcPosRect
);
2853 void __RPC_STUB
IOleObject_DoVerb_Stub(
2854 struct IRpcStubBuffer
* This
,
2855 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2856 PRPC_MESSAGE pRpcMessage
,
2857 DWORD
* pdwStubPhase
);
2858 HRESULT CALLBACK
IOleObject_EnumVerbs_Proxy(
2860 IEnumOLEVERB
** ppEnumOleVerb
);
2861 void __RPC_STUB
IOleObject_EnumVerbs_Stub(
2862 struct IRpcStubBuffer
* This
,
2863 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2864 PRPC_MESSAGE pRpcMessage
,
2865 DWORD
* pdwStubPhase
);
2866 HRESULT CALLBACK
IOleObject_Update_Proxy(
2868 void __RPC_STUB
IOleObject_Update_Stub(
2869 struct IRpcStubBuffer
* This
,
2870 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2871 PRPC_MESSAGE pRpcMessage
,
2872 DWORD
* pdwStubPhase
);
2873 HRESULT CALLBACK
IOleObject_IsUpToDate_Proxy(
2875 void __RPC_STUB
IOleObject_IsUpToDate_Stub(
2876 struct IRpcStubBuffer
* This
,
2877 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2878 PRPC_MESSAGE pRpcMessage
,
2879 DWORD
* pdwStubPhase
);
2880 HRESULT CALLBACK
IOleObject_GetUserClassID_Proxy(
2883 void __RPC_STUB
IOleObject_GetUserClassID_Stub(
2884 struct IRpcStubBuffer
* This
,
2885 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2886 PRPC_MESSAGE pRpcMessage
,
2887 DWORD
* pdwStubPhase
);
2888 HRESULT CALLBACK
IOleObject_GetUserType_Proxy(
2891 LPOLESTR
* pszUserType
);
2892 void __RPC_STUB
IOleObject_GetUserType_Stub(
2893 struct IRpcStubBuffer
* This
,
2894 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2895 PRPC_MESSAGE pRpcMessage
,
2896 DWORD
* pdwStubPhase
);
2897 HRESULT CALLBACK
IOleObject_SetExtent_Proxy(
2901 void __RPC_STUB
IOleObject_SetExtent_Stub(
2902 struct IRpcStubBuffer
* This
,
2903 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2904 PRPC_MESSAGE pRpcMessage
,
2905 DWORD
* pdwStubPhase
);
2906 HRESULT CALLBACK
IOleObject_GetExtent_Proxy(
2910 void __RPC_STUB
IOleObject_GetExtent_Stub(
2911 struct IRpcStubBuffer
* This
,
2912 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2913 PRPC_MESSAGE pRpcMessage
,
2914 DWORD
* pdwStubPhase
);
2915 HRESULT CALLBACK
IOleObject_Advise_Proxy(
2917 IAdviseSink
* pAdvSink
,
2918 DWORD
* pdwConnection
);
2919 void __RPC_STUB
IOleObject_Advise_Stub(
2920 struct IRpcStubBuffer
* This
,
2921 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2922 PRPC_MESSAGE pRpcMessage
,
2923 DWORD
* pdwStubPhase
);
2924 HRESULT CALLBACK
IOleObject_Unadvise_Proxy(
2926 DWORD dwConnection
);
2927 void __RPC_STUB
IOleObject_Unadvise_Stub(
2928 struct IRpcStubBuffer
* This
,
2929 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2930 PRPC_MESSAGE pRpcMessage
,
2931 DWORD
* pdwStubPhase
);
2932 HRESULT CALLBACK
IOleObject_EnumAdvise_Proxy(
2934 IEnumSTATDATA
** ppenumAdvise
);
2935 void __RPC_STUB
IOleObject_EnumAdvise_Stub(
2936 struct IRpcStubBuffer
* This
,
2937 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2938 PRPC_MESSAGE pRpcMessage
,
2939 DWORD
* pdwStubPhase
);
2940 HRESULT CALLBACK
IOleObject_GetMiscStatus_Proxy(
2944 void __RPC_STUB
IOleObject_GetMiscStatus_Stub(
2945 struct IRpcStubBuffer
* This
,
2946 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2947 PRPC_MESSAGE pRpcMessage
,
2948 DWORD
* pdwStubPhase
);
2949 HRESULT CALLBACK
IOleObject_SetColorScheme_Proxy(
2951 LOGPALETTE
* pLogpal
);
2952 void __RPC_STUB
IOleObject_SetColorScheme_Stub(
2953 struct IRpcStubBuffer
* This
,
2954 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2955 PRPC_MESSAGE pRpcMessage
,
2956 DWORD
* pdwStubPhase
);
2958 #endif /* __IOleObject_INTERFACE_DEFINED__ */
2960 #ifndef __IOleAdviseHolder_FWD_DEFINED__
2961 #define __IOleAdviseHolder_FWD_DEFINED__
2962 typedef struct IOleAdviseHolder IOleAdviseHolder
;
2965 typedef IOleAdviseHolder
*LPOLEADVISEHOLDER
;
2967 /*****************************************************************************
2968 * IOleAdviseHolder interface
2970 #ifndef __IOleAdviseHolder_INTERFACE_DEFINED__
2971 #define __IOleAdviseHolder_INTERFACE_DEFINED__
2973 DEFINE_GUID(IID_IOleAdviseHolder
, 0x00000111, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2974 #if defined(__cplusplus) && !defined(CINTERFACE)
2975 struct IOleAdviseHolder
: public IUnknown
2977 virtual HRESULT STDMETHODCALLTYPE
Advise(
2978 IAdviseSink
* pAdvise
,
2979 DWORD
* pdwConnection
) = 0;
2981 virtual HRESULT STDMETHODCALLTYPE
Unadvise(
2982 DWORD dwConnection
) = 0;
2984 virtual HRESULT STDMETHODCALLTYPE
EnumAdvise(
2985 IEnumSTATDATA
** ppenumAdvise
) = 0;
2987 virtual HRESULT STDMETHODCALLTYPE
SendOnRename(
2990 virtual HRESULT STDMETHODCALLTYPE
SendOnSave(
2993 virtual HRESULT STDMETHODCALLTYPE
SendOnClose(
2998 typedef struct IOleAdviseHolderVtbl IOleAdviseHolderVtbl
;
2999 struct IOleAdviseHolder
{
3000 const IOleAdviseHolderVtbl
* lpVtbl
;
3002 struct IOleAdviseHolderVtbl
{
3003 ICOM_MSVTABLE_COMPAT_FIELDS
3005 /*** IUnknown methods ***/
3006 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3007 IOleAdviseHolder
* This
,
3011 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3012 IOleAdviseHolder
* This
);
3014 ULONG (STDMETHODCALLTYPE
*Release
)(
3015 IOleAdviseHolder
* This
);
3017 /*** IOleAdviseHolder methods ***/
3018 HRESULT (STDMETHODCALLTYPE
*Advise
)(
3019 IOleAdviseHolder
* This
,
3020 IAdviseSink
* pAdvise
,
3021 DWORD
* pdwConnection
);
3023 HRESULT (STDMETHODCALLTYPE
*Unadvise
)(
3024 IOleAdviseHolder
* This
,
3025 DWORD dwConnection
);
3027 HRESULT (STDMETHODCALLTYPE
*EnumAdvise
)(
3028 IOleAdviseHolder
* This
,
3029 IEnumSTATDATA
** ppenumAdvise
);
3031 HRESULT (STDMETHODCALLTYPE
*SendOnRename
)(
3032 IOleAdviseHolder
* This
,
3035 HRESULT (STDMETHODCALLTYPE
*SendOnSave
)(
3036 IOleAdviseHolder
* This
);
3038 HRESULT (STDMETHODCALLTYPE
*SendOnClose
)(
3039 IOleAdviseHolder
* This
);
3043 /*** IUnknown methods ***/
3044 #define IOleAdviseHolder_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3045 #define IOleAdviseHolder_AddRef(p) (p)->lpVtbl->AddRef(p)
3046 #define IOleAdviseHolder_Release(p) (p)->lpVtbl->Release(p)
3047 /*** IOleAdviseHolder methods ***/
3048 #define IOleAdviseHolder_Advise(p,a,b) (p)->lpVtbl->Advise(p,a,b)
3049 #define IOleAdviseHolder_Unadvise(p,a) (p)->lpVtbl->Unadvise(p,a)
3050 #define IOleAdviseHolder_EnumAdvise(p,a) (p)->lpVtbl->EnumAdvise(p,a)
3051 #define IOleAdviseHolder_SendOnRename(p,a) (p)->lpVtbl->SendOnRename(p,a)
3052 #define IOleAdviseHolder_SendOnSave(p) (p)->lpVtbl->SendOnSave(p)
3053 #define IOleAdviseHolder_SendOnClose(p) (p)->lpVtbl->SendOnClose(p)
3057 #define IOleAdviseHolder_METHODS \
3058 ICOM_MSVTABLE_COMPAT_FIELDS \
3059 /*** IUnknown methods ***/ \
3060 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3061 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3062 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3063 /*** IOleAdviseHolder methods ***/ \
3064 STDMETHOD_(HRESULT,Advise)(THIS_ IAdviseSink* pAdvise, DWORD* pdwConnection) PURE; \
3065 STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwConnection) PURE; \
3066 STDMETHOD_(HRESULT,EnumAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; \
3067 STDMETHOD_(HRESULT,SendOnRename)(THIS_ IMoniker* pmk) PURE; \
3068 STDMETHOD_(HRESULT,SendOnSave)(THIS) PURE; \
3069 STDMETHOD_(HRESULT,SendOnClose)(THIS) PURE;
3071 HRESULT CALLBACK
IOleAdviseHolder_Advise_Proxy(
3072 IOleAdviseHolder
* This
,
3073 IAdviseSink
* pAdvise
,
3074 DWORD
* pdwConnection
);
3075 void __RPC_STUB
IOleAdviseHolder_Advise_Stub(
3076 struct IRpcStubBuffer
* This
,
3077 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3078 PRPC_MESSAGE pRpcMessage
,
3079 DWORD
* pdwStubPhase
);
3080 HRESULT CALLBACK
IOleAdviseHolder_Unadvise_Proxy(
3081 IOleAdviseHolder
* This
,
3082 DWORD dwConnection
);
3083 void __RPC_STUB
IOleAdviseHolder_Unadvise_Stub(
3084 struct IRpcStubBuffer
* This
,
3085 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3086 PRPC_MESSAGE pRpcMessage
,
3087 DWORD
* pdwStubPhase
);
3088 HRESULT CALLBACK
IOleAdviseHolder_EnumAdvise_Proxy(
3089 IOleAdviseHolder
* This
,
3090 IEnumSTATDATA
** ppenumAdvise
);
3091 void __RPC_STUB
IOleAdviseHolder_EnumAdvise_Stub(
3092 struct IRpcStubBuffer
* This
,
3093 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3094 PRPC_MESSAGE pRpcMessage
,
3095 DWORD
* pdwStubPhase
);
3096 HRESULT CALLBACK
IOleAdviseHolder_SendOnRename_Proxy(
3097 IOleAdviseHolder
* This
,
3099 void __RPC_STUB
IOleAdviseHolder_SendOnRename_Stub(
3100 struct IRpcStubBuffer
* This
,
3101 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3102 PRPC_MESSAGE pRpcMessage
,
3103 DWORD
* pdwStubPhase
);
3104 HRESULT CALLBACK
IOleAdviseHolder_SendOnSave_Proxy(
3105 IOleAdviseHolder
* This
);
3106 void __RPC_STUB
IOleAdviseHolder_SendOnSave_Stub(
3107 struct IRpcStubBuffer
* This
,
3108 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3109 PRPC_MESSAGE pRpcMessage
,
3110 DWORD
* pdwStubPhase
);
3111 HRESULT CALLBACK
IOleAdviseHolder_SendOnClose_Proxy(
3112 IOleAdviseHolder
* This
);
3113 void __RPC_STUB
IOleAdviseHolder_SendOnClose_Stub(
3114 struct IRpcStubBuffer
* This
,
3115 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3116 PRPC_MESSAGE pRpcMessage
,
3117 DWORD
* pdwStubPhase
);
3119 #endif /* __IOleAdviseHolder_INTERFACE_DEFINED__ */
3121 #ifndef __IContinue_FWD_DEFINED__
3122 #define __IContinue_FWD_DEFINED__
3123 typedef struct IContinue IContinue
;
3126 /*****************************************************************************
3127 * IContinue interface
3129 #ifndef __IContinue_INTERFACE_DEFINED__
3130 #define __IContinue_INTERFACE_DEFINED__
3132 DEFINE_GUID(IID_IContinue
, 0x0000012a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3133 #if defined(__cplusplus) && !defined(CINTERFACE)
3134 struct IContinue
: public IUnknown
3136 virtual HRESULT STDMETHODCALLTYPE
FContinue(
3141 typedef struct IContinueVtbl IContinueVtbl
;
3143 const IContinueVtbl
* lpVtbl
;
3145 struct IContinueVtbl
{
3146 ICOM_MSVTABLE_COMPAT_FIELDS
3148 /*** IUnknown methods ***/
3149 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3154 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3157 ULONG (STDMETHODCALLTYPE
*Release
)(
3160 /*** IContinue methods ***/
3161 HRESULT (STDMETHODCALLTYPE
*FContinue
)(
3166 /*** IUnknown methods ***/
3167 #define IContinue_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3168 #define IContinue_AddRef(p) (p)->lpVtbl->AddRef(p)
3169 #define IContinue_Release(p) (p)->lpVtbl->Release(p)
3170 /*** IContinue methods ***/
3171 #define IContinue_FContinue(p) (p)->lpVtbl->FContinue(p)
3175 #define IContinue_METHODS \
3176 ICOM_MSVTABLE_COMPAT_FIELDS \
3177 /*** IUnknown methods ***/ \
3178 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3179 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3180 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3181 /*** IContinue methods ***/ \
3182 STDMETHOD_(HRESULT,FContinue)(THIS) PURE;
3184 HRESULT CALLBACK
IContinue_FContinue_Proxy(
3186 void __RPC_STUB
IContinue_FContinue_Stub(
3187 struct IRpcStubBuffer
* This
,
3188 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3189 PRPC_MESSAGE pRpcMessage
,
3190 DWORD
* pdwStubPhase
);
3192 #endif /* __IContinue_INTERFACE_DEFINED__ */
3194 #ifndef __IViewObject_FWD_DEFINED__
3195 #define __IViewObject_FWD_DEFINED__
3196 typedef struct IViewObject IViewObject
;
3199 typedef IViewObject
*LPVIEWOBJECT
;
3201 /*****************************************************************************
3202 * IViewObject interface
3204 #ifndef __IViewObject_INTERFACE_DEFINED__
3205 #define __IViewObject_INTERFACE_DEFINED__
3207 DEFINE_GUID(IID_IViewObject
, 0x0000010d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3208 #if defined(__cplusplus) && !defined(CINTERFACE)
3209 struct IViewObject
: public IUnknown
3211 virtual HRESULT STDMETHODCALLTYPE
Draw(
3215 DVTARGETDEVICE
* ptd
,
3218 LPCRECTL lprcBounds
,
3219 LPCRECTL lprcWBounds
,
3220 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3221 ULONG_PTR dwContinue
) = 0;
3223 virtual HRESULT STDMETHODCALLTYPE
GetColorSet(
3227 DVTARGETDEVICE
* ptd
,
3229 LOGPALETTE
** ppColorSet
) = 0;
3231 virtual HRESULT STDMETHODCALLTYPE
Freeze(
3235 DWORD
* pdwFreeze
) = 0;
3237 virtual HRESULT STDMETHODCALLTYPE
Unfreeze(
3238 DWORD dwFreeze
) = 0;
3240 virtual HRESULT STDMETHODCALLTYPE
SetAdvise(
3243 IAdviseSink
* pAdvSink
) = 0;
3245 virtual HRESULT STDMETHODCALLTYPE
GetAdvise(
3248 IAdviseSink
** ppAdvSink
) = 0;
3252 typedef struct IViewObjectVtbl IViewObjectVtbl
;
3253 struct IViewObject
{
3254 const IViewObjectVtbl
* lpVtbl
;
3256 struct IViewObjectVtbl
{
3257 ICOM_MSVTABLE_COMPAT_FIELDS
3259 /*** IUnknown methods ***/
3260 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3265 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3268 ULONG (STDMETHODCALLTYPE
*Release
)(
3271 /*** IViewObject methods ***/
3272 HRESULT (STDMETHODCALLTYPE
*Draw
)(
3277 DVTARGETDEVICE
* ptd
,
3280 LPCRECTL lprcBounds
,
3281 LPCRECTL lprcWBounds
,
3282 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3283 ULONG_PTR dwContinue
);
3285 HRESULT (STDMETHODCALLTYPE
*GetColorSet
)(
3290 DVTARGETDEVICE
* ptd
,
3292 LOGPALETTE
** ppColorSet
);
3294 HRESULT (STDMETHODCALLTYPE
*Freeze
)(
3301 HRESULT (STDMETHODCALLTYPE
*Unfreeze
)(
3305 HRESULT (STDMETHODCALLTYPE
*SetAdvise
)(
3309 IAdviseSink
* pAdvSink
);
3311 HRESULT (STDMETHODCALLTYPE
*GetAdvise
)(
3315 IAdviseSink
** ppAdvSink
);
3319 /*** IUnknown methods ***/
3320 #define IViewObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3321 #define IViewObject_AddRef(p) (p)->lpVtbl->AddRef(p)
3322 #define IViewObject_Release(p) (p)->lpVtbl->Release(p)
3323 /*** IViewObject methods ***/
3324 #define IViewObject_Draw(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Draw(p,a,b,c,d,e,f,g,h,i,j)
3325 #define IViewObject_GetColorSet(p,a,b,c,d,e,f) (p)->lpVtbl->GetColorSet(p,a,b,c,d,e,f)
3326 #define IViewObject_Freeze(p,a,b,c,d) (p)->lpVtbl->Freeze(p,a,b,c,d)
3327 #define IViewObject_Unfreeze(p,a) (p)->lpVtbl->Unfreeze(p,a)
3328 #define IViewObject_SetAdvise(p,a,b,c) (p)->lpVtbl->SetAdvise(p,a,b,c)
3329 #define IViewObject_GetAdvise(p,a,b,c) (p)->lpVtbl->GetAdvise(p,a,b,c)
3333 #define IViewObject_METHODS \
3334 ICOM_MSVTABLE_COMPAT_FIELDS \
3335 /*** IUnknown methods ***/ \
3336 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3337 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3338 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3339 /*** IViewObject methods ***/ \
3340 STDMETHOD_(HRESULT,Draw)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL (STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) PURE; \
3341 STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
3342 STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
3343 STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
3344 STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
3345 STDMETHOD_(HRESULT,GetAdvise)(THIS_ DWORD* pAspects, DWORD* pAdvf, IAdviseSink** ppAdvSink) PURE;
3347 HRESULT CALLBACK
IViewObject_RemoteDraw_Proxy(
3352 DVTARGETDEVICE
* ptd
,
3353 ULONG_PTR hdcTargetDev
,
3355 LPCRECTL lprcBounds
,
3356 LPCRECTL lprcWBounds
,
3357 IContinue
* pContinue
);
3358 void __RPC_STUB
IViewObject_RemoteDraw_Stub(
3359 struct IRpcStubBuffer
* This
,
3360 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3361 PRPC_MESSAGE pRpcMessage
,
3362 DWORD
* pdwStubPhase
);
3363 HRESULT CALLBACK
IViewObject_Draw_Proxy(
3368 DVTARGETDEVICE
* ptd
,
3371 LPCRECTL lprcBounds
,
3372 LPCRECTL lprcWBounds
,
3373 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3374 ULONG_PTR dwContinue
);
3375 HRESULT __RPC_STUB
IViewObject_Draw_Stub(
3380 DVTARGETDEVICE
* ptd
,
3381 ULONG_PTR hdcTargetDev
,
3383 LPCRECTL lprcBounds
,
3384 LPCRECTL lprcWBounds
,
3385 IContinue
* pContinue
);
3386 HRESULT CALLBACK
IViewObject_RemoteGetColorSet_Proxy(
3391 DVTARGETDEVICE
* ptd
,
3392 ULONG_PTR hicTargetDev
,
3393 LOGPALETTE
** ppColorSet
);
3394 void __RPC_STUB
IViewObject_RemoteGetColorSet_Stub(
3395 struct IRpcStubBuffer
* This
,
3396 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3397 PRPC_MESSAGE pRpcMessage
,
3398 DWORD
* pdwStubPhase
);
3399 HRESULT CALLBACK
IViewObject_GetColorSet_Proxy(
3404 DVTARGETDEVICE
* ptd
,
3406 LOGPALETTE
** ppColorSet
);
3407 HRESULT __RPC_STUB
IViewObject_GetColorSet_Stub(
3412 DVTARGETDEVICE
* ptd
,
3413 ULONG_PTR hicTargetDev
,
3414 LOGPALETTE
** ppColorSet
);
3415 HRESULT CALLBACK
IViewObject_RemoteFreeze_Proxy(
3421 void __RPC_STUB
IViewObject_RemoteFreeze_Stub(
3422 struct IRpcStubBuffer
* This
,
3423 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3424 PRPC_MESSAGE pRpcMessage
,
3425 DWORD
* pdwStubPhase
);
3426 HRESULT CALLBACK
IViewObject_Freeze_Proxy(
3432 HRESULT __RPC_STUB
IViewObject_Freeze_Stub(
3438 HRESULT CALLBACK
IViewObject_Unfreeze_Proxy(
3441 void __RPC_STUB
IViewObject_Unfreeze_Stub(
3442 struct IRpcStubBuffer
* This
,
3443 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3444 PRPC_MESSAGE pRpcMessage
,
3445 DWORD
* pdwStubPhase
);
3446 HRESULT CALLBACK
IViewObject_SetAdvise_Proxy(
3450 IAdviseSink
* pAdvSink
);
3451 void __RPC_STUB
IViewObject_SetAdvise_Stub(
3452 struct IRpcStubBuffer
* This
,
3453 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3454 PRPC_MESSAGE pRpcMessage
,
3455 DWORD
* pdwStubPhase
);
3456 HRESULT CALLBACK
IViewObject_RemoteGetAdvise_Proxy(
3460 IAdviseSink
** ppAdvSink
);
3461 void __RPC_STUB
IViewObject_RemoteGetAdvise_Stub(
3462 struct IRpcStubBuffer
* This
,
3463 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3464 PRPC_MESSAGE pRpcMessage
,
3465 DWORD
* pdwStubPhase
);
3466 HRESULT CALLBACK
IViewObject_GetAdvise_Proxy(
3470 IAdviseSink
** ppAdvSink
);
3471 HRESULT __RPC_STUB
IViewObject_GetAdvise_Stub(
3475 IAdviseSink
** ppAdvSink
);
3477 #endif /* __IViewObject_INTERFACE_DEFINED__ */
3479 #ifndef __IViewObject2_FWD_DEFINED__
3480 #define __IViewObject2_FWD_DEFINED__
3481 typedef struct IViewObject2 IViewObject2
;
3484 typedef IViewObject2
*LPVIEWOBJECT2
;
3486 /*****************************************************************************
3487 * IViewObject2 interface
3489 #ifndef __IViewObject2_INTERFACE_DEFINED__
3490 #define __IViewObject2_INTERFACE_DEFINED__
3492 DEFINE_GUID(IID_IViewObject2
, 0x00000127, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3493 #if defined(__cplusplus) && !defined(CINTERFACE)
3494 struct IViewObject2
: public IViewObject
3496 virtual HRESULT STDMETHODCALLTYPE
GetExtent(
3499 DVTARGETDEVICE
* ptd
,
3500 LPSIZEL lpsizel
) = 0;
3504 typedef struct IViewObject2Vtbl IViewObject2Vtbl
;
3505 struct IViewObject2
{
3506 const IViewObject2Vtbl
* lpVtbl
;
3508 struct IViewObject2Vtbl
{
3509 ICOM_MSVTABLE_COMPAT_FIELDS
3511 /*** IUnknown methods ***/
3512 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3517 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3518 IViewObject2
* This
);
3520 ULONG (STDMETHODCALLTYPE
*Release
)(
3521 IViewObject2
* This
);
3523 /*** IViewObject methods ***/
3524 HRESULT (STDMETHODCALLTYPE
*Draw
)(
3529 DVTARGETDEVICE
* ptd
,
3532 LPCRECTL lprcBounds
,
3533 LPCRECTL lprcWBounds
,
3534 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3535 ULONG_PTR dwContinue
);
3537 HRESULT (STDMETHODCALLTYPE
*GetColorSet
)(
3542 DVTARGETDEVICE
* ptd
,
3544 LOGPALETTE
** ppColorSet
);
3546 HRESULT (STDMETHODCALLTYPE
*Freeze
)(
3553 HRESULT (STDMETHODCALLTYPE
*Unfreeze
)(
3557 HRESULT (STDMETHODCALLTYPE
*SetAdvise
)(
3561 IAdviseSink
* pAdvSink
);
3563 HRESULT (STDMETHODCALLTYPE
*GetAdvise
)(
3567 IAdviseSink
** ppAdvSink
);
3569 /*** IViewObject2 methods ***/
3570 HRESULT (STDMETHODCALLTYPE
*GetExtent
)(
3574 DVTARGETDEVICE
* ptd
,
3579 /*** IUnknown methods ***/
3580 #define IViewObject2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3581 #define IViewObject2_AddRef(p) (p)->lpVtbl->AddRef(p)
3582 #define IViewObject2_Release(p) (p)->lpVtbl->Release(p)
3583 /*** IViewObject methods ***/
3584 #define IViewObject2_Draw(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Draw(p,a,b,c,d,e,f,g,h,i,j)
3585 #define IViewObject2_GetColorSet(p,a,b,c,d,e,f) (p)->lpVtbl->GetColorSet(p,a,b,c,d,e,f)
3586 #define IViewObject2_Freeze(p,a,b,c,d) (p)->lpVtbl->Freeze(p,a,b,c,d)
3587 #define IViewObject2_Unfreeze(p,a) (p)->lpVtbl->Unfreeze(p,a)
3588 #define IViewObject2_SetAdvise(p,a,b,c) (p)->lpVtbl->SetAdvise(p,a,b,c)
3589 #define IViewObject2_GetAdvise(p,a,b,c) (p)->lpVtbl->GetAdvise(p,a,b,c)
3590 /*** IViewObject2 methods ***/
3591 #define IViewObject2_GetExtent(p,a,b,c,d) (p)->lpVtbl->GetExtent(p,a,b,c,d)
3595 #define IViewObject2_METHODS \
3596 ICOM_MSVTABLE_COMPAT_FIELDS \
3597 /*** IUnknown methods ***/ \
3598 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3599 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3600 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3601 /*** IViewObject methods ***/ \
3602 STDMETHOD_(HRESULT,Draw)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL (STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) PURE; \
3603 STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
3604 STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
3605 STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
3606 STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
3607 STDMETHOD_(HRESULT,GetAdvise)(THIS_ DWORD* pAspects, DWORD* pAdvf, IAdviseSink** ppAdvSink) PURE; \
3608 /*** IViewObject2 methods ***/ \
3609 STDMETHOD_(HRESULT,GetExtent)(THIS_ DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE* ptd, LPSIZEL lpsizel) PURE;
3611 HRESULT CALLBACK
IViewObject2_GetExtent_Proxy(
3615 DVTARGETDEVICE
* ptd
,
3617 void __RPC_STUB
IViewObject2_GetExtent_Stub(
3618 struct IRpcStubBuffer
* This
,
3619 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3620 PRPC_MESSAGE pRpcMessage
,
3621 DWORD
* pdwStubPhase
);
3623 #endif /* __IViewObject2_INTERFACE_DEFINED__ */
3625 #ifndef __IDropSource_FWD_DEFINED__
3626 #define __IDropSource_FWD_DEFINED__
3627 typedef struct IDropSource IDropSource
;
3630 typedef IDropSource
*LPDROPSOURCE
;
3632 /*****************************************************************************
3633 * IDropSource interface
3635 #ifndef __IDropSource_INTERFACE_DEFINED__
3636 #define __IDropSource_INTERFACE_DEFINED__
3638 DEFINE_GUID(IID_IDropSource
, 0x00000121, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3639 #if defined(__cplusplus) && !defined(CINTERFACE)
3640 struct IDropSource
: public IUnknown
3642 virtual HRESULT STDMETHODCALLTYPE
QueryContinueDrag(
3643 BOOL fEscapePressed
,
3644 DWORD grfKeyState
) = 0;
3646 virtual HRESULT STDMETHODCALLTYPE
GiveFeedback(
3647 DWORD dwEffect
) = 0;
3651 typedef struct IDropSourceVtbl IDropSourceVtbl
;
3652 struct IDropSource
{
3653 const IDropSourceVtbl
* lpVtbl
;
3655 struct IDropSourceVtbl
{
3656 ICOM_MSVTABLE_COMPAT_FIELDS
3658 /*** IUnknown methods ***/
3659 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3664 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3667 ULONG (STDMETHODCALLTYPE
*Release
)(
3670 /*** IDropSource methods ***/
3671 HRESULT (STDMETHODCALLTYPE
*QueryContinueDrag
)(
3673 BOOL fEscapePressed
,
3676 HRESULT (STDMETHODCALLTYPE
*GiveFeedback
)(
3682 /*** IUnknown methods ***/
3683 #define IDropSource_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3684 #define IDropSource_AddRef(p) (p)->lpVtbl->AddRef(p)
3685 #define IDropSource_Release(p) (p)->lpVtbl->Release(p)
3686 /*** IDropSource methods ***/
3687 #define IDropSource_QueryContinueDrag(p,a,b) (p)->lpVtbl->QueryContinueDrag(p,a,b)
3688 #define IDropSource_GiveFeedback(p,a) (p)->lpVtbl->GiveFeedback(p,a)
3692 #define IDropSource_METHODS \
3693 ICOM_MSVTABLE_COMPAT_FIELDS \
3694 /*** IUnknown methods ***/ \
3695 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3696 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3697 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3698 /*** IDropSource methods ***/ \
3699 STDMETHOD_(HRESULT,QueryContinueDrag)(THIS_ BOOL fEscapePressed, DWORD grfKeyState) PURE; \
3700 STDMETHOD_(HRESULT,GiveFeedback)(THIS_ DWORD dwEffect) PURE;
3702 HRESULT CALLBACK
IDropSource_QueryContinueDrag_Proxy(
3704 BOOL fEscapePressed
,
3706 void __RPC_STUB
IDropSource_QueryContinueDrag_Stub(
3707 struct IRpcStubBuffer
* This
,
3708 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3709 PRPC_MESSAGE pRpcMessage
,
3710 DWORD
* pdwStubPhase
);
3711 HRESULT CALLBACK
IDropSource_GiveFeedback_Proxy(
3714 void __RPC_STUB
IDropSource_GiveFeedback_Stub(
3715 struct IRpcStubBuffer
* This
,
3716 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3717 PRPC_MESSAGE pRpcMessage
,
3718 DWORD
* pdwStubPhase
);
3720 #endif /* __IDropSource_INTERFACE_DEFINED__ */
3722 #ifndef __IDropTarget_FWD_DEFINED__
3723 #define __IDropTarget_FWD_DEFINED__
3724 typedef struct IDropTarget IDropTarget
;
3727 typedef IDropTarget
*LPDROPTARGET
;
3729 #define MK_ALT (0x20)
3731 #define DROPEFFECT_NONE (0)
3733 #define DROPEFFECT_COPY (1)
3735 #define DROPEFFECT_MOVE (2)
3737 #define DROPEFFECT_LINK (4)
3739 #define DROPEFFECT_SCROLL (0x80000000)
3741 #define DD_DEFSCROLLINSET (11)
3743 #define DD_DEFSCROLLDELAY (50)
3745 #define DD_DEFSCROLLINTERVAL (50)
3747 #define DD_DEFDRAGDELAY (200)
3749 #define DD_DEFDRAGMINDIST (2)
3751 /*****************************************************************************
3752 * IDropTarget interface
3754 #ifndef __IDropTarget_INTERFACE_DEFINED__
3755 #define __IDropTarget_INTERFACE_DEFINED__
3757 DEFINE_GUID(IID_IDropTarget
, 0x00000122, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3758 #if defined(__cplusplus) && !defined(CINTERFACE)
3759 struct IDropTarget
: public IUnknown
3761 virtual HRESULT STDMETHODCALLTYPE
DragEnter(
3762 IDataObject
* pDataObj
,
3765 DWORD
* pdwEffect
) = 0;
3767 virtual HRESULT STDMETHODCALLTYPE
DragOver(
3770 DWORD
* pdwEffect
) = 0;
3772 virtual HRESULT STDMETHODCALLTYPE
DragLeave(
3775 virtual HRESULT STDMETHODCALLTYPE
Drop(
3776 IDataObject
* pDataObj
,
3779 DWORD
* pdwEffect
) = 0;
3783 typedef struct IDropTargetVtbl IDropTargetVtbl
;
3784 struct IDropTarget
{
3785 const IDropTargetVtbl
* lpVtbl
;
3787 struct IDropTargetVtbl
{
3788 ICOM_MSVTABLE_COMPAT_FIELDS
3790 /*** IUnknown methods ***/
3791 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3796 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3799 ULONG (STDMETHODCALLTYPE
*Release
)(
3802 /*** IDropTarget methods ***/
3803 HRESULT (STDMETHODCALLTYPE
*DragEnter
)(
3805 IDataObject
* pDataObj
,
3810 HRESULT (STDMETHODCALLTYPE
*DragOver
)(
3816 HRESULT (STDMETHODCALLTYPE
*DragLeave
)(
3819 HRESULT (STDMETHODCALLTYPE
*Drop
)(
3821 IDataObject
* pDataObj
,
3828 /*** IUnknown methods ***/
3829 #define IDropTarget_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3830 #define IDropTarget_AddRef(p) (p)->lpVtbl->AddRef(p)
3831 #define IDropTarget_Release(p) (p)->lpVtbl->Release(p)
3832 /*** IDropTarget methods ***/
3833 #define IDropTarget_DragEnter(p,a,b,c,d) (p)->lpVtbl->DragEnter(p,a,b,c,d)
3834 #define IDropTarget_DragOver(p,a,b,c) (p)->lpVtbl->DragOver(p,a,b,c)
3835 #define IDropTarget_DragLeave(p) (p)->lpVtbl->DragLeave(p)
3836 #define IDropTarget_Drop(p,a,b,c,d) (p)->lpVtbl->Drop(p,a,b,c,d)
3840 #define IDropTarget_METHODS \
3841 ICOM_MSVTABLE_COMPAT_FIELDS \
3842 /*** IUnknown methods ***/ \
3843 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3844 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3845 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3846 /*** IDropTarget methods ***/ \
3847 STDMETHOD_(HRESULT,DragEnter)(THIS_ IDataObject* pDataObj, DWORD grfKeyState, POINTL pt, DWORD* pdwEffect) PURE; \
3848 STDMETHOD_(HRESULT,DragOver)(THIS_ DWORD grfKeyState, POINTL pt, DWORD* pdwEffect) PURE; \
3849 STDMETHOD_(HRESULT,DragLeave)(THIS) PURE; \
3850 STDMETHOD_(HRESULT,Drop)(THIS_ IDataObject* pDataObj, DWORD grfKeyState, POINTL pt, DWORD* pdwEffect) PURE;
3852 HRESULT CALLBACK
IDropTarget_DragEnter_Proxy(
3854 IDataObject
* pDataObj
,
3858 void __RPC_STUB
IDropTarget_DragEnter_Stub(
3859 struct IRpcStubBuffer
* This
,
3860 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3861 PRPC_MESSAGE pRpcMessage
,
3862 DWORD
* pdwStubPhase
);
3863 HRESULT CALLBACK
IDropTarget_DragOver_Proxy(
3868 void __RPC_STUB
IDropTarget_DragOver_Stub(
3869 struct IRpcStubBuffer
* This
,
3870 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3871 PRPC_MESSAGE pRpcMessage
,
3872 DWORD
* pdwStubPhase
);
3873 HRESULT CALLBACK
IDropTarget_DragLeave_Proxy(
3875 void __RPC_STUB
IDropTarget_DragLeave_Stub(
3876 struct IRpcStubBuffer
* This
,
3877 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3878 PRPC_MESSAGE pRpcMessage
,
3879 DWORD
* pdwStubPhase
);
3880 HRESULT CALLBACK
IDropTarget_Drop_Proxy(
3882 IDataObject
* pDataObj
,
3886 void __RPC_STUB
IDropTarget_Drop_Stub(
3887 struct IRpcStubBuffer
* This
,
3888 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3889 PRPC_MESSAGE pRpcMessage
,
3890 DWORD
* pdwStubPhase
);
3892 #endif /* __IDropTarget_INTERFACE_DEFINED__ */
3897 #endif /* __WIDL_OLEIDL_H */