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
{
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
)(
86 /*** IUnknown methods ***/
87 #define IOleWindow_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
88 #define IOleWindow_AddRef(p) (p)->lpVtbl->AddRef(p)
89 #define IOleWindow_Release(p) (p)->lpVtbl->Release(p)
90 /*** IOleWindow methods ***/
91 #define IOleWindow_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
92 #define IOleWindow_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
97 #define IOleWindow_METHODS \
98 /*** IUnknown methods ***/ \
99 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
100 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
101 STDMETHOD_(ULONG,Release)(THIS) PURE; \
102 /*** IOleWindow methods ***/ \
103 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
104 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE;
106 HRESULT CALLBACK
IOleWindow_GetWindow_Proxy(
109 void __RPC_STUB
IOleWindow_GetWindow_Stub(
110 struct IRpcStubBuffer
* This
,
111 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
112 PRPC_MESSAGE pRpcMessage
,
113 DWORD
* pdwStubPhase
);
114 HRESULT CALLBACK
IOleWindow_ContextSensitiveHelp_Proxy(
117 void __RPC_STUB
IOleWindow_ContextSensitiveHelp_Stub(
118 struct IRpcStubBuffer
* This
,
119 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
120 PRPC_MESSAGE pRpcMessage
,
121 DWORD
* pdwStubPhase
);
123 #endif /* __IOleWindow_INTERFACE_DEFINED__ */
125 #ifndef __IOleInPlaceObject_FWD_DEFINED__
126 #define __IOleInPlaceObject_FWD_DEFINED__
127 typedef struct IOleInPlaceObject IOleInPlaceObject
;
130 typedef IOleInPlaceObject
*LPOLEINPLACEOBJECT
;
132 /*****************************************************************************
133 * IOleInPlaceObject interface
135 #ifndef __IOleInPlaceObject_INTERFACE_DEFINED__
136 #define __IOleInPlaceObject_INTERFACE_DEFINED__
138 DEFINE_GUID(IID_IOleInPlaceObject
, 0x00000113, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
139 #if defined(__cplusplus) && !defined(CINTERFACE)
140 struct IOleInPlaceObject
: public IOleWindow
142 virtual HRESULT STDMETHODCALLTYPE
InPlaceDeactivate(
145 virtual HRESULT STDMETHODCALLTYPE
UIDeactivate(
148 virtual HRESULT STDMETHODCALLTYPE
SetObjectRects(
150 LPCRECT lprcClipRect
) = 0;
152 virtual HRESULT STDMETHODCALLTYPE
ReactivateAndUndo(
157 typedef struct IOleInPlaceObjectVtbl IOleInPlaceObjectVtbl
;
158 struct IOleInPlaceObject
{
159 const IOleInPlaceObjectVtbl
* lpVtbl
;
161 struct IOleInPlaceObjectVtbl
{
164 /*** IUnknown methods ***/
165 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
166 IOleInPlaceObject
* This
,
170 ULONG (STDMETHODCALLTYPE
*AddRef
)(
171 IOleInPlaceObject
* This
);
173 ULONG (STDMETHODCALLTYPE
*Release
)(
174 IOleInPlaceObject
* This
);
176 /*** IOleWindow methods ***/
177 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
178 IOleInPlaceObject
* This
,
181 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
182 IOleInPlaceObject
* This
,
185 /*** IOleInPlaceObject methods ***/
186 HRESULT (STDMETHODCALLTYPE
*InPlaceDeactivate
)(
187 IOleInPlaceObject
* This
);
189 HRESULT (STDMETHODCALLTYPE
*UIDeactivate
)(
190 IOleInPlaceObject
* This
);
192 HRESULT (STDMETHODCALLTYPE
*SetObjectRects
)(
193 IOleInPlaceObject
* This
,
195 LPCRECT lprcClipRect
);
197 HRESULT (STDMETHODCALLTYPE
*ReactivateAndUndo
)(
198 IOleInPlaceObject
* This
);
204 /*** IUnknown methods ***/
205 #define IOleInPlaceObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
206 #define IOleInPlaceObject_AddRef(p) (p)->lpVtbl->AddRef(p)
207 #define IOleInPlaceObject_Release(p) (p)->lpVtbl->Release(p)
208 /*** IOleWindow methods ***/
209 #define IOleInPlaceObject_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
210 #define IOleInPlaceObject_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
211 /*** IOleInPlaceObject methods ***/
212 #define IOleInPlaceObject_InPlaceDeactivate(p) (p)->lpVtbl->InPlaceDeactivate(p)
213 #define IOleInPlaceObject_UIDeactivate(p) (p)->lpVtbl->UIDeactivate(p)
214 #define IOleInPlaceObject_SetObjectRects(p,a,b) (p)->lpVtbl->SetObjectRects(p,a,b)
215 #define IOleInPlaceObject_ReactivateAndUndo(p) (p)->lpVtbl->ReactivateAndUndo(p)
220 #define IOleInPlaceObject_METHODS \
221 /*** IUnknown methods ***/ \
222 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
223 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
224 STDMETHOD_(ULONG,Release)(THIS) PURE; \
225 /*** IOleWindow methods ***/ \
226 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
227 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
228 /*** IOleInPlaceObject methods ***/ \
229 STDMETHOD_(HRESULT,InPlaceDeactivate)(THIS) PURE; \
230 STDMETHOD_(HRESULT,UIDeactivate)(THIS) PURE; \
231 STDMETHOD_(HRESULT,SetObjectRects)(THIS_ LPCRECT lprcPosRect, LPCRECT lprcClipRect) PURE; \
232 STDMETHOD_(HRESULT,ReactivateAndUndo)(THIS) PURE;
234 HRESULT CALLBACK
IOleInPlaceObject_InPlaceDeactivate_Proxy(
235 IOleInPlaceObject
* This
);
236 void __RPC_STUB
IOleInPlaceObject_InPlaceDeactivate_Stub(
237 struct IRpcStubBuffer
* This
,
238 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
239 PRPC_MESSAGE pRpcMessage
,
240 DWORD
* pdwStubPhase
);
241 HRESULT CALLBACK
IOleInPlaceObject_UIDeactivate_Proxy(
242 IOleInPlaceObject
* This
);
243 void __RPC_STUB
IOleInPlaceObject_UIDeactivate_Stub(
244 struct IRpcStubBuffer
* This
,
245 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
246 PRPC_MESSAGE pRpcMessage
,
247 DWORD
* pdwStubPhase
);
248 HRESULT CALLBACK
IOleInPlaceObject_SetObjectRects_Proxy(
249 IOleInPlaceObject
* This
,
251 LPCRECT lprcClipRect
);
252 void __RPC_STUB
IOleInPlaceObject_SetObjectRects_Stub(
253 struct IRpcStubBuffer
* This
,
254 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
255 PRPC_MESSAGE pRpcMessage
,
256 DWORD
* pdwStubPhase
);
257 HRESULT CALLBACK
IOleInPlaceObject_ReactivateAndUndo_Proxy(
258 IOleInPlaceObject
* This
);
259 void __RPC_STUB
IOleInPlaceObject_ReactivateAndUndo_Stub(
260 struct IRpcStubBuffer
* This
,
261 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
262 PRPC_MESSAGE pRpcMessage
,
263 DWORD
* pdwStubPhase
);
265 #endif /* __IOleInPlaceObject_INTERFACE_DEFINED__ */
268 #undef TranslateAccelerator
270 #ifndef __IOleInPlaceUIWindow_FWD_DEFINED__
271 #define __IOleInPlaceUIWindow_FWD_DEFINED__
272 typedef struct IOleInPlaceUIWindow IOleInPlaceUIWindow
;
275 #ifndef __IOleInPlaceActiveObject_FWD_DEFINED__
276 #define __IOleInPlaceActiveObject_FWD_DEFINED__
277 typedef struct IOleInPlaceActiveObject IOleInPlaceActiveObject
;
280 typedef IOleInPlaceActiveObject
*LPOLEINPLACEACTIVEOBJECT
;
282 /*****************************************************************************
283 * IOleInPlaceActiveObject interface
285 #ifndef __IOleInPlaceActiveObject_INTERFACE_DEFINED__
286 #define __IOleInPlaceActiveObject_INTERFACE_DEFINED__
288 DEFINE_GUID(IID_IOleInPlaceActiveObject
, 0x00000117, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
289 #if defined(__cplusplus) && !defined(CINTERFACE)
290 struct IOleInPlaceActiveObject
: public IOleWindow
292 virtual HRESULT STDMETHODCALLTYPE
TranslateAccelerator(
295 virtual HRESULT STDMETHODCALLTYPE
OnFrameWindowActivate(
298 virtual HRESULT STDMETHODCALLTYPE
OnDocWindowActivate(
301 virtual HRESULT STDMETHODCALLTYPE
ResizeBorder(
303 IOleInPlaceUIWindow
* pUIWindow
,
304 BOOL fFrameWindow
) = 0;
306 virtual HRESULT STDMETHODCALLTYPE
EnableModeless(
311 typedef struct IOleInPlaceActiveObjectVtbl IOleInPlaceActiveObjectVtbl
;
312 struct IOleInPlaceActiveObject
{
313 const IOleInPlaceActiveObjectVtbl
* lpVtbl
;
315 struct IOleInPlaceActiveObjectVtbl
{
318 /*** IUnknown methods ***/
319 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
320 IOleInPlaceActiveObject
* This
,
324 ULONG (STDMETHODCALLTYPE
*AddRef
)(
325 IOleInPlaceActiveObject
* This
);
327 ULONG (STDMETHODCALLTYPE
*Release
)(
328 IOleInPlaceActiveObject
* This
);
330 /*** IOleWindow methods ***/
331 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
332 IOleInPlaceActiveObject
* This
,
335 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
336 IOleInPlaceActiveObject
* This
,
339 /*** IOleInPlaceActiveObject methods ***/
340 HRESULT (STDMETHODCALLTYPE
*TranslateAccelerator
)(
341 IOleInPlaceActiveObject
* This
,
344 HRESULT (STDMETHODCALLTYPE
*OnFrameWindowActivate
)(
345 IOleInPlaceActiveObject
* This
,
348 HRESULT (STDMETHODCALLTYPE
*OnDocWindowActivate
)(
349 IOleInPlaceActiveObject
* This
,
352 HRESULT (STDMETHODCALLTYPE
*ResizeBorder
)(
353 IOleInPlaceActiveObject
* This
,
355 IOleInPlaceUIWindow
* pUIWindow
,
358 HRESULT (STDMETHODCALLTYPE
*EnableModeless
)(
359 IOleInPlaceActiveObject
* This
,
366 /*** IUnknown methods ***/
367 #define IOleInPlaceActiveObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
368 #define IOleInPlaceActiveObject_AddRef(p) (p)->lpVtbl->AddRef(p)
369 #define IOleInPlaceActiveObject_Release(p) (p)->lpVtbl->Release(p)
370 /*** IOleWindow methods ***/
371 #define IOleInPlaceActiveObject_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
372 #define IOleInPlaceActiveObject_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
373 /*** IOleInPlaceActiveObject methods ***/
374 #define IOleInPlaceActiveObject_TranslateAccelerator(p,a) (p)->lpVtbl->TranslateAccelerator(p,a)
375 #define IOleInPlaceActiveObject_OnFrameWindowActivate(p,a) (p)->lpVtbl->OnFrameWindowActivate(p,a)
376 #define IOleInPlaceActiveObject_OnDocWindowActivate(p,a) (p)->lpVtbl->OnDocWindowActivate(p,a)
377 #define IOleInPlaceActiveObject_ResizeBorder(p,a,b,c) (p)->lpVtbl->ResizeBorder(p,a,b,c)
378 #define IOleInPlaceActiveObject_EnableModeless(p,a) (p)->lpVtbl->EnableModeless(p,a)
383 #define IOleInPlaceActiveObject_METHODS \
384 /*** IUnknown methods ***/ \
385 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
386 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
387 STDMETHOD_(ULONG,Release)(THIS) PURE; \
388 /*** IOleWindow methods ***/ \
389 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
390 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
391 /*** IOleInPlaceActiveObject methods ***/ \
392 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ LPMSG lpmsg) PURE; \
393 STDMETHOD_(HRESULT,OnFrameWindowActivate)(THIS_ BOOL fActivate) PURE; \
394 STDMETHOD_(HRESULT,OnDocWindowActivate)(THIS_ BOOL fActivate) PURE; \
395 STDMETHOD_(HRESULT,ResizeBorder)(THIS_ LPCRECT prcBorder, IOleInPlaceUIWindow* pUIWindow, BOOL fFrameWindow) PURE; \
396 STDMETHOD_(HRESULT,EnableModeless)(THIS_ BOOL fEnable) PURE;
398 HRESULT CALLBACK
IOleInPlaceActiveObject_RemoteTranslateAccelerator_Proxy(
399 IOleInPlaceActiveObject
* This
);
400 void __RPC_STUB
IOleInPlaceActiveObject_RemoteTranslateAccelerator_Stub(
401 struct IRpcStubBuffer
* This
,
402 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
403 PRPC_MESSAGE pRpcMessage
,
404 DWORD
* pdwStubPhase
);
405 HRESULT CALLBACK
IOleInPlaceActiveObject_TranslateAccelerator_Proxy(
406 IOleInPlaceActiveObject
* This
,
408 HRESULT __RPC_STUB
IOleInPlaceActiveObject_TranslateAccelerator_Stub(
409 IOleInPlaceActiveObject
* This
);
410 HRESULT CALLBACK
IOleInPlaceActiveObject_OnFrameWindowActivate_Proxy(
411 IOleInPlaceActiveObject
* This
,
413 void __RPC_STUB
IOleInPlaceActiveObject_OnFrameWindowActivate_Stub(
414 struct IRpcStubBuffer
* This
,
415 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
416 PRPC_MESSAGE pRpcMessage
,
417 DWORD
* pdwStubPhase
);
418 HRESULT CALLBACK
IOleInPlaceActiveObject_OnDocWindowActivate_Proxy(
419 IOleInPlaceActiveObject
* This
,
421 void __RPC_STUB
IOleInPlaceActiveObject_OnDocWindowActivate_Stub(
422 struct IRpcStubBuffer
* This
,
423 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
424 PRPC_MESSAGE pRpcMessage
,
425 DWORD
* pdwStubPhase
);
426 HRESULT CALLBACK
IOleInPlaceActiveObject_RemoteResizeBorder_Proxy(
427 IOleInPlaceActiveObject
* This
,
430 IOleInPlaceUIWindow
* pUIWindow
,
432 void __RPC_STUB
IOleInPlaceActiveObject_RemoteResizeBorder_Stub(
433 struct IRpcStubBuffer
* This
,
434 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
435 PRPC_MESSAGE pRpcMessage
,
436 DWORD
* pdwStubPhase
);
437 HRESULT CALLBACK
IOleInPlaceActiveObject_ResizeBorder_Proxy(
438 IOleInPlaceActiveObject
* This
,
440 IOleInPlaceUIWindow
* pUIWindow
,
442 HRESULT __RPC_STUB
IOleInPlaceActiveObject_ResizeBorder_Stub(
443 IOleInPlaceActiveObject
* This
,
446 IOleInPlaceUIWindow
* pUIWindow
,
448 HRESULT CALLBACK
IOleInPlaceActiveObject_EnableModeless_Proxy(
449 IOleInPlaceActiveObject
* This
,
451 void __RPC_STUB
IOleInPlaceActiveObject_EnableModeless_Stub(
452 struct IRpcStubBuffer
* This
,
453 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
454 PRPC_MESSAGE pRpcMessage
,
455 DWORD
* pdwStubPhase
);
457 #endif /* __IOleInPlaceActiveObject_INTERFACE_DEFINED__ */
459 typedef IOleInPlaceUIWindow
*LPOLEINPLACEUIWINDOW
;
461 typedef RECT BORDERWIDTHS
;
463 typedef LPRECT LPBORDERWIDTHS
;
465 typedef LPCRECT LPCBORDERWIDTHS
;
467 /*****************************************************************************
468 * IOleInPlaceUIWindow interface
470 #ifndef __IOleInPlaceUIWindow_INTERFACE_DEFINED__
471 #define __IOleInPlaceUIWindow_INTERFACE_DEFINED__
473 DEFINE_GUID(IID_IOleInPlaceUIWindow
, 0x00000115, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
474 #if defined(__cplusplus) && !defined(CINTERFACE)
475 struct IOleInPlaceUIWindow
: public IOleWindow
477 virtual HRESULT STDMETHODCALLTYPE
GetBorder(
478 LPRECT lprectBorder
) = 0;
480 virtual HRESULT STDMETHODCALLTYPE
RequestBorderSpace(
481 LPCBORDERWIDTHS pborderwidths
) = 0;
483 virtual HRESULT STDMETHODCALLTYPE
SetBorderSpace(
484 LPCBORDERWIDTHS pborderwidths
) = 0;
486 virtual HRESULT STDMETHODCALLTYPE
SetActiveObject(
487 IOleInPlaceActiveObject
* pActiveObject
,
488 LPCOLESTR pszObjName
) = 0;
492 typedef struct IOleInPlaceUIWindowVtbl IOleInPlaceUIWindowVtbl
;
493 struct IOleInPlaceUIWindow
{
494 const IOleInPlaceUIWindowVtbl
* lpVtbl
;
496 struct IOleInPlaceUIWindowVtbl
{
499 /*** IUnknown methods ***/
500 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
501 IOleInPlaceUIWindow
* This
,
505 ULONG (STDMETHODCALLTYPE
*AddRef
)(
506 IOleInPlaceUIWindow
* This
);
508 ULONG (STDMETHODCALLTYPE
*Release
)(
509 IOleInPlaceUIWindow
* This
);
511 /*** IOleWindow methods ***/
512 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
513 IOleInPlaceUIWindow
* This
,
516 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
517 IOleInPlaceUIWindow
* This
,
520 /*** IOleInPlaceUIWindow methods ***/
521 HRESULT (STDMETHODCALLTYPE
*GetBorder
)(
522 IOleInPlaceUIWindow
* This
,
523 LPRECT lprectBorder
);
525 HRESULT (STDMETHODCALLTYPE
*RequestBorderSpace
)(
526 IOleInPlaceUIWindow
* This
,
527 LPCBORDERWIDTHS pborderwidths
);
529 HRESULT (STDMETHODCALLTYPE
*SetBorderSpace
)(
530 IOleInPlaceUIWindow
* This
,
531 LPCBORDERWIDTHS pborderwidths
);
533 HRESULT (STDMETHODCALLTYPE
*SetActiveObject
)(
534 IOleInPlaceUIWindow
* This
,
535 IOleInPlaceActiveObject
* pActiveObject
,
536 LPCOLESTR pszObjName
);
542 /*** IUnknown methods ***/
543 #define IOleInPlaceUIWindow_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
544 #define IOleInPlaceUIWindow_AddRef(p) (p)->lpVtbl->AddRef(p)
545 #define IOleInPlaceUIWindow_Release(p) (p)->lpVtbl->Release(p)
546 /*** IOleWindow methods ***/
547 #define IOleInPlaceUIWindow_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
548 #define IOleInPlaceUIWindow_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
549 /*** IOleInPlaceUIWindow methods ***/
550 #define IOleInPlaceUIWindow_GetBorder(p,a) (p)->lpVtbl->GetBorder(p,a)
551 #define IOleInPlaceUIWindow_RequestBorderSpace(p,a) (p)->lpVtbl->RequestBorderSpace(p,a)
552 #define IOleInPlaceUIWindow_SetBorderSpace(p,a) (p)->lpVtbl->SetBorderSpace(p,a)
553 #define IOleInPlaceUIWindow_SetActiveObject(p,a,b) (p)->lpVtbl->SetActiveObject(p,a,b)
558 #define IOleInPlaceUIWindow_METHODS \
559 /*** IUnknown methods ***/ \
560 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
561 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
562 STDMETHOD_(ULONG,Release)(THIS) PURE; \
563 /*** IOleWindow methods ***/ \
564 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
565 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
566 /*** IOleInPlaceUIWindow methods ***/ \
567 STDMETHOD_(HRESULT,GetBorder)(THIS_ LPRECT lprectBorder) PURE; \
568 STDMETHOD_(HRESULT,RequestBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
569 STDMETHOD_(HRESULT,SetBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
570 STDMETHOD_(HRESULT,SetActiveObject)(THIS_ IOleInPlaceActiveObject* pActiveObject, LPCOLESTR pszObjName) PURE;
572 HRESULT CALLBACK
IOleInPlaceUIWindow_GetBorder_Proxy(
573 IOleInPlaceUIWindow
* This
,
574 LPRECT lprectBorder
);
575 void __RPC_STUB
IOleInPlaceUIWindow_GetBorder_Stub(
576 struct IRpcStubBuffer
* This
,
577 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
578 PRPC_MESSAGE pRpcMessage
,
579 DWORD
* pdwStubPhase
);
580 HRESULT CALLBACK
IOleInPlaceUIWindow_RequestBorderSpace_Proxy(
581 IOleInPlaceUIWindow
* This
,
582 LPCBORDERWIDTHS pborderwidths
);
583 void __RPC_STUB
IOleInPlaceUIWindow_RequestBorderSpace_Stub(
584 struct IRpcStubBuffer
* This
,
585 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
586 PRPC_MESSAGE pRpcMessage
,
587 DWORD
* pdwStubPhase
);
588 HRESULT CALLBACK
IOleInPlaceUIWindow_SetBorderSpace_Proxy(
589 IOleInPlaceUIWindow
* This
,
590 LPCBORDERWIDTHS pborderwidths
);
591 void __RPC_STUB
IOleInPlaceUIWindow_SetBorderSpace_Stub(
592 struct IRpcStubBuffer
* This
,
593 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
594 PRPC_MESSAGE pRpcMessage
,
595 DWORD
* pdwStubPhase
);
596 HRESULT CALLBACK
IOleInPlaceUIWindow_SetActiveObject_Proxy(
597 IOleInPlaceUIWindow
* This
,
598 IOleInPlaceActiveObject
* pActiveObject
,
599 LPCOLESTR pszObjName
);
600 void __RPC_STUB
IOleInPlaceUIWindow_SetActiveObject_Stub(
601 struct IRpcStubBuffer
* This
,
602 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
603 PRPC_MESSAGE pRpcMessage
,
604 DWORD
* pdwStubPhase
);
606 #endif /* __IOleInPlaceUIWindow_INTERFACE_DEFINED__ */
608 #ifndef __IOleInPlaceFrame_FWD_DEFINED__
609 #define __IOleInPlaceFrame_FWD_DEFINED__
610 typedef struct IOleInPlaceFrame IOleInPlaceFrame
;
613 typedef IOleInPlaceFrame
*LPOLEINPLACEFRAME
;
615 typedef struct tagOleInPlaceFrameInfo
{
621 } OLEINPLACEFRAMEINFO
, *LPOLEINPLACEFRAMEINFO
;
623 typedef struct tagOleMenuGroupWidths
{
625 } OLEMENUGROUPWIDTHS
, *LPOLEMENUGROUPWIDTHS
;
627 typedef HGLOBAL HOLEMENU
;
629 /*****************************************************************************
630 * IOleInPlaceFrame interface
632 #ifndef __IOleInPlaceFrame_INTERFACE_DEFINED__
633 #define __IOleInPlaceFrame_INTERFACE_DEFINED__
635 DEFINE_GUID(IID_IOleInPlaceFrame
, 0x00000116, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
636 #if defined(__cplusplus) && !defined(CINTERFACE)
637 struct IOleInPlaceFrame
: public IOleInPlaceUIWindow
639 virtual HRESULT STDMETHODCALLTYPE
InsertMenus(
641 LPOLEMENUGROUPWIDTHS lpMenuWidths
) = 0;
643 virtual HRESULT STDMETHODCALLTYPE
SetMenu(
646 HWND hwndActiveObject
) = 0;
648 virtual HRESULT STDMETHODCALLTYPE
RemoveMenus(
649 HMENU hmenuShared
) = 0;
651 virtual HRESULT STDMETHODCALLTYPE
SetStatusText(
652 LPCOLESTR pszStatusText
) = 0;
654 virtual HRESULT STDMETHODCALLTYPE
EnableModeless(
657 virtual HRESULT STDMETHODCALLTYPE
TranslateAccelerator(
663 typedef struct IOleInPlaceFrameVtbl IOleInPlaceFrameVtbl
;
664 struct IOleInPlaceFrame
{
665 const IOleInPlaceFrameVtbl
* lpVtbl
;
667 struct IOleInPlaceFrameVtbl
{
670 /*** IUnknown methods ***/
671 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
672 IOleInPlaceFrame
* This
,
676 ULONG (STDMETHODCALLTYPE
*AddRef
)(
677 IOleInPlaceFrame
* This
);
679 ULONG (STDMETHODCALLTYPE
*Release
)(
680 IOleInPlaceFrame
* This
);
682 /*** IOleWindow methods ***/
683 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
684 IOleInPlaceFrame
* This
,
687 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
688 IOleInPlaceFrame
* This
,
691 /*** IOleInPlaceUIWindow methods ***/
692 HRESULT (STDMETHODCALLTYPE
*GetBorder
)(
693 IOleInPlaceFrame
* This
,
694 LPRECT lprectBorder
);
696 HRESULT (STDMETHODCALLTYPE
*RequestBorderSpace
)(
697 IOleInPlaceFrame
* This
,
698 LPCBORDERWIDTHS pborderwidths
);
700 HRESULT (STDMETHODCALLTYPE
*SetBorderSpace
)(
701 IOleInPlaceFrame
* This
,
702 LPCBORDERWIDTHS pborderwidths
);
704 HRESULT (STDMETHODCALLTYPE
*SetActiveObject
)(
705 IOleInPlaceFrame
* This
,
706 IOleInPlaceActiveObject
* pActiveObject
,
707 LPCOLESTR pszObjName
);
709 /*** IOleInPlaceFrame methods ***/
710 HRESULT (STDMETHODCALLTYPE
*InsertMenus
)(
711 IOleInPlaceFrame
* This
,
713 LPOLEMENUGROUPWIDTHS lpMenuWidths
);
715 HRESULT (STDMETHODCALLTYPE
*SetMenu
)(
716 IOleInPlaceFrame
* This
,
719 HWND hwndActiveObject
);
721 HRESULT (STDMETHODCALLTYPE
*RemoveMenus
)(
722 IOleInPlaceFrame
* This
,
725 HRESULT (STDMETHODCALLTYPE
*SetStatusText
)(
726 IOleInPlaceFrame
* This
,
727 LPCOLESTR pszStatusText
);
729 HRESULT (STDMETHODCALLTYPE
*EnableModeless
)(
730 IOleInPlaceFrame
* This
,
733 HRESULT (STDMETHODCALLTYPE
*TranslateAccelerator
)(
734 IOleInPlaceFrame
* This
,
742 /*** IUnknown methods ***/
743 #define IOleInPlaceFrame_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
744 #define IOleInPlaceFrame_AddRef(p) (p)->lpVtbl->AddRef(p)
745 #define IOleInPlaceFrame_Release(p) (p)->lpVtbl->Release(p)
746 /*** IOleWindow methods ***/
747 #define IOleInPlaceFrame_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
748 #define IOleInPlaceFrame_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
749 /*** IOleInPlaceUIWindow methods ***/
750 #define IOleInPlaceFrame_GetBorder(p,a) (p)->lpVtbl->GetBorder(p,a)
751 #define IOleInPlaceFrame_RequestBorderSpace(p,a) (p)->lpVtbl->RequestBorderSpace(p,a)
752 #define IOleInPlaceFrame_SetBorderSpace(p,a) (p)->lpVtbl->SetBorderSpace(p,a)
753 #define IOleInPlaceFrame_SetActiveObject(p,a,b) (p)->lpVtbl->SetActiveObject(p,a,b)
754 /*** IOleInPlaceFrame methods ***/
755 #define IOleInPlaceFrame_InsertMenus(p,a,b) (p)->lpVtbl->InsertMenus(p,a,b)
756 #define IOleInPlaceFrame_SetMenu(p,a,b,c) (p)->lpVtbl->SetMenu(p,a,b,c)
757 #define IOleInPlaceFrame_RemoveMenus(p,a) (p)->lpVtbl->RemoveMenus(p,a)
758 #define IOleInPlaceFrame_SetStatusText(p,a) (p)->lpVtbl->SetStatusText(p,a)
759 #define IOleInPlaceFrame_EnableModeless(p,a) (p)->lpVtbl->EnableModeless(p,a)
760 #define IOleInPlaceFrame_TranslateAccelerator(p,a,b) (p)->lpVtbl->TranslateAccelerator(p,a,b)
765 #define IOleInPlaceFrame_METHODS \
766 /*** IUnknown methods ***/ \
767 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
768 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
769 STDMETHOD_(ULONG,Release)(THIS) PURE; \
770 /*** IOleWindow methods ***/ \
771 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
772 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
773 /*** IOleInPlaceUIWindow methods ***/ \
774 STDMETHOD_(HRESULT,GetBorder)(THIS_ LPRECT lprectBorder) PURE; \
775 STDMETHOD_(HRESULT,RequestBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
776 STDMETHOD_(HRESULT,SetBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \
777 STDMETHOD_(HRESULT,SetActiveObject)(THIS_ IOleInPlaceActiveObject* pActiveObject, LPCOLESTR pszObjName) PURE; \
778 /*** IOleInPlaceFrame methods ***/ \
779 STDMETHOD_(HRESULT,InsertMenus)(THIS_ HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \
780 STDMETHOD_(HRESULT,SetMenu)(THIS_ HMENU hmenuShared, HOLEMENU holemenu, HWND hwndActiveObject) PURE; \
781 STDMETHOD_(HRESULT,RemoveMenus)(THIS_ HMENU hmenuShared) PURE; \
782 STDMETHOD_(HRESULT,SetStatusText)(THIS_ LPCOLESTR pszStatusText) PURE; \
783 STDMETHOD_(HRESULT,EnableModeless)(THIS_ BOOL fEnable) PURE; \
784 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ LPMSG lpmsg, WORD wID) PURE;
786 HRESULT CALLBACK
IOleInPlaceFrame_InsertMenus_Proxy(
787 IOleInPlaceFrame
* This
,
789 LPOLEMENUGROUPWIDTHS lpMenuWidths
);
790 void __RPC_STUB
IOleInPlaceFrame_InsertMenus_Stub(
791 struct IRpcStubBuffer
* This
,
792 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
793 PRPC_MESSAGE pRpcMessage
,
794 DWORD
* pdwStubPhase
);
795 HRESULT CALLBACK
IOleInPlaceFrame_SetMenu_Proxy(
796 IOleInPlaceFrame
* This
,
799 HWND hwndActiveObject
);
800 void __RPC_STUB
IOleInPlaceFrame_SetMenu_Stub(
801 struct IRpcStubBuffer
* This
,
802 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
803 PRPC_MESSAGE pRpcMessage
,
804 DWORD
* pdwStubPhase
);
805 HRESULT CALLBACK
IOleInPlaceFrame_RemoveMenus_Proxy(
806 IOleInPlaceFrame
* This
,
808 void __RPC_STUB
IOleInPlaceFrame_RemoveMenus_Stub(
809 struct IRpcStubBuffer
* This
,
810 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
811 PRPC_MESSAGE pRpcMessage
,
812 DWORD
* pdwStubPhase
);
813 HRESULT CALLBACK
IOleInPlaceFrame_SetStatusText_Proxy(
814 IOleInPlaceFrame
* This
,
815 LPCOLESTR pszStatusText
);
816 void __RPC_STUB
IOleInPlaceFrame_SetStatusText_Stub(
817 struct IRpcStubBuffer
* This
,
818 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
819 PRPC_MESSAGE pRpcMessage
,
820 DWORD
* pdwStubPhase
);
821 HRESULT CALLBACK
IOleInPlaceFrame_EnableModeless_Proxy(
822 IOleInPlaceFrame
* This
,
824 void __RPC_STUB
IOleInPlaceFrame_EnableModeless_Stub(
825 struct IRpcStubBuffer
* This
,
826 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
827 PRPC_MESSAGE pRpcMessage
,
828 DWORD
* pdwStubPhase
);
829 HRESULT CALLBACK
IOleInPlaceFrame_TranslateAccelerator_Proxy(
830 IOleInPlaceFrame
* This
,
833 void __RPC_STUB
IOleInPlaceFrame_TranslateAccelerator_Stub(
834 struct IRpcStubBuffer
* This
,
835 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
836 PRPC_MESSAGE pRpcMessage
,
837 DWORD
* pdwStubPhase
);
839 #endif /* __IOleInPlaceFrame_INTERFACE_DEFINED__ */
841 #ifndef __IOleInPlaceSite_FWD_DEFINED__
842 #define __IOleInPlaceSite_FWD_DEFINED__
843 typedef struct IOleInPlaceSite IOleInPlaceSite
;
846 typedef IOleInPlaceSite
*LPOLEINPLACESITE
;
848 /*****************************************************************************
849 * IOleInPlaceSite interface
851 #ifndef __IOleInPlaceSite_INTERFACE_DEFINED__
852 #define __IOleInPlaceSite_INTERFACE_DEFINED__
854 DEFINE_GUID(IID_IOleInPlaceSite
, 0x00000119, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
855 #if defined(__cplusplus) && !defined(CINTERFACE)
856 struct IOleInPlaceSite
: public IOleWindow
858 virtual HRESULT STDMETHODCALLTYPE
CanInPlaceActivate(
861 virtual HRESULT STDMETHODCALLTYPE
OnInPlaceActivate(
864 virtual HRESULT STDMETHODCALLTYPE
OnUIActivate(
867 virtual HRESULT STDMETHODCALLTYPE
GetWindowContext(
868 IOleInPlaceFrame
** ppFrame
,
869 IOleInPlaceUIWindow
** ppDoc
,
872 LPOLEINPLACEFRAMEINFO lpFrameInfo
) = 0;
874 virtual HRESULT STDMETHODCALLTYPE
Scroll(
875 SIZE scrollExtant
) = 0;
877 virtual HRESULT STDMETHODCALLTYPE
OnUIDeactivate(
880 virtual HRESULT STDMETHODCALLTYPE
OnInPlaceDeactivate(
883 virtual HRESULT STDMETHODCALLTYPE
DiscardUndoState(
886 virtual HRESULT STDMETHODCALLTYPE
DeactivateAndUndo(
889 virtual HRESULT STDMETHODCALLTYPE
OnPosRectChange(
890 LPCRECT lprcPosRect
) = 0;
894 typedef struct IOleInPlaceSiteVtbl IOleInPlaceSiteVtbl
;
895 struct IOleInPlaceSite
{
896 const IOleInPlaceSiteVtbl
* lpVtbl
;
898 struct IOleInPlaceSiteVtbl
{
901 /*** IUnknown methods ***/
902 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
903 IOleInPlaceSite
* This
,
907 ULONG (STDMETHODCALLTYPE
*AddRef
)(
908 IOleInPlaceSite
* This
);
910 ULONG (STDMETHODCALLTYPE
*Release
)(
911 IOleInPlaceSite
* This
);
913 /*** IOleWindow methods ***/
914 HRESULT (STDMETHODCALLTYPE
*GetWindow
)(
915 IOleInPlaceSite
* This
,
918 HRESULT (STDMETHODCALLTYPE
*ContextSensitiveHelp
)(
919 IOleInPlaceSite
* This
,
922 /*** IOleInPlaceSite methods ***/
923 HRESULT (STDMETHODCALLTYPE
*CanInPlaceActivate
)(
924 IOleInPlaceSite
* This
);
926 HRESULT (STDMETHODCALLTYPE
*OnInPlaceActivate
)(
927 IOleInPlaceSite
* This
);
929 HRESULT (STDMETHODCALLTYPE
*OnUIActivate
)(
930 IOleInPlaceSite
* This
);
932 HRESULT (STDMETHODCALLTYPE
*GetWindowContext
)(
933 IOleInPlaceSite
* This
,
934 IOleInPlaceFrame
** ppFrame
,
935 IOleInPlaceUIWindow
** ppDoc
,
938 LPOLEINPLACEFRAMEINFO lpFrameInfo
);
940 HRESULT (STDMETHODCALLTYPE
*Scroll
)(
941 IOleInPlaceSite
* This
,
944 HRESULT (STDMETHODCALLTYPE
*OnUIDeactivate
)(
945 IOleInPlaceSite
* This
,
948 HRESULT (STDMETHODCALLTYPE
*OnInPlaceDeactivate
)(
949 IOleInPlaceSite
* This
);
951 HRESULT (STDMETHODCALLTYPE
*DiscardUndoState
)(
952 IOleInPlaceSite
* This
);
954 HRESULT (STDMETHODCALLTYPE
*DeactivateAndUndo
)(
955 IOleInPlaceSite
* This
);
957 HRESULT (STDMETHODCALLTYPE
*OnPosRectChange
)(
958 IOleInPlaceSite
* This
,
959 LPCRECT lprcPosRect
);
965 /*** IUnknown methods ***/
966 #define IOleInPlaceSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
967 #define IOleInPlaceSite_AddRef(p) (p)->lpVtbl->AddRef(p)
968 #define IOleInPlaceSite_Release(p) (p)->lpVtbl->Release(p)
969 /*** IOleWindow methods ***/
970 #define IOleInPlaceSite_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
971 #define IOleInPlaceSite_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
972 /*** IOleInPlaceSite methods ***/
973 #define IOleInPlaceSite_CanInPlaceActivate(p) (p)->lpVtbl->CanInPlaceActivate(p)
974 #define IOleInPlaceSite_OnInPlaceActivate(p) (p)->lpVtbl->OnInPlaceActivate(p)
975 #define IOleInPlaceSite_OnUIActivate(p) (p)->lpVtbl->OnUIActivate(p)
976 #define IOleInPlaceSite_GetWindowContext(p,a,b,c,d,e) (p)->lpVtbl->GetWindowContext(p,a,b,c,d,e)
977 #define IOleInPlaceSite_Scroll(p,a) (p)->lpVtbl->Scroll(p,a)
978 #define IOleInPlaceSite_OnUIDeactivate(p,a) (p)->lpVtbl->OnUIDeactivate(p,a)
979 #define IOleInPlaceSite_OnInPlaceDeactivate(p) (p)->lpVtbl->OnInPlaceDeactivate(p)
980 #define IOleInPlaceSite_DiscardUndoState(p) (p)->lpVtbl->DiscardUndoState(p)
981 #define IOleInPlaceSite_DeactivateAndUndo(p) (p)->lpVtbl->DeactivateAndUndo(p)
982 #define IOleInPlaceSite_OnPosRectChange(p,a) (p)->lpVtbl->OnPosRectChange(p,a)
987 #define IOleInPlaceSite_METHODS \
988 /*** IUnknown methods ***/ \
989 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
990 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
991 STDMETHOD_(ULONG,Release)(THIS) PURE; \
992 /*** IOleWindow methods ***/ \
993 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
994 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
995 /*** IOleInPlaceSite methods ***/ \
996 STDMETHOD_(HRESULT,CanInPlaceActivate)(THIS) PURE; \
997 STDMETHOD_(HRESULT,OnInPlaceActivate)(THIS) PURE; \
998 STDMETHOD_(HRESULT,OnUIActivate)(THIS) PURE; \
999 STDMETHOD_(HRESULT,GetWindowContext)(THIS_ IOleInPlaceFrame** ppFrame, IOleInPlaceUIWindow** ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) PURE; \
1000 STDMETHOD_(HRESULT,Scroll)(THIS_ SIZE scrollExtant) PURE; \
1001 STDMETHOD_(HRESULT,OnUIDeactivate)(THIS_ BOOL fUndoable) PURE; \
1002 STDMETHOD_(HRESULT,OnInPlaceDeactivate)(THIS) PURE; \
1003 STDMETHOD_(HRESULT,DiscardUndoState)(THIS) PURE; \
1004 STDMETHOD_(HRESULT,DeactivateAndUndo)(THIS) PURE; \
1005 STDMETHOD_(HRESULT,OnPosRectChange)(THIS_ LPCRECT lprcPosRect) PURE;
1007 HRESULT CALLBACK
IOleInPlaceSite_CanInPlaceActivate_Proxy(
1008 IOleInPlaceSite
* This
);
1009 void __RPC_STUB
IOleInPlaceSite_CanInPlaceActivate_Stub(
1010 struct IRpcStubBuffer
* This
,
1011 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1012 PRPC_MESSAGE pRpcMessage
,
1013 DWORD
* pdwStubPhase
);
1014 HRESULT CALLBACK
IOleInPlaceSite_OnInPlaceActivate_Proxy(
1015 IOleInPlaceSite
* This
);
1016 void __RPC_STUB
IOleInPlaceSite_OnInPlaceActivate_Stub(
1017 struct IRpcStubBuffer
* This
,
1018 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1019 PRPC_MESSAGE pRpcMessage
,
1020 DWORD
* pdwStubPhase
);
1021 HRESULT CALLBACK
IOleInPlaceSite_OnUIActivate_Proxy(
1022 IOleInPlaceSite
* This
);
1023 void __RPC_STUB
IOleInPlaceSite_OnUIActivate_Stub(
1024 struct IRpcStubBuffer
* This
,
1025 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1026 PRPC_MESSAGE pRpcMessage
,
1027 DWORD
* pdwStubPhase
);
1028 HRESULT CALLBACK
IOleInPlaceSite_GetWindowContext_Proxy(
1029 IOleInPlaceSite
* This
,
1030 IOleInPlaceFrame
** ppFrame
,
1031 IOleInPlaceUIWindow
** ppDoc
,
1033 LPRECT lprcClipRect
,
1034 LPOLEINPLACEFRAMEINFO lpFrameInfo
);
1035 void __RPC_STUB
IOleInPlaceSite_GetWindowContext_Stub(
1036 struct IRpcStubBuffer
* This
,
1037 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1038 PRPC_MESSAGE pRpcMessage
,
1039 DWORD
* pdwStubPhase
);
1040 HRESULT CALLBACK
IOleInPlaceSite_Scroll_Proxy(
1041 IOleInPlaceSite
* This
,
1043 void __RPC_STUB
IOleInPlaceSite_Scroll_Stub(
1044 struct IRpcStubBuffer
* This
,
1045 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1046 PRPC_MESSAGE pRpcMessage
,
1047 DWORD
* pdwStubPhase
);
1048 HRESULT CALLBACK
IOleInPlaceSite_OnUIDeactivate_Proxy(
1049 IOleInPlaceSite
* This
,
1051 void __RPC_STUB
IOleInPlaceSite_OnUIDeactivate_Stub(
1052 struct IRpcStubBuffer
* This
,
1053 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1054 PRPC_MESSAGE pRpcMessage
,
1055 DWORD
* pdwStubPhase
);
1056 HRESULT CALLBACK
IOleInPlaceSite_OnInPlaceDeactivate_Proxy(
1057 IOleInPlaceSite
* This
);
1058 void __RPC_STUB
IOleInPlaceSite_OnInPlaceDeactivate_Stub(
1059 struct IRpcStubBuffer
* This
,
1060 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1061 PRPC_MESSAGE pRpcMessage
,
1062 DWORD
* pdwStubPhase
);
1063 HRESULT CALLBACK
IOleInPlaceSite_DiscardUndoState_Proxy(
1064 IOleInPlaceSite
* This
);
1065 void __RPC_STUB
IOleInPlaceSite_DiscardUndoState_Stub(
1066 struct IRpcStubBuffer
* This
,
1067 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1068 PRPC_MESSAGE pRpcMessage
,
1069 DWORD
* pdwStubPhase
);
1070 HRESULT CALLBACK
IOleInPlaceSite_DeactivateAndUndo_Proxy(
1071 IOleInPlaceSite
* This
);
1072 void __RPC_STUB
IOleInPlaceSite_DeactivateAndUndo_Stub(
1073 struct IRpcStubBuffer
* This
,
1074 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1075 PRPC_MESSAGE pRpcMessage
,
1076 DWORD
* pdwStubPhase
);
1077 HRESULT CALLBACK
IOleInPlaceSite_OnPosRectChange_Proxy(
1078 IOleInPlaceSite
* This
,
1079 LPCRECT lprcPosRect
);
1080 void __RPC_STUB
IOleInPlaceSite_OnPosRectChange_Stub(
1081 struct IRpcStubBuffer
* This
,
1082 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1083 PRPC_MESSAGE pRpcMessage
,
1084 DWORD
* pdwStubPhase
);
1086 #endif /* __IOleInPlaceSite_INTERFACE_DEFINED__ */
1088 #ifndef __IParseDisplayName_FWD_DEFINED__
1089 #define __IParseDisplayName_FWD_DEFINED__
1090 typedef struct IParseDisplayName IParseDisplayName
;
1093 typedef IParseDisplayName
*LPPARSEDISPLAYNAME
;
1095 /*****************************************************************************
1096 * IParseDisplayName interface
1098 #ifndef __IParseDisplayName_INTERFACE_DEFINED__
1099 #define __IParseDisplayName_INTERFACE_DEFINED__
1101 DEFINE_GUID(IID_IParseDisplayName
, 0x0000011a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1102 #if defined(__cplusplus) && !defined(CINTERFACE)
1103 struct IParseDisplayName
: public IUnknown
1105 virtual HRESULT STDMETHODCALLTYPE
ParseDisplayName(
1107 LPOLESTR pszDisplayName
,
1109 IMoniker
** ppmkOut
) = 0;
1113 typedef struct IParseDisplayNameVtbl IParseDisplayNameVtbl
;
1114 struct IParseDisplayName
{
1115 const IParseDisplayNameVtbl
* lpVtbl
;
1117 struct IParseDisplayNameVtbl
{
1120 /*** IUnknown methods ***/
1121 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1122 IParseDisplayName
* This
,
1126 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1127 IParseDisplayName
* This
);
1129 ULONG (STDMETHODCALLTYPE
*Release
)(
1130 IParseDisplayName
* This
);
1132 /*** IParseDisplayName methods ***/
1133 HRESULT (STDMETHODCALLTYPE
*ParseDisplayName
)(
1134 IParseDisplayName
* This
,
1136 LPOLESTR pszDisplayName
,
1138 IMoniker
** ppmkOut
);
1144 /*** IUnknown methods ***/
1145 #define IParseDisplayName_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1146 #define IParseDisplayName_AddRef(p) (p)->lpVtbl->AddRef(p)
1147 #define IParseDisplayName_Release(p) (p)->lpVtbl->Release(p)
1148 /*** IParseDisplayName methods ***/
1149 #define IParseDisplayName_ParseDisplayName(p,a,b,c,d) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d)
1154 #define IParseDisplayName_METHODS \
1155 /*** IUnknown methods ***/ \
1156 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1157 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1158 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1159 /*** IParseDisplayName methods ***/ \
1160 STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE;
1162 HRESULT CALLBACK
IParseDisplayName_ParseDisplayName_Proxy(
1163 IParseDisplayName
* This
,
1165 LPOLESTR pszDisplayName
,
1167 IMoniker
** ppmkOut
);
1168 void __RPC_STUB
IParseDisplayName_ParseDisplayName_Stub(
1169 struct IRpcStubBuffer
* This
,
1170 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1171 PRPC_MESSAGE pRpcMessage
,
1172 DWORD
* pdwStubPhase
);
1174 #endif /* __IParseDisplayName_INTERFACE_DEFINED__ */
1176 #ifndef __IOleContainer_FWD_DEFINED__
1177 #define __IOleContainer_FWD_DEFINED__
1178 typedef struct IOleContainer IOleContainer
;
1181 typedef IOleContainer
*LPOLECONTAINER
;
1183 /*****************************************************************************
1184 * IOleContainer interface
1186 #ifndef __IOleContainer_INTERFACE_DEFINED__
1187 #define __IOleContainer_INTERFACE_DEFINED__
1189 DEFINE_GUID(IID_IOleContainer
, 0x0000011b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1190 #if defined(__cplusplus) && !defined(CINTERFACE)
1191 struct IOleContainer
: public IParseDisplayName
1193 virtual HRESULT STDMETHODCALLTYPE
EnumObjects(
1195 IEnumUnknown
** ppenum
) = 0;
1197 virtual HRESULT STDMETHODCALLTYPE
LockContainer(
1202 typedef struct IOleContainerVtbl IOleContainerVtbl
;
1203 struct IOleContainer
{
1204 const IOleContainerVtbl
* lpVtbl
;
1206 struct IOleContainerVtbl
{
1209 /*** IUnknown methods ***/
1210 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1211 IOleContainer
* This
,
1215 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1216 IOleContainer
* This
);
1218 ULONG (STDMETHODCALLTYPE
*Release
)(
1219 IOleContainer
* This
);
1221 /*** IParseDisplayName methods ***/
1222 HRESULT (STDMETHODCALLTYPE
*ParseDisplayName
)(
1223 IOleContainer
* This
,
1225 LPOLESTR pszDisplayName
,
1227 IMoniker
** ppmkOut
);
1229 /*** IOleContainer methods ***/
1230 HRESULT (STDMETHODCALLTYPE
*EnumObjects
)(
1231 IOleContainer
* This
,
1233 IEnumUnknown
** ppenum
);
1235 HRESULT (STDMETHODCALLTYPE
*LockContainer
)(
1236 IOleContainer
* This
,
1243 /*** IUnknown methods ***/
1244 #define IOleContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1245 #define IOleContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
1246 #define IOleContainer_Release(p) (p)->lpVtbl->Release(p)
1247 /*** IParseDisplayName methods ***/
1248 #define IOleContainer_ParseDisplayName(p,a,b,c,d) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d)
1249 /*** IOleContainer methods ***/
1250 #define IOleContainer_EnumObjects(p,a,b) (p)->lpVtbl->EnumObjects(p,a,b)
1251 #define IOleContainer_LockContainer(p,a) (p)->lpVtbl->LockContainer(p,a)
1256 #define IOleContainer_METHODS \
1257 /*** IUnknown methods ***/ \
1258 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1259 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1260 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1261 /*** IParseDisplayName methods ***/ \
1262 STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE; \
1263 /*** IOleContainer methods ***/ \
1264 STDMETHOD_(HRESULT,EnumObjects)(THIS_ DWORD grfFlags, IEnumUnknown** ppenum) PURE; \
1265 STDMETHOD_(HRESULT,LockContainer)(THIS_ BOOL fLock) PURE;
1267 HRESULT CALLBACK
IOleContainer_EnumObjects_Proxy(
1268 IOleContainer
* This
,
1270 IEnumUnknown
** ppenum
);
1271 void __RPC_STUB
IOleContainer_EnumObjects_Stub(
1272 struct IRpcStubBuffer
* This
,
1273 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1274 PRPC_MESSAGE pRpcMessage
,
1275 DWORD
* pdwStubPhase
);
1276 HRESULT CALLBACK
IOleContainer_LockContainer_Proxy(
1277 IOleContainer
* This
,
1279 void __RPC_STUB
IOleContainer_LockContainer_Stub(
1280 struct IRpcStubBuffer
* This
,
1281 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1282 PRPC_MESSAGE pRpcMessage
,
1283 DWORD
* pdwStubPhase
);
1285 #endif /* __IOleContainer_INTERFACE_DEFINED__ */
1287 #ifndef __IOleItemContainer_FWD_DEFINED__
1288 #define __IOleItemContainer_FWD_DEFINED__
1289 typedef struct IOleItemContainer IOleItemContainer
;
1292 typedef IOleItemContainer
*LPOLEITEMCONTAINER
;
1294 typedef enum tagBINDSPEED
{
1295 BINDSPEED_INDEFINITE
= 1,
1296 BINDSPEED_MODERATE
= 2,
1297 BINDSPEED_IMMEDIATE
= 3
1300 typedef enum tagOLECONTF
{
1301 OLECONTF_EMBEDDINGS
= 1,
1303 OLECONTF_OTHERS
= 4,
1304 OLECONTF_OLNYUSER
= 8,
1305 OLECONTF_ONLYIFRUNNING
= 16
1311 /*****************************************************************************
1312 * IOleItemContainer interface
1314 #ifndef __IOleItemContainer_INTERFACE_DEFINED__
1315 #define __IOleItemContainer_INTERFACE_DEFINED__
1317 DEFINE_GUID(IID_IOleItemContainer
, 0x0000011c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1318 #if defined(__cplusplus) && !defined(CINTERFACE)
1319 struct IOleItemContainer
: public IOleContainer
1321 virtual HRESULT STDMETHODCALLTYPE
GetObject(
1323 DWORD dwSpeedNeeded
,
1326 void** ppvObject
) = 0;
1328 virtual HRESULT STDMETHODCALLTYPE
GetObjectStorage(
1332 void** ppvStorage
) = 0;
1334 virtual HRESULT STDMETHODCALLTYPE
IsRunning(
1335 LPOLESTR pszItem
) = 0;
1339 typedef struct IOleItemContainerVtbl IOleItemContainerVtbl
;
1340 struct IOleItemContainer
{
1341 const IOleItemContainerVtbl
* lpVtbl
;
1343 struct IOleItemContainerVtbl
{
1346 /*** IUnknown methods ***/
1347 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1348 IOleItemContainer
* This
,
1352 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1353 IOleItemContainer
* This
);
1355 ULONG (STDMETHODCALLTYPE
*Release
)(
1356 IOleItemContainer
* This
);
1358 /*** IParseDisplayName methods ***/
1359 HRESULT (STDMETHODCALLTYPE
*ParseDisplayName
)(
1360 IOleItemContainer
* This
,
1362 LPOLESTR pszDisplayName
,
1364 IMoniker
** ppmkOut
);
1366 /*** IOleContainer methods ***/
1367 HRESULT (STDMETHODCALLTYPE
*EnumObjects
)(
1368 IOleItemContainer
* This
,
1370 IEnumUnknown
** ppenum
);
1372 HRESULT (STDMETHODCALLTYPE
*LockContainer
)(
1373 IOleItemContainer
* This
,
1376 /*** IOleItemContainer methods ***/
1377 HRESULT (STDMETHODCALLTYPE
*GetObject
)(
1378 IOleItemContainer
* This
,
1380 DWORD dwSpeedNeeded
,
1385 HRESULT (STDMETHODCALLTYPE
*GetObjectStorage
)(
1386 IOleItemContainer
* This
,
1392 HRESULT (STDMETHODCALLTYPE
*IsRunning
)(
1393 IOleItemContainer
* This
,
1400 /*** IUnknown methods ***/
1401 #define IOleItemContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1402 #define IOleItemContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
1403 #define IOleItemContainer_Release(p) (p)->lpVtbl->Release(p)
1404 /*** IParseDisplayName methods ***/
1405 #define IOleItemContainer_ParseDisplayName(p,a,b,c,d) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d)
1406 /*** IOleContainer methods ***/
1407 #define IOleItemContainer_EnumObjects(p,a,b) (p)->lpVtbl->EnumObjects(p,a,b)
1408 #define IOleItemContainer_LockContainer(p,a) (p)->lpVtbl->LockContainer(p,a)
1409 /*** IOleItemContainer methods ***/
1410 #define IOleItemContainer_GetObject(p,a,b,c,d,e) (p)->lpVtbl->GetObject(p,a,b,c,d,e)
1411 #define IOleItemContainer_GetObjectStorage(p,a,b,c,d) (p)->lpVtbl->GetObjectStorage(p,a,b,c,d)
1412 #define IOleItemContainer_IsRunning(p,a) (p)->lpVtbl->IsRunning(p,a)
1417 #define IOleItemContainer_METHODS \
1418 /*** IUnknown methods ***/ \
1419 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1420 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1421 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1422 /*** IParseDisplayName methods ***/ \
1423 STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE; \
1424 /*** IOleContainer methods ***/ \
1425 STDMETHOD_(HRESULT,EnumObjects)(THIS_ DWORD grfFlags, IEnumUnknown** ppenum) PURE; \
1426 STDMETHOD_(HRESULT,LockContainer)(THIS_ BOOL fLock) PURE; \
1427 /*** IOleItemContainer methods ***/ \
1428 STDMETHOD_(HRESULT,GetObject)(THIS_ LPOLESTR pszItem, DWORD dwSpeedNeeded, IBindCtx* pbc, REFIID riid, void** ppvObject) PURE; \
1429 STDMETHOD_(HRESULT,GetObjectStorage)(THIS_ LPOLESTR pszItem, IBindCtx* pbc, REFIID riid, void** ppvStorage) PURE; \
1430 STDMETHOD_(HRESULT,IsRunning)(THIS_ LPOLESTR pszItem) PURE;
1432 HRESULT CALLBACK
IOleItemContainer_GetObject_Proxy(
1433 IOleItemContainer
* This
,
1435 DWORD dwSpeedNeeded
,
1439 void __RPC_STUB
IOleItemContainer_GetObject_Stub(
1440 struct IRpcStubBuffer
* This
,
1441 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1442 PRPC_MESSAGE pRpcMessage
,
1443 DWORD
* pdwStubPhase
);
1444 HRESULT CALLBACK
IOleItemContainer_GetObjectStorage_Proxy(
1445 IOleItemContainer
* This
,
1450 void __RPC_STUB
IOleItemContainer_GetObjectStorage_Stub(
1451 struct IRpcStubBuffer
* This
,
1452 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1453 PRPC_MESSAGE pRpcMessage
,
1454 DWORD
* pdwStubPhase
);
1455 HRESULT CALLBACK
IOleItemContainer_IsRunning_Proxy(
1456 IOleItemContainer
* This
,
1458 void __RPC_STUB
IOleItemContainer_IsRunning_Stub(
1459 struct IRpcStubBuffer
* This
,
1460 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1461 PRPC_MESSAGE pRpcMessage
,
1462 DWORD
* pdwStubPhase
);
1464 #endif /* __IOleItemContainer_INTERFACE_DEFINED__ */
1466 #ifndef __IOleLink_FWD_DEFINED__
1467 #define __IOleLink_FWD_DEFINED__
1468 typedef struct IOleLink IOleLink
;
1471 typedef IOleLink
*LPOLELINK
;
1473 typedef enum tagOLEUPDATE
{
1474 OLEUPDATE_ALWAYS
= 1,
1475 OLEUPDATE_ONCALL
= 3
1476 } OLEUPDATE
, *POLEUPDATE
, *LPOLEUPDATE
;
1478 typedef enum tagOLELINKBIND
{
1479 OLELINKBIND_EVENIFCLASSDIFF
= 1
1482 /*****************************************************************************
1483 * IOleLink interface
1485 #ifndef __IOleLink_INTERFACE_DEFINED__
1486 #define __IOleLink_INTERFACE_DEFINED__
1488 DEFINE_GUID(IID_IOleLink
, 0x0000011d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1489 #if defined(__cplusplus) && !defined(CINTERFACE)
1490 struct IOleLink
: public IUnknown
1492 virtual HRESULT STDMETHODCALLTYPE
SetUpdateOptions(
1493 DWORD dwUpdateOpt
) = 0;
1495 virtual HRESULT STDMETHODCALLTYPE
GetUpdateOptions(
1496 DWORD
* pdwUpdateOpt
) = 0;
1498 virtual HRESULT STDMETHODCALLTYPE
SetSourceMoniker(
1500 REFCLSID rclsid
) = 0;
1502 virtual HRESULT STDMETHODCALLTYPE
GetSourceMoniker(
1503 IMoniker
** ppmk
) = 0;
1505 virtual HRESULT STDMETHODCALLTYPE
SetSourceDisplayName(
1506 LPCOLESTR pszStatusText
) = 0;
1508 virtual HRESULT STDMETHODCALLTYPE
GetSourceDisplayName(
1509 LPOLESTR
* ppszDisplayName
) = 0;
1511 virtual HRESULT STDMETHODCALLTYPE
BindToSource(
1515 virtual HRESULT STDMETHODCALLTYPE
BindIfRunning(
1518 virtual HRESULT STDMETHODCALLTYPE
GetBoundSource(
1519 IUnknown
** ppunk
) = 0;
1521 virtual HRESULT STDMETHODCALLTYPE
UnbindSource(
1524 virtual HRESULT STDMETHODCALLTYPE
Update(
1529 typedef struct IOleLinkVtbl IOleLinkVtbl
;
1531 const IOleLinkVtbl
* lpVtbl
;
1533 struct IOleLinkVtbl
{
1536 /*** IUnknown methods ***/
1537 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1542 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1545 ULONG (STDMETHODCALLTYPE
*Release
)(
1548 /*** IOleLink methods ***/
1549 HRESULT (STDMETHODCALLTYPE
*SetUpdateOptions
)(
1553 HRESULT (STDMETHODCALLTYPE
*GetUpdateOptions
)(
1555 DWORD
* pdwUpdateOpt
);
1557 HRESULT (STDMETHODCALLTYPE
*SetSourceMoniker
)(
1562 HRESULT (STDMETHODCALLTYPE
*GetSourceMoniker
)(
1566 HRESULT (STDMETHODCALLTYPE
*SetSourceDisplayName
)(
1568 LPCOLESTR pszStatusText
);
1570 HRESULT (STDMETHODCALLTYPE
*GetSourceDisplayName
)(
1572 LPOLESTR
* ppszDisplayName
);
1574 HRESULT (STDMETHODCALLTYPE
*BindToSource
)(
1579 HRESULT (STDMETHODCALLTYPE
*BindIfRunning
)(
1582 HRESULT (STDMETHODCALLTYPE
*GetBoundSource
)(
1586 HRESULT (STDMETHODCALLTYPE
*UnbindSource
)(
1589 HRESULT (STDMETHODCALLTYPE
*Update
)(
1597 /*** IUnknown methods ***/
1598 #define IOleLink_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1599 #define IOleLink_AddRef(p) (p)->lpVtbl->AddRef(p)
1600 #define IOleLink_Release(p) (p)->lpVtbl->Release(p)
1601 /*** IOleLink methods ***/
1602 #define IOleLink_SetUpdateOptions(p,a) (p)->lpVtbl->SetUpdateOptions(p,a)
1603 #define IOleLink_GetUpdateOptions(p,a) (p)->lpVtbl->GetUpdateOptions(p,a)
1604 #define IOleLink_SetSourceMoniker(p,a,b) (p)->lpVtbl->SetSourceMoniker(p,a,b)
1605 #define IOleLink_GetSourceMoniker(p,a) (p)->lpVtbl->GetSourceMoniker(p,a)
1606 #define IOleLink_SetSourceDisplayName(p,a) (p)->lpVtbl->SetSourceDisplayName(p,a)
1607 #define IOleLink_GetSourceDisplayName(p,a) (p)->lpVtbl->GetSourceDisplayName(p,a)
1608 #define IOleLink_BindToSource(p,a,b) (p)->lpVtbl->BindToSource(p,a,b)
1609 #define IOleLink_BindIfRunning(p) (p)->lpVtbl->BindIfRunning(p)
1610 #define IOleLink_GetBoundSource(p,a) (p)->lpVtbl->GetBoundSource(p,a)
1611 #define IOleLink_UnbindSource(p) (p)->lpVtbl->UnbindSource(p)
1612 #define IOleLink_Update(p,a) (p)->lpVtbl->Update(p,a)
1617 #define IOleLink_METHODS \
1618 /*** IUnknown methods ***/ \
1619 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1620 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1621 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1622 /*** IOleLink methods ***/ \
1623 STDMETHOD_(HRESULT,SetUpdateOptions)(THIS_ DWORD dwUpdateOpt) PURE; \
1624 STDMETHOD_(HRESULT,GetUpdateOptions)(THIS_ DWORD* pdwUpdateOpt) PURE; \
1625 STDMETHOD_(HRESULT,SetSourceMoniker)(THIS_ IMoniker* pmk, REFCLSID rclsid) PURE; \
1626 STDMETHOD_(HRESULT,GetSourceMoniker)(THIS_ IMoniker** ppmk) PURE; \
1627 STDMETHOD_(HRESULT,SetSourceDisplayName)(THIS_ LPCOLESTR pszStatusText) PURE; \
1628 STDMETHOD_(HRESULT,GetSourceDisplayName)(THIS_ LPOLESTR* ppszDisplayName) PURE; \
1629 STDMETHOD_(HRESULT,BindToSource)(THIS_ DWORD bindflags, IBindCtx* pbc) PURE; \
1630 STDMETHOD_(HRESULT,BindIfRunning)(THIS) PURE; \
1631 STDMETHOD_(HRESULT,GetBoundSource)(THIS_ IUnknown** ppunk) PURE; \
1632 STDMETHOD_(HRESULT,UnbindSource)(THIS) PURE; \
1633 STDMETHOD_(HRESULT,Update)(THIS_ IBindCtx* pbc) PURE;
1635 HRESULT CALLBACK
IOleLink_SetUpdateOptions_Proxy(
1638 void __RPC_STUB
IOleLink_SetUpdateOptions_Stub(
1639 struct IRpcStubBuffer
* This
,
1640 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1641 PRPC_MESSAGE pRpcMessage
,
1642 DWORD
* pdwStubPhase
);
1643 HRESULT CALLBACK
IOleLink_GetUpdateOptions_Proxy(
1645 DWORD
* pdwUpdateOpt
);
1646 void __RPC_STUB
IOleLink_GetUpdateOptions_Stub(
1647 struct IRpcStubBuffer
* This
,
1648 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1649 PRPC_MESSAGE pRpcMessage
,
1650 DWORD
* pdwStubPhase
);
1651 HRESULT CALLBACK
IOleLink_SetSourceMoniker_Proxy(
1655 void __RPC_STUB
IOleLink_SetSourceMoniker_Stub(
1656 struct IRpcStubBuffer
* This
,
1657 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1658 PRPC_MESSAGE pRpcMessage
,
1659 DWORD
* pdwStubPhase
);
1660 HRESULT CALLBACK
IOleLink_GetSourceMoniker_Proxy(
1663 void __RPC_STUB
IOleLink_GetSourceMoniker_Stub(
1664 struct IRpcStubBuffer
* This
,
1665 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1666 PRPC_MESSAGE pRpcMessage
,
1667 DWORD
* pdwStubPhase
);
1668 HRESULT CALLBACK
IOleLink_SetSourceDisplayName_Proxy(
1670 LPCOLESTR pszStatusText
);
1671 void __RPC_STUB
IOleLink_SetSourceDisplayName_Stub(
1672 struct IRpcStubBuffer
* This
,
1673 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1674 PRPC_MESSAGE pRpcMessage
,
1675 DWORD
* pdwStubPhase
);
1676 HRESULT CALLBACK
IOleLink_GetSourceDisplayName_Proxy(
1678 LPOLESTR
* ppszDisplayName
);
1679 void __RPC_STUB
IOleLink_GetSourceDisplayName_Stub(
1680 struct IRpcStubBuffer
* This
,
1681 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1682 PRPC_MESSAGE pRpcMessage
,
1683 DWORD
* pdwStubPhase
);
1684 HRESULT CALLBACK
IOleLink_BindToSource_Proxy(
1688 void __RPC_STUB
IOleLink_BindToSource_Stub(
1689 struct IRpcStubBuffer
* This
,
1690 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1691 PRPC_MESSAGE pRpcMessage
,
1692 DWORD
* pdwStubPhase
);
1693 HRESULT CALLBACK
IOleLink_BindIfRunning_Proxy(
1695 void __RPC_STUB
IOleLink_BindIfRunning_Stub(
1696 struct IRpcStubBuffer
* This
,
1697 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1698 PRPC_MESSAGE pRpcMessage
,
1699 DWORD
* pdwStubPhase
);
1700 HRESULT CALLBACK
IOleLink_GetBoundSource_Proxy(
1703 void __RPC_STUB
IOleLink_GetBoundSource_Stub(
1704 struct IRpcStubBuffer
* This
,
1705 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1706 PRPC_MESSAGE pRpcMessage
,
1707 DWORD
* pdwStubPhase
);
1708 HRESULT CALLBACK
IOleLink_UnbindSource_Proxy(
1710 void __RPC_STUB
IOleLink_UnbindSource_Stub(
1711 struct IRpcStubBuffer
* This
,
1712 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1713 PRPC_MESSAGE pRpcMessage
,
1714 DWORD
* pdwStubPhase
);
1715 HRESULT CALLBACK
IOleLink_Update_Proxy(
1718 void __RPC_STUB
IOleLink_Update_Stub(
1719 struct IRpcStubBuffer
* This
,
1720 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1721 PRPC_MESSAGE pRpcMessage
,
1722 DWORD
* pdwStubPhase
);
1724 #endif /* __IOleLink_INTERFACE_DEFINED__ */
1726 #ifndef __IOleClientSite_FWD_DEFINED__
1727 #define __IOleClientSite_FWD_DEFINED__
1728 typedef struct IOleClientSite IOleClientSite
;
1731 typedef IOleClientSite
*LPOLECLIENTSITE
;
1733 /*****************************************************************************
1734 * IOleClientSite interface
1736 #ifndef __IOleClientSite_INTERFACE_DEFINED__
1737 #define __IOleClientSite_INTERFACE_DEFINED__
1739 DEFINE_GUID(IID_IOleClientSite
, 0x00000118, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1740 #if defined(__cplusplus) && !defined(CINTERFACE)
1741 struct IOleClientSite
: public IUnknown
1743 virtual HRESULT STDMETHODCALLTYPE
SaveObject(
1746 virtual HRESULT STDMETHODCALLTYPE
GetMoniker(
1748 DWORD dwWhichMoniker
,
1749 IMoniker
** ppmk
) = 0;
1751 virtual HRESULT STDMETHODCALLTYPE
GetContainer(
1752 IOleContainer
** ppContainer
) = 0;
1754 virtual HRESULT STDMETHODCALLTYPE
ShowObject(
1757 virtual HRESULT STDMETHODCALLTYPE
OnShowWindow(
1760 virtual HRESULT STDMETHODCALLTYPE
RequestNewObjectLayout(
1765 typedef struct IOleClientSiteVtbl IOleClientSiteVtbl
;
1766 struct IOleClientSite
{
1767 const IOleClientSiteVtbl
* lpVtbl
;
1769 struct IOleClientSiteVtbl
{
1772 /*** IUnknown methods ***/
1773 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1774 IOleClientSite
* This
,
1778 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1779 IOleClientSite
* This
);
1781 ULONG (STDMETHODCALLTYPE
*Release
)(
1782 IOleClientSite
* This
);
1784 /*** IOleClientSite methods ***/
1785 HRESULT (STDMETHODCALLTYPE
*SaveObject
)(
1786 IOleClientSite
* This
);
1788 HRESULT (STDMETHODCALLTYPE
*GetMoniker
)(
1789 IOleClientSite
* This
,
1791 DWORD dwWhichMoniker
,
1794 HRESULT (STDMETHODCALLTYPE
*GetContainer
)(
1795 IOleClientSite
* This
,
1796 IOleContainer
** ppContainer
);
1798 HRESULT (STDMETHODCALLTYPE
*ShowObject
)(
1799 IOleClientSite
* This
);
1801 HRESULT (STDMETHODCALLTYPE
*OnShowWindow
)(
1802 IOleClientSite
* This
,
1805 HRESULT (STDMETHODCALLTYPE
*RequestNewObjectLayout
)(
1806 IOleClientSite
* This
);
1812 /*** IUnknown methods ***/
1813 #define IOleClientSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1814 #define IOleClientSite_AddRef(p) (p)->lpVtbl->AddRef(p)
1815 #define IOleClientSite_Release(p) (p)->lpVtbl->Release(p)
1816 /*** IOleClientSite methods ***/
1817 #define IOleClientSite_SaveObject(p) (p)->lpVtbl->SaveObject(p)
1818 #define IOleClientSite_GetMoniker(p,a,b,c) (p)->lpVtbl->GetMoniker(p,a,b,c)
1819 #define IOleClientSite_GetContainer(p,a) (p)->lpVtbl->GetContainer(p,a)
1820 #define IOleClientSite_ShowObject(p) (p)->lpVtbl->ShowObject(p)
1821 #define IOleClientSite_OnShowWindow(p,a) (p)->lpVtbl->OnShowWindow(p,a)
1822 #define IOleClientSite_RequestNewObjectLayout(p) (p)->lpVtbl->RequestNewObjectLayout(p)
1827 #define IOleClientSite_METHODS \
1828 /*** IUnknown methods ***/ \
1829 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1830 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1831 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1832 /*** IOleClientSite methods ***/ \
1833 STDMETHOD_(HRESULT,SaveObject)(THIS) PURE; \
1834 STDMETHOD_(HRESULT,GetMoniker)(THIS_ DWORD dwAssign, DWORD dwWhichMoniker, IMoniker** ppmk) PURE; \
1835 STDMETHOD_(HRESULT,GetContainer)(THIS_ IOleContainer** ppContainer) PURE; \
1836 STDMETHOD_(HRESULT,ShowObject)(THIS) PURE; \
1837 STDMETHOD_(HRESULT,OnShowWindow)(THIS_ BOOL fShow) PURE; \
1838 STDMETHOD_(HRESULT,RequestNewObjectLayout)(THIS) PURE;
1840 HRESULT CALLBACK
IOleClientSite_SaveObject_Proxy(
1841 IOleClientSite
* This
);
1842 void __RPC_STUB
IOleClientSite_SaveObject_Stub(
1843 struct IRpcStubBuffer
* This
,
1844 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1845 PRPC_MESSAGE pRpcMessage
,
1846 DWORD
* pdwStubPhase
);
1847 HRESULT CALLBACK
IOleClientSite_GetMoniker_Proxy(
1848 IOleClientSite
* This
,
1850 DWORD dwWhichMoniker
,
1852 void __RPC_STUB
IOleClientSite_GetMoniker_Stub(
1853 struct IRpcStubBuffer
* This
,
1854 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1855 PRPC_MESSAGE pRpcMessage
,
1856 DWORD
* pdwStubPhase
);
1857 HRESULT CALLBACK
IOleClientSite_GetContainer_Proxy(
1858 IOleClientSite
* This
,
1859 IOleContainer
** ppContainer
);
1860 void __RPC_STUB
IOleClientSite_GetContainer_Stub(
1861 struct IRpcStubBuffer
* This
,
1862 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1863 PRPC_MESSAGE pRpcMessage
,
1864 DWORD
* pdwStubPhase
);
1865 HRESULT CALLBACK
IOleClientSite_ShowObject_Proxy(
1866 IOleClientSite
* This
);
1867 void __RPC_STUB
IOleClientSite_ShowObject_Stub(
1868 struct IRpcStubBuffer
* This
,
1869 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1870 PRPC_MESSAGE pRpcMessage
,
1871 DWORD
* pdwStubPhase
);
1872 HRESULT CALLBACK
IOleClientSite_OnShowWindow_Proxy(
1873 IOleClientSite
* This
,
1875 void __RPC_STUB
IOleClientSite_OnShowWindow_Stub(
1876 struct IRpcStubBuffer
* This
,
1877 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1878 PRPC_MESSAGE pRpcMessage
,
1879 DWORD
* pdwStubPhase
);
1880 HRESULT CALLBACK
IOleClientSite_RequestNewObjectLayout_Proxy(
1881 IOleClientSite
* This
);
1882 void __RPC_STUB
IOleClientSite_RequestNewObjectLayout_Stub(
1883 struct IRpcStubBuffer
* This
,
1884 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1885 PRPC_MESSAGE pRpcMessage
,
1886 DWORD
* pdwStubPhase
);
1888 #endif /* __IOleClientSite_INTERFACE_DEFINED__ */
1890 #ifndef __IOleCache_FWD_DEFINED__
1891 #define __IOleCache_FWD_DEFINED__
1892 typedef struct IOleCache IOleCache
;
1895 typedef IOleCache
*LPOLECACHE
;
1897 /*****************************************************************************
1898 * IOleCache interface
1900 #ifndef __IOleCache_INTERFACE_DEFINED__
1901 #define __IOleCache_INTERFACE_DEFINED__
1903 DEFINE_GUID(IID_IOleCache
, 0x0000011e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1904 #if defined(__cplusplus) && !defined(CINTERFACE)
1905 struct IOleCache
: public IUnknown
1907 virtual HRESULT STDMETHODCALLTYPE
Cache(
1908 FORMATETC
* pformatetc
,
1910 DWORD
* pdwConnection
) = 0;
1912 virtual HRESULT STDMETHODCALLTYPE
Uncache(
1913 DWORD dwConnection
) = 0;
1915 virtual HRESULT STDMETHODCALLTYPE
EnumCache(
1916 IEnumSTATDATA
** ppenumSTATDATA
) = 0;
1918 virtual HRESULT STDMETHODCALLTYPE
InitCache(
1919 IDataObject
* pDataObject
) = 0;
1921 virtual HRESULT STDMETHODCALLTYPE
SetData(
1922 FORMATETC
* pformatetc
,
1928 typedef struct IOleCacheVtbl IOleCacheVtbl
;
1930 const IOleCacheVtbl
* lpVtbl
;
1932 struct IOleCacheVtbl
{
1935 /*** IUnknown methods ***/
1936 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1941 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1944 ULONG (STDMETHODCALLTYPE
*Release
)(
1947 /*** IOleCache methods ***/
1948 HRESULT (STDMETHODCALLTYPE
*Cache
)(
1950 FORMATETC
* pformatetc
,
1952 DWORD
* pdwConnection
);
1954 HRESULT (STDMETHODCALLTYPE
*Uncache
)(
1956 DWORD dwConnection
);
1958 HRESULT (STDMETHODCALLTYPE
*EnumCache
)(
1960 IEnumSTATDATA
** ppenumSTATDATA
);
1962 HRESULT (STDMETHODCALLTYPE
*InitCache
)(
1964 IDataObject
* pDataObject
);
1966 HRESULT (STDMETHODCALLTYPE
*SetData
)(
1968 FORMATETC
* pformatetc
,
1976 /*** IUnknown methods ***/
1977 #define IOleCache_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1978 #define IOleCache_AddRef(p) (p)->lpVtbl->AddRef(p)
1979 #define IOleCache_Release(p) (p)->lpVtbl->Release(p)
1980 /*** IOleCache methods ***/
1981 #define IOleCache_Cache(p,a,b,c) (p)->lpVtbl->Cache(p,a,b,c)
1982 #define IOleCache_Uncache(p,a) (p)->lpVtbl->Uncache(p,a)
1983 #define IOleCache_EnumCache(p,a) (p)->lpVtbl->EnumCache(p,a)
1984 #define IOleCache_InitCache(p,a) (p)->lpVtbl->InitCache(p,a)
1985 #define IOleCache_SetData(p,a,b,c) (p)->lpVtbl->SetData(p,a,b,c)
1990 #define IOleCache_METHODS \
1991 /*** IUnknown methods ***/ \
1992 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1993 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1994 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1995 /*** IOleCache methods ***/ \
1996 STDMETHOD_(HRESULT,Cache)(THIS_ FORMATETC* pformatetc, DWORD advf, DWORD* pdwConnection) PURE; \
1997 STDMETHOD_(HRESULT,Uncache)(THIS_ DWORD dwConnection) PURE; \
1998 STDMETHOD_(HRESULT,EnumCache)(THIS_ IEnumSTATDATA** ppenumSTATDATA) PURE; \
1999 STDMETHOD_(HRESULT,InitCache)(THIS_ IDataObject* pDataObject) PURE; \
2000 STDMETHOD_(HRESULT,SetData)(THIS_ FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease) PURE;
2002 HRESULT CALLBACK
IOleCache_Cache_Proxy(
2004 FORMATETC
* pformatetc
,
2006 DWORD
* pdwConnection
);
2007 void __RPC_STUB
IOleCache_Cache_Stub(
2008 struct IRpcStubBuffer
* This
,
2009 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2010 PRPC_MESSAGE pRpcMessage
,
2011 DWORD
* pdwStubPhase
);
2012 HRESULT CALLBACK
IOleCache_Uncache_Proxy(
2014 DWORD dwConnection
);
2015 void __RPC_STUB
IOleCache_Uncache_Stub(
2016 struct IRpcStubBuffer
* This
,
2017 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2018 PRPC_MESSAGE pRpcMessage
,
2019 DWORD
* pdwStubPhase
);
2020 HRESULT CALLBACK
IOleCache_EnumCache_Proxy(
2022 IEnumSTATDATA
** ppenumSTATDATA
);
2023 void __RPC_STUB
IOleCache_EnumCache_Stub(
2024 struct IRpcStubBuffer
* This
,
2025 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2026 PRPC_MESSAGE pRpcMessage
,
2027 DWORD
* pdwStubPhase
);
2028 HRESULT CALLBACK
IOleCache_InitCache_Proxy(
2030 IDataObject
* pDataObject
);
2031 void __RPC_STUB
IOleCache_InitCache_Stub(
2032 struct IRpcStubBuffer
* This
,
2033 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2034 PRPC_MESSAGE pRpcMessage
,
2035 DWORD
* pdwStubPhase
);
2036 HRESULT CALLBACK
IOleCache_SetData_Proxy(
2038 FORMATETC
* pformatetc
,
2041 void __RPC_STUB
IOleCache_SetData_Stub(
2042 struct IRpcStubBuffer
* This
,
2043 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2044 PRPC_MESSAGE pRpcMessage
,
2045 DWORD
* pdwStubPhase
);
2047 #endif /* __IOleCache_INTERFACE_DEFINED__ */
2049 #ifndef __IOleCache2_FWD_DEFINED__
2050 #define __IOleCache2_FWD_DEFINED__
2051 typedef struct IOleCache2 IOleCache2
;
2054 typedef IOleCache2
*LPOLECACHE2
;
2056 #define UPDFCACHE_NODATACACHE (0x1)
2058 #define UPDFCACHE_ONSAVECACHE (0x2)
2060 #define UPDFCACHE_ONSTOPCACHE (0x4)
2062 #define UPDFCACHE_NORMALCACHE (0x8)
2064 #define UPDFCACHE_IFBLANK (0x10)
2066 #define UPDFCACHE_ONLYIFBLANK (0x80000000)
2068 #define UPDFCACHE_IFBLANKORONSAVECACHE (UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE)
2070 #define UPDFCACHE_ALL ((DWORD)~UPDFCACHE_ONLYIFBLANK)
2072 #define UPDFCACHE_ALLBUTNODATACACHE (UPDFCACHE_ALL & (DWORD)~UPDFCACHE_NODATACACHE)
2074 typedef enum tagDISCARDCACHE
{
2075 DISCARDCACHE_SAVEIFDIRTY
= 0,
2076 DISCARDCACHE_NOSAVE
= 1
2079 /*****************************************************************************
2080 * IOleCache2 interface
2082 #ifndef __IOleCache2_INTERFACE_DEFINED__
2083 #define __IOleCache2_INTERFACE_DEFINED__
2085 DEFINE_GUID(IID_IOleCache2
, 0x00000128, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2086 #if defined(__cplusplus) && !defined(CINTERFACE)
2087 struct IOleCache2
: public IOleCache
2089 virtual HRESULT STDMETHODCALLTYPE
UpdateCache(
2090 LPDATAOBJECT pDataObject
,
2092 LPVOID pReserved
) = 0;
2094 virtual HRESULT STDMETHODCALLTYPE
DiscardCache(
2095 DWORD dwDiscardOptions
) = 0;
2099 typedef struct IOleCache2Vtbl IOleCache2Vtbl
;
2101 const IOleCache2Vtbl
* lpVtbl
;
2103 struct IOleCache2Vtbl
{
2106 /*** IUnknown methods ***/
2107 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2112 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2115 ULONG (STDMETHODCALLTYPE
*Release
)(
2118 /*** IOleCache methods ***/
2119 HRESULT (STDMETHODCALLTYPE
*Cache
)(
2121 FORMATETC
* pformatetc
,
2123 DWORD
* pdwConnection
);
2125 HRESULT (STDMETHODCALLTYPE
*Uncache
)(
2127 DWORD dwConnection
);
2129 HRESULT (STDMETHODCALLTYPE
*EnumCache
)(
2131 IEnumSTATDATA
** ppenumSTATDATA
);
2133 HRESULT (STDMETHODCALLTYPE
*InitCache
)(
2135 IDataObject
* pDataObject
);
2137 HRESULT (STDMETHODCALLTYPE
*SetData
)(
2139 FORMATETC
* pformatetc
,
2143 /*** IOleCache2 methods ***/
2144 HRESULT (STDMETHODCALLTYPE
*UpdateCache
)(
2146 LPDATAOBJECT pDataObject
,
2150 HRESULT (STDMETHODCALLTYPE
*DiscardCache
)(
2152 DWORD dwDiscardOptions
);
2158 /*** IUnknown methods ***/
2159 #define IOleCache2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2160 #define IOleCache2_AddRef(p) (p)->lpVtbl->AddRef(p)
2161 #define IOleCache2_Release(p) (p)->lpVtbl->Release(p)
2162 /*** IOleCache methods ***/
2163 #define IOleCache2_Cache(p,a,b,c) (p)->lpVtbl->Cache(p,a,b,c)
2164 #define IOleCache2_Uncache(p,a) (p)->lpVtbl->Uncache(p,a)
2165 #define IOleCache2_EnumCache(p,a) (p)->lpVtbl->EnumCache(p,a)
2166 #define IOleCache2_InitCache(p,a) (p)->lpVtbl->InitCache(p,a)
2167 #define IOleCache2_SetData(p,a,b,c) (p)->lpVtbl->SetData(p,a,b,c)
2168 /*** IOleCache2 methods ***/
2169 #define IOleCache2_UpdateCache(p,a,b,c) (p)->lpVtbl->UpdateCache(p,a,b,c)
2170 #define IOleCache2_DiscardCache(p,a) (p)->lpVtbl->DiscardCache(p,a)
2175 #define IOleCache2_METHODS \
2176 /*** IUnknown methods ***/ \
2177 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2178 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2179 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2180 /*** IOleCache methods ***/ \
2181 STDMETHOD_(HRESULT,Cache)(THIS_ FORMATETC* pformatetc, DWORD advf, DWORD* pdwConnection) PURE; \
2182 STDMETHOD_(HRESULT,Uncache)(THIS_ DWORD dwConnection) PURE; \
2183 STDMETHOD_(HRESULT,EnumCache)(THIS_ IEnumSTATDATA** ppenumSTATDATA) PURE; \
2184 STDMETHOD_(HRESULT,InitCache)(THIS_ IDataObject* pDataObject) PURE; \
2185 STDMETHOD_(HRESULT,SetData)(THIS_ FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease) PURE; \
2186 /*** IOleCache2 methods ***/ \
2187 STDMETHOD_(HRESULT,UpdateCache)(THIS_ LPDATAOBJECT pDataObject, DWORD grfUpdf, LPVOID pReserved) PURE; \
2188 STDMETHOD_(HRESULT,DiscardCache)(THIS_ DWORD dwDiscardOptions) PURE;
2190 HRESULT CALLBACK
IOleCache2_RemoteUpdateCache_Proxy(
2192 LPDATAOBJECT pDataObject
,
2194 LONG_PTR pReserved
);
2195 void __RPC_STUB
IOleCache2_RemoteUpdateCache_Stub(
2196 struct IRpcStubBuffer
* This
,
2197 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2198 PRPC_MESSAGE pRpcMessage
,
2199 DWORD
* pdwStubPhase
);
2200 HRESULT CALLBACK
IOleCache2_UpdateCache_Proxy(
2202 LPDATAOBJECT pDataObject
,
2205 HRESULT __RPC_STUB
IOleCache2_UpdateCache_Stub(
2207 LPDATAOBJECT pDataObject
,
2209 LONG_PTR pReserved
);
2210 HRESULT CALLBACK
IOleCache2_DiscardCache_Proxy(
2212 DWORD dwDiscardOptions
);
2213 void __RPC_STUB
IOleCache2_DiscardCache_Stub(
2214 struct IRpcStubBuffer
* This
,
2215 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2216 PRPC_MESSAGE pRpcMessage
,
2217 DWORD
* pdwStubPhase
);
2219 #endif /* __IOleCache2_INTERFACE_DEFINED__ */
2221 #ifndef __IOleCacheControl_FWD_DEFINED__
2222 #define __IOleCacheControl_FWD_DEFINED__
2223 typedef struct IOleCacheControl IOleCacheControl
;
2226 typedef IOleCacheControl
*LPOLECACHECONTROL
;
2228 /*****************************************************************************
2229 * IOleCacheControl interface
2231 #ifndef __IOleCacheControl_INTERFACE_DEFINED__
2232 #define __IOleCacheControl_INTERFACE_DEFINED__
2234 DEFINE_GUID(IID_IOleCacheControl
, 0x00000129, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2235 #if defined(__cplusplus) && !defined(CINTERFACE)
2236 struct IOleCacheControl
: public IUnknown
2238 virtual HRESULT STDMETHODCALLTYPE
OnRun(
2239 LPDATAOBJECT pDataObject
) = 0;
2241 virtual HRESULT STDMETHODCALLTYPE
OnStop(
2246 typedef struct IOleCacheControlVtbl IOleCacheControlVtbl
;
2247 struct IOleCacheControl
{
2248 const IOleCacheControlVtbl
* lpVtbl
;
2250 struct IOleCacheControlVtbl
{
2253 /*** IUnknown methods ***/
2254 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2255 IOleCacheControl
* This
,
2259 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2260 IOleCacheControl
* This
);
2262 ULONG (STDMETHODCALLTYPE
*Release
)(
2263 IOleCacheControl
* This
);
2265 /*** IOleCacheControl methods ***/
2266 HRESULT (STDMETHODCALLTYPE
*OnRun
)(
2267 IOleCacheControl
* This
,
2268 LPDATAOBJECT pDataObject
);
2270 HRESULT (STDMETHODCALLTYPE
*OnStop
)(
2271 IOleCacheControl
* This
);
2277 /*** IUnknown methods ***/
2278 #define IOleCacheControl_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2279 #define IOleCacheControl_AddRef(p) (p)->lpVtbl->AddRef(p)
2280 #define IOleCacheControl_Release(p) (p)->lpVtbl->Release(p)
2281 /*** IOleCacheControl methods ***/
2282 #define IOleCacheControl_OnRun(p,a) (p)->lpVtbl->OnRun(p,a)
2283 #define IOleCacheControl_OnStop(p) (p)->lpVtbl->OnStop(p)
2288 #define IOleCacheControl_METHODS \
2289 /*** IUnknown methods ***/ \
2290 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2291 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2292 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2293 /*** IOleCacheControl methods ***/ \
2294 STDMETHOD_(HRESULT,OnRun)(THIS_ LPDATAOBJECT pDataObject) PURE; \
2295 STDMETHOD_(HRESULT,OnStop)(THIS) PURE;
2297 HRESULT CALLBACK
IOleCacheControl_OnRun_Proxy(
2298 IOleCacheControl
* This
,
2299 LPDATAOBJECT pDataObject
);
2300 void __RPC_STUB
IOleCacheControl_OnRun_Stub(
2301 struct IRpcStubBuffer
* This
,
2302 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2303 PRPC_MESSAGE pRpcMessage
,
2304 DWORD
* pdwStubPhase
);
2305 HRESULT CALLBACK
IOleCacheControl_OnStop_Proxy(
2306 IOleCacheControl
* This
);
2307 void __RPC_STUB
IOleCacheControl_OnStop_Stub(
2308 struct IRpcStubBuffer
* This
,
2309 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2310 PRPC_MESSAGE pRpcMessage
,
2311 DWORD
* pdwStubPhase
);
2313 #endif /* __IOleCacheControl_INTERFACE_DEFINED__ */
2315 #ifndef __IEnumOLEVERB_FWD_DEFINED__
2316 #define __IEnumOLEVERB_FWD_DEFINED__
2317 typedef struct IEnumOLEVERB IEnumOLEVERB
;
2320 typedef IEnumOLEVERB
*LPENUMOLEVERB
;
2322 typedef struct tagOLEVERB
{
2324 LPOLESTR lpszVerbName
;
2327 } OLEVERB
, *LPOLEVERB
;
2329 typedef enum tagOLEVERBATTRIB
{
2330 OLEVERBATTRIB_NEVERDIRTIES
= 1,
2331 OLEVERBATTRIB_ONCONTAINERMENU
= 2
2334 /*****************************************************************************
2335 * IEnumOLEVERB interface
2337 #ifndef __IEnumOLEVERB_INTERFACE_DEFINED__
2338 #define __IEnumOLEVERB_INTERFACE_DEFINED__
2340 DEFINE_GUID(IID_IEnumOLEVERB
, 0x00000104, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2341 #if defined(__cplusplus) && !defined(CINTERFACE)
2342 struct IEnumOLEVERB
: public IUnknown
2344 virtual HRESULT STDMETHODCALLTYPE
Next(
2347 ULONG
* pceltFetched
) = 0;
2349 virtual HRESULT STDMETHODCALLTYPE
Skip(
2352 virtual HRESULT STDMETHODCALLTYPE
Reset(
2355 virtual HRESULT STDMETHODCALLTYPE
Clone(
2356 IEnumOLEVERB
** ppenum
) = 0;
2360 typedef struct IEnumOLEVERBVtbl IEnumOLEVERBVtbl
;
2361 struct IEnumOLEVERB
{
2362 const IEnumOLEVERBVtbl
* lpVtbl
;
2364 struct IEnumOLEVERBVtbl
{
2367 /*** IUnknown methods ***/
2368 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2373 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2374 IEnumOLEVERB
* This
);
2376 ULONG (STDMETHODCALLTYPE
*Release
)(
2377 IEnumOLEVERB
* This
);
2379 /*** IEnumOLEVERB methods ***/
2380 HRESULT (STDMETHODCALLTYPE
*Next
)(
2384 ULONG
* pceltFetched
);
2386 HRESULT (STDMETHODCALLTYPE
*Skip
)(
2390 HRESULT (STDMETHODCALLTYPE
*Reset
)(
2391 IEnumOLEVERB
* This
);
2393 HRESULT (STDMETHODCALLTYPE
*Clone
)(
2395 IEnumOLEVERB
** ppenum
);
2401 /*** IUnknown methods ***/
2402 #define IEnumOLEVERB_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2403 #define IEnumOLEVERB_AddRef(p) (p)->lpVtbl->AddRef(p)
2404 #define IEnumOLEVERB_Release(p) (p)->lpVtbl->Release(p)
2405 /*** IEnumOLEVERB methods ***/
2406 #define IEnumOLEVERB_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
2407 #define IEnumOLEVERB_Skip(p,a) (p)->lpVtbl->Skip(p,a)
2408 #define IEnumOLEVERB_Reset(p) (p)->lpVtbl->Reset(p)
2409 #define IEnumOLEVERB_Clone(p,a) (p)->lpVtbl->Clone(p,a)
2414 #define IEnumOLEVERB_METHODS \
2415 /*** IUnknown methods ***/ \
2416 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2417 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2418 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2419 /*** IEnumOLEVERB methods ***/ \
2420 STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, LPOLEVERB rgelt, ULONG* pceltFetched) PURE; \
2421 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \
2422 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
2423 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumOLEVERB** ppenum) PURE;
2425 HRESULT CALLBACK
IEnumOLEVERB_RemoteNext_Proxy(
2429 ULONG
* pceltFetched
);
2430 void __RPC_STUB
IEnumOLEVERB_RemoteNext_Stub(
2431 struct IRpcStubBuffer
* This
,
2432 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2433 PRPC_MESSAGE pRpcMessage
,
2434 DWORD
* pdwStubPhase
);
2435 HRESULT CALLBACK
IEnumOLEVERB_Next_Proxy(
2439 ULONG
* pceltFetched
);
2440 HRESULT __RPC_STUB
IEnumOLEVERB_Next_Stub(
2444 ULONG
* pceltFetched
);
2445 HRESULT CALLBACK
IEnumOLEVERB_Skip_Proxy(
2448 void __RPC_STUB
IEnumOLEVERB_Skip_Stub(
2449 struct IRpcStubBuffer
* This
,
2450 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2451 PRPC_MESSAGE pRpcMessage
,
2452 DWORD
* pdwStubPhase
);
2453 HRESULT CALLBACK
IEnumOLEVERB_Reset_Proxy(
2454 IEnumOLEVERB
* This
);
2455 void __RPC_STUB
IEnumOLEVERB_Reset_Stub(
2456 struct IRpcStubBuffer
* This
,
2457 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2458 PRPC_MESSAGE pRpcMessage
,
2459 DWORD
* pdwStubPhase
);
2460 HRESULT CALLBACK
IEnumOLEVERB_Clone_Proxy(
2462 IEnumOLEVERB
** ppenum
);
2463 void __RPC_STUB
IEnumOLEVERB_Clone_Stub(
2464 struct IRpcStubBuffer
* This
,
2465 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2466 PRPC_MESSAGE pRpcMessage
,
2467 DWORD
* pdwStubPhase
);
2469 #endif /* __IEnumOLEVERB_INTERFACE_DEFINED__ */
2471 #ifndef __IOleObject_FWD_DEFINED__
2472 #define __IOleObject_FWD_DEFINED__
2473 typedef struct IOleObject IOleObject
;
2476 typedef IOleObject
*LPOLEOBJECT
;
2478 typedef enum tagOLEGETMONIKER
{
2479 OLEGETMONIKER_ONLYIFTHERE
= 1,
2480 OLEGETMONIKER_FORCEASSIGN
= 2,
2481 OLEGETMONIKER_UNASSIGN
= 3,
2482 OLEGETMONIKER_TEMPFORUSER
= 4
2485 typedef enum tagOLEWHICHMK
{
2486 OLEWHICHMK_CONTAINER
= 1,
2487 OLEWHICHMK_OBJREL
= 2,
2488 OLEWHICHMK_OBJFULL
= 3
2491 typedef enum tagUSERCLASSTYPE
{
2492 USERCLASSTYPE_FULL
= 1,
2493 USERCLASSTYPE_SHORT
= 2,
2494 USERCLASSTYPE_APPNAME
= 3
2497 typedef enum tagOLEMISC
{
2498 OLEMISC_RECOMPOSEONRESIZE
= 0x1,
2499 OLEMISC_ONLYICONIC
= 0x2,
2500 OLEMISC_INSERTNOTREPLACE
= 0x4,
2501 OLEMISC_STATIC
= 0x8,
2502 OLEMISC_CANTLINKINSIDE
= 0x10,
2503 OLEMISC_CANLINKBYOLE1
= 0x20,
2504 OLEMISC_ISLINKOBJECT
= 0x40,
2505 OLEMISC_INSIDEOUT
= 0x80,
2506 OLEMISC_ACTIVATEWHENVISIBLE
= 0x100,
2507 OLEMISC_RENDERINGISDEVICEINDEPENDENT
= 0x200,
2508 OLEMISC_INVISIBLEATRUNTIME
= 0x400,
2509 OLEMISC_ALWAYSRUN
= 0x800,
2510 OLEMISC_ACTSLIKEBUTTON
= 0x1000,
2511 OLEMISC_ACTSLIKELABEL
= 0x2000,
2512 OLEMISC_NOUIACTIVATE
= 0x4000,
2513 OLEMISC_ALIGNABLE
= 0x8000,
2514 OLEMISC_SIMPLEFRAME
= 0x10000,
2515 OLEMISC_SETCLIENTSITEFIRST
= 0x20000,
2516 OLEMISC_IMEMODE
= 0x40000,
2517 OLEMISC_IGNOREACTIVATEWHENVISIBLE
= 0x80000,
2518 OLEMISC_WANTSTOMENUMERGE
= 0x100000,
2519 OLEMISC_SUPPORTSMULTILEVELUNDO
= 0x200000
2522 typedef enum tagOLECLOSE
{
2523 OLECLOSE_SAVEIFDIRTY
= 0,
2524 OLECLOSE_NOSAVE
= 1,
2525 OLECLOSE_PROMPTSAVE
= 2
2528 /*****************************************************************************
2529 * IOleObject interface
2531 #ifndef __IOleObject_INTERFACE_DEFINED__
2532 #define __IOleObject_INTERFACE_DEFINED__
2534 DEFINE_GUID(IID_IOleObject
, 0x00000112, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2535 #if defined(__cplusplus) && !defined(CINTERFACE)
2536 struct IOleObject
: public IUnknown
2538 virtual HRESULT STDMETHODCALLTYPE
SetClientSite(
2539 IOleClientSite
* pClientSite
) = 0;
2541 virtual HRESULT STDMETHODCALLTYPE
GetClientSite(
2542 IOleClientSite
** ppClientSite
) = 0;
2544 virtual HRESULT STDMETHODCALLTYPE
SetHostNames(
2545 LPCOLESTR szContainerApp
,
2546 LPCOLESTR szContainerObj
) = 0;
2548 virtual HRESULT STDMETHODCALLTYPE
Close(
2549 DWORD dwSaveOption
) = 0;
2551 virtual HRESULT STDMETHODCALLTYPE
SetMoniker(
2552 DWORD dwWhichMoniker
,
2555 virtual HRESULT STDMETHODCALLTYPE
GetMoniker(
2557 DWORD dwWhichMoniker
,
2558 IMoniker
** ppmk
) = 0;
2560 virtual HRESULT STDMETHODCALLTYPE
InitFromData(
2561 IDataObject
* pDataObject
,
2563 DWORD dwReserved
) = 0;
2565 virtual HRESULT STDMETHODCALLTYPE
GetClipboardData(
2567 IDataObject
** ppDataObject
) = 0;
2569 virtual HRESULT STDMETHODCALLTYPE
DoVerb(
2572 IOleClientSite
* pActiveSite
,
2575 LPCRECT lprcPosRect
) = 0;
2577 virtual HRESULT STDMETHODCALLTYPE
EnumVerbs(
2578 IEnumOLEVERB
** ppEnumOleVerb
) = 0;
2580 virtual HRESULT STDMETHODCALLTYPE
Update(
2583 virtual HRESULT STDMETHODCALLTYPE
IsUpToDate(
2586 virtual HRESULT STDMETHODCALLTYPE
GetUserClassID(
2589 virtual HRESULT STDMETHODCALLTYPE
GetUserType(
2591 LPOLESTR
* pszUserType
) = 0;
2593 virtual HRESULT STDMETHODCALLTYPE
SetExtent(
2597 virtual HRESULT STDMETHODCALLTYPE
GetExtent(
2601 virtual HRESULT STDMETHODCALLTYPE
Advise(
2602 IAdviseSink
* pAdvSink
,
2603 DWORD
* pdwConnection
) = 0;
2605 virtual HRESULT STDMETHODCALLTYPE
Unadvise(
2606 DWORD dwConnection
) = 0;
2608 virtual HRESULT STDMETHODCALLTYPE
EnumAdvise(
2609 IEnumSTATDATA
** ppenumAdvise
) = 0;
2611 virtual HRESULT STDMETHODCALLTYPE
GetMiscStatus(
2613 DWORD
* pdwStatus
) = 0;
2615 virtual HRESULT STDMETHODCALLTYPE
SetColorScheme(
2616 LOGPALETTE
* pLogpal
) = 0;
2620 typedef struct IOleObjectVtbl IOleObjectVtbl
;
2622 const IOleObjectVtbl
* lpVtbl
;
2624 struct IOleObjectVtbl
{
2627 /*** IUnknown methods ***/
2628 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
2633 ULONG (STDMETHODCALLTYPE
*AddRef
)(
2636 ULONG (STDMETHODCALLTYPE
*Release
)(
2639 /*** IOleObject methods ***/
2640 HRESULT (STDMETHODCALLTYPE
*SetClientSite
)(
2642 IOleClientSite
* pClientSite
);
2644 HRESULT (STDMETHODCALLTYPE
*GetClientSite
)(
2646 IOleClientSite
** ppClientSite
);
2648 HRESULT (STDMETHODCALLTYPE
*SetHostNames
)(
2650 LPCOLESTR szContainerApp
,
2651 LPCOLESTR szContainerObj
);
2653 HRESULT (STDMETHODCALLTYPE
*Close
)(
2655 DWORD dwSaveOption
);
2657 HRESULT (STDMETHODCALLTYPE
*SetMoniker
)(
2659 DWORD dwWhichMoniker
,
2662 HRESULT (STDMETHODCALLTYPE
*GetMoniker
)(
2665 DWORD dwWhichMoniker
,
2668 HRESULT (STDMETHODCALLTYPE
*InitFromData
)(
2670 IDataObject
* pDataObject
,
2674 HRESULT (STDMETHODCALLTYPE
*GetClipboardData
)(
2677 IDataObject
** ppDataObject
);
2679 HRESULT (STDMETHODCALLTYPE
*DoVerb
)(
2683 IOleClientSite
* pActiveSite
,
2686 LPCRECT lprcPosRect
);
2688 HRESULT (STDMETHODCALLTYPE
*EnumVerbs
)(
2690 IEnumOLEVERB
** ppEnumOleVerb
);
2692 HRESULT (STDMETHODCALLTYPE
*Update
)(
2695 HRESULT (STDMETHODCALLTYPE
*IsUpToDate
)(
2698 HRESULT (STDMETHODCALLTYPE
*GetUserClassID
)(
2702 HRESULT (STDMETHODCALLTYPE
*GetUserType
)(
2705 LPOLESTR
* pszUserType
);
2707 HRESULT (STDMETHODCALLTYPE
*SetExtent
)(
2712 HRESULT (STDMETHODCALLTYPE
*GetExtent
)(
2717 HRESULT (STDMETHODCALLTYPE
*Advise
)(
2719 IAdviseSink
* pAdvSink
,
2720 DWORD
* pdwConnection
);
2722 HRESULT (STDMETHODCALLTYPE
*Unadvise
)(
2724 DWORD dwConnection
);
2726 HRESULT (STDMETHODCALLTYPE
*EnumAdvise
)(
2728 IEnumSTATDATA
** ppenumAdvise
);
2730 HRESULT (STDMETHODCALLTYPE
*GetMiscStatus
)(
2735 HRESULT (STDMETHODCALLTYPE
*SetColorScheme
)(
2737 LOGPALETTE
* pLogpal
);
2743 /*** IUnknown methods ***/
2744 #define IOleObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2745 #define IOleObject_AddRef(p) (p)->lpVtbl->AddRef(p)
2746 #define IOleObject_Release(p) (p)->lpVtbl->Release(p)
2747 /*** IOleObject methods ***/
2748 #define IOleObject_SetClientSite(p,a) (p)->lpVtbl->SetClientSite(p,a)
2749 #define IOleObject_GetClientSite(p,a) (p)->lpVtbl->GetClientSite(p,a)
2750 #define IOleObject_SetHostNames(p,a,b) (p)->lpVtbl->SetHostNames(p,a,b)
2751 #define IOleObject_Close(p,a) (p)->lpVtbl->Close(p,a)
2752 #define IOleObject_SetMoniker(p,a,b) (p)->lpVtbl->SetMoniker(p,a,b)
2753 #define IOleObject_GetMoniker(p,a,b,c) (p)->lpVtbl->GetMoniker(p,a,b,c)
2754 #define IOleObject_InitFromData(p,a,b,c) (p)->lpVtbl->InitFromData(p,a,b,c)
2755 #define IOleObject_GetClipboardData(p,a,b) (p)->lpVtbl->GetClipboardData(p,a,b)
2756 #define IOleObject_DoVerb(p,a,b,c,d,e,f) (p)->lpVtbl->DoVerb(p,a,b,c,d,e,f)
2757 #define IOleObject_EnumVerbs(p,a) (p)->lpVtbl->EnumVerbs(p,a)
2758 #define IOleObject_Update(p) (p)->lpVtbl->Update(p)
2759 #define IOleObject_IsUpToDate(p) (p)->lpVtbl->IsUpToDate(p)
2760 #define IOleObject_GetUserClassID(p,a) (p)->lpVtbl->GetUserClassID(p,a)
2761 #define IOleObject_GetUserType(p,a,b) (p)->lpVtbl->GetUserType(p,a,b)
2762 #define IOleObject_SetExtent(p,a,b) (p)->lpVtbl->SetExtent(p,a,b)
2763 #define IOleObject_GetExtent(p,a,b) (p)->lpVtbl->GetExtent(p,a,b)
2764 #define IOleObject_Advise(p,a,b) (p)->lpVtbl->Advise(p,a,b)
2765 #define IOleObject_Unadvise(p,a) (p)->lpVtbl->Unadvise(p,a)
2766 #define IOleObject_EnumAdvise(p,a) (p)->lpVtbl->EnumAdvise(p,a)
2767 #define IOleObject_GetMiscStatus(p,a,b) (p)->lpVtbl->GetMiscStatus(p,a,b)
2768 #define IOleObject_SetColorScheme(p,a) (p)->lpVtbl->SetColorScheme(p,a)
2773 #define IOleObject_METHODS \
2774 /*** IUnknown methods ***/ \
2775 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2776 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2777 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2778 /*** IOleObject methods ***/ \
2779 STDMETHOD_(HRESULT,SetClientSite)(THIS_ IOleClientSite* pClientSite) PURE; \
2780 STDMETHOD_(HRESULT,GetClientSite)(THIS_ IOleClientSite** ppClientSite) PURE; \
2781 STDMETHOD_(HRESULT,SetHostNames)(THIS_ LPCOLESTR szContainerApp, LPCOLESTR szContainerObj) PURE; \
2782 STDMETHOD_(HRESULT,Close)(THIS_ DWORD dwSaveOption) PURE; \
2783 STDMETHOD_(HRESULT,SetMoniker)(THIS_ DWORD dwWhichMoniker, IMoniker* pmk) PURE; \
2784 STDMETHOD_(HRESULT,GetMoniker)(THIS_ DWORD dwAssign, DWORD dwWhichMoniker, IMoniker** ppmk) PURE; \
2785 STDMETHOD_(HRESULT,InitFromData)(THIS_ IDataObject* pDataObject, BOOL fCreation, DWORD dwReserved) PURE; \
2786 STDMETHOD_(HRESULT,GetClipboardData)(THIS_ DWORD dwReserved, IDataObject** ppDataObject) PURE; \
2787 STDMETHOD_(HRESULT,DoVerb)(THIS_ LONG iVerb, LPMSG lpmsg, IOleClientSite* pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect) PURE; \
2788 STDMETHOD_(HRESULT,EnumVerbs)(THIS_ IEnumOLEVERB** ppEnumOleVerb) PURE; \
2789 STDMETHOD_(HRESULT,Update)(THIS) PURE; \
2790 STDMETHOD_(HRESULT,IsUpToDate)(THIS) PURE; \
2791 STDMETHOD_(HRESULT,GetUserClassID)(THIS_ CLSID* pClsid) PURE; \
2792 STDMETHOD_(HRESULT,GetUserType)(THIS_ DWORD dwFormOfType, LPOLESTR* pszUserType) PURE; \
2793 STDMETHOD_(HRESULT,SetExtent)(THIS_ DWORD dwDrawAspect, SIZEL* psizel) PURE; \
2794 STDMETHOD_(HRESULT,GetExtent)(THIS_ DWORD dwDrawAspect, SIZEL* psizel) PURE; \
2795 STDMETHOD_(HRESULT,Advise)(THIS_ IAdviseSink* pAdvSink, DWORD* pdwConnection) PURE; \
2796 STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwConnection) PURE; \
2797 STDMETHOD_(HRESULT,EnumAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; \
2798 STDMETHOD_(HRESULT,GetMiscStatus)(THIS_ DWORD dwAspect, DWORD* pdwStatus) PURE; \
2799 STDMETHOD_(HRESULT,SetColorScheme)(THIS_ LOGPALETTE* pLogpal) PURE;
2801 HRESULT CALLBACK
IOleObject_SetClientSite_Proxy(
2803 IOleClientSite
* pClientSite
);
2804 void __RPC_STUB
IOleObject_SetClientSite_Stub(
2805 struct IRpcStubBuffer
* This
,
2806 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2807 PRPC_MESSAGE pRpcMessage
,
2808 DWORD
* pdwStubPhase
);
2809 HRESULT CALLBACK
IOleObject_GetClientSite_Proxy(
2811 IOleClientSite
** ppClientSite
);
2812 void __RPC_STUB
IOleObject_GetClientSite_Stub(
2813 struct IRpcStubBuffer
* This
,
2814 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2815 PRPC_MESSAGE pRpcMessage
,
2816 DWORD
* pdwStubPhase
);
2817 HRESULT CALLBACK
IOleObject_SetHostNames_Proxy(
2819 LPCOLESTR szContainerApp
,
2820 LPCOLESTR szContainerObj
);
2821 void __RPC_STUB
IOleObject_SetHostNames_Stub(
2822 struct IRpcStubBuffer
* This
,
2823 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2824 PRPC_MESSAGE pRpcMessage
,
2825 DWORD
* pdwStubPhase
);
2826 HRESULT CALLBACK
IOleObject_Close_Proxy(
2828 DWORD dwSaveOption
);
2829 void __RPC_STUB
IOleObject_Close_Stub(
2830 struct IRpcStubBuffer
* This
,
2831 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2832 PRPC_MESSAGE pRpcMessage
,
2833 DWORD
* pdwStubPhase
);
2834 HRESULT CALLBACK
IOleObject_SetMoniker_Proxy(
2836 DWORD dwWhichMoniker
,
2838 void __RPC_STUB
IOleObject_SetMoniker_Stub(
2839 struct IRpcStubBuffer
* This
,
2840 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2841 PRPC_MESSAGE pRpcMessage
,
2842 DWORD
* pdwStubPhase
);
2843 HRESULT CALLBACK
IOleObject_GetMoniker_Proxy(
2846 DWORD dwWhichMoniker
,
2848 void __RPC_STUB
IOleObject_GetMoniker_Stub(
2849 struct IRpcStubBuffer
* This
,
2850 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2851 PRPC_MESSAGE pRpcMessage
,
2852 DWORD
* pdwStubPhase
);
2853 HRESULT CALLBACK
IOleObject_InitFromData_Proxy(
2855 IDataObject
* pDataObject
,
2858 void __RPC_STUB
IOleObject_InitFromData_Stub(
2859 struct IRpcStubBuffer
* This
,
2860 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2861 PRPC_MESSAGE pRpcMessage
,
2862 DWORD
* pdwStubPhase
);
2863 HRESULT CALLBACK
IOleObject_GetClipboardData_Proxy(
2866 IDataObject
** ppDataObject
);
2867 void __RPC_STUB
IOleObject_GetClipboardData_Stub(
2868 struct IRpcStubBuffer
* This
,
2869 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2870 PRPC_MESSAGE pRpcMessage
,
2871 DWORD
* pdwStubPhase
);
2872 HRESULT CALLBACK
IOleObject_DoVerb_Proxy(
2876 IOleClientSite
* pActiveSite
,
2879 LPCRECT lprcPosRect
);
2880 void __RPC_STUB
IOleObject_DoVerb_Stub(
2881 struct IRpcStubBuffer
* This
,
2882 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2883 PRPC_MESSAGE pRpcMessage
,
2884 DWORD
* pdwStubPhase
);
2885 HRESULT CALLBACK
IOleObject_EnumVerbs_Proxy(
2887 IEnumOLEVERB
** ppEnumOleVerb
);
2888 void __RPC_STUB
IOleObject_EnumVerbs_Stub(
2889 struct IRpcStubBuffer
* This
,
2890 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2891 PRPC_MESSAGE pRpcMessage
,
2892 DWORD
* pdwStubPhase
);
2893 HRESULT CALLBACK
IOleObject_Update_Proxy(
2895 void __RPC_STUB
IOleObject_Update_Stub(
2896 struct IRpcStubBuffer
* This
,
2897 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2898 PRPC_MESSAGE pRpcMessage
,
2899 DWORD
* pdwStubPhase
);
2900 HRESULT CALLBACK
IOleObject_IsUpToDate_Proxy(
2902 void __RPC_STUB
IOleObject_IsUpToDate_Stub(
2903 struct IRpcStubBuffer
* This
,
2904 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2905 PRPC_MESSAGE pRpcMessage
,
2906 DWORD
* pdwStubPhase
);
2907 HRESULT CALLBACK
IOleObject_GetUserClassID_Proxy(
2910 void __RPC_STUB
IOleObject_GetUserClassID_Stub(
2911 struct IRpcStubBuffer
* This
,
2912 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2913 PRPC_MESSAGE pRpcMessage
,
2914 DWORD
* pdwStubPhase
);
2915 HRESULT CALLBACK
IOleObject_GetUserType_Proxy(
2918 LPOLESTR
* pszUserType
);
2919 void __RPC_STUB
IOleObject_GetUserType_Stub(
2920 struct IRpcStubBuffer
* This
,
2921 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2922 PRPC_MESSAGE pRpcMessage
,
2923 DWORD
* pdwStubPhase
);
2924 HRESULT CALLBACK
IOleObject_SetExtent_Proxy(
2928 void __RPC_STUB
IOleObject_SetExtent_Stub(
2929 struct IRpcStubBuffer
* This
,
2930 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2931 PRPC_MESSAGE pRpcMessage
,
2932 DWORD
* pdwStubPhase
);
2933 HRESULT CALLBACK
IOleObject_GetExtent_Proxy(
2937 void __RPC_STUB
IOleObject_GetExtent_Stub(
2938 struct IRpcStubBuffer
* This
,
2939 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2940 PRPC_MESSAGE pRpcMessage
,
2941 DWORD
* pdwStubPhase
);
2942 HRESULT CALLBACK
IOleObject_Advise_Proxy(
2944 IAdviseSink
* pAdvSink
,
2945 DWORD
* pdwConnection
);
2946 void __RPC_STUB
IOleObject_Advise_Stub(
2947 struct IRpcStubBuffer
* This
,
2948 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2949 PRPC_MESSAGE pRpcMessage
,
2950 DWORD
* pdwStubPhase
);
2951 HRESULT CALLBACK
IOleObject_Unadvise_Proxy(
2953 DWORD dwConnection
);
2954 void __RPC_STUB
IOleObject_Unadvise_Stub(
2955 struct IRpcStubBuffer
* This
,
2956 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2957 PRPC_MESSAGE pRpcMessage
,
2958 DWORD
* pdwStubPhase
);
2959 HRESULT CALLBACK
IOleObject_EnumAdvise_Proxy(
2961 IEnumSTATDATA
** ppenumAdvise
);
2962 void __RPC_STUB
IOleObject_EnumAdvise_Stub(
2963 struct IRpcStubBuffer
* This
,
2964 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2965 PRPC_MESSAGE pRpcMessage
,
2966 DWORD
* pdwStubPhase
);
2967 HRESULT CALLBACK
IOleObject_GetMiscStatus_Proxy(
2971 void __RPC_STUB
IOleObject_GetMiscStatus_Stub(
2972 struct IRpcStubBuffer
* This
,
2973 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2974 PRPC_MESSAGE pRpcMessage
,
2975 DWORD
* pdwStubPhase
);
2976 HRESULT CALLBACK
IOleObject_SetColorScheme_Proxy(
2978 LOGPALETTE
* pLogpal
);
2979 void __RPC_STUB
IOleObject_SetColorScheme_Stub(
2980 struct IRpcStubBuffer
* This
,
2981 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
2982 PRPC_MESSAGE pRpcMessage
,
2983 DWORD
* pdwStubPhase
);
2985 #endif /* __IOleObject_INTERFACE_DEFINED__ */
2987 #ifndef __IOleAdviseHolder_FWD_DEFINED__
2988 #define __IOleAdviseHolder_FWD_DEFINED__
2989 typedef struct IOleAdviseHolder IOleAdviseHolder
;
2992 typedef IOleAdviseHolder
*LPOLEADVISEHOLDER
;
2994 /*****************************************************************************
2995 * IOleAdviseHolder interface
2997 #ifndef __IOleAdviseHolder_INTERFACE_DEFINED__
2998 #define __IOleAdviseHolder_INTERFACE_DEFINED__
3000 DEFINE_GUID(IID_IOleAdviseHolder
, 0x00000111, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3001 #if defined(__cplusplus) && !defined(CINTERFACE)
3002 struct IOleAdviseHolder
: public IUnknown
3004 virtual HRESULT STDMETHODCALLTYPE
Advise(
3005 IAdviseSink
* pAdvise
,
3006 DWORD
* pdwConnection
) = 0;
3008 virtual HRESULT STDMETHODCALLTYPE
Unadvise(
3009 DWORD dwConnection
) = 0;
3011 virtual HRESULT STDMETHODCALLTYPE
EnumAdvise(
3012 IEnumSTATDATA
** ppenumAdvise
) = 0;
3014 virtual HRESULT STDMETHODCALLTYPE
SendOnRename(
3017 virtual HRESULT STDMETHODCALLTYPE
SendOnSave(
3020 virtual HRESULT STDMETHODCALLTYPE
SendOnClose(
3025 typedef struct IOleAdviseHolderVtbl IOleAdviseHolderVtbl
;
3026 struct IOleAdviseHolder
{
3027 const IOleAdviseHolderVtbl
* lpVtbl
;
3029 struct IOleAdviseHolderVtbl
{
3032 /*** IUnknown methods ***/
3033 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3034 IOleAdviseHolder
* This
,
3038 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3039 IOleAdviseHolder
* This
);
3041 ULONG (STDMETHODCALLTYPE
*Release
)(
3042 IOleAdviseHolder
* This
);
3044 /*** IOleAdviseHolder methods ***/
3045 HRESULT (STDMETHODCALLTYPE
*Advise
)(
3046 IOleAdviseHolder
* This
,
3047 IAdviseSink
* pAdvise
,
3048 DWORD
* pdwConnection
);
3050 HRESULT (STDMETHODCALLTYPE
*Unadvise
)(
3051 IOleAdviseHolder
* This
,
3052 DWORD dwConnection
);
3054 HRESULT (STDMETHODCALLTYPE
*EnumAdvise
)(
3055 IOleAdviseHolder
* This
,
3056 IEnumSTATDATA
** ppenumAdvise
);
3058 HRESULT (STDMETHODCALLTYPE
*SendOnRename
)(
3059 IOleAdviseHolder
* This
,
3062 HRESULT (STDMETHODCALLTYPE
*SendOnSave
)(
3063 IOleAdviseHolder
* This
);
3065 HRESULT (STDMETHODCALLTYPE
*SendOnClose
)(
3066 IOleAdviseHolder
* This
);
3072 /*** IUnknown methods ***/
3073 #define IOleAdviseHolder_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3074 #define IOleAdviseHolder_AddRef(p) (p)->lpVtbl->AddRef(p)
3075 #define IOleAdviseHolder_Release(p) (p)->lpVtbl->Release(p)
3076 /*** IOleAdviseHolder methods ***/
3077 #define IOleAdviseHolder_Advise(p,a,b) (p)->lpVtbl->Advise(p,a,b)
3078 #define IOleAdviseHolder_Unadvise(p,a) (p)->lpVtbl->Unadvise(p,a)
3079 #define IOleAdviseHolder_EnumAdvise(p,a) (p)->lpVtbl->EnumAdvise(p,a)
3080 #define IOleAdviseHolder_SendOnRename(p,a) (p)->lpVtbl->SendOnRename(p,a)
3081 #define IOleAdviseHolder_SendOnSave(p) (p)->lpVtbl->SendOnSave(p)
3082 #define IOleAdviseHolder_SendOnClose(p) (p)->lpVtbl->SendOnClose(p)
3087 #define IOleAdviseHolder_METHODS \
3088 /*** IUnknown methods ***/ \
3089 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3090 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3091 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3092 /*** IOleAdviseHolder methods ***/ \
3093 STDMETHOD_(HRESULT,Advise)(THIS_ IAdviseSink* pAdvise, DWORD* pdwConnection) PURE; \
3094 STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwConnection) PURE; \
3095 STDMETHOD_(HRESULT,EnumAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; \
3096 STDMETHOD_(HRESULT,SendOnRename)(THIS_ IMoniker* pmk) PURE; \
3097 STDMETHOD_(HRESULT,SendOnSave)(THIS) PURE; \
3098 STDMETHOD_(HRESULT,SendOnClose)(THIS) PURE;
3100 HRESULT CALLBACK
IOleAdviseHolder_Advise_Proxy(
3101 IOleAdviseHolder
* This
,
3102 IAdviseSink
* pAdvise
,
3103 DWORD
* pdwConnection
);
3104 void __RPC_STUB
IOleAdviseHolder_Advise_Stub(
3105 struct IRpcStubBuffer
* This
,
3106 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3107 PRPC_MESSAGE pRpcMessage
,
3108 DWORD
* pdwStubPhase
);
3109 HRESULT CALLBACK
IOleAdviseHolder_Unadvise_Proxy(
3110 IOleAdviseHolder
* This
,
3111 DWORD dwConnection
);
3112 void __RPC_STUB
IOleAdviseHolder_Unadvise_Stub(
3113 struct IRpcStubBuffer
* This
,
3114 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3115 PRPC_MESSAGE pRpcMessage
,
3116 DWORD
* pdwStubPhase
);
3117 HRESULT CALLBACK
IOleAdviseHolder_EnumAdvise_Proxy(
3118 IOleAdviseHolder
* This
,
3119 IEnumSTATDATA
** ppenumAdvise
);
3120 void __RPC_STUB
IOleAdviseHolder_EnumAdvise_Stub(
3121 struct IRpcStubBuffer
* This
,
3122 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3123 PRPC_MESSAGE pRpcMessage
,
3124 DWORD
* pdwStubPhase
);
3125 HRESULT CALLBACK
IOleAdviseHolder_SendOnRename_Proxy(
3126 IOleAdviseHolder
* This
,
3128 void __RPC_STUB
IOleAdviseHolder_SendOnRename_Stub(
3129 struct IRpcStubBuffer
* This
,
3130 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3131 PRPC_MESSAGE pRpcMessage
,
3132 DWORD
* pdwStubPhase
);
3133 HRESULT CALLBACK
IOleAdviseHolder_SendOnSave_Proxy(
3134 IOleAdviseHolder
* This
);
3135 void __RPC_STUB
IOleAdviseHolder_SendOnSave_Stub(
3136 struct IRpcStubBuffer
* This
,
3137 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3138 PRPC_MESSAGE pRpcMessage
,
3139 DWORD
* pdwStubPhase
);
3140 HRESULT CALLBACK
IOleAdviseHolder_SendOnClose_Proxy(
3141 IOleAdviseHolder
* This
);
3142 void __RPC_STUB
IOleAdviseHolder_SendOnClose_Stub(
3143 struct IRpcStubBuffer
* This
,
3144 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3145 PRPC_MESSAGE pRpcMessage
,
3146 DWORD
* pdwStubPhase
);
3148 #endif /* __IOleAdviseHolder_INTERFACE_DEFINED__ */
3150 #ifndef __IContinue_FWD_DEFINED__
3151 #define __IContinue_FWD_DEFINED__
3152 typedef struct IContinue IContinue
;
3155 /*****************************************************************************
3156 * IContinue interface
3158 #ifndef __IContinue_INTERFACE_DEFINED__
3159 #define __IContinue_INTERFACE_DEFINED__
3161 DEFINE_GUID(IID_IContinue
, 0x0000012a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3162 #if defined(__cplusplus) && !defined(CINTERFACE)
3163 struct IContinue
: public IUnknown
3165 virtual HRESULT STDMETHODCALLTYPE
FContinue(
3170 typedef struct IContinueVtbl IContinueVtbl
;
3172 const IContinueVtbl
* lpVtbl
;
3174 struct IContinueVtbl
{
3177 /*** IUnknown methods ***/
3178 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3183 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3186 ULONG (STDMETHODCALLTYPE
*Release
)(
3189 /*** IContinue methods ***/
3190 HRESULT (STDMETHODCALLTYPE
*FContinue
)(
3197 /*** IUnknown methods ***/
3198 #define IContinue_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3199 #define IContinue_AddRef(p) (p)->lpVtbl->AddRef(p)
3200 #define IContinue_Release(p) (p)->lpVtbl->Release(p)
3201 /*** IContinue methods ***/
3202 #define IContinue_FContinue(p) (p)->lpVtbl->FContinue(p)
3207 #define IContinue_METHODS \
3208 /*** IUnknown methods ***/ \
3209 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3210 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3211 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3212 /*** IContinue methods ***/ \
3213 STDMETHOD_(HRESULT,FContinue)(THIS) PURE;
3215 HRESULT CALLBACK
IContinue_FContinue_Proxy(
3217 void __RPC_STUB
IContinue_FContinue_Stub(
3218 struct IRpcStubBuffer
* This
,
3219 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3220 PRPC_MESSAGE pRpcMessage
,
3221 DWORD
* pdwStubPhase
);
3223 #endif /* __IContinue_INTERFACE_DEFINED__ */
3225 #ifndef __IViewObject_FWD_DEFINED__
3226 #define __IViewObject_FWD_DEFINED__
3227 typedef struct IViewObject IViewObject
;
3230 typedef IViewObject
*LPVIEWOBJECT
;
3232 /*****************************************************************************
3233 * IViewObject interface
3235 #ifndef __IViewObject_INTERFACE_DEFINED__
3236 #define __IViewObject_INTERFACE_DEFINED__
3238 DEFINE_GUID(IID_IViewObject
, 0x0000010d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3239 #if defined(__cplusplus) && !defined(CINTERFACE)
3240 struct IViewObject
: public IUnknown
3242 virtual HRESULT STDMETHODCALLTYPE
Draw(
3246 DVTARGETDEVICE
* ptd
,
3249 LPCRECTL lprcBounds
,
3250 LPCRECTL lprcWBounds
,
3251 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3252 ULONG_PTR dwContinue
) = 0;
3254 virtual HRESULT STDMETHODCALLTYPE
GetColorSet(
3258 DVTARGETDEVICE
* ptd
,
3260 LOGPALETTE
** ppColorSet
) = 0;
3262 virtual HRESULT STDMETHODCALLTYPE
Freeze(
3266 DWORD
* pdwFreeze
) = 0;
3268 virtual HRESULT STDMETHODCALLTYPE
Unfreeze(
3269 DWORD dwFreeze
) = 0;
3271 virtual HRESULT STDMETHODCALLTYPE
SetAdvise(
3274 IAdviseSink
* pAdvSink
) = 0;
3276 virtual HRESULT STDMETHODCALLTYPE
GetAdvise(
3279 IAdviseSink
** ppAdvSink
) = 0;
3283 typedef struct IViewObjectVtbl IViewObjectVtbl
;
3284 struct IViewObject
{
3285 const IViewObjectVtbl
* lpVtbl
;
3287 struct IViewObjectVtbl
{
3290 /*** IUnknown methods ***/
3291 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3296 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3299 ULONG (STDMETHODCALLTYPE
*Release
)(
3302 /*** IViewObject methods ***/
3303 HRESULT (STDMETHODCALLTYPE
*Draw
)(
3308 DVTARGETDEVICE
* ptd
,
3311 LPCRECTL lprcBounds
,
3312 LPCRECTL lprcWBounds
,
3313 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3314 ULONG_PTR dwContinue
);
3316 HRESULT (STDMETHODCALLTYPE
*GetColorSet
)(
3321 DVTARGETDEVICE
* ptd
,
3323 LOGPALETTE
** ppColorSet
);
3325 HRESULT (STDMETHODCALLTYPE
*Freeze
)(
3332 HRESULT (STDMETHODCALLTYPE
*Unfreeze
)(
3336 HRESULT (STDMETHODCALLTYPE
*SetAdvise
)(
3340 IAdviseSink
* pAdvSink
);
3342 HRESULT (STDMETHODCALLTYPE
*GetAdvise
)(
3346 IAdviseSink
** ppAdvSink
);
3352 /*** IUnknown methods ***/
3353 #define IViewObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3354 #define IViewObject_AddRef(p) (p)->lpVtbl->AddRef(p)
3355 #define IViewObject_Release(p) (p)->lpVtbl->Release(p)
3356 /*** IViewObject methods ***/
3357 #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)
3358 #define IViewObject_GetColorSet(p,a,b,c,d,e,f) (p)->lpVtbl->GetColorSet(p,a,b,c,d,e,f)
3359 #define IViewObject_Freeze(p,a,b,c,d) (p)->lpVtbl->Freeze(p,a,b,c,d)
3360 #define IViewObject_Unfreeze(p,a) (p)->lpVtbl->Unfreeze(p,a)
3361 #define IViewObject_SetAdvise(p,a,b,c) (p)->lpVtbl->SetAdvise(p,a,b,c)
3362 #define IViewObject_GetAdvise(p,a,b,c) (p)->lpVtbl->GetAdvise(p,a,b,c)
3367 #define IViewObject_METHODS \
3368 /*** IUnknown methods ***/ \
3369 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3370 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3371 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3372 /*** IViewObject methods ***/ \
3373 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; \
3374 STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
3375 STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
3376 STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
3377 STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
3378 STDMETHOD_(HRESULT,GetAdvise)(THIS_ DWORD* pAspects, DWORD* pAdvf, IAdviseSink** ppAdvSink) PURE;
3380 HRESULT CALLBACK
IViewObject_RemoteDraw_Proxy(
3385 DVTARGETDEVICE
* ptd
,
3386 ULONG_PTR hdcTargetDev
,
3388 LPCRECTL lprcBounds
,
3389 LPCRECTL lprcWBounds
,
3390 IContinue
* pContinue
);
3391 void __RPC_STUB
IViewObject_RemoteDraw_Stub(
3392 struct IRpcStubBuffer
* This
,
3393 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3394 PRPC_MESSAGE pRpcMessage
,
3395 DWORD
* pdwStubPhase
);
3396 HRESULT CALLBACK
IViewObject_Draw_Proxy(
3401 DVTARGETDEVICE
* ptd
,
3404 LPCRECTL lprcBounds
,
3405 LPCRECTL lprcWBounds
,
3406 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3407 ULONG_PTR dwContinue
);
3408 HRESULT __RPC_STUB
IViewObject_Draw_Stub(
3413 DVTARGETDEVICE
* ptd
,
3414 ULONG_PTR hdcTargetDev
,
3416 LPCRECTL lprcBounds
,
3417 LPCRECTL lprcWBounds
,
3418 IContinue
* pContinue
);
3419 HRESULT CALLBACK
IViewObject_RemoteGetColorSet_Proxy(
3424 DVTARGETDEVICE
* ptd
,
3425 ULONG_PTR hicTargetDev
,
3426 LOGPALETTE
** ppColorSet
);
3427 void __RPC_STUB
IViewObject_RemoteGetColorSet_Stub(
3428 struct IRpcStubBuffer
* This
,
3429 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3430 PRPC_MESSAGE pRpcMessage
,
3431 DWORD
* pdwStubPhase
);
3432 HRESULT CALLBACK
IViewObject_GetColorSet_Proxy(
3437 DVTARGETDEVICE
* ptd
,
3439 LOGPALETTE
** ppColorSet
);
3440 HRESULT __RPC_STUB
IViewObject_GetColorSet_Stub(
3445 DVTARGETDEVICE
* ptd
,
3446 ULONG_PTR hicTargetDev
,
3447 LOGPALETTE
** ppColorSet
);
3448 HRESULT CALLBACK
IViewObject_RemoteFreeze_Proxy(
3454 void __RPC_STUB
IViewObject_RemoteFreeze_Stub(
3455 struct IRpcStubBuffer
* This
,
3456 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3457 PRPC_MESSAGE pRpcMessage
,
3458 DWORD
* pdwStubPhase
);
3459 HRESULT CALLBACK
IViewObject_Freeze_Proxy(
3465 HRESULT __RPC_STUB
IViewObject_Freeze_Stub(
3471 HRESULT CALLBACK
IViewObject_Unfreeze_Proxy(
3474 void __RPC_STUB
IViewObject_Unfreeze_Stub(
3475 struct IRpcStubBuffer
* This
,
3476 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3477 PRPC_MESSAGE pRpcMessage
,
3478 DWORD
* pdwStubPhase
);
3479 HRESULT CALLBACK
IViewObject_SetAdvise_Proxy(
3483 IAdviseSink
* pAdvSink
);
3484 void __RPC_STUB
IViewObject_SetAdvise_Stub(
3485 struct IRpcStubBuffer
* This
,
3486 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3487 PRPC_MESSAGE pRpcMessage
,
3488 DWORD
* pdwStubPhase
);
3489 HRESULT CALLBACK
IViewObject_RemoteGetAdvise_Proxy(
3493 IAdviseSink
** ppAdvSink
);
3494 void __RPC_STUB
IViewObject_RemoteGetAdvise_Stub(
3495 struct IRpcStubBuffer
* This
,
3496 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3497 PRPC_MESSAGE pRpcMessage
,
3498 DWORD
* pdwStubPhase
);
3499 HRESULT CALLBACK
IViewObject_GetAdvise_Proxy(
3503 IAdviseSink
** ppAdvSink
);
3504 HRESULT __RPC_STUB
IViewObject_GetAdvise_Stub(
3508 IAdviseSink
** ppAdvSink
);
3510 #endif /* __IViewObject_INTERFACE_DEFINED__ */
3512 #ifndef __IViewObject2_FWD_DEFINED__
3513 #define __IViewObject2_FWD_DEFINED__
3514 typedef struct IViewObject2 IViewObject2
;
3517 typedef IViewObject2
*LPVIEWOBJECT2
;
3519 /*****************************************************************************
3520 * IViewObject2 interface
3522 #ifndef __IViewObject2_INTERFACE_DEFINED__
3523 #define __IViewObject2_INTERFACE_DEFINED__
3525 DEFINE_GUID(IID_IViewObject2
, 0x00000127, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3526 #if defined(__cplusplus) && !defined(CINTERFACE)
3527 struct IViewObject2
: public IViewObject
3529 virtual HRESULT STDMETHODCALLTYPE
GetExtent(
3532 DVTARGETDEVICE
* ptd
,
3533 LPSIZEL lpsizel
) = 0;
3537 typedef struct IViewObject2Vtbl IViewObject2Vtbl
;
3538 struct IViewObject2
{
3539 const IViewObject2Vtbl
* lpVtbl
;
3541 struct IViewObject2Vtbl
{
3544 /*** IUnknown methods ***/
3545 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3550 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3551 IViewObject2
* This
);
3553 ULONG (STDMETHODCALLTYPE
*Release
)(
3554 IViewObject2
* This
);
3556 /*** IViewObject methods ***/
3557 HRESULT (STDMETHODCALLTYPE
*Draw
)(
3562 DVTARGETDEVICE
* ptd
,
3565 LPCRECTL lprcBounds
,
3566 LPCRECTL lprcWBounds
,
3567 BOOL (STDMETHODCALLTYPE
*pfnContinue
)(ULONG_PTR dwContinue
),
3568 ULONG_PTR dwContinue
);
3570 HRESULT (STDMETHODCALLTYPE
*GetColorSet
)(
3575 DVTARGETDEVICE
* ptd
,
3577 LOGPALETTE
** ppColorSet
);
3579 HRESULT (STDMETHODCALLTYPE
*Freeze
)(
3586 HRESULT (STDMETHODCALLTYPE
*Unfreeze
)(
3590 HRESULT (STDMETHODCALLTYPE
*SetAdvise
)(
3594 IAdviseSink
* pAdvSink
);
3596 HRESULT (STDMETHODCALLTYPE
*GetAdvise
)(
3600 IAdviseSink
** ppAdvSink
);
3602 /*** IViewObject2 methods ***/
3603 HRESULT (STDMETHODCALLTYPE
*GetExtent
)(
3607 DVTARGETDEVICE
* ptd
,
3614 /*** IUnknown methods ***/
3615 #define IViewObject2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3616 #define IViewObject2_AddRef(p) (p)->lpVtbl->AddRef(p)
3617 #define IViewObject2_Release(p) (p)->lpVtbl->Release(p)
3618 /*** IViewObject methods ***/
3619 #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)
3620 #define IViewObject2_GetColorSet(p,a,b,c,d,e,f) (p)->lpVtbl->GetColorSet(p,a,b,c,d,e,f)
3621 #define IViewObject2_Freeze(p,a,b,c,d) (p)->lpVtbl->Freeze(p,a,b,c,d)
3622 #define IViewObject2_Unfreeze(p,a) (p)->lpVtbl->Unfreeze(p,a)
3623 #define IViewObject2_SetAdvise(p,a,b,c) (p)->lpVtbl->SetAdvise(p,a,b,c)
3624 #define IViewObject2_GetAdvise(p,a,b,c) (p)->lpVtbl->GetAdvise(p,a,b,c)
3625 /*** IViewObject2 methods ***/
3626 #define IViewObject2_GetExtent(p,a,b,c,d) (p)->lpVtbl->GetExtent(p,a,b,c,d)
3631 #define IViewObject2_METHODS \
3632 /*** IUnknown methods ***/ \
3633 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3634 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3635 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3636 /*** IViewObject methods ***/ \
3637 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; \
3638 STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
3639 STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
3640 STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
3641 STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
3642 STDMETHOD_(HRESULT,GetAdvise)(THIS_ DWORD* pAspects, DWORD* pAdvf, IAdviseSink** ppAdvSink) PURE; \
3643 /*** IViewObject2 methods ***/ \
3644 STDMETHOD_(HRESULT,GetExtent)(THIS_ DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE* ptd, LPSIZEL lpsizel) PURE;
3646 HRESULT CALLBACK
IViewObject2_GetExtent_Proxy(
3650 DVTARGETDEVICE
* ptd
,
3652 void __RPC_STUB
IViewObject2_GetExtent_Stub(
3653 struct IRpcStubBuffer
* This
,
3654 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3655 PRPC_MESSAGE pRpcMessage
,
3656 DWORD
* pdwStubPhase
);
3658 #endif /* __IViewObject2_INTERFACE_DEFINED__ */
3660 #ifndef __IDropSource_FWD_DEFINED__
3661 #define __IDropSource_FWD_DEFINED__
3662 typedef struct IDropSource IDropSource
;
3665 typedef IDropSource
*LPDROPSOURCE
;
3667 /*****************************************************************************
3668 * IDropSource interface
3670 #ifndef __IDropSource_INTERFACE_DEFINED__
3671 #define __IDropSource_INTERFACE_DEFINED__
3673 DEFINE_GUID(IID_IDropSource
, 0x00000121, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3674 #if defined(__cplusplus) && !defined(CINTERFACE)
3675 struct IDropSource
: public IUnknown
3677 virtual HRESULT STDMETHODCALLTYPE
QueryContinueDrag(
3678 BOOL fEscapePressed
,
3679 DWORD grfKeyState
) = 0;
3681 virtual HRESULT STDMETHODCALLTYPE
GiveFeedback(
3682 DWORD dwEffect
) = 0;
3686 typedef struct IDropSourceVtbl IDropSourceVtbl
;
3687 struct IDropSource
{
3688 const IDropSourceVtbl
* lpVtbl
;
3690 struct IDropSourceVtbl
{
3693 /*** IUnknown methods ***/
3694 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3699 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3702 ULONG (STDMETHODCALLTYPE
*Release
)(
3705 /*** IDropSource methods ***/
3706 HRESULT (STDMETHODCALLTYPE
*QueryContinueDrag
)(
3708 BOOL fEscapePressed
,
3711 HRESULT (STDMETHODCALLTYPE
*GiveFeedback
)(
3719 /*** IUnknown methods ***/
3720 #define IDropSource_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3721 #define IDropSource_AddRef(p) (p)->lpVtbl->AddRef(p)
3722 #define IDropSource_Release(p) (p)->lpVtbl->Release(p)
3723 /*** IDropSource methods ***/
3724 #define IDropSource_QueryContinueDrag(p,a,b) (p)->lpVtbl->QueryContinueDrag(p,a,b)
3725 #define IDropSource_GiveFeedback(p,a) (p)->lpVtbl->GiveFeedback(p,a)
3730 #define IDropSource_METHODS \
3731 /*** IUnknown methods ***/ \
3732 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3733 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3734 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3735 /*** IDropSource methods ***/ \
3736 STDMETHOD_(HRESULT,QueryContinueDrag)(THIS_ BOOL fEscapePressed, DWORD grfKeyState) PURE; \
3737 STDMETHOD_(HRESULT,GiveFeedback)(THIS_ DWORD dwEffect) PURE;
3739 HRESULT CALLBACK
IDropSource_QueryContinueDrag_Proxy(
3741 BOOL fEscapePressed
,
3743 void __RPC_STUB
IDropSource_QueryContinueDrag_Stub(
3744 struct IRpcStubBuffer
* This
,
3745 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3746 PRPC_MESSAGE pRpcMessage
,
3747 DWORD
* pdwStubPhase
);
3748 HRESULT CALLBACK
IDropSource_GiveFeedback_Proxy(
3751 void __RPC_STUB
IDropSource_GiveFeedback_Stub(
3752 struct IRpcStubBuffer
* This
,
3753 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3754 PRPC_MESSAGE pRpcMessage
,
3755 DWORD
* pdwStubPhase
);
3757 #endif /* __IDropSource_INTERFACE_DEFINED__ */
3759 #ifndef __IDropTarget_FWD_DEFINED__
3760 #define __IDropTarget_FWD_DEFINED__
3761 typedef struct IDropTarget IDropTarget
;
3764 typedef IDropTarget
*LPDROPTARGET
;
3766 #define MK_ALT (0x20)
3768 #define DROPEFFECT_NONE (0)
3770 #define DROPEFFECT_COPY (1)
3772 #define DROPEFFECT_MOVE (2)
3774 #define DROPEFFECT_LINK (4)
3776 #define DROPEFFECT_SCROLL (0x80000000)
3778 #define DD_DEFSCROLLINSET (11)
3780 #define DD_DEFSCROLLDELAY (50)
3782 #define DD_DEFSCROLLINTERVAL (50)
3784 #define DD_DEFDRAGDELAY (200)
3786 #define DD_DEFDRAGMINDIST (2)
3788 /*****************************************************************************
3789 * IDropTarget interface
3791 #ifndef __IDropTarget_INTERFACE_DEFINED__
3792 #define __IDropTarget_INTERFACE_DEFINED__
3794 DEFINE_GUID(IID_IDropTarget
, 0x00000122, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3795 #if defined(__cplusplus) && !defined(CINTERFACE)
3796 struct IDropTarget
: public IUnknown
3798 virtual HRESULT STDMETHODCALLTYPE
DragEnter(
3799 IDataObject
* pDataObj
,
3802 DWORD
* pdwEffect
) = 0;
3804 virtual HRESULT STDMETHODCALLTYPE
DragOver(
3807 DWORD
* pdwEffect
) = 0;
3809 virtual HRESULT STDMETHODCALLTYPE
DragLeave(
3812 virtual HRESULT STDMETHODCALLTYPE
Drop(
3813 IDataObject
* pDataObj
,
3816 DWORD
* pdwEffect
) = 0;
3820 typedef struct IDropTargetVtbl IDropTargetVtbl
;
3821 struct IDropTarget
{
3822 const IDropTargetVtbl
* lpVtbl
;
3824 struct IDropTargetVtbl
{
3827 /*** IUnknown methods ***/
3828 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
3833 ULONG (STDMETHODCALLTYPE
*AddRef
)(
3836 ULONG (STDMETHODCALLTYPE
*Release
)(
3839 /*** IDropTarget methods ***/
3840 HRESULT (STDMETHODCALLTYPE
*DragEnter
)(
3842 IDataObject
* pDataObj
,
3847 HRESULT (STDMETHODCALLTYPE
*DragOver
)(
3853 HRESULT (STDMETHODCALLTYPE
*DragLeave
)(
3856 HRESULT (STDMETHODCALLTYPE
*Drop
)(
3858 IDataObject
* pDataObj
,
3867 /*** IUnknown methods ***/
3868 #define IDropTarget_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3869 #define IDropTarget_AddRef(p) (p)->lpVtbl->AddRef(p)
3870 #define IDropTarget_Release(p) (p)->lpVtbl->Release(p)
3871 /*** IDropTarget methods ***/
3872 #define IDropTarget_DragEnter(p,a,b,c,d) (p)->lpVtbl->DragEnter(p,a,b,c,d)
3873 #define IDropTarget_DragOver(p,a,b,c) (p)->lpVtbl->DragOver(p,a,b,c)
3874 #define IDropTarget_DragLeave(p) (p)->lpVtbl->DragLeave(p)
3875 #define IDropTarget_Drop(p,a,b,c,d) (p)->lpVtbl->Drop(p,a,b,c,d)
3880 #define IDropTarget_METHODS \
3881 /*** IUnknown methods ***/ \
3882 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3883 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3884 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3885 /*** IDropTarget methods ***/ \
3886 STDMETHOD_(HRESULT,DragEnter)(THIS_ IDataObject* pDataObj, DWORD grfKeyState, POINTL pt, DWORD* pdwEffect) PURE; \
3887 STDMETHOD_(HRESULT,DragOver)(THIS_ DWORD grfKeyState, POINTL pt, DWORD* pdwEffect) PURE; \
3888 STDMETHOD_(HRESULT,DragLeave)(THIS) PURE; \
3889 STDMETHOD_(HRESULT,Drop)(THIS_ IDataObject* pDataObj, DWORD grfKeyState, POINTL pt, DWORD* pdwEffect) PURE;
3891 HRESULT CALLBACK
IDropTarget_DragEnter_Proxy(
3893 IDataObject
* pDataObj
,
3897 void __RPC_STUB
IDropTarget_DragEnter_Stub(
3898 struct IRpcStubBuffer
* This
,
3899 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3900 PRPC_MESSAGE pRpcMessage
,
3901 DWORD
* pdwStubPhase
);
3902 HRESULT CALLBACK
IDropTarget_DragOver_Proxy(
3907 void __RPC_STUB
IDropTarget_DragOver_Stub(
3908 struct IRpcStubBuffer
* This
,
3909 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3910 PRPC_MESSAGE pRpcMessage
,
3911 DWORD
* pdwStubPhase
);
3912 HRESULT CALLBACK
IDropTarget_DragLeave_Proxy(
3914 void __RPC_STUB
IDropTarget_DragLeave_Stub(
3915 struct IRpcStubBuffer
* This
,
3916 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3917 PRPC_MESSAGE pRpcMessage
,
3918 DWORD
* pdwStubPhase
);
3919 HRESULT CALLBACK
IDropTarget_Drop_Proxy(
3921 IDataObject
* pDataObj
,
3925 void __RPC_STUB
IDropTarget_Drop_Stub(
3926 struct IRpcStubBuffer
* This
,
3927 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
3928 PRPC_MESSAGE pRpcMessage
,
3929 DWORD
* pdwStubPhase
);
3931 #endif /* __IDropTarget_INTERFACE_DEFINED__ */
3936 #endif /* __WIDL_OLEIDL_H */