Fixed header dependencies to be fully compatible with the Windows
[wine/multimedia.git] / include / ocidl.h
blob87659307619c8f1e5ee5e8351a320f402f5bea83
1 /*** Autogenerated by WIDL 0.1 from ocidl.idl - Do not edit ***/
2 #include <rpc.h>
3 #include <rpcndr.h>
5 #ifndef __WIDL_OCIDL_H
6 #define __WIDL_OCIDL_H
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 #include <oleidl.h>
11 #include <oaidl.h>
12 #include <servprov.h>
13 #include <urlmon.h>
14 typedef enum tagREADYSTATE {
15 READYSTATE_UNINITIALIZED = 0,
16 READYSTATE_LOADING = 1,
17 READYSTATE_LOADED = 2,
18 READYSTATE_INTERACTIVE = 3,
19 READYSTATE_COMPLETE = 4
20 } READYSTATE;
22 typedef struct tagVARIANT_BLOB {
23 DWORD clSize;
24 DWORD rpcReserved;
25 ULONGLONG ahData[1];
26 } wireVARIANT_BLOB;
28 typedef struct tagUserVARIANT {
29 wireVARIANT_BLOB pVarBlob;
30 } UserVARIANT;
32 #ifndef __IFont_FWD_DEFINED__
33 #define __IFont_FWD_DEFINED__
34 typedef struct IFont IFont;
35 #endif
37 typedef IFont *LPFONT;
39 typedef TEXTMETRICW TEXTMETRICOLE, *LPTEXTMETRICOLE;
41 /*****************************************************************************
42 * IFont interface
44 #ifndef __IFont_INTERFACE_DEFINED__
45 #define __IFont_INTERFACE_DEFINED__
47 DEFINE_GUID(IID_IFont, 0xbef6e002, 0xa874, 0x101a, 0x8b,0xba, 0x00,0xaa,0x00,0x30,0x0c,0xab);
48 #if defined(__cplusplus) && !defined(CINTERFACE)
49 struct IFont : public IUnknown
51 virtual HRESULT STDMETHODCALLTYPE get_Name(
52 BSTR* pname) = 0;
54 virtual HRESULT STDMETHODCALLTYPE put_Name(
55 BSTR name) = 0;
57 virtual HRESULT STDMETHODCALLTYPE get_Size(
58 CY* psize) = 0;
60 virtual HRESULT STDMETHODCALLTYPE put_Size(
61 CY size) = 0;
63 virtual HRESULT STDMETHODCALLTYPE get_Bold(
64 BOOL* pbold) = 0;
66 virtual HRESULT STDMETHODCALLTYPE put_Bold(
67 BOOL bold) = 0;
69 virtual HRESULT STDMETHODCALLTYPE get_Italic(
70 BOOL* pitalic) = 0;
72 virtual HRESULT STDMETHODCALLTYPE put_Italic(
73 BOOL italic) = 0;
75 virtual HRESULT STDMETHODCALLTYPE get_Underline(
76 BOOL* punderline) = 0;
78 virtual HRESULT STDMETHODCALLTYPE put_Underline(
79 BOOL underline) = 0;
81 virtual HRESULT STDMETHODCALLTYPE get_Strikethrough(
82 BOOL* pstrikethrough) = 0;
84 virtual HRESULT STDMETHODCALLTYPE put_Strikethrough(
85 BOOL strikethrough) = 0;
87 virtual HRESULT STDMETHODCALLTYPE get_Weight(
88 SHORT* pweight) = 0;
90 virtual HRESULT STDMETHODCALLTYPE put_Weight(
91 SHORT weight) = 0;
93 virtual HRESULT STDMETHODCALLTYPE get_Charset(
94 SHORT* pcharset) = 0;
96 virtual HRESULT STDMETHODCALLTYPE put_Charset(
97 SHORT charset) = 0;
99 virtual HRESULT STDMETHODCALLTYPE get_hFont(
100 HFONT* phfont) = 0;
102 virtual HRESULT STDMETHODCALLTYPE Clone(
103 IFont** ppfont) = 0;
105 virtual HRESULT STDMETHODCALLTYPE IsEqual(
106 IFont* pFontOther) = 0;
108 virtual HRESULT STDMETHODCALLTYPE SetRatio(
109 LONG cyLogical,
110 LONG cyHimetric) = 0;
112 virtual HRESULT STDMETHODCALLTYPE QueryTextMetrics(
113 TEXTMETRICOLE* ptm) = 0;
115 virtual HRESULT STDMETHODCALLTYPE AddRefHfont(
116 HFONT hfont) = 0;
118 virtual HRESULT STDMETHODCALLTYPE ReleaseHfont(
119 HFONT hfont) = 0;
121 virtual HRESULT STDMETHODCALLTYPE SetHdc(
122 HDC hdc) = 0;
125 #else
126 typedef struct IFontVtbl IFontVtbl;
127 struct IFont {
128 const IFontVtbl* lpVtbl;
130 struct IFontVtbl {
131 ICOM_MSVTABLE_COMPAT_FIELDS
133 /*** IUnknown methods ***/
134 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
135 IFont* This,
136 REFIID riid,
137 void** ppvObject);
139 ULONG (STDMETHODCALLTYPE *AddRef)(
140 IFont* This);
142 ULONG (STDMETHODCALLTYPE *Release)(
143 IFont* This);
145 /*** IFont methods ***/
146 HRESULT (STDMETHODCALLTYPE *get_Name)(
147 IFont* This,
148 BSTR* pname);
150 HRESULT (STDMETHODCALLTYPE *put_Name)(
151 IFont* This,
152 BSTR name);
154 HRESULT (STDMETHODCALLTYPE *get_Size)(
155 IFont* This,
156 CY* psize);
158 HRESULT (STDMETHODCALLTYPE *put_Size)(
159 IFont* This,
160 CY size);
162 HRESULT (STDMETHODCALLTYPE *get_Bold)(
163 IFont* This,
164 BOOL* pbold);
166 HRESULT (STDMETHODCALLTYPE *put_Bold)(
167 IFont* This,
168 BOOL bold);
170 HRESULT (STDMETHODCALLTYPE *get_Italic)(
171 IFont* This,
172 BOOL* pitalic);
174 HRESULT (STDMETHODCALLTYPE *put_Italic)(
175 IFont* This,
176 BOOL italic);
178 HRESULT (STDMETHODCALLTYPE *get_Underline)(
179 IFont* This,
180 BOOL* punderline);
182 HRESULT (STDMETHODCALLTYPE *put_Underline)(
183 IFont* This,
184 BOOL underline);
186 HRESULT (STDMETHODCALLTYPE *get_Strikethrough)(
187 IFont* This,
188 BOOL* pstrikethrough);
190 HRESULT (STDMETHODCALLTYPE *put_Strikethrough)(
191 IFont* This,
192 BOOL strikethrough);
194 HRESULT (STDMETHODCALLTYPE *get_Weight)(
195 IFont* This,
196 SHORT* pweight);
198 HRESULT (STDMETHODCALLTYPE *put_Weight)(
199 IFont* This,
200 SHORT weight);
202 HRESULT (STDMETHODCALLTYPE *get_Charset)(
203 IFont* This,
204 SHORT* pcharset);
206 HRESULT (STDMETHODCALLTYPE *put_Charset)(
207 IFont* This,
208 SHORT charset);
210 HRESULT (STDMETHODCALLTYPE *get_hFont)(
211 IFont* This,
212 HFONT* phfont);
214 HRESULT (STDMETHODCALLTYPE *Clone)(
215 IFont* This,
216 IFont** ppfont);
218 HRESULT (STDMETHODCALLTYPE *IsEqual)(
219 IFont* This,
220 IFont* pFontOther);
222 HRESULT (STDMETHODCALLTYPE *SetRatio)(
223 IFont* This,
224 LONG cyLogical,
225 LONG cyHimetric);
227 HRESULT (STDMETHODCALLTYPE *QueryTextMetrics)(
228 IFont* This,
229 TEXTMETRICOLE* ptm);
231 HRESULT (STDMETHODCALLTYPE *AddRefHfont)(
232 IFont* This,
233 HFONT hfont);
235 HRESULT (STDMETHODCALLTYPE *ReleaseHfont)(
236 IFont* This,
237 HFONT hfont);
239 HRESULT (STDMETHODCALLTYPE *SetHdc)(
240 IFont* This,
241 HDC hdc);
245 /*** IUnknown methods ***/
246 #define IFont_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
247 #define IFont_AddRef(p) (p)->lpVtbl->AddRef(p)
248 #define IFont_Release(p) (p)->lpVtbl->Release(p)
249 /*** IFont methods ***/
250 #define IFont_get_Name(p,a) (p)->lpVtbl->get_Name(p,a)
251 #define IFont_put_Name(p,a) (p)->lpVtbl->put_Name(p,a)
252 #define IFont_get_Size(p,a) (p)->lpVtbl->get_Size(p,a)
253 #define IFont_put_Size(p,a) (p)->lpVtbl->put_Size(p,a)
254 #define IFont_get_Bold(p,a) (p)->lpVtbl->get_Bold(p,a)
255 #define IFont_put_Bold(p,a) (p)->lpVtbl->put_Bold(p,a)
256 #define IFont_get_Italic(p,a) (p)->lpVtbl->get_Italic(p,a)
257 #define IFont_put_Italic(p,a) (p)->lpVtbl->put_Italic(p,a)
258 #define IFont_get_Underline(p,a) (p)->lpVtbl->get_Underline(p,a)
259 #define IFont_put_Underline(p,a) (p)->lpVtbl->put_Underline(p,a)
260 #define IFont_get_Strikethrough(p,a) (p)->lpVtbl->get_Strikethrough(p,a)
261 #define IFont_put_Strikethrough(p,a) (p)->lpVtbl->put_Strikethrough(p,a)
262 #define IFont_get_Weight(p,a) (p)->lpVtbl->get_Weight(p,a)
263 #define IFont_put_Weight(p,a) (p)->lpVtbl->put_Weight(p,a)
264 #define IFont_get_Charset(p,a) (p)->lpVtbl->get_Charset(p,a)
265 #define IFont_put_Charset(p,a) (p)->lpVtbl->put_Charset(p,a)
266 #define IFont_get_hFont(p,a) (p)->lpVtbl->get_hFont(p,a)
267 #define IFont_Clone(p,a) (p)->lpVtbl->Clone(p,a)
268 #define IFont_IsEqual(p,a) (p)->lpVtbl->IsEqual(p,a)
269 #define IFont_SetRatio(p,a,b) (p)->lpVtbl->SetRatio(p,a,b)
270 #define IFont_QueryTextMetrics(p,a) (p)->lpVtbl->QueryTextMetrics(p,a)
271 #define IFont_AddRefHfont(p,a) (p)->lpVtbl->AddRefHfont(p,a)
272 #define IFont_ReleaseHfont(p,a) (p)->lpVtbl->ReleaseHfont(p,a)
273 #define IFont_SetHdc(p,a) (p)->lpVtbl->SetHdc(p,a)
275 #endif
277 #define IFont_METHODS \
278 ICOM_MSVTABLE_COMPAT_FIELDS \
279 /*** IUnknown methods ***/ \
280 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
281 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
282 STDMETHOD_(ULONG,Release)(THIS) PURE; \
283 /*** IFont methods ***/ \
284 STDMETHOD_(HRESULT,get_Name)(THIS_ BSTR* pname) PURE; \
285 STDMETHOD_(HRESULT,put_Name)(THIS_ BSTR name) PURE; \
286 STDMETHOD_(HRESULT,get_Size)(THIS_ CY* psize) PURE; \
287 STDMETHOD_(HRESULT,put_Size)(THIS_ CY size) PURE; \
288 STDMETHOD_(HRESULT,get_Bold)(THIS_ BOOL* pbold) PURE; \
289 STDMETHOD_(HRESULT,put_Bold)(THIS_ BOOL bold) PURE; \
290 STDMETHOD_(HRESULT,get_Italic)(THIS_ BOOL* pitalic) PURE; \
291 STDMETHOD_(HRESULT,put_Italic)(THIS_ BOOL italic) PURE; \
292 STDMETHOD_(HRESULT,get_Underline)(THIS_ BOOL* punderline) PURE; \
293 STDMETHOD_(HRESULT,put_Underline)(THIS_ BOOL underline) PURE; \
294 STDMETHOD_(HRESULT,get_Strikethrough)(THIS_ BOOL* pstrikethrough) PURE; \
295 STDMETHOD_(HRESULT,put_Strikethrough)(THIS_ BOOL strikethrough) PURE; \
296 STDMETHOD_(HRESULT,get_Weight)(THIS_ SHORT* pweight) PURE; \
297 STDMETHOD_(HRESULT,put_Weight)(THIS_ SHORT weight) PURE; \
298 STDMETHOD_(HRESULT,get_Charset)(THIS_ SHORT* pcharset) PURE; \
299 STDMETHOD_(HRESULT,put_Charset)(THIS_ SHORT charset) PURE; \
300 STDMETHOD_(HRESULT,get_hFont)(THIS_ HFONT* phfont) PURE; \
301 STDMETHOD_(HRESULT,Clone)(THIS_ IFont** ppfont) PURE; \
302 STDMETHOD_(HRESULT,IsEqual)(THIS_ IFont* pFontOther) PURE; \
303 STDMETHOD_(HRESULT,SetRatio)(THIS_ LONG cyLogical, LONG cyHimetric) PURE; \
304 STDMETHOD_(HRESULT,QueryTextMetrics)(THIS_ TEXTMETRICOLE* ptm) PURE; \
305 STDMETHOD_(HRESULT,AddRefHfont)(THIS_ HFONT hfont) PURE; \
306 STDMETHOD_(HRESULT,ReleaseHfont)(THIS_ HFONT hfont) PURE; \
307 STDMETHOD_(HRESULT,SetHdc)(THIS_ HDC hdc) PURE;
309 HRESULT CALLBACK IFont_get_Name_Proxy(
310 IFont* This,
311 BSTR* pname);
312 void __RPC_STUB IFont_get_Name_Stub(
313 struct IRpcStubBuffer* This,
314 struct IRpcChannelBuffer* pRpcChannelBuffer,
315 PRPC_MESSAGE pRpcMessage,
316 DWORD* pdwStubPhase);
317 HRESULT CALLBACK IFont_put_Name_Proxy(
318 IFont* This,
319 BSTR name);
320 void __RPC_STUB IFont_put_Name_Stub(
321 struct IRpcStubBuffer* This,
322 struct IRpcChannelBuffer* pRpcChannelBuffer,
323 PRPC_MESSAGE pRpcMessage,
324 DWORD* pdwStubPhase);
325 HRESULT CALLBACK IFont_get_Size_Proxy(
326 IFont* This,
327 CY* psize);
328 void __RPC_STUB IFont_get_Size_Stub(
329 struct IRpcStubBuffer* This,
330 struct IRpcChannelBuffer* pRpcChannelBuffer,
331 PRPC_MESSAGE pRpcMessage,
332 DWORD* pdwStubPhase);
333 HRESULT CALLBACK IFont_put_Size_Proxy(
334 IFont* This,
335 CY size);
336 void __RPC_STUB IFont_put_Size_Stub(
337 struct IRpcStubBuffer* This,
338 struct IRpcChannelBuffer* pRpcChannelBuffer,
339 PRPC_MESSAGE pRpcMessage,
340 DWORD* pdwStubPhase);
341 HRESULT CALLBACK IFont_get_Bold_Proxy(
342 IFont* This,
343 BOOL* pbold);
344 void __RPC_STUB IFont_get_Bold_Stub(
345 struct IRpcStubBuffer* This,
346 struct IRpcChannelBuffer* pRpcChannelBuffer,
347 PRPC_MESSAGE pRpcMessage,
348 DWORD* pdwStubPhase);
349 HRESULT CALLBACK IFont_put_Bold_Proxy(
350 IFont* This,
351 BOOL bold);
352 void __RPC_STUB IFont_put_Bold_Stub(
353 struct IRpcStubBuffer* This,
354 struct IRpcChannelBuffer* pRpcChannelBuffer,
355 PRPC_MESSAGE pRpcMessage,
356 DWORD* pdwStubPhase);
357 HRESULT CALLBACK IFont_get_Italic_Proxy(
358 IFont* This,
359 BOOL* pitalic);
360 void __RPC_STUB IFont_get_Italic_Stub(
361 struct IRpcStubBuffer* This,
362 struct IRpcChannelBuffer* pRpcChannelBuffer,
363 PRPC_MESSAGE pRpcMessage,
364 DWORD* pdwStubPhase);
365 HRESULT CALLBACK IFont_put_Italic_Proxy(
366 IFont* This,
367 BOOL italic);
368 void __RPC_STUB IFont_put_Italic_Stub(
369 struct IRpcStubBuffer* This,
370 struct IRpcChannelBuffer* pRpcChannelBuffer,
371 PRPC_MESSAGE pRpcMessage,
372 DWORD* pdwStubPhase);
373 HRESULT CALLBACK IFont_get_Underline_Proxy(
374 IFont* This,
375 BOOL* punderline);
376 void __RPC_STUB IFont_get_Underline_Stub(
377 struct IRpcStubBuffer* This,
378 struct IRpcChannelBuffer* pRpcChannelBuffer,
379 PRPC_MESSAGE pRpcMessage,
380 DWORD* pdwStubPhase);
381 HRESULT CALLBACK IFont_put_Underline_Proxy(
382 IFont* This,
383 BOOL underline);
384 void __RPC_STUB IFont_put_Underline_Stub(
385 struct IRpcStubBuffer* This,
386 struct IRpcChannelBuffer* pRpcChannelBuffer,
387 PRPC_MESSAGE pRpcMessage,
388 DWORD* pdwStubPhase);
389 HRESULT CALLBACK IFont_get_Strikethrough_Proxy(
390 IFont* This,
391 BOOL* pstrikethrough);
392 void __RPC_STUB IFont_get_Strikethrough_Stub(
393 struct IRpcStubBuffer* This,
394 struct IRpcChannelBuffer* pRpcChannelBuffer,
395 PRPC_MESSAGE pRpcMessage,
396 DWORD* pdwStubPhase);
397 HRESULT CALLBACK IFont_put_Strikethrough_Proxy(
398 IFont* This,
399 BOOL strikethrough);
400 void __RPC_STUB IFont_put_Strikethrough_Stub(
401 struct IRpcStubBuffer* This,
402 struct IRpcChannelBuffer* pRpcChannelBuffer,
403 PRPC_MESSAGE pRpcMessage,
404 DWORD* pdwStubPhase);
405 HRESULT CALLBACK IFont_get_Weight_Proxy(
406 IFont* This,
407 SHORT* pweight);
408 void __RPC_STUB IFont_get_Weight_Stub(
409 struct IRpcStubBuffer* This,
410 struct IRpcChannelBuffer* pRpcChannelBuffer,
411 PRPC_MESSAGE pRpcMessage,
412 DWORD* pdwStubPhase);
413 HRESULT CALLBACK IFont_put_Weight_Proxy(
414 IFont* This,
415 SHORT weight);
416 void __RPC_STUB IFont_put_Weight_Stub(
417 struct IRpcStubBuffer* This,
418 struct IRpcChannelBuffer* pRpcChannelBuffer,
419 PRPC_MESSAGE pRpcMessage,
420 DWORD* pdwStubPhase);
421 HRESULT CALLBACK IFont_get_Charset_Proxy(
422 IFont* This,
423 SHORT* pcharset);
424 void __RPC_STUB IFont_get_Charset_Stub(
425 struct IRpcStubBuffer* This,
426 struct IRpcChannelBuffer* pRpcChannelBuffer,
427 PRPC_MESSAGE pRpcMessage,
428 DWORD* pdwStubPhase);
429 HRESULT CALLBACK IFont_put_Charset_Proxy(
430 IFont* This,
431 SHORT charset);
432 void __RPC_STUB IFont_put_Charset_Stub(
433 struct IRpcStubBuffer* This,
434 struct IRpcChannelBuffer* pRpcChannelBuffer,
435 PRPC_MESSAGE pRpcMessage,
436 DWORD* pdwStubPhase);
437 HRESULT CALLBACK IFont_get_hFont_Proxy(
438 IFont* This,
439 HFONT* phfont);
440 void __RPC_STUB IFont_get_hFont_Stub(
441 struct IRpcStubBuffer* This,
442 struct IRpcChannelBuffer* pRpcChannelBuffer,
443 PRPC_MESSAGE pRpcMessage,
444 DWORD* pdwStubPhase);
445 HRESULT CALLBACK IFont_Clone_Proxy(
446 IFont* This,
447 IFont** ppfont);
448 void __RPC_STUB IFont_Clone_Stub(
449 struct IRpcStubBuffer* This,
450 struct IRpcChannelBuffer* pRpcChannelBuffer,
451 PRPC_MESSAGE pRpcMessage,
452 DWORD* pdwStubPhase);
453 HRESULT CALLBACK IFont_IsEqual_Proxy(
454 IFont* This,
455 IFont* pFontOther);
456 void __RPC_STUB IFont_IsEqual_Stub(
457 struct IRpcStubBuffer* This,
458 struct IRpcChannelBuffer* pRpcChannelBuffer,
459 PRPC_MESSAGE pRpcMessage,
460 DWORD* pdwStubPhase);
461 HRESULT CALLBACK IFont_SetRatio_Proxy(
462 IFont* This,
463 LONG cyLogical,
464 LONG cyHimetric);
465 void __RPC_STUB IFont_SetRatio_Stub(
466 struct IRpcStubBuffer* This,
467 struct IRpcChannelBuffer* pRpcChannelBuffer,
468 PRPC_MESSAGE pRpcMessage,
469 DWORD* pdwStubPhase);
470 HRESULT CALLBACK IFont_QueryTextMetrics_Proxy(
471 IFont* This,
472 TEXTMETRICOLE* ptm);
473 void __RPC_STUB IFont_QueryTextMetrics_Stub(
474 struct IRpcStubBuffer* This,
475 struct IRpcChannelBuffer* pRpcChannelBuffer,
476 PRPC_MESSAGE pRpcMessage,
477 DWORD* pdwStubPhase);
478 HRESULT CALLBACK IFont_AddRefHfont_Proxy(
479 IFont* This,
480 HFONT hfont);
481 void __RPC_STUB IFont_AddRefHfont_Stub(
482 struct IRpcStubBuffer* This,
483 struct IRpcChannelBuffer* pRpcChannelBuffer,
484 PRPC_MESSAGE pRpcMessage,
485 DWORD* pdwStubPhase);
486 HRESULT CALLBACK IFont_ReleaseHfont_Proxy(
487 IFont* This,
488 HFONT hfont);
489 void __RPC_STUB IFont_ReleaseHfont_Stub(
490 struct IRpcStubBuffer* This,
491 struct IRpcChannelBuffer* pRpcChannelBuffer,
492 PRPC_MESSAGE pRpcMessage,
493 DWORD* pdwStubPhase);
494 HRESULT CALLBACK IFont_SetHdc_Proxy(
495 IFont* This,
496 HDC hdc);
497 void __RPC_STUB IFont_SetHdc_Stub(
498 struct IRpcStubBuffer* This,
499 struct IRpcChannelBuffer* pRpcChannelBuffer,
500 PRPC_MESSAGE pRpcMessage,
501 DWORD* pdwStubPhase);
503 #endif /* __IFont_INTERFACE_DEFINED__ */
505 #ifndef __IFontDisp_FWD_DEFINED__
506 #define __IFontDisp_FWD_DEFINED__
507 typedef struct IFontDisp IFontDisp;
508 #endif
510 typedef IFontDisp *LPFONTDISP;
512 /*****************************************************************************
513 * IFontDisp interface
515 #ifndef __IFontDisp_INTERFACE_DEFINED__
516 #define __IFontDisp_INTERFACE_DEFINED__
518 DEFINE_GUID(IID_IFontDisp, 0xbef6e003, 0xa874, 0x101a, 0x8b,0xba, 0x00,0xaa,0x00,0x30,0x0c,0xab);
519 #if defined(__cplusplus) && !defined(CINTERFACE)
520 struct IFontDisp : public IDispatch
523 #else
524 typedef struct IFontDispVtbl IFontDispVtbl;
525 struct IFontDisp {
526 const IFontDispVtbl* lpVtbl;
528 struct IFontDispVtbl {
529 ICOM_MSVTABLE_COMPAT_FIELDS
531 /*** IUnknown methods ***/
532 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
533 IFontDisp* This,
534 REFIID riid,
535 void** ppvObject);
537 ULONG (STDMETHODCALLTYPE *AddRef)(
538 IFontDisp* This);
540 ULONG (STDMETHODCALLTYPE *Release)(
541 IFontDisp* This);
543 /*** IDispatch methods ***/
544 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
545 IFontDisp* This,
546 UINT* pctinfo);
548 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
549 IFontDisp* This,
550 UINT iTInfo,
551 LCID lcid,
552 ITypeInfo** ppTInfo);
554 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
555 IFontDisp* This,
556 REFIID riid,
557 LPOLESTR* rgszNames,
558 UINT cNames,
559 LCID lcid,
560 DISPID* rgDispId);
562 HRESULT (STDMETHODCALLTYPE *Invoke)(
563 IFontDisp* This,
564 DISPID dispIdMember,
565 REFIID riid,
566 LCID lcid,
567 WORD wFlags,
568 DISPPARAMS* pDispParams,
569 VARIANT* pVarResult,
570 EXCEPINFO* pExcepInfo,
571 UINT* puArgErr);
575 /*** IUnknown methods ***/
576 #define IFontDisp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
577 #define IFontDisp_AddRef(p) (p)->lpVtbl->AddRef(p)
578 #define IFontDisp_Release(p) (p)->lpVtbl->Release(p)
579 /*** IDispatch methods ***/
580 #define IFontDisp_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
581 #define IFontDisp_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
582 #define IFontDisp_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
583 #define IFontDisp_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
585 #endif
587 #define IFontDisp_METHODS \
588 ICOM_MSVTABLE_COMPAT_FIELDS \
589 /*** IUnknown methods ***/ \
590 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
591 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
592 STDMETHOD_(ULONG,Release)(THIS) PURE; \
593 /*** IDispatch methods ***/ \
594 STDMETHOD_(HRESULT,GetTypeInfoCount)(THIS_ UINT* pctinfo) PURE; \
595 STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ UINT iTInfo, LCID lcid, ITypeInfo** ppTInfo) PURE; \
596 STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ REFIID riid, LPOLESTR* rgszNames, UINT cNames, LCID lcid, DISPID* rgDispId) PURE; \
597 STDMETHOD_(HRESULT,Invoke)(THIS_ DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr) PURE;
600 #endif /* __IFontDisp_INTERFACE_DEFINED__ */
602 #ifndef __IPicture_FWD_DEFINED__
603 #define __IPicture_FWD_DEFINED__
604 typedef struct IPicture IPicture;
605 #endif
607 typedef IPicture *LPPICTURE;
609 typedef enum tagPicture {
610 PICTURE_SCALABLE = 0x1,
611 PICTURE_TRANSPARENT = 0x2
612 } PICTUREATTRIBUTES;
614 typedef UINT OLE_HANDLE;
616 typedef LONG OLE_XPOS_HIMETRIC;
618 typedef LONG OLE_YPOS_HIMETRIC;
620 typedef LONG OLE_XSIZE_HIMETRIC;
622 typedef LONG OLE_YSIZE_HIMETRIC;
624 /*****************************************************************************
625 * IPicture interface
627 #ifndef __IPicture_INTERFACE_DEFINED__
628 #define __IPicture_INTERFACE_DEFINED__
630 DEFINE_GUID(IID_IPicture, 0x7bf80980, 0xbf32, 0x101a, 0x8b,0xbb, 0x00,0xaa,0x00,0x30,0x0c,0xab);
631 #if defined(__cplusplus) && !defined(CINTERFACE)
632 struct IPicture : public IUnknown
634 virtual HRESULT STDMETHODCALLTYPE get_Handle(
635 OLE_HANDLE* pHandle) = 0;
637 virtual HRESULT STDMETHODCALLTYPE get_hPal(
638 OLE_HANDLE* phPal) = 0;
640 virtual HRESULT STDMETHODCALLTYPE get_Type(
641 SHORT* pType) = 0;
643 virtual HRESULT STDMETHODCALLTYPE get_Width(
644 OLE_XSIZE_HIMETRIC* pWidth) = 0;
646 virtual HRESULT STDMETHODCALLTYPE get_Height(
647 OLE_YSIZE_HIMETRIC* pHeight) = 0;
649 virtual HRESULT STDMETHODCALLTYPE Render(
650 HDC hdc,
651 LONG x,
652 LONG y,
653 LONG cx,
654 LONG cy,
655 OLE_XPOS_HIMETRIC xSrc,
656 OLE_YPOS_HIMETRIC ySrc,
657 OLE_XSIZE_HIMETRIC cxSrc,
658 OLE_YSIZE_HIMETRIC cySrc,
659 LPCRECT pRcWBounds) = 0;
661 virtual HRESULT STDMETHODCALLTYPE set_hPal(
662 OLE_HANDLE hPal) = 0;
664 virtual HRESULT STDMETHODCALLTYPE get_CurDC(
665 HDC* phDC) = 0;
667 virtual HRESULT STDMETHODCALLTYPE SelectPicture(
668 HDC hDCIn,
669 HDC* phDCOut,
670 OLE_HANDLE* phBmpOut) = 0;
672 virtual HRESULT STDMETHODCALLTYPE get_KeepOriginalFormat(
673 BOOL* pKeep) = 0;
675 virtual HRESULT STDMETHODCALLTYPE put_KeepOriginalFormat(
676 BOOL keep) = 0;
678 virtual HRESULT STDMETHODCALLTYPE PictureChanged(
679 ) = 0;
681 virtual HRESULT STDMETHODCALLTYPE SaveAsFile(
682 LPSTREAM pStream,
683 BOOL fSaveMemCopy,
684 LONG* pCbSize) = 0;
686 virtual HRESULT STDMETHODCALLTYPE get_Attributes(
687 DWORD* pDwAttr) = 0;
690 #else
691 typedef struct IPictureVtbl IPictureVtbl;
692 struct IPicture {
693 const IPictureVtbl* lpVtbl;
695 struct IPictureVtbl {
696 ICOM_MSVTABLE_COMPAT_FIELDS
698 /*** IUnknown methods ***/
699 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
700 IPicture* This,
701 REFIID riid,
702 void** ppvObject);
704 ULONG (STDMETHODCALLTYPE *AddRef)(
705 IPicture* This);
707 ULONG (STDMETHODCALLTYPE *Release)(
708 IPicture* This);
710 /*** IPicture methods ***/
711 HRESULT (STDMETHODCALLTYPE *get_Handle)(
712 IPicture* This,
713 OLE_HANDLE* pHandle);
715 HRESULT (STDMETHODCALLTYPE *get_hPal)(
716 IPicture* This,
717 OLE_HANDLE* phPal);
719 HRESULT (STDMETHODCALLTYPE *get_Type)(
720 IPicture* This,
721 SHORT* pType);
723 HRESULT (STDMETHODCALLTYPE *get_Width)(
724 IPicture* This,
725 OLE_XSIZE_HIMETRIC* pWidth);
727 HRESULT (STDMETHODCALLTYPE *get_Height)(
728 IPicture* This,
729 OLE_YSIZE_HIMETRIC* pHeight);
731 HRESULT (STDMETHODCALLTYPE *Render)(
732 IPicture* This,
733 HDC hdc,
734 LONG x,
735 LONG y,
736 LONG cx,
737 LONG cy,
738 OLE_XPOS_HIMETRIC xSrc,
739 OLE_YPOS_HIMETRIC ySrc,
740 OLE_XSIZE_HIMETRIC cxSrc,
741 OLE_YSIZE_HIMETRIC cySrc,
742 LPCRECT pRcWBounds);
744 HRESULT (STDMETHODCALLTYPE *set_hPal)(
745 IPicture* This,
746 OLE_HANDLE hPal);
748 HRESULT (STDMETHODCALLTYPE *get_CurDC)(
749 IPicture* This,
750 HDC* phDC);
752 HRESULT (STDMETHODCALLTYPE *SelectPicture)(
753 IPicture* This,
754 HDC hDCIn,
755 HDC* phDCOut,
756 OLE_HANDLE* phBmpOut);
758 HRESULT (STDMETHODCALLTYPE *get_KeepOriginalFormat)(
759 IPicture* This,
760 BOOL* pKeep);
762 HRESULT (STDMETHODCALLTYPE *put_KeepOriginalFormat)(
763 IPicture* This,
764 BOOL keep);
766 HRESULT (STDMETHODCALLTYPE *PictureChanged)(
767 IPicture* This);
769 HRESULT (STDMETHODCALLTYPE *SaveAsFile)(
770 IPicture* This,
771 LPSTREAM pStream,
772 BOOL fSaveMemCopy,
773 LONG* pCbSize);
775 HRESULT (STDMETHODCALLTYPE *get_Attributes)(
776 IPicture* This,
777 DWORD* pDwAttr);
781 /*** IUnknown methods ***/
782 #define IPicture_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
783 #define IPicture_AddRef(p) (p)->lpVtbl->AddRef(p)
784 #define IPicture_Release(p) (p)->lpVtbl->Release(p)
785 /*** IPicture methods ***/
786 #define IPicture_get_Handle(p,a) (p)->lpVtbl->get_Handle(p,a)
787 #define IPicture_get_hPal(p,a) (p)->lpVtbl->get_hPal(p,a)
788 #define IPicture_get_Type(p,a) (p)->lpVtbl->get_Type(p,a)
789 #define IPicture_get_Width(p,a) (p)->lpVtbl->get_Width(p,a)
790 #define IPicture_get_Height(p,a) (p)->lpVtbl->get_Height(p,a)
791 #define IPicture_Render(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Render(p,a,b,c,d,e,f,g,h,i,j)
792 #define IPicture_set_hPal(p,a) (p)->lpVtbl->set_hPal(p,a)
793 #define IPicture_get_CurDC(p,a) (p)->lpVtbl->get_CurDC(p,a)
794 #define IPicture_SelectPicture(p,a,b,c) (p)->lpVtbl->SelectPicture(p,a,b,c)
795 #define IPicture_get_KeepOriginalFormat(p,a) (p)->lpVtbl->get_KeepOriginalFormat(p,a)
796 #define IPicture_put_KeepOriginalFormat(p,a) (p)->lpVtbl->put_KeepOriginalFormat(p,a)
797 #define IPicture_PictureChanged(p) (p)->lpVtbl->PictureChanged(p)
798 #define IPicture_SaveAsFile(p,a,b,c) (p)->lpVtbl->SaveAsFile(p,a,b,c)
799 #define IPicture_get_Attributes(p,a) (p)->lpVtbl->get_Attributes(p,a)
801 #endif
803 #define IPicture_METHODS \
804 ICOM_MSVTABLE_COMPAT_FIELDS \
805 /*** IUnknown methods ***/ \
806 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
807 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
808 STDMETHOD_(ULONG,Release)(THIS) PURE; \
809 /*** IPicture methods ***/ \
810 STDMETHOD_(HRESULT,get_Handle)(THIS_ OLE_HANDLE* pHandle) PURE; \
811 STDMETHOD_(HRESULT,get_hPal)(THIS_ OLE_HANDLE* phPal) PURE; \
812 STDMETHOD_(HRESULT,get_Type)(THIS_ SHORT* pType) PURE; \
813 STDMETHOD_(HRESULT,get_Width)(THIS_ OLE_XSIZE_HIMETRIC* pWidth) PURE; \
814 STDMETHOD_(HRESULT,get_Height)(THIS_ OLE_YSIZE_HIMETRIC* pHeight) PURE; \
815 STDMETHOD_(HRESULT,Render)(THIS_ HDC hdc, LONG x, LONG y, LONG cx, LONG cy, OLE_XPOS_HIMETRIC xSrc, OLE_YPOS_HIMETRIC ySrc, OLE_XSIZE_HIMETRIC cxSrc, OLE_YSIZE_HIMETRIC cySrc, LPCRECT pRcWBounds) PURE; \
816 STDMETHOD_(HRESULT,set_hPal)(THIS_ OLE_HANDLE hPal) PURE; \
817 STDMETHOD_(HRESULT,get_CurDC)(THIS_ HDC* phDC) PURE; \
818 STDMETHOD_(HRESULT,SelectPicture)(THIS_ HDC hDCIn, HDC* phDCOut, OLE_HANDLE* phBmpOut) PURE; \
819 STDMETHOD_(HRESULT,get_KeepOriginalFormat)(THIS_ BOOL* pKeep) PURE; \
820 STDMETHOD_(HRESULT,put_KeepOriginalFormat)(THIS_ BOOL keep) PURE; \
821 STDMETHOD_(HRESULT,PictureChanged)(THIS) PURE; \
822 STDMETHOD_(HRESULT,SaveAsFile)(THIS_ LPSTREAM pStream, BOOL fSaveMemCopy, LONG* pCbSize) PURE; \
823 STDMETHOD_(HRESULT,get_Attributes)(THIS_ DWORD* pDwAttr) PURE;
825 HRESULT CALLBACK IPicture_get_Handle_Proxy(
826 IPicture* This,
827 OLE_HANDLE* pHandle);
828 void __RPC_STUB IPicture_get_Handle_Stub(
829 struct IRpcStubBuffer* This,
830 struct IRpcChannelBuffer* pRpcChannelBuffer,
831 PRPC_MESSAGE pRpcMessage,
832 DWORD* pdwStubPhase);
833 HRESULT CALLBACK IPicture_get_hPal_Proxy(
834 IPicture* This,
835 OLE_HANDLE* phPal);
836 void __RPC_STUB IPicture_get_hPal_Stub(
837 struct IRpcStubBuffer* This,
838 struct IRpcChannelBuffer* pRpcChannelBuffer,
839 PRPC_MESSAGE pRpcMessage,
840 DWORD* pdwStubPhase);
841 HRESULT CALLBACK IPicture_get_Type_Proxy(
842 IPicture* This,
843 SHORT* pType);
844 void __RPC_STUB IPicture_get_Type_Stub(
845 struct IRpcStubBuffer* This,
846 struct IRpcChannelBuffer* pRpcChannelBuffer,
847 PRPC_MESSAGE pRpcMessage,
848 DWORD* pdwStubPhase);
849 HRESULT CALLBACK IPicture_get_Width_Proxy(
850 IPicture* This,
851 OLE_XSIZE_HIMETRIC* pWidth);
852 void __RPC_STUB IPicture_get_Width_Stub(
853 struct IRpcStubBuffer* This,
854 struct IRpcChannelBuffer* pRpcChannelBuffer,
855 PRPC_MESSAGE pRpcMessage,
856 DWORD* pdwStubPhase);
857 HRESULT CALLBACK IPicture_get_Height_Proxy(
858 IPicture* This,
859 OLE_YSIZE_HIMETRIC* pHeight);
860 void __RPC_STUB IPicture_get_Height_Stub(
861 struct IRpcStubBuffer* This,
862 struct IRpcChannelBuffer* pRpcChannelBuffer,
863 PRPC_MESSAGE pRpcMessage,
864 DWORD* pdwStubPhase);
865 HRESULT CALLBACK IPicture_Render_Proxy(
866 IPicture* This,
867 HDC hdc,
868 LONG x,
869 LONG y,
870 LONG cx,
871 LONG cy,
872 OLE_XPOS_HIMETRIC xSrc,
873 OLE_YPOS_HIMETRIC ySrc,
874 OLE_XSIZE_HIMETRIC cxSrc,
875 OLE_YSIZE_HIMETRIC cySrc,
876 LPCRECT pRcWBounds);
877 void __RPC_STUB IPicture_Render_Stub(
878 struct IRpcStubBuffer* This,
879 struct IRpcChannelBuffer* pRpcChannelBuffer,
880 PRPC_MESSAGE pRpcMessage,
881 DWORD* pdwStubPhase);
882 HRESULT CALLBACK IPicture_set_hPal_Proxy(
883 IPicture* This,
884 OLE_HANDLE hPal);
885 void __RPC_STUB IPicture_set_hPal_Stub(
886 struct IRpcStubBuffer* This,
887 struct IRpcChannelBuffer* pRpcChannelBuffer,
888 PRPC_MESSAGE pRpcMessage,
889 DWORD* pdwStubPhase);
890 HRESULT CALLBACK IPicture_get_CurDC_Proxy(
891 IPicture* This,
892 HDC* phDC);
893 void __RPC_STUB IPicture_get_CurDC_Stub(
894 struct IRpcStubBuffer* This,
895 struct IRpcChannelBuffer* pRpcChannelBuffer,
896 PRPC_MESSAGE pRpcMessage,
897 DWORD* pdwStubPhase);
898 HRESULT CALLBACK IPicture_SelectPicture_Proxy(
899 IPicture* This,
900 HDC hDCIn,
901 HDC* phDCOut,
902 OLE_HANDLE* phBmpOut);
903 void __RPC_STUB IPicture_SelectPicture_Stub(
904 struct IRpcStubBuffer* This,
905 struct IRpcChannelBuffer* pRpcChannelBuffer,
906 PRPC_MESSAGE pRpcMessage,
907 DWORD* pdwStubPhase);
908 HRESULT CALLBACK IPicture_get_KeepOriginalFormat_Proxy(
909 IPicture* This,
910 BOOL* pKeep);
911 void __RPC_STUB IPicture_get_KeepOriginalFormat_Stub(
912 struct IRpcStubBuffer* This,
913 struct IRpcChannelBuffer* pRpcChannelBuffer,
914 PRPC_MESSAGE pRpcMessage,
915 DWORD* pdwStubPhase);
916 HRESULT CALLBACK IPicture_put_KeepOriginalFormat_Proxy(
917 IPicture* This,
918 BOOL keep);
919 void __RPC_STUB IPicture_put_KeepOriginalFormat_Stub(
920 struct IRpcStubBuffer* This,
921 struct IRpcChannelBuffer* pRpcChannelBuffer,
922 PRPC_MESSAGE pRpcMessage,
923 DWORD* pdwStubPhase);
924 HRESULT CALLBACK IPicture_PictureChanged_Proxy(
925 IPicture* This);
926 void __RPC_STUB IPicture_PictureChanged_Stub(
927 struct IRpcStubBuffer* This,
928 struct IRpcChannelBuffer* pRpcChannelBuffer,
929 PRPC_MESSAGE pRpcMessage,
930 DWORD* pdwStubPhase);
931 HRESULT CALLBACK IPicture_SaveAsFile_Proxy(
932 IPicture* This,
933 LPSTREAM pStream,
934 BOOL fSaveMemCopy,
935 LONG* pCbSize);
936 void __RPC_STUB IPicture_SaveAsFile_Stub(
937 struct IRpcStubBuffer* This,
938 struct IRpcChannelBuffer* pRpcChannelBuffer,
939 PRPC_MESSAGE pRpcMessage,
940 DWORD* pdwStubPhase);
941 HRESULT CALLBACK IPicture_get_Attributes_Proxy(
942 IPicture* This,
943 DWORD* pDwAttr);
944 void __RPC_STUB IPicture_get_Attributes_Stub(
945 struct IRpcStubBuffer* This,
946 struct IRpcChannelBuffer* pRpcChannelBuffer,
947 PRPC_MESSAGE pRpcMessage,
948 DWORD* pdwStubPhase);
950 #endif /* __IPicture_INTERFACE_DEFINED__ */
952 #ifndef __IPictureDisp_FWD_DEFINED__
953 #define __IPictureDisp_FWD_DEFINED__
954 typedef struct IPictureDisp IPictureDisp;
955 #endif
957 typedef IPictureDisp *LPPICTUREDISP;
959 /*****************************************************************************
960 * IPictureDisp interface
962 #ifndef __IPictureDisp_INTERFACE_DEFINED__
963 #define __IPictureDisp_INTERFACE_DEFINED__
965 DEFINE_GUID(IID_IPictureDisp, 0x7bf80981, 0xbf32, 0x101a, 0x8b,0xbb, 0x00,0xaa,0x00,0x30,0x0c,0xab);
966 #if defined(__cplusplus) && !defined(CINTERFACE)
967 struct IPictureDisp : public IDispatch
970 #else
971 typedef struct IPictureDispVtbl IPictureDispVtbl;
972 struct IPictureDisp {
973 const IPictureDispVtbl* lpVtbl;
975 struct IPictureDispVtbl {
976 ICOM_MSVTABLE_COMPAT_FIELDS
978 /*** IUnknown methods ***/
979 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
980 IPictureDisp* This,
981 REFIID riid,
982 void** ppvObject);
984 ULONG (STDMETHODCALLTYPE *AddRef)(
985 IPictureDisp* This);
987 ULONG (STDMETHODCALLTYPE *Release)(
988 IPictureDisp* This);
990 /*** IDispatch methods ***/
991 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
992 IPictureDisp* This,
993 UINT* pctinfo);
995 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
996 IPictureDisp* This,
997 UINT iTInfo,
998 LCID lcid,
999 ITypeInfo** ppTInfo);
1001 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1002 IPictureDisp* This,
1003 REFIID riid,
1004 LPOLESTR* rgszNames,
1005 UINT cNames,
1006 LCID lcid,
1007 DISPID* rgDispId);
1009 HRESULT (STDMETHODCALLTYPE *Invoke)(
1010 IPictureDisp* This,
1011 DISPID dispIdMember,
1012 REFIID riid,
1013 LCID lcid,
1014 WORD wFlags,
1015 DISPPARAMS* pDispParams,
1016 VARIANT* pVarResult,
1017 EXCEPINFO* pExcepInfo,
1018 UINT* puArgErr);
1022 /*** IUnknown methods ***/
1023 #define IPictureDisp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1024 #define IPictureDisp_AddRef(p) (p)->lpVtbl->AddRef(p)
1025 #define IPictureDisp_Release(p) (p)->lpVtbl->Release(p)
1026 /*** IDispatch methods ***/
1027 #define IPictureDisp_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a)
1028 #define IPictureDisp_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
1029 #define IPictureDisp_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e)
1030 #define IPictureDisp_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h)
1032 #endif
1034 #define IPictureDisp_METHODS \
1035 ICOM_MSVTABLE_COMPAT_FIELDS \
1036 /*** IUnknown methods ***/ \
1037 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1038 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1039 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1040 /*** IDispatch methods ***/ \
1041 STDMETHOD_(HRESULT,GetTypeInfoCount)(THIS_ UINT* pctinfo) PURE; \
1042 STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ UINT iTInfo, LCID lcid, ITypeInfo** ppTInfo) PURE; \
1043 STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ REFIID riid, LPOLESTR* rgszNames, UINT cNames, LCID lcid, DISPID* rgDispId) PURE; \
1044 STDMETHOD_(HRESULT,Invoke)(THIS_ DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr) PURE;
1047 #endif /* __IPictureDisp_INTERFACE_DEFINED__ */
1049 #ifndef __IOleControl_FWD_DEFINED__
1050 #define __IOleControl_FWD_DEFINED__
1051 typedef struct IOleControl IOleControl;
1052 #endif
1054 typedef IOleControl *LPOLECONTROL;
1056 typedef struct tagCONTROLINFO {
1057 ULONG cb;
1058 HACCEL hAccel;
1059 USHORT cAccel;
1060 DWORD dwFlags;
1061 } CONTROLINFO, *LPCONTROLINFO;
1063 typedef enum tagCTRLINFO {
1064 CTRLINFO_EATS_RETURN = 1,
1065 CTRLINFO_EATS_ESCAPE = 2
1066 } CTRLINFO;
1068 /*****************************************************************************
1069 * IOleControl interface
1071 #ifndef __IOleControl_INTERFACE_DEFINED__
1072 #define __IOleControl_INTERFACE_DEFINED__
1074 DEFINE_GUID(IID_IOleControl, 0xb196b288, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
1075 #if defined(__cplusplus) && !defined(CINTERFACE)
1076 struct IOleControl : public IUnknown
1078 virtual HRESULT STDMETHODCALLTYPE GetControlInfo(
1079 CONTROLINFO* pCI) = 0;
1081 virtual HRESULT STDMETHODCALLTYPE OnMnemonic(
1082 MSG* pMsg) = 0;
1084 virtual HRESULT STDMETHODCALLTYPE OnAmbientPropertyChange(
1085 DISPID dispID) = 0;
1087 virtual HRESULT STDMETHODCALLTYPE FreezeEvents(
1088 BOOL bFreeze) = 0;
1091 #else
1092 typedef struct IOleControlVtbl IOleControlVtbl;
1093 struct IOleControl {
1094 const IOleControlVtbl* lpVtbl;
1096 struct IOleControlVtbl {
1097 ICOM_MSVTABLE_COMPAT_FIELDS
1099 /*** IUnknown methods ***/
1100 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1101 IOleControl* This,
1102 REFIID riid,
1103 void** ppvObject);
1105 ULONG (STDMETHODCALLTYPE *AddRef)(
1106 IOleControl* This);
1108 ULONG (STDMETHODCALLTYPE *Release)(
1109 IOleControl* This);
1111 /*** IOleControl methods ***/
1112 HRESULT (STDMETHODCALLTYPE *GetControlInfo)(
1113 IOleControl* This,
1114 CONTROLINFO* pCI);
1116 HRESULT (STDMETHODCALLTYPE *OnMnemonic)(
1117 IOleControl* This,
1118 MSG* pMsg);
1120 HRESULT (STDMETHODCALLTYPE *OnAmbientPropertyChange)(
1121 IOleControl* This,
1122 DISPID dispID);
1124 HRESULT (STDMETHODCALLTYPE *FreezeEvents)(
1125 IOleControl* This,
1126 BOOL bFreeze);
1130 /*** IUnknown methods ***/
1131 #define IOleControl_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1132 #define IOleControl_AddRef(p) (p)->lpVtbl->AddRef(p)
1133 #define IOleControl_Release(p) (p)->lpVtbl->Release(p)
1134 /*** IOleControl methods ***/
1135 #define IOleControl_GetControlInfo(p,a) (p)->lpVtbl->GetControlInfo(p,a)
1136 #define IOleControl_OnMnemonic(p,a) (p)->lpVtbl->OnMnemonic(p,a)
1137 #define IOleControl_OnAmbientPropertyChange(p,a) (p)->lpVtbl->OnAmbientPropertyChange(p,a)
1138 #define IOleControl_FreezeEvents(p,a) (p)->lpVtbl->FreezeEvents(p,a)
1140 #endif
1142 #define IOleControl_METHODS \
1143 ICOM_MSVTABLE_COMPAT_FIELDS \
1144 /*** IUnknown methods ***/ \
1145 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1146 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1147 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1148 /*** IOleControl methods ***/ \
1149 STDMETHOD_(HRESULT,GetControlInfo)(THIS_ CONTROLINFO* pCI) PURE; \
1150 STDMETHOD_(HRESULT,OnMnemonic)(THIS_ MSG* pMsg) PURE; \
1151 STDMETHOD_(HRESULT,OnAmbientPropertyChange)(THIS_ DISPID dispID) PURE; \
1152 STDMETHOD_(HRESULT,FreezeEvents)(THIS_ BOOL bFreeze) PURE;
1154 HRESULT CALLBACK IOleControl_GetControlInfo_Proxy(
1155 IOleControl* This,
1156 CONTROLINFO* pCI);
1157 void __RPC_STUB IOleControl_GetControlInfo_Stub(
1158 struct IRpcStubBuffer* This,
1159 struct IRpcChannelBuffer* pRpcChannelBuffer,
1160 PRPC_MESSAGE pRpcMessage,
1161 DWORD* pdwStubPhase);
1162 HRESULT CALLBACK IOleControl_OnMnemonic_Proxy(
1163 IOleControl* This,
1164 MSG* pMsg);
1165 void __RPC_STUB IOleControl_OnMnemonic_Stub(
1166 struct IRpcStubBuffer* This,
1167 struct IRpcChannelBuffer* pRpcChannelBuffer,
1168 PRPC_MESSAGE pRpcMessage,
1169 DWORD* pdwStubPhase);
1170 HRESULT CALLBACK IOleControl_OnAmbientPropertyChange_Proxy(
1171 IOleControl* This,
1172 DISPID dispID);
1173 void __RPC_STUB IOleControl_OnAmbientPropertyChange_Stub(
1174 struct IRpcStubBuffer* This,
1175 struct IRpcChannelBuffer* pRpcChannelBuffer,
1176 PRPC_MESSAGE pRpcMessage,
1177 DWORD* pdwStubPhase);
1178 HRESULT CALLBACK IOleControl_FreezeEvents_Proxy(
1179 IOleControl* This,
1180 BOOL bFreeze);
1181 void __RPC_STUB IOleControl_FreezeEvents_Stub(
1182 struct IRpcStubBuffer* This,
1183 struct IRpcChannelBuffer* pRpcChannelBuffer,
1184 PRPC_MESSAGE pRpcMessage,
1185 DWORD* pdwStubPhase);
1187 #endif /* __IOleControl_INTERFACE_DEFINED__ */
1189 #ifndef __IOleControlSite_FWD_DEFINED__
1190 #define __IOleControlSite_FWD_DEFINED__
1191 typedef struct IOleControlSite IOleControlSite;
1192 #endif
1194 typedef IOleControlSite *LPOLECONTROLSITE;
1196 typedef struct tagPOINTF {
1197 FLOAT x;
1198 FLOAT y;
1199 } POINTF, *LPPOINTF;
1201 typedef enum tagXFORMCOORDS {
1202 XFORMCOORDS_POSITION = 0x1,
1203 XFORMCOORDS_SIZE = 0x2,
1204 XFORMCOORDS_HIMETRICTOCONTAINER = 0x4,
1205 XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8,
1206 XFORMCOORDS_EVENTCOMPAT = 0x10
1207 } XFORMCOORDS;
1209 /*****************************************************************************
1210 * IOleControlSite interface
1212 #ifndef __IOleControlSite_INTERFACE_DEFINED__
1213 #define __IOleControlSite_INTERFACE_DEFINED__
1215 DEFINE_GUID(IID_IOleControlSite, 0xb196b289, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
1216 #if defined(__cplusplus) && !defined(CINTERFACE)
1217 struct IOleControlSite : public IUnknown
1219 virtual HRESULT STDMETHODCALLTYPE OnControlInfoChanged(
1220 ) = 0;
1222 virtual HRESULT STDMETHODCALLTYPE LockInPlaceActive(
1223 BOOL fLock) = 0;
1225 virtual HRESULT STDMETHODCALLTYPE GetExtendedControl(
1226 IDispatch** ppDisp) = 0;
1228 virtual HRESULT STDMETHODCALLTYPE TransformCoords(
1229 POINTL* pPtlHimetric,
1230 POINTF* pPtfContainer,
1231 DWORD dwFlags) = 0;
1233 virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(
1234 MSG* pMsg,
1235 DWORD grfModifiers) = 0;
1237 virtual HRESULT STDMETHODCALLTYPE OnFocus(
1238 BOOL fGotFocus) = 0;
1240 virtual HRESULT STDMETHODCALLTYPE ShowPropertyFrame(
1241 ) = 0;
1244 #else
1245 typedef struct IOleControlSiteVtbl IOleControlSiteVtbl;
1246 struct IOleControlSite {
1247 const IOleControlSiteVtbl* lpVtbl;
1249 struct IOleControlSiteVtbl {
1250 ICOM_MSVTABLE_COMPAT_FIELDS
1252 /*** IUnknown methods ***/
1253 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1254 IOleControlSite* This,
1255 REFIID riid,
1256 void** ppvObject);
1258 ULONG (STDMETHODCALLTYPE *AddRef)(
1259 IOleControlSite* This);
1261 ULONG (STDMETHODCALLTYPE *Release)(
1262 IOleControlSite* This);
1264 /*** IOleControlSite methods ***/
1265 HRESULT (STDMETHODCALLTYPE *OnControlInfoChanged)(
1266 IOleControlSite* This);
1268 HRESULT (STDMETHODCALLTYPE *LockInPlaceActive)(
1269 IOleControlSite* This,
1270 BOOL fLock);
1272 HRESULT (STDMETHODCALLTYPE *GetExtendedControl)(
1273 IOleControlSite* This,
1274 IDispatch** ppDisp);
1276 HRESULT (STDMETHODCALLTYPE *TransformCoords)(
1277 IOleControlSite* This,
1278 POINTL* pPtlHimetric,
1279 POINTF* pPtfContainer,
1280 DWORD dwFlags);
1282 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
1283 IOleControlSite* This,
1284 MSG* pMsg,
1285 DWORD grfModifiers);
1287 HRESULT (STDMETHODCALLTYPE *OnFocus)(
1288 IOleControlSite* This,
1289 BOOL fGotFocus);
1291 HRESULT (STDMETHODCALLTYPE *ShowPropertyFrame)(
1292 IOleControlSite* This);
1296 /*** IUnknown methods ***/
1297 #define IOleControlSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1298 #define IOleControlSite_AddRef(p) (p)->lpVtbl->AddRef(p)
1299 #define IOleControlSite_Release(p) (p)->lpVtbl->Release(p)
1300 /*** IOleControlSite methods ***/
1301 #define IOleControlSite_OnControlInfoChanged(p) (p)->lpVtbl->OnControlInfoChanged(p)
1302 #define IOleControlSite_LockInPlaceActive(p,a) (p)->lpVtbl->LockInPlaceActive(p,a)
1303 #define IOleControlSite_GetExtendedControl(p,a) (p)->lpVtbl->GetExtendedControl(p,a)
1304 #define IOleControlSite_TransformCoords(p,a,b,c) (p)->lpVtbl->TransformCoords(p,a,b,c)
1305 #define IOleControlSite_TranslateAccelerator(p,a,b) (p)->lpVtbl->TranslateAccelerator(p,a,b)
1306 #define IOleControlSite_OnFocus(p,a) (p)->lpVtbl->OnFocus(p,a)
1307 #define IOleControlSite_ShowPropertyFrame(p) (p)->lpVtbl->ShowPropertyFrame(p)
1309 #endif
1311 #define IOleControlSite_METHODS \
1312 ICOM_MSVTABLE_COMPAT_FIELDS \
1313 /*** IUnknown methods ***/ \
1314 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1315 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1316 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1317 /*** IOleControlSite methods ***/ \
1318 STDMETHOD_(HRESULT,OnControlInfoChanged)(THIS) PURE; \
1319 STDMETHOD_(HRESULT,LockInPlaceActive)(THIS_ BOOL fLock) PURE; \
1320 STDMETHOD_(HRESULT,GetExtendedControl)(THIS_ IDispatch** ppDisp) PURE; \
1321 STDMETHOD_(HRESULT,TransformCoords)(THIS_ POINTL* pPtlHimetric, POINTF* pPtfContainer, DWORD dwFlags) PURE; \
1322 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ MSG* pMsg, DWORD grfModifiers) PURE; \
1323 STDMETHOD_(HRESULT,OnFocus)(THIS_ BOOL fGotFocus) PURE; \
1324 STDMETHOD_(HRESULT,ShowPropertyFrame)(THIS) PURE;
1326 HRESULT CALLBACK IOleControlSite_OnControlInfoChanged_Proxy(
1327 IOleControlSite* This);
1328 void __RPC_STUB IOleControlSite_OnControlInfoChanged_Stub(
1329 struct IRpcStubBuffer* This,
1330 struct IRpcChannelBuffer* pRpcChannelBuffer,
1331 PRPC_MESSAGE pRpcMessage,
1332 DWORD* pdwStubPhase);
1333 HRESULT CALLBACK IOleControlSite_LockInPlaceActive_Proxy(
1334 IOleControlSite* This,
1335 BOOL fLock);
1336 void __RPC_STUB IOleControlSite_LockInPlaceActive_Stub(
1337 struct IRpcStubBuffer* This,
1338 struct IRpcChannelBuffer* pRpcChannelBuffer,
1339 PRPC_MESSAGE pRpcMessage,
1340 DWORD* pdwStubPhase);
1341 HRESULT CALLBACK IOleControlSite_GetExtendedControl_Proxy(
1342 IOleControlSite* This,
1343 IDispatch** ppDisp);
1344 void __RPC_STUB IOleControlSite_GetExtendedControl_Stub(
1345 struct IRpcStubBuffer* This,
1346 struct IRpcChannelBuffer* pRpcChannelBuffer,
1347 PRPC_MESSAGE pRpcMessage,
1348 DWORD* pdwStubPhase);
1349 HRESULT CALLBACK IOleControlSite_TransformCoords_Proxy(
1350 IOleControlSite* This,
1351 POINTL* pPtlHimetric,
1352 POINTF* pPtfContainer,
1353 DWORD dwFlags);
1354 void __RPC_STUB IOleControlSite_TransformCoords_Stub(
1355 struct IRpcStubBuffer* This,
1356 struct IRpcChannelBuffer* pRpcChannelBuffer,
1357 PRPC_MESSAGE pRpcMessage,
1358 DWORD* pdwStubPhase);
1359 HRESULT CALLBACK IOleControlSite_TranslateAccelerator_Proxy(
1360 IOleControlSite* This,
1361 MSG* pMsg,
1362 DWORD grfModifiers);
1363 void __RPC_STUB IOleControlSite_TranslateAccelerator_Stub(
1364 struct IRpcStubBuffer* This,
1365 struct IRpcChannelBuffer* pRpcChannelBuffer,
1366 PRPC_MESSAGE pRpcMessage,
1367 DWORD* pdwStubPhase);
1368 HRESULT CALLBACK IOleControlSite_OnFocus_Proxy(
1369 IOleControlSite* This,
1370 BOOL fGotFocus);
1371 void __RPC_STUB IOleControlSite_OnFocus_Stub(
1372 struct IRpcStubBuffer* This,
1373 struct IRpcChannelBuffer* pRpcChannelBuffer,
1374 PRPC_MESSAGE pRpcMessage,
1375 DWORD* pdwStubPhase);
1376 HRESULT CALLBACK IOleControlSite_ShowPropertyFrame_Proxy(
1377 IOleControlSite* This);
1378 void __RPC_STUB IOleControlSite_ShowPropertyFrame_Stub(
1379 struct IRpcStubBuffer* This,
1380 struct IRpcChannelBuffer* pRpcChannelBuffer,
1381 PRPC_MESSAGE pRpcMessage,
1382 DWORD* pdwStubPhase);
1384 #endif /* __IOleControlSite_INTERFACE_DEFINED__ */
1386 #ifndef __IOleInPlaceSiteEx_FWD_DEFINED__
1387 #define __IOleInPlaceSiteEx_FWD_DEFINED__
1388 typedef struct IOleInPlaceSiteEx IOleInPlaceSiteEx;
1389 #endif
1391 typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX;
1393 typedef enum tagACTIVATEFLAGS {
1394 ACTIVATE_WINDOWLESS = 1
1395 } ACTIVATE_FLAGS;
1397 /*****************************************************************************
1398 * IOleInPlaceSiteEx interface
1400 #ifndef __IOleInPlaceSiteEx_INTERFACE_DEFINED__
1401 #define __IOleInPlaceSiteEx_INTERFACE_DEFINED__
1403 DEFINE_GUID(IID_IOleInPlaceSiteEx, 0x9c2cad80, 0x3424, 0x11cf, 0xb6,0x70, 0x00,0xaa,0x00,0x4c,0xd6,0xd8);
1404 #if defined(__cplusplus) && !defined(CINTERFACE)
1405 struct IOleInPlaceSiteEx : public IOleInPlaceSite
1407 virtual HRESULT STDMETHODCALLTYPE OnInPlaceActivateEx(
1408 BOOL* pfNoRedraw,
1409 DWORD dwFlags) = 0;
1411 virtual HRESULT STDMETHODCALLTYPE OnInPlaceDeactivateEx(
1412 BOOL fNoRedraw) = 0;
1414 virtual HRESULT STDMETHODCALLTYPE RequestUIActivate(
1415 ) = 0;
1418 #else
1419 typedef struct IOleInPlaceSiteExVtbl IOleInPlaceSiteExVtbl;
1420 struct IOleInPlaceSiteEx {
1421 const IOleInPlaceSiteExVtbl* lpVtbl;
1423 struct IOleInPlaceSiteExVtbl {
1424 ICOM_MSVTABLE_COMPAT_FIELDS
1426 /*** IUnknown methods ***/
1427 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1428 IOleInPlaceSiteEx* This,
1429 REFIID riid,
1430 void** ppvObject);
1432 ULONG (STDMETHODCALLTYPE *AddRef)(
1433 IOleInPlaceSiteEx* This);
1435 ULONG (STDMETHODCALLTYPE *Release)(
1436 IOleInPlaceSiteEx* This);
1438 /*** IOleWindow methods ***/
1439 HRESULT (STDMETHODCALLTYPE *GetWindow)(
1440 IOleInPlaceSiteEx* This,
1441 HWND* phwnd);
1443 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)(
1444 IOleInPlaceSiteEx* This,
1445 BOOL fEnterMode);
1447 /*** IOleInPlaceSite methods ***/
1448 HRESULT (STDMETHODCALLTYPE *CanInPlaceActivate)(
1449 IOleInPlaceSiteEx* This);
1451 HRESULT (STDMETHODCALLTYPE *OnInPlaceActivate)(
1452 IOleInPlaceSiteEx* This);
1454 HRESULT (STDMETHODCALLTYPE *OnUIActivate)(
1455 IOleInPlaceSiteEx* This);
1457 HRESULT (STDMETHODCALLTYPE *GetWindowContext)(
1458 IOleInPlaceSiteEx* This,
1459 IOleInPlaceFrame** ppFrame,
1460 IOleInPlaceUIWindow** ppDoc,
1461 LPRECT lprcPosRect,
1462 LPRECT lprcClipRect,
1463 LPOLEINPLACEFRAMEINFO lpFrameInfo);
1465 HRESULT (STDMETHODCALLTYPE *Scroll)(
1466 IOleInPlaceSiteEx* This,
1467 SIZE scrollExtant);
1469 HRESULT (STDMETHODCALLTYPE *OnUIDeactivate)(
1470 IOleInPlaceSiteEx* This,
1471 BOOL fUndoable);
1473 HRESULT (STDMETHODCALLTYPE *OnInPlaceDeactivate)(
1474 IOleInPlaceSiteEx* This);
1476 HRESULT (STDMETHODCALLTYPE *DiscardUndoState)(
1477 IOleInPlaceSiteEx* This);
1479 HRESULT (STDMETHODCALLTYPE *DeactivateAndUndo)(
1480 IOleInPlaceSiteEx* This);
1482 HRESULT (STDMETHODCALLTYPE *OnPosRectChange)(
1483 IOleInPlaceSiteEx* This,
1484 LPCRECT lprcPosRect);
1486 /*** IOleInPlaceSiteEx methods ***/
1487 HRESULT (STDMETHODCALLTYPE *OnInPlaceActivateEx)(
1488 IOleInPlaceSiteEx* This,
1489 BOOL* pfNoRedraw,
1490 DWORD dwFlags);
1492 HRESULT (STDMETHODCALLTYPE *OnInPlaceDeactivateEx)(
1493 IOleInPlaceSiteEx* This,
1494 BOOL fNoRedraw);
1496 HRESULT (STDMETHODCALLTYPE *RequestUIActivate)(
1497 IOleInPlaceSiteEx* This);
1501 /*** IUnknown methods ***/
1502 #define IOleInPlaceSiteEx_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1503 #define IOleInPlaceSiteEx_AddRef(p) (p)->lpVtbl->AddRef(p)
1504 #define IOleInPlaceSiteEx_Release(p) (p)->lpVtbl->Release(p)
1505 /*** IOleWindow methods ***/
1506 #define IOleInPlaceSiteEx_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
1507 #define IOleInPlaceSiteEx_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
1508 /*** IOleInPlaceSite methods ***/
1509 #define IOleInPlaceSiteEx_CanInPlaceActivate(p) (p)->lpVtbl->CanInPlaceActivate(p)
1510 #define IOleInPlaceSiteEx_OnInPlaceActivate(p) (p)->lpVtbl->OnInPlaceActivate(p)
1511 #define IOleInPlaceSiteEx_OnUIActivate(p) (p)->lpVtbl->OnUIActivate(p)
1512 #define IOleInPlaceSiteEx_GetWindowContext(p,a,b,c,d,e) (p)->lpVtbl->GetWindowContext(p,a,b,c,d,e)
1513 #define IOleInPlaceSiteEx_Scroll(p,a) (p)->lpVtbl->Scroll(p,a)
1514 #define IOleInPlaceSiteEx_OnUIDeactivate(p,a) (p)->lpVtbl->OnUIDeactivate(p,a)
1515 #define IOleInPlaceSiteEx_OnInPlaceDeactivate(p) (p)->lpVtbl->OnInPlaceDeactivate(p)
1516 #define IOleInPlaceSiteEx_DiscardUndoState(p) (p)->lpVtbl->DiscardUndoState(p)
1517 #define IOleInPlaceSiteEx_DeactivateAndUndo(p) (p)->lpVtbl->DeactivateAndUndo(p)
1518 #define IOleInPlaceSiteEx_OnPosRectChange(p,a) (p)->lpVtbl->OnPosRectChange(p,a)
1519 /*** IOleInPlaceSiteEx methods ***/
1520 #define IOleInPlaceSiteEx_OnInPlaceActivateEx(p,a,b) (p)->lpVtbl->OnInPlaceActivateEx(p,a,b)
1521 #define IOleInPlaceSiteEx_OnInPlaceDeactivateEx(p,a) (p)->lpVtbl->OnInPlaceDeactivateEx(p,a)
1522 #define IOleInPlaceSiteEx_RequestUIActivate(p) (p)->lpVtbl->RequestUIActivate(p)
1524 #endif
1526 #define IOleInPlaceSiteEx_METHODS \
1527 ICOM_MSVTABLE_COMPAT_FIELDS \
1528 /*** IUnknown methods ***/ \
1529 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1530 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1531 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1532 /*** IOleWindow methods ***/ \
1533 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
1534 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
1535 /*** IOleInPlaceSite methods ***/ \
1536 STDMETHOD_(HRESULT,CanInPlaceActivate)(THIS) PURE; \
1537 STDMETHOD_(HRESULT,OnInPlaceActivate)(THIS) PURE; \
1538 STDMETHOD_(HRESULT,OnUIActivate)(THIS) PURE; \
1539 STDMETHOD_(HRESULT,GetWindowContext)(THIS_ IOleInPlaceFrame** ppFrame, IOleInPlaceUIWindow** ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) PURE; \
1540 STDMETHOD_(HRESULT,Scroll)(THIS_ SIZE scrollExtant) PURE; \
1541 STDMETHOD_(HRESULT,OnUIDeactivate)(THIS_ BOOL fUndoable) PURE; \
1542 STDMETHOD_(HRESULT,OnInPlaceDeactivate)(THIS) PURE; \
1543 STDMETHOD_(HRESULT,DiscardUndoState)(THIS) PURE; \
1544 STDMETHOD_(HRESULT,DeactivateAndUndo)(THIS) PURE; \
1545 STDMETHOD_(HRESULT,OnPosRectChange)(THIS_ LPCRECT lprcPosRect) PURE; \
1546 /*** IOleInPlaceSiteEx methods ***/ \
1547 STDMETHOD_(HRESULT,OnInPlaceActivateEx)(THIS_ BOOL* pfNoRedraw, DWORD dwFlags) PURE; \
1548 STDMETHOD_(HRESULT,OnInPlaceDeactivateEx)(THIS_ BOOL fNoRedraw) PURE; \
1549 STDMETHOD_(HRESULT,RequestUIActivate)(THIS) PURE;
1551 HRESULT CALLBACK IOleInPlaceSiteEx_OnInPlaceActivateEx_Proxy(
1552 IOleInPlaceSiteEx* This,
1553 BOOL* pfNoRedraw,
1554 DWORD dwFlags);
1555 void __RPC_STUB IOleInPlaceSiteEx_OnInPlaceActivateEx_Stub(
1556 struct IRpcStubBuffer* This,
1557 struct IRpcChannelBuffer* pRpcChannelBuffer,
1558 PRPC_MESSAGE pRpcMessage,
1559 DWORD* pdwStubPhase);
1560 HRESULT CALLBACK IOleInPlaceSiteEx_OnInPlaceDeactivateEx_Proxy(
1561 IOleInPlaceSiteEx* This,
1562 BOOL fNoRedraw);
1563 void __RPC_STUB IOleInPlaceSiteEx_OnInPlaceDeactivateEx_Stub(
1564 struct IRpcStubBuffer* This,
1565 struct IRpcChannelBuffer* pRpcChannelBuffer,
1566 PRPC_MESSAGE pRpcMessage,
1567 DWORD* pdwStubPhase);
1568 HRESULT CALLBACK IOleInPlaceSiteEx_RequestUIActivate_Proxy(
1569 IOleInPlaceSiteEx* This);
1570 void __RPC_STUB IOleInPlaceSiteEx_RequestUIActivate_Stub(
1571 struct IRpcStubBuffer* This,
1572 struct IRpcChannelBuffer* pRpcChannelBuffer,
1573 PRPC_MESSAGE pRpcMessage,
1574 DWORD* pdwStubPhase);
1576 #endif /* __IOleInPlaceSiteEx_INTERFACE_DEFINED__ */
1578 #ifndef __IOleInPlaceSiteWindowless_FWD_DEFINED__
1579 #define __IOleInPlaceSiteWindowless_FWD_DEFINED__
1580 typedef struct IOleInPlaceSiteWindowless IOleInPlaceSiteWindowless;
1581 #endif
1583 typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS;
1585 typedef enum tagOLEDCFLAGS {
1586 OLEDC_NODRAW = 0x1,
1587 OLEDC_PAINTBKGND = 0x2,
1588 OLEDC_OFFSCREEN = 0x4
1589 } OLEDCFLAGS;
1591 /*****************************************************************************
1592 * IOleInPlaceSiteWindowless interface
1594 #ifndef __IOleInPlaceSiteWindowless_INTERFACE_DEFINED__
1595 #define __IOleInPlaceSiteWindowless_INTERFACE_DEFINED__
1597 DEFINE_GUID(IID_IOleInPlaceSiteWindowless, 0x922eada0, 0x3424, 0x11cf, 0xb6,0x70, 0x00,0xaa,0x00,0x4c,0xd6,0xd8);
1598 #if defined(__cplusplus) && !defined(CINTERFACE)
1599 struct IOleInPlaceSiteWindowless : public IOleInPlaceSiteEx
1601 virtual HRESULT STDMETHODCALLTYPE CanWindowlessActivate(
1602 ) = 0;
1604 virtual HRESULT STDMETHODCALLTYPE GetCapture(
1605 ) = 0;
1607 virtual HRESULT STDMETHODCALLTYPE SetCapture(
1608 BOOL fCapture) = 0;
1610 virtual HRESULT STDMETHODCALLTYPE GetFocus(
1611 ) = 0;
1613 virtual HRESULT STDMETHODCALLTYPE SetFocus(
1614 BOOL fFocus) = 0;
1616 virtual HRESULT STDMETHODCALLTYPE GetDC(
1617 LPCRECT pRect,
1618 DWORD grfFlags,
1619 HDC* phDC) = 0;
1621 virtual HRESULT STDMETHODCALLTYPE ReleaseDC(
1622 HDC hDC) = 0;
1624 virtual HRESULT STDMETHODCALLTYPE InvalidateRect(
1625 LPCRECT pRect,
1626 BOOL fErase) = 0;
1628 virtual HRESULT STDMETHODCALLTYPE InvalidateRgn(
1629 HRGN hRGN,
1630 BOOL fErase) = 0;
1632 virtual HRESULT STDMETHODCALLTYPE ScrollRect(
1633 INT dx,
1634 INT dy,
1635 LPCRECT pRectScroll,
1636 LPCRECT pRectClip) = 0;
1638 virtual HRESULT STDMETHODCALLTYPE AdjustRect(
1639 LPRECT prc) = 0;
1641 virtual HRESULT STDMETHODCALLTYPE OnDefWindowMessage(
1642 UINT msg,
1643 WPARAM wParam,
1644 LPARAM lParam,
1645 LRESULT* plResult) = 0;
1648 #else
1649 typedef struct IOleInPlaceSiteWindowlessVtbl IOleInPlaceSiteWindowlessVtbl;
1650 struct IOleInPlaceSiteWindowless {
1651 const IOleInPlaceSiteWindowlessVtbl* lpVtbl;
1653 struct IOleInPlaceSiteWindowlessVtbl {
1654 ICOM_MSVTABLE_COMPAT_FIELDS
1656 /*** IUnknown methods ***/
1657 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1658 IOleInPlaceSiteWindowless* This,
1659 REFIID riid,
1660 void** ppvObject);
1662 ULONG (STDMETHODCALLTYPE *AddRef)(
1663 IOleInPlaceSiteWindowless* This);
1665 ULONG (STDMETHODCALLTYPE *Release)(
1666 IOleInPlaceSiteWindowless* This);
1668 /*** IOleWindow methods ***/
1669 HRESULT (STDMETHODCALLTYPE *GetWindow)(
1670 IOleInPlaceSiteWindowless* This,
1671 HWND* phwnd);
1673 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)(
1674 IOleInPlaceSiteWindowless* This,
1675 BOOL fEnterMode);
1677 /*** IOleInPlaceSite methods ***/
1678 HRESULT (STDMETHODCALLTYPE *CanInPlaceActivate)(
1679 IOleInPlaceSiteWindowless* This);
1681 HRESULT (STDMETHODCALLTYPE *OnInPlaceActivate)(
1682 IOleInPlaceSiteWindowless* This);
1684 HRESULT (STDMETHODCALLTYPE *OnUIActivate)(
1685 IOleInPlaceSiteWindowless* This);
1687 HRESULT (STDMETHODCALLTYPE *GetWindowContext)(
1688 IOleInPlaceSiteWindowless* This,
1689 IOleInPlaceFrame** ppFrame,
1690 IOleInPlaceUIWindow** ppDoc,
1691 LPRECT lprcPosRect,
1692 LPRECT lprcClipRect,
1693 LPOLEINPLACEFRAMEINFO lpFrameInfo);
1695 HRESULT (STDMETHODCALLTYPE *Scroll)(
1696 IOleInPlaceSiteWindowless* This,
1697 SIZE scrollExtant);
1699 HRESULT (STDMETHODCALLTYPE *OnUIDeactivate)(
1700 IOleInPlaceSiteWindowless* This,
1701 BOOL fUndoable);
1703 HRESULT (STDMETHODCALLTYPE *OnInPlaceDeactivate)(
1704 IOleInPlaceSiteWindowless* This);
1706 HRESULT (STDMETHODCALLTYPE *DiscardUndoState)(
1707 IOleInPlaceSiteWindowless* This);
1709 HRESULT (STDMETHODCALLTYPE *DeactivateAndUndo)(
1710 IOleInPlaceSiteWindowless* This);
1712 HRESULT (STDMETHODCALLTYPE *OnPosRectChange)(
1713 IOleInPlaceSiteWindowless* This,
1714 LPCRECT lprcPosRect);
1716 /*** IOleInPlaceSiteEx methods ***/
1717 HRESULT (STDMETHODCALLTYPE *OnInPlaceActivateEx)(
1718 IOleInPlaceSiteWindowless* This,
1719 BOOL* pfNoRedraw,
1720 DWORD dwFlags);
1722 HRESULT (STDMETHODCALLTYPE *OnInPlaceDeactivateEx)(
1723 IOleInPlaceSiteWindowless* This,
1724 BOOL fNoRedraw);
1726 HRESULT (STDMETHODCALLTYPE *RequestUIActivate)(
1727 IOleInPlaceSiteWindowless* This);
1729 /*** IOleInPlaceSiteWindowless methods ***/
1730 HRESULT (STDMETHODCALLTYPE *CanWindowlessActivate)(
1731 IOleInPlaceSiteWindowless* This);
1733 HRESULT (STDMETHODCALLTYPE *GetCapture)(
1734 IOleInPlaceSiteWindowless* This);
1736 HRESULT (STDMETHODCALLTYPE *SetCapture)(
1737 IOleInPlaceSiteWindowless* This,
1738 BOOL fCapture);
1740 HRESULT (STDMETHODCALLTYPE *GetFocus)(
1741 IOleInPlaceSiteWindowless* This);
1743 HRESULT (STDMETHODCALLTYPE *SetFocus)(
1744 IOleInPlaceSiteWindowless* This,
1745 BOOL fFocus);
1747 HRESULT (STDMETHODCALLTYPE *GetDC)(
1748 IOleInPlaceSiteWindowless* This,
1749 LPCRECT pRect,
1750 DWORD grfFlags,
1751 HDC* phDC);
1753 HRESULT (STDMETHODCALLTYPE *ReleaseDC)(
1754 IOleInPlaceSiteWindowless* This,
1755 HDC hDC);
1757 HRESULT (STDMETHODCALLTYPE *InvalidateRect)(
1758 IOleInPlaceSiteWindowless* This,
1759 LPCRECT pRect,
1760 BOOL fErase);
1762 HRESULT (STDMETHODCALLTYPE *InvalidateRgn)(
1763 IOleInPlaceSiteWindowless* This,
1764 HRGN hRGN,
1765 BOOL fErase);
1767 HRESULT (STDMETHODCALLTYPE *ScrollRect)(
1768 IOleInPlaceSiteWindowless* This,
1769 INT dx,
1770 INT dy,
1771 LPCRECT pRectScroll,
1772 LPCRECT pRectClip);
1774 HRESULT (STDMETHODCALLTYPE *AdjustRect)(
1775 IOleInPlaceSiteWindowless* This,
1776 LPRECT prc);
1778 HRESULT (STDMETHODCALLTYPE *OnDefWindowMessage)(
1779 IOleInPlaceSiteWindowless* This,
1780 UINT msg,
1781 WPARAM wParam,
1782 LPARAM lParam,
1783 LRESULT* plResult);
1787 /*** IUnknown methods ***/
1788 #define IOleInPlaceSiteWindowless_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1789 #define IOleInPlaceSiteWindowless_AddRef(p) (p)->lpVtbl->AddRef(p)
1790 #define IOleInPlaceSiteWindowless_Release(p) (p)->lpVtbl->Release(p)
1791 /*** IOleWindow methods ***/
1792 #define IOleInPlaceSiteWindowless_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
1793 #define IOleInPlaceSiteWindowless_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
1794 /*** IOleInPlaceSite methods ***/
1795 #define IOleInPlaceSiteWindowless_CanInPlaceActivate(p) (p)->lpVtbl->CanInPlaceActivate(p)
1796 #define IOleInPlaceSiteWindowless_OnInPlaceActivate(p) (p)->lpVtbl->OnInPlaceActivate(p)
1797 #define IOleInPlaceSiteWindowless_OnUIActivate(p) (p)->lpVtbl->OnUIActivate(p)
1798 #define IOleInPlaceSiteWindowless_GetWindowContext(p,a,b,c,d,e) (p)->lpVtbl->GetWindowContext(p,a,b,c,d,e)
1799 #define IOleInPlaceSiteWindowless_Scroll(p,a) (p)->lpVtbl->Scroll(p,a)
1800 #define IOleInPlaceSiteWindowless_OnUIDeactivate(p,a) (p)->lpVtbl->OnUIDeactivate(p,a)
1801 #define IOleInPlaceSiteWindowless_OnInPlaceDeactivate(p) (p)->lpVtbl->OnInPlaceDeactivate(p)
1802 #define IOleInPlaceSiteWindowless_DiscardUndoState(p) (p)->lpVtbl->DiscardUndoState(p)
1803 #define IOleInPlaceSiteWindowless_DeactivateAndUndo(p) (p)->lpVtbl->DeactivateAndUndo(p)
1804 #define IOleInPlaceSiteWindowless_OnPosRectChange(p,a) (p)->lpVtbl->OnPosRectChange(p,a)
1805 /*** IOleInPlaceSiteEx methods ***/
1806 #define IOleInPlaceSiteWindowless_OnInPlaceActivateEx(p,a,b) (p)->lpVtbl->OnInPlaceActivateEx(p,a,b)
1807 #define IOleInPlaceSiteWindowless_OnInPlaceDeactivateEx(p,a) (p)->lpVtbl->OnInPlaceDeactivateEx(p,a)
1808 #define IOleInPlaceSiteWindowless_RequestUIActivate(p) (p)->lpVtbl->RequestUIActivate(p)
1809 /*** IOleInPlaceSiteWindowless methods ***/
1810 #define IOleInPlaceSiteWindowless_CanWindowlessActivate(p) (p)->lpVtbl->CanWindowlessActivate(p)
1811 #define IOleInPlaceSiteWindowless_GetCapture(p) (p)->lpVtbl->GetCapture(p)
1812 #define IOleInPlaceSiteWindowless_SetCapture(p,a) (p)->lpVtbl->SetCapture(p,a)
1813 #define IOleInPlaceSiteWindowless_GetFocus(p) (p)->lpVtbl->GetFocus(p)
1814 #define IOleInPlaceSiteWindowless_SetFocus(p,a) (p)->lpVtbl->SetFocus(p,a)
1815 #define IOleInPlaceSiteWindowless_GetDC(p,a,b,c) (p)->lpVtbl->GetDC(p,a,b,c)
1816 #define IOleInPlaceSiteWindowless_ReleaseDC(p,a) (p)->lpVtbl->ReleaseDC(p,a)
1817 #define IOleInPlaceSiteWindowless_InvalidateRect(p,a,b) (p)->lpVtbl->InvalidateRect(p,a,b)
1818 #define IOleInPlaceSiteWindowless_InvalidateRgn(p,a,b) (p)->lpVtbl->InvalidateRgn(p,a,b)
1819 #define IOleInPlaceSiteWindowless_ScrollRect(p,a,b,c,d) (p)->lpVtbl->ScrollRect(p,a,b,c,d)
1820 #define IOleInPlaceSiteWindowless_AdjustRect(p,a) (p)->lpVtbl->AdjustRect(p,a)
1821 #define IOleInPlaceSiteWindowless_OnDefWindowMessage(p,a,b,c,d) (p)->lpVtbl->OnDefWindowMessage(p,a,b,c,d)
1823 #endif
1825 #define IOleInPlaceSiteWindowless_METHODS \
1826 ICOM_MSVTABLE_COMPAT_FIELDS \
1827 /*** IUnknown methods ***/ \
1828 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1829 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1830 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1831 /*** IOleWindow methods ***/ \
1832 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
1833 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
1834 /*** IOleInPlaceSite methods ***/ \
1835 STDMETHOD_(HRESULT,CanInPlaceActivate)(THIS) PURE; \
1836 STDMETHOD_(HRESULT,OnInPlaceActivate)(THIS) PURE; \
1837 STDMETHOD_(HRESULT,OnUIActivate)(THIS) PURE; \
1838 STDMETHOD_(HRESULT,GetWindowContext)(THIS_ IOleInPlaceFrame** ppFrame, IOleInPlaceUIWindow** ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) PURE; \
1839 STDMETHOD_(HRESULT,Scroll)(THIS_ SIZE scrollExtant) PURE; \
1840 STDMETHOD_(HRESULT,OnUIDeactivate)(THIS_ BOOL fUndoable) PURE; \
1841 STDMETHOD_(HRESULT,OnInPlaceDeactivate)(THIS) PURE; \
1842 STDMETHOD_(HRESULT,DiscardUndoState)(THIS) PURE; \
1843 STDMETHOD_(HRESULT,DeactivateAndUndo)(THIS) PURE; \
1844 STDMETHOD_(HRESULT,OnPosRectChange)(THIS_ LPCRECT lprcPosRect) PURE; \
1845 /*** IOleInPlaceSiteEx methods ***/ \
1846 STDMETHOD_(HRESULT,OnInPlaceActivateEx)(THIS_ BOOL* pfNoRedraw, DWORD dwFlags) PURE; \
1847 STDMETHOD_(HRESULT,OnInPlaceDeactivateEx)(THIS_ BOOL fNoRedraw) PURE; \
1848 STDMETHOD_(HRESULT,RequestUIActivate)(THIS) PURE; \
1849 /*** IOleInPlaceSiteWindowless methods ***/ \
1850 STDMETHOD_(HRESULT,CanWindowlessActivate)(THIS) PURE; \
1851 STDMETHOD_(HRESULT,GetCapture)(THIS) PURE; \
1852 STDMETHOD_(HRESULT,SetCapture)(THIS_ BOOL fCapture) PURE; \
1853 STDMETHOD_(HRESULT,GetFocus)(THIS) PURE; \
1854 STDMETHOD_(HRESULT,SetFocus)(THIS_ BOOL fFocus) PURE; \
1855 STDMETHOD_(HRESULT,GetDC)(THIS_ LPCRECT pRect, DWORD grfFlags, HDC* phDC) PURE; \
1856 STDMETHOD_(HRESULT,ReleaseDC)(THIS_ HDC hDC) PURE; \
1857 STDMETHOD_(HRESULT,InvalidateRect)(THIS_ LPCRECT pRect, BOOL fErase) PURE; \
1858 STDMETHOD_(HRESULT,InvalidateRgn)(THIS_ HRGN hRGN, BOOL fErase) PURE; \
1859 STDMETHOD_(HRESULT,ScrollRect)(THIS_ INT dx, INT dy, LPCRECT pRectScroll, LPCRECT pRectClip) PURE; \
1860 STDMETHOD_(HRESULT,AdjustRect)(THIS_ LPRECT prc) PURE; \
1861 STDMETHOD_(HRESULT,OnDefWindowMessage)(THIS_ UINT msg, WPARAM wParam, LPARAM lParam, LRESULT* plResult) PURE;
1863 HRESULT CALLBACK IOleInPlaceSiteWindowless_CanWindowlessActivate_Proxy(
1864 IOleInPlaceSiteWindowless* This);
1865 void __RPC_STUB IOleInPlaceSiteWindowless_CanWindowlessActivate_Stub(
1866 struct IRpcStubBuffer* This,
1867 struct IRpcChannelBuffer* pRpcChannelBuffer,
1868 PRPC_MESSAGE pRpcMessage,
1869 DWORD* pdwStubPhase);
1870 HRESULT CALLBACK IOleInPlaceSiteWindowless_GetCapture_Proxy(
1871 IOleInPlaceSiteWindowless* This);
1872 void __RPC_STUB IOleInPlaceSiteWindowless_GetCapture_Stub(
1873 struct IRpcStubBuffer* This,
1874 struct IRpcChannelBuffer* pRpcChannelBuffer,
1875 PRPC_MESSAGE pRpcMessage,
1876 DWORD* pdwStubPhase);
1877 HRESULT CALLBACK IOleInPlaceSiteWindowless_SetCapture_Proxy(
1878 IOleInPlaceSiteWindowless* This,
1879 BOOL fCapture);
1880 void __RPC_STUB IOleInPlaceSiteWindowless_SetCapture_Stub(
1881 struct IRpcStubBuffer* This,
1882 struct IRpcChannelBuffer* pRpcChannelBuffer,
1883 PRPC_MESSAGE pRpcMessage,
1884 DWORD* pdwStubPhase);
1885 HRESULT CALLBACK IOleInPlaceSiteWindowless_GetFocus_Proxy(
1886 IOleInPlaceSiteWindowless* This);
1887 void __RPC_STUB IOleInPlaceSiteWindowless_GetFocus_Stub(
1888 struct IRpcStubBuffer* This,
1889 struct IRpcChannelBuffer* pRpcChannelBuffer,
1890 PRPC_MESSAGE pRpcMessage,
1891 DWORD* pdwStubPhase);
1892 HRESULT CALLBACK IOleInPlaceSiteWindowless_SetFocus_Proxy(
1893 IOleInPlaceSiteWindowless* This,
1894 BOOL fFocus);
1895 void __RPC_STUB IOleInPlaceSiteWindowless_SetFocus_Stub(
1896 struct IRpcStubBuffer* This,
1897 struct IRpcChannelBuffer* pRpcChannelBuffer,
1898 PRPC_MESSAGE pRpcMessage,
1899 DWORD* pdwStubPhase);
1900 HRESULT CALLBACK IOleInPlaceSiteWindowless_GetDC_Proxy(
1901 IOleInPlaceSiteWindowless* This,
1902 LPCRECT pRect,
1903 DWORD grfFlags,
1904 HDC* phDC);
1905 void __RPC_STUB IOleInPlaceSiteWindowless_GetDC_Stub(
1906 struct IRpcStubBuffer* This,
1907 struct IRpcChannelBuffer* pRpcChannelBuffer,
1908 PRPC_MESSAGE pRpcMessage,
1909 DWORD* pdwStubPhase);
1910 HRESULT CALLBACK IOleInPlaceSiteWindowless_ReleaseDC_Proxy(
1911 IOleInPlaceSiteWindowless* This,
1912 HDC hDC);
1913 void __RPC_STUB IOleInPlaceSiteWindowless_ReleaseDC_Stub(
1914 struct IRpcStubBuffer* This,
1915 struct IRpcChannelBuffer* pRpcChannelBuffer,
1916 PRPC_MESSAGE pRpcMessage,
1917 DWORD* pdwStubPhase);
1918 HRESULT CALLBACK IOleInPlaceSiteWindowless_InvalidateRect_Proxy(
1919 IOleInPlaceSiteWindowless* This,
1920 LPCRECT pRect,
1921 BOOL fErase);
1922 void __RPC_STUB IOleInPlaceSiteWindowless_InvalidateRect_Stub(
1923 struct IRpcStubBuffer* This,
1924 struct IRpcChannelBuffer* pRpcChannelBuffer,
1925 PRPC_MESSAGE pRpcMessage,
1926 DWORD* pdwStubPhase);
1927 HRESULT CALLBACK IOleInPlaceSiteWindowless_InvalidateRgn_Proxy(
1928 IOleInPlaceSiteWindowless* This,
1929 HRGN hRGN,
1930 BOOL fErase);
1931 void __RPC_STUB IOleInPlaceSiteWindowless_InvalidateRgn_Stub(
1932 struct IRpcStubBuffer* This,
1933 struct IRpcChannelBuffer* pRpcChannelBuffer,
1934 PRPC_MESSAGE pRpcMessage,
1935 DWORD* pdwStubPhase);
1936 HRESULT CALLBACK IOleInPlaceSiteWindowless_ScrollRect_Proxy(
1937 IOleInPlaceSiteWindowless* This,
1938 INT dx,
1939 INT dy,
1940 LPCRECT pRectScroll,
1941 LPCRECT pRectClip);
1942 void __RPC_STUB IOleInPlaceSiteWindowless_ScrollRect_Stub(
1943 struct IRpcStubBuffer* This,
1944 struct IRpcChannelBuffer* pRpcChannelBuffer,
1945 PRPC_MESSAGE pRpcMessage,
1946 DWORD* pdwStubPhase);
1947 HRESULT CALLBACK IOleInPlaceSiteWindowless_AdjustRect_Proxy(
1948 IOleInPlaceSiteWindowless* This,
1949 LPRECT prc);
1950 void __RPC_STUB IOleInPlaceSiteWindowless_AdjustRect_Stub(
1951 struct IRpcStubBuffer* This,
1952 struct IRpcChannelBuffer* pRpcChannelBuffer,
1953 PRPC_MESSAGE pRpcMessage,
1954 DWORD* pdwStubPhase);
1955 HRESULT CALLBACK IOleInPlaceSiteWindowless_OnDefWindowMessage_Proxy(
1956 IOleInPlaceSiteWindowless* This,
1957 UINT msg,
1958 WPARAM wParam,
1959 LPARAM lParam,
1960 LRESULT* plResult);
1961 void __RPC_STUB IOleInPlaceSiteWindowless_OnDefWindowMessage_Stub(
1962 struct IRpcStubBuffer* This,
1963 struct IRpcChannelBuffer* pRpcChannelBuffer,
1964 PRPC_MESSAGE pRpcMessage,
1965 DWORD* pdwStubPhase);
1967 #endif /* __IOleInPlaceSiteWindowless_INTERFACE_DEFINED__ */
1969 #ifndef __IOleInPlaceObjectWindowless_FWD_DEFINED__
1970 #define __IOleInPlaceObjectWindowless_FWD_DEFINED__
1971 typedef struct IOleInPlaceObjectWindowless IOleInPlaceObjectWindowless;
1972 #endif
1974 typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS;
1976 /*****************************************************************************
1977 * IOleInPlaceObjectWindowless interface
1979 #ifndef __IOleInPlaceObjectWindowless_INTERFACE_DEFINED__
1980 #define __IOleInPlaceObjectWindowless_INTERFACE_DEFINED__
1982 DEFINE_GUID(IID_IOleInPlaceObjectWindowless, 0x1c2056cc, 0x5ef4, 0x101b, 0x8b,0xc8, 0x00,0xaa,0x00,0x3e,0x3b,0x29);
1983 #if defined(__cplusplus) && !defined(CINTERFACE)
1984 struct IOleInPlaceObjectWindowless : public IOleInPlaceObject
1986 virtual HRESULT STDMETHODCALLTYPE OnWindowMessage(
1987 UINT msg,
1988 WPARAM wParam,
1989 LPARAM lParam,
1990 LRESULT* plResult) = 0;
1992 virtual HRESULT STDMETHODCALLTYPE GetDropTarget(
1993 IDropTarget** ppDropTarget) = 0;
1996 #else
1997 typedef struct IOleInPlaceObjectWindowlessVtbl IOleInPlaceObjectWindowlessVtbl;
1998 struct IOleInPlaceObjectWindowless {
1999 const IOleInPlaceObjectWindowlessVtbl* lpVtbl;
2001 struct IOleInPlaceObjectWindowlessVtbl {
2002 ICOM_MSVTABLE_COMPAT_FIELDS
2004 /*** IUnknown methods ***/
2005 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2006 IOleInPlaceObjectWindowless* This,
2007 REFIID riid,
2008 void** ppvObject);
2010 ULONG (STDMETHODCALLTYPE *AddRef)(
2011 IOleInPlaceObjectWindowless* This);
2013 ULONG (STDMETHODCALLTYPE *Release)(
2014 IOleInPlaceObjectWindowless* This);
2016 /*** IOleWindow methods ***/
2017 HRESULT (STDMETHODCALLTYPE *GetWindow)(
2018 IOleInPlaceObjectWindowless* This,
2019 HWND* phwnd);
2021 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)(
2022 IOleInPlaceObjectWindowless* This,
2023 BOOL fEnterMode);
2025 /*** IOleInPlaceObject methods ***/
2026 HRESULT (STDMETHODCALLTYPE *InPlaceDeactivate)(
2027 IOleInPlaceObjectWindowless* This);
2029 HRESULT (STDMETHODCALLTYPE *UIDeactivate)(
2030 IOleInPlaceObjectWindowless* This);
2032 HRESULT (STDMETHODCALLTYPE *SetObjectRects)(
2033 IOleInPlaceObjectWindowless* This,
2034 LPCRECT lprcPosRect,
2035 LPCRECT lprcClipRect);
2037 HRESULT (STDMETHODCALLTYPE *ReactivateAndUndo)(
2038 IOleInPlaceObjectWindowless* This);
2040 /*** IOleInPlaceObjectWindowless methods ***/
2041 HRESULT (STDMETHODCALLTYPE *OnWindowMessage)(
2042 IOleInPlaceObjectWindowless* This,
2043 UINT msg,
2044 WPARAM wParam,
2045 LPARAM lParam,
2046 LRESULT* plResult);
2048 HRESULT (STDMETHODCALLTYPE *GetDropTarget)(
2049 IOleInPlaceObjectWindowless* This,
2050 IDropTarget** ppDropTarget);
2054 /*** IUnknown methods ***/
2055 #define IOleInPlaceObjectWindowless_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2056 #define IOleInPlaceObjectWindowless_AddRef(p) (p)->lpVtbl->AddRef(p)
2057 #define IOleInPlaceObjectWindowless_Release(p) (p)->lpVtbl->Release(p)
2058 /*** IOleWindow methods ***/
2059 #define IOleInPlaceObjectWindowless_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
2060 #define IOleInPlaceObjectWindowless_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
2061 /*** IOleInPlaceObject methods ***/
2062 #define IOleInPlaceObjectWindowless_InPlaceDeactivate(p) (p)->lpVtbl->InPlaceDeactivate(p)
2063 #define IOleInPlaceObjectWindowless_UIDeactivate(p) (p)->lpVtbl->UIDeactivate(p)
2064 #define IOleInPlaceObjectWindowless_SetObjectRects(p,a,b) (p)->lpVtbl->SetObjectRects(p,a,b)
2065 #define IOleInPlaceObjectWindowless_ReactivateAndUndo(p) (p)->lpVtbl->ReactivateAndUndo(p)
2066 /*** IOleInPlaceObjectWindowless methods ***/
2067 #define IOleInPlaceObjectWindowless_OnWindowMessage(p,a,b,c,d) (p)->lpVtbl->OnWindowMessage(p,a,b,c,d)
2068 #define IOleInPlaceObjectWindowless_GetDropTarget(p,a) (p)->lpVtbl->GetDropTarget(p,a)
2070 #endif
2072 #define IOleInPlaceObjectWindowless_METHODS \
2073 ICOM_MSVTABLE_COMPAT_FIELDS \
2074 /*** IUnknown methods ***/ \
2075 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2076 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2077 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2078 /*** IOleWindow methods ***/ \
2079 STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
2080 STDMETHOD_(HRESULT,ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; \
2081 /*** IOleInPlaceObject methods ***/ \
2082 STDMETHOD_(HRESULT,InPlaceDeactivate)(THIS) PURE; \
2083 STDMETHOD_(HRESULT,UIDeactivate)(THIS) PURE; \
2084 STDMETHOD_(HRESULT,SetObjectRects)(THIS_ LPCRECT lprcPosRect, LPCRECT lprcClipRect) PURE; \
2085 STDMETHOD_(HRESULT,ReactivateAndUndo)(THIS) PURE; \
2086 /*** IOleInPlaceObjectWindowless methods ***/ \
2087 STDMETHOD_(HRESULT,OnWindowMessage)(THIS_ UINT msg, WPARAM wParam, LPARAM lParam, LRESULT* plResult) PURE; \
2088 STDMETHOD_(HRESULT,GetDropTarget)(THIS_ IDropTarget** ppDropTarget) PURE;
2090 HRESULT CALLBACK IOleInPlaceObjectWindowless_OnWindowMessage_Proxy(
2091 IOleInPlaceObjectWindowless* This,
2092 UINT msg,
2093 WPARAM wParam,
2094 LPARAM lParam,
2095 LRESULT* plResult);
2096 void __RPC_STUB IOleInPlaceObjectWindowless_OnWindowMessage_Stub(
2097 struct IRpcStubBuffer* This,
2098 struct IRpcChannelBuffer* pRpcChannelBuffer,
2099 PRPC_MESSAGE pRpcMessage,
2100 DWORD* pdwStubPhase);
2101 HRESULT CALLBACK IOleInPlaceObjectWindowless_GetDropTarget_Proxy(
2102 IOleInPlaceObjectWindowless* This,
2103 IDropTarget** ppDropTarget);
2104 void __RPC_STUB IOleInPlaceObjectWindowless_GetDropTarget_Stub(
2105 struct IRpcStubBuffer* This,
2106 struct IRpcChannelBuffer* pRpcChannelBuffer,
2107 PRPC_MESSAGE pRpcMessage,
2108 DWORD* pdwStubPhase);
2110 #endif /* __IOleInPlaceObjectWindowless_INTERFACE_DEFINED__ */
2112 #ifndef __IClassFactory2_FWD_DEFINED__
2113 #define __IClassFactory2_FWD_DEFINED__
2114 typedef struct IClassFactory2 IClassFactory2;
2115 #endif
2117 typedef IClassFactory2 *LPCLASSFACTORY2;
2119 typedef struct tagLICINFO {
2120 LONG cbLicInfo;
2121 BOOL fRuntimeKeyAvail;
2122 BOOL fLicVerified;
2123 } LICINFO, *LPLICINFO;
2125 /*****************************************************************************
2126 * IClassFactory2 interface
2128 #ifndef __IClassFactory2_INTERFACE_DEFINED__
2129 #define __IClassFactory2_INTERFACE_DEFINED__
2131 DEFINE_GUID(IID_IClassFactory2, 0xb196b28f, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
2132 #if defined(__cplusplus) && !defined(CINTERFACE)
2133 struct IClassFactory2 : public IClassFactory
2135 virtual HRESULT STDMETHODCALLTYPE GetLicInfo(
2136 LICINFO* pLicInfo) = 0;
2138 virtual HRESULT STDMETHODCALLTYPE RequestLicKey(
2139 DWORD dwReserved,
2140 BSTR* pBstrKey) = 0;
2142 virtual HRESULT STDMETHODCALLTYPE CreateInstanceLic(
2143 IUnknown* pUnkOuter,
2144 IUnknown* pUnkReserved,
2145 REFIID riid,
2146 BSTR bstrKey,
2147 PVOID* ppvObj) = 0;
2150 #else
2151 typedef struct IClassFactory2Vtbl IClassFactory2Vtbl;
2152 struct IClassFactory2 {
2153 const IClassFactory2Vtbl* lpVtbl;
2155 struct IClassFactory2Vtbl {
2156 ICOM_MSVTABLE_COMPAT_FIELDS
2158 /*** IUnknown methods ***/
2159 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2160 IClassFactory2* This,
2161 REFIID riid,
2162 void** ppvObject);
2164 ULONG (STDMETHODCALLTYPE *AddRef)(
2165 IClassFactory2* This);
2167 ULONG (STDMETHODCALLTYPE *Release)(
2168 IClassFactory2* This);
2170 /*** IClassFactory methods ***/
2171 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
2172 IClassFactory2* This,
2173 IUnknown* pUnkOuter,
2174 REFIID riid,
2175 void** ppvObject);
2177 HRESULT (STDMETHODCALLTYPE *LockServer)(
2178 IClassFactory2* This,
2179 BOOL fLock);
2181 /*** IClassFactory2 methods ***/
2182 HRESULT (STDMETHODCALLTYPE *GetLicInfo)(
2183 IClassFactory2* This,
2184 LICINFO* pLicInfo);
2186 HRESULT (STDMETHODCALLTYPE *RequestLicKey)(
2187 IClassFactory2* This,
2188 DWORD dwReserved,
2189 BSTR* pBstrKey);
2191 HRESULT (STDMETHODCALLTYPE *CreateInstanceLic)(
2192 IClassFactory2* This,
2193 IUnknown* pUnkOuter,
2194 IUnknown* pUnkReserved,
2195 REFIID riid,
2196 BSTR bstrKey,
2197 PVOID* ppvObj);
2201 /*** IUnknown methods ***/
2202 #define IClassFactory2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2203 #define IClassFactory2_AddRef(p) (p)->lpVtbl->AddRef(p)
2204 #define IClassFactory2_Release(p) (p)->lpVtbl->Release(p)
2205 /*** IClassFactory methods ***/
2206 #define IClassFactory2_CreateInstance(p,a,b,c) (p)->lpVtbl->CreateInstance(p,a,b,c)
2207 #define IClassFactory2_LockServer(p,a) (p)->lpVtbl->LockServer(p,a)
2208 /*** IClassFactory2 methods ***/
2209 #define IClassFactory2_GetLicInfo(p,a) (p)->lpVtbl->GetLicInfo(p,a)
2210 #define IClassFactory2_RequestLicKey(p,a,b) (p)->lpVtbl->RequestLicKey(p,a,b)
2211 #define IClassFactory2_CreateInstanceLic(p,a,b,c,d,e) (p)->lpVtbl->CreateInstanceLic(p,a,b,c,d,e)
2213 #endif
2215 #define IClassFactory2_METHODS \
2216 ICOM_MSVTABLE_COMPAT_FIELDS \
2217 /*** IUnknown methods ***/ \
2218 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2219 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2220 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2221 /*** IClassFactory methods ***/ \
2222 STDMETHOD_(HRESULT,CreateInstance)(THIS_ IUnknown* pUnkOuter, REFIID riid, void** ppvObject) PURE; \
2223 STDMETHOD_(HRESULT,LockServer)(THIS_ BOOL fLock) PURE; \
2224 /*** IClassFactory2 methods ***/ \
2225 STDMETHOD_(HRESULT,GetLicInfo)(THIS_ LICINFO* pLicInfo) PURE; \
2226 STDMETHOD_(HRESULT,RequestLicKey)(THIS_ DWORD dwReserved, BSTR* pBstrKey) PURE; \
2227 STDMETHOD_(HRESULT,CreateInstanceLic)(THIS_ IUnknown* pUnkOuter, IUnknown* pUnkReserved, REFIID riid, BSTR bstrKey, PVOID* ppvObj) PURE;
2229 HRESULT CALLBACK IClassFactory2_GetLicInfo_Proxy(
2230 IClassFactory2* This,
2231 LICINFO* pLicInfo);
2232 void __RPC_STUB IClassFactory2_GetLicInfo_Stub(
2233 struct IRpcStubBuffer* This,
2234 struct IRpcChannelBuffer* pRpcChannelBuffer,
2235 PRPC_MESSAGE pRpcMessage,
2236 DWORD* pdwStubPhase);
2237 HRESULT CALLBACK IClassFactory2_RequestLicKey_Proxy(
2238 IClassFactory2* This,
2239 DWORD dwReserved,
2240 BSTR* pBstrKey);
2241 void __RPC_STUB IClassFactory2_RequestLicKey_Stub(
2242 struct IRpcStubBuffer* This,
2243 struct IRpcChannelBuffer* pRpcChannelBuffer,
2244 PRPC_MESSAGE pRpcMessage,
2245 DWORD* pdwStubPhase);
2246 HRESULT CALLBACK IClassFactory2_RemoteCreateInstanceLic_Proxy(
2247 IClassFactory2* This,
2248 REFIID riid,
2249 BSTR bstrKey,
2250 IUnknown** ppvObj);
2251 void __RPC_STUB IClassFactory2_RemoteCreateInstanceLic_Stub(
2252 struct IRpcStubBuffer* This,
2253 struct IRpcChannelBuffer* pRpcChannelBuffer,
2254 PRPC_MESSAGE pRpcMessage,
2255 DWORD* pdwStubPhase);
2256 HRESULT CALLBACK IClassFactory2_CreateInstanceLic_Proxy(
2257 IClassFactory2* This,
2258 IUnknown* pUnkOuter,
2259 IUnknown* pUnkReserved,
2260 REFIID riid,
2261 BSTR bstrKey,
2262 PVOID* ppvObj);
2263 HRESULT __RPC_STUB IClassFactory2_CreateInstanceLic_Stub(
2264 IClassFactory2* This,
2265 REFIID riid,
2266 BSTR bstrKey,
2267 IUnknown** ppvObj);
2269 #endif /* __IClassFactory2_INTERFACE_DEFINED__ */
2271 #ifndef __IViewObjectEx_FWD_DEFINED__
2272 #define __IViewObjectEx_FWD_DEFINED__
2273 typedef struct IViewObjectEx IViewObjectEx;
2274 #endif
2276 typedef IViewObjectEx *LPVIEWOBJECTEX;
2278 typedef enum tagVIEWSTATUS {
2279 VIEWSTATUS_OPAQUE = 1,
2280 VIEWSTATUS_SOLIDBKGND = 2,
2281 VIEWSTATUS_DVASPECTOPAQUE = 4,
2282 VIEWSTATUS_DVASPECTTRANSPARENT = 8,
2283 VIEWSTATUS_SURFACE = 16,
2284 VIEWSTATUS_3DSURFACE = 32
2285 } VIEWSTATUS;
2287 typedef enum tagHITRESULT {
2288 HITRESULT_OUTSIDE = 0,
2289 HITRESULT_TRANSPARENT = 1,
2290 HITRESULT_CLOSE = 2,
2291 HITRESULT_HIT = 3
2292 } HITRESULT;
2294 typedef enum tagDVASPECT2 {
2295 DVASPECT_OPAQUE = 16,
2296 DVASPECT_TRANSPARENT = 32
2297 } DVASPECT2;
2299 typedef struct tagExtentInfo {
2300 ULONG cb;
2301 DWORD dwExtentMode;
2302 SIZEL sizelProposed;
2303 } DVEXTENTINFO;
2305 typedef enum tagAspectInfoFlag {
2306 DVASPECTINFOFLAG_CANOPTIMIZE = 1
2307 } DVASPECTINFOFLAG;
2309 typedef struct tagAspectInfo {
2310 ULONG cb;
2311 DWORD dwFlags;
2312 } DVASPECTINFO;
2314 /*****************************************************************************
2315 * IViewObjectEx interface
2317 #ifndef __IViewObjectEx_INTERFACE_DEFINED__
2318 #define __IViewObjectEx_INTERFACE_DEFINED__
2320 DEFINE_GUID(IID_IViewObjectEx, 0x3af24292, 0x0c96, 0x11ce, 0xa0,0xcf, 0x00,0xaa,0x00,0x60,0x0a,0xb8);
2321 #if defined(__cplusplus) && !defined(CINTERFACE)
2322 struct IViewObjectEx : public IViewObject2
2324 virtual HRESULT STDMETHODCALLTYPE GetRect(
2325 DWORD dwAspect,
2326 LPRECTL pRect) = 0;
2328 virtual HRESULT STDMETHODCALLTYPE GetViewStatus(
2329 DWORD* pdwStatus) = 0;
2331 virtual HRESULT STDMETHODCALLTYPE QueryHitPoint(
2332 DWORD dwAspect,
2333 LPCRECT pRectBounds,
2334 POINT ptlLoc,
2335 LONG lCloseHint,
2336 DWORD* pHitResult) = 0;
2338 virtual HRESULT STDMETHODCALLTYPE QueryHitRect(
2339 DWORD dwAspect,
2340 LPCRECT pRectBounds,
2341 LPCRECT pRectLoc,
2342 LONG lCloseHint,
2343 DWORD* pHitResult) = 0;
2345 virtual HRESULT STDMETHODCALLTYPE GetNaturalExtent(
2346 DWORD dwAspect,
2347 LONG lindex,
2348 DVTARGETDEVICE* ptd,
2349 HDC hicTargetDev,
2350 DVEXTENTINFO* pExtentInfo,
2351 LPSIZEL pSizel) = 0;
2354 #else
2355 typedef struct IViewObjectExVtbl IViewObjectExVtbl;
2356 struct IViewObjectEx {
2357 const IViewObjectExVtbl* lpVtbl;
2359 struct IViewObjectExVtbl {
2360 ICOM_MSVTABLE_COMPAT_FIELDS
2362 /*** IUnknown methods ***/
2363 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2364 IViewObjectEx* This,
2365 REFIID riid,
2366 void** ppvObject);
2368 ULONG (STDMETHODCALLTYPE *AddRef)(
2369 IViewObjectEx* This);
2371 ULONG (STDMETHODCALLTYPE *Release)(
2372 IViewObjectEx* This);
2374 /*** IViewObject methods ***/
2375 HRESULT (STDMETHODCALLTYPE *Draw)(
2376 IViewObjectEx* This,
2377 DWORD dwDrawAspect,
2378 LONG lindex,
2379 void* pvAspect,
2380 DVTARGETDEVICE* ptd,
2381 HDC hdcTargetDev,
2382 HDC hdcDraw,
2383 LPCRECTL lprcBounds,
2384 LPCRECTL lprcWBounds,
2385 BOOL (STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR dwContinue),
2386 ULONG_PTR dwContinue);
2388 HRESULT (STDMETHODCALLTYPE *GetColorSet)(
2389 IViewObjectEx* This,
2390 DWORD dwDrawAspect,
2391 LONG lindex,
2392 void* pvAspect,
2393 DVTARGETDEVICE* ptd,
2394 HDC hicTargetDev,
2395 LOGPALETTE** ppColorSet);
2397 HRESULT (STDMETHODCALLTYPE *Freeze)(
2398 IViewObjectEx* This,
2399 DWORD dwDrawAspect,
2400 LONG lindex,
2401 void* pvAspect,
2402 DWORD* pdwFreeze);
2404 HRESULT (STDMETHODCALLTYPE *Unfreeze)(
2405 IViewObjectEx* This,
2406 DWORD dwFreeze);
2408 HRESULT (STDMETHODCALLTYPE *SetAdvise)(
2409 IViewObjectEx* This,
2410 DWORD aspects,
2411 DWORD advf,
2412 IAdviseSink* pAdvSink);
2414 HRESULT (STDMETHODCALLTYPE *GetAdvise)(
2415 IViewObjectEx* This,
2416 DWORD* pAspects,
2417 DWORD* pAdvf,
2418 IAdviseSink** ppAdvSink);
2420 /*** IViewObject2 methods ***/
2421 HRESULT (STDMETHODCALLTYPE *GetExtent)(
2422 IViewObjectEx* This,
2423 DWORD dwDrawAspect,
2424 LONG lindex,
2425 DVTARGETDEVICE* ptd,
2426 LPSIZEL lpsizel);
2428 /*** IViewObjectEx methods ***/
2429 HRESULT (STDMETHODCALLTYPE *GetRect)(
2430 IViewObjectEx* This,
2431 DWORD dwAspect,
2432 LPRECTL pRect);
2434 HRESULT (STDMETHODCALLTYPE *GetViewStatus)(
2435 IViewObjectEx* This,
2436 DWORD* pdwStatus);
2438 HRESULT (STDMETHODCALLTYPE *QueryHitPoint)(
2439 IViewObjectEx* This,
2440 DWORD dwAspect,
2441 LPCRECT pRectBounds,
2442 POINT ptlLoc,
2443 LONG lCloseHint,
2444 DWORD* pHitResult);
2446 HRESULT (STDMETHODCALLTYPE *QueryHitRect)(
2447 IViewObjectEx* This,
2448 DWORD dwAspect,
2449 LPCRECT pRectBounds,
2450 LPCRECT pRectLoc,
2451 LONG lCloseHint,
2452 DWORD* pHitResult);
2454 HRESULT (STDMETHODCALLTYPE *GetNaturalExtent)(
2455 IViewObjectEx* This,
2456 DWORD dwAspect,
2457 LONG lindex,
2458 DVTARGETDEVICE* ptd,
2459 HDC hicTargetDev,
2460 DVEXTENTINFO* pExtentInfo,
2461 LPSIZEL pSizel);
2465 /*** IUnknown methods ***/
2466 #define IViewObjectEx_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2467 #define IViewObjectEx_AddRef(p) (p)->lpVtbl->AddRef(p)
2468 #define IViewObjectEx_Release(p) (p)->lpVtbl->Release(p)
2469 /*** IViewObject methods ***/
2470 #define IViewObjectEx_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)
2471 #define IViewObjectEx_GetColorSet(p,a,b,c,d,e,f) (p)->lpVtbl->GetColorSet(p,a,b,c,d,e,f)
2472 #define IViewObjectEx_Freeze(p,a,b,c,d) (p)->lpVtbl->Freeze(p,a,b,c,d)
2473 #define IViewObjectEx_Unfreeze(p,a) (p)->lpVtbl->Unfreeze(p,a)
2474 #define IViewObjectEx_SetAdvise(p,a,b,c) (p)->lpVtbl->SetAdvise(p,a,b,c)
2475 #define IViewObjectEx_GetAdvise(p,a,b,c) (p)->lpVtbl->GetAdvise(p,a,b,c)
2476 /*** IViewObject2 methods ***/
2477 #define IViewObjectEx_GetExtent(p,a,b,c,d) (p)->lpVtbl->GetExtent(p,a,b,c,d)
2478 /*** IViewObjectEx methods ***/
2479 #define IViewObjectEx_GetRect(p,a,b) (p)->lpVtbl->GetRect(p,a,b)
2480 #define IViewObjectEx_GetViewStatus(p,a) (p)->lpVtbl->GetViewStatus(p,a)
2481 #define IViewObjectEx_QueryHitPoint(p,a,b,c,d,e) (p)->lpVtbl->QueryHitPoint(p,a,b,c,d,e)
2482 #define IViewObjectEx_QueryHitRect(p,a,b,c,d,e) (p)->lpVtbl->QueryHitRect(p,a,b,c,d,e)
2483 #define IViewObjectEx_GetNaturalExtent(p,a,b,c,d,e,f) (p)->lpVtbl->GetNaturalExtent(p,a,b,c,d,e,f)
2485 #endif
2487 #define IViewObjectEx_METHODS \
2488 ICOM_MSVTABLE_COMPAT_FIELDS \
2489 /*** IUnknown methods ***/ \
2490 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2491 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2492 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2493 /*** IViewObject methods ***/ \
2494 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; \
2495 STDMETHOD_(HRESULT,GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DVTARGETDEVICE* ptd, HDC hicTargetDev, LOGPALETTE** ppColorSet) PURE; \
2496 STDMETHOD_(HRESULT,Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void* pvAspect, DWORD* pdwFreeze) PURE; \
2497 STDMETHOD_(HRESULT,Unfreeze)(THIS_ DWORD dwFreeze) PURE; \
2498 STDMETHOD_(HRESULT,SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink* pAdvSink) PURE; \
2499 STDMETHOD_(HRESULT,GetAdvise)(THIS_ DWORD* pAspects, DWORD* pAdvf, IAdviseSink** ppAdvSink) PURE; \
2500 /*** IViewObject2 methods ***/ \
2501 STDMETHOD_(HRESULT,GetExtent)(THIS_ DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE* ptd, LPSIZEL lpsizel) PURE; \
2502 /*** IViewObjectEx methods ***/ \
2503 STDMETHOD_(HRESULT,GetRect)(THIS_ DWORD dwAspect, LPRECTL pRect) PURE; \
2504 STDMETHOD_(HRESULT,GetViewStatus)(THIS_ DWORD* pdwStatus) PURE; \
2505 STDMETHOD_(HRESULT,QueryHitPoint)(THIS_ DWORD dwAspect, LPCRECT pRectBounds, POINT ptlLoc, LONG lCloseHint, DWORD* pHitResult) PURE; \
2506 STDMETHOD_(HRESULT,QueryHitRect)(THIS_ DWORD dwAspect, LPCRECT pRectBounds, LPCRECT pRectLoc, LONG lCloseHint, DWORD* pHitResult) PURE; \
2507 STDMETHOD_(HRESULT,GetNaturalExtent)(THIS_ DWORD dwAspect, LONG lindex, DVTARGETDEVICE* ptd, HDC hicTargetDev, DVEXTENTINFO* pExtentInfo, LPSIZEL pSizel) PURE;
2509 HRESULT CALLBACK IViewObjectEx_GetRect_Proxy(
2510 IViewObjectEx* This,
2511 DWORD dwAspect,
2512 LPRECTL pRect);
2513 void __RPC_STUB IViewObjectEx_GetRect_Stub(
2514 struct IRpcStubBuffer* This,
2515 struct IRpcChannelBuffer* pRpcChannelBuffer,
2516 PRPC_MESSAGE pRpcMessage,
2517 DWORD* pdwStubPhase);
2518 HRESULT CALLBACK IViewObjectEx_GetViewStatus_Proxy(
2519 IViewObjectEx* This,
2520 DWORD* pdwStatus);
2521 void __RPC_STUB IViewObjectEx_GetViewStatus_Stub(
2522 struct IRpcStubBuffer* This,
2523 struct IRpcChannelBuffer* pRpcChannelBuffer,
2524 PRPC_MESSAGE pRpcMessage,
2525 DWORD* pdwStubPhase);
2526 HRESULT CALLBACK IViewObjectEx_QueryHitPoint_Proxy(
2527 IViewObjectEx* This,
2528 DWORD dwAspect,
2529 LPCRECT pRectBounds,
2530 POINT ptlLoc,
2531 LONG lCloseHint,
2532 DWORD* pHitResult);
2533 void __RPC_STUB IViewObjectEx_QueryHitPoint_Stub(
2534 struct IRpcStubBuffer* This,
2535 struct IRpcChannelBuffer* pRpcChannelBuffer,
2536 PRPC_MESSAGE pRpcMessage,
2537 DWORD* pdwStubPhase);
2538 HRESULT CALLBACK IViewObjectEx_QueryHitRect_Proxy(
2539 IViewObjectEx* This,
2540 DWORD dwAspect,
2541 LPCRECT pRectBounds,
2542 LPCRECT pRectLoc,
2543 LONG lCloseHint,
2544 DWORD* pHitResult);
2545 void __RPC_STUB IViewObjectEx_QueryHitRect_Stub(
2546 struct IRpcStubBuffer* This,
2547 struct IRpcChannelBuffer* pRpcChannelBuffer,
2548 PRPC_MESSAGE pRpcMessage,
2549 DWORD* pdwStubPhase);
2550 HRESULT CALLBACK IViewObjectEx_GetNaturalExtent_Proxy(
2551 IViewObjectEx* This,
2552 DWORD dwAspect,
2553 LONG lindex,
2554 DVTARGETDEVICE* ptd,
2555 HDC hicTargetDev,
2556 DVEXTENTINFO* pExtentInfo,
2557 LPSIZEL pSizel);
2558 void __RPC_STUB IViewObjectEx_GetNaturalExtent_Stub(
2559 struct IRpcStubBuffer* This,
2560 struct IRpcChannelBuffer* pRpcChannelBuffer,
2561 PRPC_MESSAGE pRpcMessage,
2562 DWORD* pdwStubPhase);
2564 #endif /* __IViewObjectEx_INTERFACE_DEFINED__ */
2566 #ifndef __IProvideClassInfo_FWD_DEFINED__
2567 #define __IProvideClassInfo_FWD_DEFINED__
2568 typedef struct IProvideClassInfo IProvideClassInfo;
2569 #endif
2571 typedef IProvideClassInfo *LPPROVIDECLASSINFO;
2573 #ifdef __WINESRC__
2574 #undef GetClassInfo
2575 #endif
2576 /*****************************************************************************
2577 * IProvideClassInfo interface
2579 #ifndef __IProvideClassInfo_INTERFACE_DEFINED__
2580 #define __IProvideClassInfo_INTERFACE_DEFINED__
2582 DEFINE_GUID(IID_IProvideClassInfo, 0xb196b283, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
2583 #if defined(__cplusplus) && !defined(CINTERFACE)
2584 struct IProvideClassInfo : public IUnknown
2586 virtual HRESULT STDMETHODCALLTYPE GetClassInfo(
2587 ITypeInfo** ppTI) = 0;
2590 #else
2591 typedef struct IProvideClassInfoVtbl IProvideClassInfoVtbl;
2592 struct IProvideClassInfo {
2593 const IProvideClassInfoVtbl* lpVtbl;
2595 struct IProvideClassInfoVtbl {
2596 ICOM_MSVTABLE_COMPAT_FIELDS
2598 /*** IUnknown methods ***/
2599 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2600 IProvideClassInfo* This,
2601 REFIID riid,
2602 void** ppvObject);
2604 ULONG (STDMETHODCALLTYPE *AddRef)(
2605 IProvideClassInfo* This);
2607 ULONG (STDMETHODCALLTYPE *Release)(
2608 IProvideClassInfo* This);
2610 /*** IProvideClassInfo methods ***/
2611 HRESULT (STDMETHODCALLTYPE *GetClassInfo)(
2612 IProvideClassInfo* This,
2613 ITypeInfo** ppTI);
2617 /*** IUnknown methods ***/
2618 #define IProvideClassInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2619 #define IProvideClassInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
2620 #define IProvideClassInfo_Release(p) (p)->lpVtbl->Release(p)
2621 /*** IProvideClassInfo methods ***/
2622 #define IProvideClassInfo_GetClassInfo(p,a) (p)->lpVtbl->GetClassInfo(p,a)
2624 #endif
2626 #define IProvideClassInfo_METHODS \
2627 ICOM_MSVTABLE_COMPAT_FIELDS \
2628 /*** IUnknown methods ***/ \
2629 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2630 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2631 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2632 /*** IProvideClassInfo methods ***/ \
2633 STDMETHOD_(HRESULT,GetClassInfo)(THIS_ ITypeInfo** ppTI) PURE;
2635 HRESULT CALLBACK IProvideClassInfo_GetClassInfo_Proxy(
2636 IProvideClassInfo* This,
2637 ITypeInfo** ppTI);
2638 void __RPC_STUB IProvideClassInfo_GetClassInfo_Stub(
2639 struct IRpcStubBuffer* This,
2640 struct IRpcChannelBuffer* pRpcChannelBuffer,
2641 PRPC_MESSAGE pRpcMessage,
2642 DWORD* pdwStubPhase);
2644 #endif /* __IProvideClassInfo_INTERFACE_DEFINED__ */
2646 #ifndef __IProvideClassInfo2_FWD_DEFINED__
2647 #define __IProvideClassInfo2_FWD_DEFINED__
2648 typedef struct IProvideClassInfo2 IProvideClassInfo2;
2649 #endif
2651 typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2;
2653 typedef enum tagGUIDKIND {
2654 GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1
2655 } GUIDKIND;
2657 /*****************************************************************************
2658 * IProvideClassInfo2 interface
2660 #ifndef __IProvideClassInfo2_INTERFACE_DEFINED__
2661 #define __IProvideClassInfo2_INTERFACE_DEFINED__
2663 DEFINE_GUID(IID_IProvideClassInfo2, 0xa6bc3ac0, 0xdbaa, 0x11ce, 0x9d,0xe3, 0x00,0xaa,0x00,0x4b,0xb8,0x51);
2664 #if defined(__cplusplus) && !defined(CINTERFACE)
2665 struct IProvideClassInfo2 : public IProvideClassInfo
2667 virtual HRESULT STDMETHODCALLTYPE GetGUID(
2668 DWORD dwGuidKind,
2669 GUID* pGUID) = 0;
2672 #else
2673 typedef struct IProvideClassInfo2Vtbl IProvideClassInfo2Vtbl;
2674 struct IProvideClassInfo2 {
2675 const IProvideClassInfo2Vtbl* lpVtbl;
2677 struct IProvideClassInfo2Vtbl {
2678 ICOM_MSVTABLE_COMPAT_FIELDS
2680 /*** IUnknown methods ***/
2681 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2682 IProvideClassInfo2* This,
2683 REFIID riid,
2684 void** ppvObject);
2686 ULONG (STDMETHODCALLTYPE *AddRef)(
2687 IProvideClassInfo2* This);
2689 ULONG (STDMETHODCALLTYPE *Release)(
2690 IProvideClassInfo2* This);
2692 /*** IProvideClassInfo methods ***/
2693 HRESULT (STDMETHODCALLTYPE *GetClassInfo)(
2694 IProvideClassInfo2* This,
2695 ITypeInfo** ppTI);
2697 /*** IProvideClassInfo2 methods ***/
2698 HRESULT (STDMETHODCALLTYPE *GetGUID)(
2699 IProvideClassInfo2* This,
2700 DWORD dwGuidKind,
2701 GUID* pGUID);
2705 /*** IUnknown methods ***/
2706 #define IProvideClassInfo2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2707 #define IProvideClassInfo2_AddRef(p) (p)->lpVtbl->AddRef(p)
2708 #define IProvideClassInfo2_Release(p) (p)->lpVtbl->Release(p)
2709 /*** IProvideClassInfo methods ***/
2710 #define IProvideClassInfo2_GetClassInfo(p,a) (p)->lpVtbl->GetClassInfo(p,a)
2711 /*** IProvideClassInfo2 methods ***/
2712 #define IProvideClassInfo2_GetGUID(p,a,b) (p)->lpVtbl->GetGUID(p,a,b)
2714 #endif
2716 #define IProvideClassInfo2_METHODS \
2717 ICOM_MSVTABLE_COMPAT_FIELDS \
2718 /*** IUnknown methods ***/ \
2719 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2720 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2721 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2722 /*** IProvideClassInfo methods ***/ \
2723 STDMETHOD_(HRESULT,GetClassInfo)(THIS_ ITypeInfo** ppTI) PURE; \
2724 /*** IProvideClassInfo2 methods ***/ \
2725 STDMETHOD_(HRESULT,GetGUID)(THIS_ DWORD dwGuidKind, GUID* pGUID) PURE;
2727 HRESULT CALLBACK IProvideClassInfo2_GetGUID_Proxy(
2728 IProvideClassInfo2* This,
2729 DWORD dwGuidKind,
2730 GUID* pGUID);
2731 void __RPC_STUB IProvideClassInfo2_GetGUID_Stub(
2732 struct IRpcStubBuffer* This,
2733 struct IRpcChannelBuffer* pRpcChannelBuffer,
2734 PRPC_MESSAGE pRpcMessage,
2735 DWORD* pdwStubPhase);
2737 #endif /* __IProvideClassInfo2_INTERFACE_DEFINED__ */
2739 #ifndef __IConnectionPointContainer_FWD_DEFINED__
2740 #define __IConnectionPointContainer_FWD_DEFINED__
2741 typedef struct IConnectionPointContainer IConnectionPointContainer;
2742 #endif
2744 #ifndef __IEnumConnections_FWD_DEFINED__
2745 #define __IEnumConnections_FWD_DEFINED__
2746 typedef struct IEnumConnections IEnumConnections;
2747 #endif
2749 #ifndef __IConnectionPoint_FWD_DEFINED__
2750 #define __IConnectionPoint_FWD_DEFINED__
2751 typedef struct IConnectionPoint IConnectionPoint;
2752 #endif
2754 typedef IConnectionPoint *PCONNECTIONPOINT, *LPCONNECTIONPOINT;
2756 /*****************************************************************************
2757 * IConnectionPoint interface
2759 #ifndef __IConnectionPoint_INTERFACE_DEFINED__
2760 #define __IConnectionPoint_INTERFACE_DEFINED__
2762 DEFINE_GUID(IID_IConnectionPoint, 0xb196b286, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
2763 #if defined(__cplusplus) && !defined(CINTERFACE)
2764 struct IConnectionPoint : public IUnknown
2766 virtual HRESULT STDMETHODCALLTYPE GetConnectionInterface(
2767 IID* pIID) = 0;
2769 virtual HRESULT STDMETHODCALLTYPE GetConnectionPointContainer(
2770 IConnectionPointContainer** ppCPC) = 0;
2772 virtual HRESULT STDMETHODCALLTYPE Advise(
2773 IUnknown* pUnkSink,
2774 DWORD* pdwCookie) = 0;
2776 virtual HRESULT STDMETHODCALLTYPE Unadvise(
2777 DWORD dwCookie) = 0;
2779 virtual HRESULT STDMETHODCALLTYPE EnumConnections(
2780 IEnumConnections** ppEnum) = 0;
2783 #else
2784 typedef struct IConnectionPointVtbl IConnectionPointVtbl;
2785 struct IConnectionPoint {
2786 const IConnectionPointVtbl* lpVtbl;
2788 struct IConnectionPointVtbl {
2789 ICOM_MSVTABLE_COMPAT_FIELDS
2791 /*** IUnknown methods ***/
2792 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2793 IConnectionPoint* This,
2794 REFIID riid,
2795 void** ppvObject);
2797 ULONG (STDMETHODCALLTYPE *AddRef)(
2798 IConnectionPoint* This);
2800 ULONG (STDMETHODCALLTYPE *Release)(
2801 IConnectionPoint* This);
2803 /*** IConnectionPoint methods ***/
2804 HRESULT (STDMETHODCALLTYPE *GetConnectionInterface)(
2805 IConnectionPoint* This,
2806 IID* pIID);
2808 HRESULT (STDMETHODCALLTYPE *GetConnectionPointContainer)(
2809 IConnectionPoint* This,
2810 IConnectionPointContainer** ppCPC);
2812 HRESULT (STDMETHODCALLTYPE *Advise)(
2813 IConnectionPoint* This,
2814 IUnknown* pUnkSink,
2815 DWORD* pdwCookie);
2817 HRESULT (STDMETHODCALLTYPE *Unadvise)(
2818 IConnectionPoint* This,
2819 DWORD dwCookie);
2821 HRESULT (STDMETHODCALLTYPE *EnumConnections)(
2822 IConnectionPoint* This,
2823 IEnumConnections** ppEnum);
2827 /*** IUnknown methods ***/
2828 #define IConnectionPoint_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2829 #define IConnectionPoint_AddRef(p) (p)->lpVtbl->AddRef(p)
2830 #define IConnectionPoint_Release(p) (p)->lpVtbl->Release(p)
2831 /*** IConnectionPoint methods ***/
2832 #define IConnectionPoint_GetConnectionInterface(p,a) (p)->lpVtbl->GetConnectionInterface(p,a)
2833 #define IConnectionPoint_GetConnectionPointContainer(p,a) (p)->lpVtbl->GetConnectionPointContainer(p,a)
2834 #define IConnectionPoint_Advise(p,a,b) (p)->lpVtbl->Advise(p,a,b)
2835 #define IConnectionPoint_Unadvise(p,a) (p)->lpVtbl->Unadvise(p,a)
2836 #define IConnectionPoint_EnumConnections(p,a) (p)->lpVtbl->EnumConnections(p,a)
2838 #endif
2840 #define IConnectionPoint_METHODS \
2841 ICOM_MSVTABLE_COMPAT_FIELDS \
2842 /*** IUnknown methods ***/ \
2843 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2844 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2845 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2846 /*** IConnectionPoint methods ***/ \
2847 STDMETHOD_(HRESULT,GetConnectionInterface)(THIS_ IID* pIID) PURE; \
2848 STDMETHOD_(HRESULT,GetConnectionPointContainer)(THIS_ IConnectionPointContainer** ppCPC) PURE; \
2849 STDMETHOD_(HRESULT,Advise)(THIS_ IUnknown* pUnkSink, DWORD* pdwCookie) PURE; \
2850 STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwCookie) PURE; \
2851 STDMETHOD_(HRESULT,EnumConnections)(THIS_ IEnumConnections** ppEnum) PURE;
2853 HRESULT CALLBACK IConnectionPoint_GetConnectionInterface_Proxy(
2854 IConnectionPoint* This,
2855 IID* pIID);
2856 void __RPC_STUB IConnectionPoint_GetConnectionInterface_Stub(
2857 struct IRpcStubBuffer* This,
2858 struct IRpcChannelBuffer* pRpcChannelBuffer,
2859 PRPC_MESSAGE pRpcMessage,
2860 DWORD* pdwStubPhase);
2861 HRESULT CALLBACK IConnectionPoint_GetConnectionPointContainer_Proxy(
2862 IConnectionPoint* This,
2863 IConnectionPointContainer** ppCPC);
2864 void __RPC_STUB IConnectionPoint_GetConnectionPointContainer_Stub(
2865 struct IRpcStubBuffer* This,
2866 struct IRpcChannelBuffer* pRpcChannelBuffer,
2867 PRPC_MESSAGE pRpcMessage,
2868 DWORD* pdwStubPhase);
2869 HRESULT CALLBACK IConnectionPoint_Advise_Proxy(
2870 IConnectionPoint* This,
2871 IUnknown* pUnkSink,
2872 DWORD* pdwCookie);
2873 void __RPC_STUB IConnectionPoint_Advise_Stub(
2874 struct IRpcStubBuffer* This,
2875 struct IRpcChannelBuffer* pRpcChannelBuffer,
2876 PRPC_MESSAGE pRpcMessage,
2877 DWORD* pdwStubPhase);
2878 HRESULT CALLBACK IConnectionPoint_Unadvise_Proxy(
2879 IConnectionPoint* This,
2880 DWORD dwCookie);
2881 void __RPC_STUB IConnectionPoint_Unadvise_Stub(
2882 struct IRpcStubBuffer* This,
2883 struct IRpcChannelBuffer* pRpcChannelBuffer,
2884 PRPC_MESSAGE pRpcMessage,
2885 DWORD* pdwStubPhase);
2886 HRESULT CALLBACK IConnectionPoint_EnumConnections_Proxy(
2887 IConnectionPoint* This,
2888 IEnumConnections** ppEnum);
2889 void __RPC_STUB IConnectionPoint_EnumConnections_Stub(
2890 struct IRpcStubBuffer* This,
2891 struct IRpcChannelBuffer* pRpcChannelBuffer,
2892 PRPC_MESSAGE pRpcMessage,
2893 DWORD* pdwStubPhase);
2895 #endif /* __IConnectionPoint_INTERFACE_DEFINED__ */
2897 #ifndef __IEnumConnectionPoints_FWD_DEFINED__
2898 #define __IEnumConnectionPoints_FWD_DEFINED__
2899 typedef struct IEnumConnectionPoints IEnumConnectionPoints;
2900 #endif
2902 typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER, *LPCONNECTIONPOINTCONTAINER;
2904 /*****************************************************************************
2905 * IConnectionPointContainer interface
2907 #ifndef __IConnectionPointContainer_INTERFACE_DEFINED__
2908 #define __IConnectionPointContainer_INTERFACE_DEFINED__
2910 DEFINE_GUID(IID_IConnectionPointContainer, 0xb196b284, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
2911 #if defined(__cplusplus) && !defined(CINTERFACE)
2912 struct IConnectionPointContainer : public IUnknown
2914 virtual HRESULT STDMETHODCALLTYPE EnumConnectionPoints(
2915 IEnumConnectionPoints** ppEnum) = 0;
2917 virtual HRESULT STDMETHODCALLTYPE FindConnectionPoint(
2918 REFIID riid,
2919 IConnectionPoint** ppCP) = 0;
2922 #else
2923 typedef struct IConnectionPointContainerVtbl IConnectionPointContainerVtbl;
2924 struct IConnectionPointContainer {
2925 const IConnectionPointContainerVtbl* lpVtbl;
2927 struct IConnectionPointContainerVtbl {
2928 ICOM_MSVTABLE_COMPAT_FIELDS
2930 /*** IUnknown methods ***/
2931 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2932 IConnectionPointContainer* This,
2933 REFIID riid,
2934 void** ppvObject);
2936 ULONG (STDMETHODCALLTYPE *AddRef)(
2937 IConnectionPointContainer* This);
2939 ULONG (STDMETHODCALLTYPE *Release)(
2940 IConnectionPointContainer* This);
2942 /*** IConnectionPointContainer methods ***/
2943 HRESULT (STDMETHODCALLTYPE *EnumConnectionPoints)(
2944 IConnectionPointContainer* This,
2945 IEnumConnectionPoints** ppEnum);
2947 HRESULT (STDMETHODCALLTYPE *FindConnectionPoint)(
2948 IConnectionPointContainer* This,
2949 REFIID riid,
2950 IConnectionPoint** ppCP);
2954 /*** IUnknown methods ***/
2955 #define IConnectionPointContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2956 #define IConnectionPointContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
2957 #define IConnectionPointContainer_Release(p) (p)->lpVtbl->Release(p)
2958 /*** IConnectionPointContainer methods ***/
2959 #define IConnectionPointContainer_EnumConnectionPoints(p,a) (p)->lpVtbl->EnumConnectionPoints(p,a)
2960 #define IConnectionPointContainer_FindConnectionPoint(p,a,b) (p)->lpVtbl->FindConnectionPoint(p,a,b)
2962 #endif
2964 #define IConnectionPointContainer_METHODS \
2965 ICOM_MSVTABLE_COMPAT_FIELDS \
2966 /*** IUnknown methods ***/ \
2967 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
2968 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
2969 STDMETHOD_(ULONG,Release)(THIS) PURE; \
2970 /*** IConnectionPointContainer methods ***/ \
2971 STDMETHOD_(HRESULT,EnumConnectionPoints)(THIS_ IEnumConnectionPoints** ppEnum) PURE; \
2972 STDMETHOD_(HRESULT,FindConnectionPoint)(THIS_ REFIID riid, IConnectionPoint** ppCP) PURE;
2974 HRESULT CALLBACK IConnectionPointContainer_EnumConnectionPoints_Proxy(
2975 IConnectionPointContainer* This,
2976 IEnumConnectionPoints** ppEnum);
2977 void __RPC_STUB IConnectionPointContainer_EnumConnectionPoints_Stub(
2978 struct IRpcStubBuffer* This,
2979 struct IRpcChannelBuffer* pRpcChannelBuffer,
2980 PRPC_MESSAGE pRpcMessage,
2981 DWORD* pdwStubPhase);
2982 HRESULT CALLBACK IConnectionPointContainer_FindConnectionPoint_Proxy(
2983 IConnectionPointContainer* This,
2984 REFIID riid,
2985 IConnectionPoint** ppCP);
2986 void __RPC_STUB IConnectionPointContainer_FindConnectionPoint_Stub(
2987 struct IRpcStubBuffer* This,
2988 struct IRpcChannelBuffer* pRpcChannelBuffer,
2989 PRPC_MESSAGE pRpcMessage,
2990 DWORD* pdwStubPhase);
2992 #endif /* __IConnectionPointContainer_INTERFACE_DEFINED__ */
2994 typedef IEnumConnections *PENUMCONNECTIONS, *LPENUMCONNECTIONS;
2996 typedef struct tagCONNECTDATA {
2997 IUnknown *pUnk;
2998 DWORD dwCookie;
2999 } CONNECTDATA, *PCONNECTDATA, *LPCONNECTDATA;
3001 /*****************************************************************************
3002 * IEnumConnections interface
3004 #ifndef __IEnumConnections_INTERFACE_DEFINED__
3005 #define __IEnumConnections_INTERFACE_DEFINED__
3007 DEFINE_GUID(IID_IEnumConnections, 0xb196b287, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
3008 #if defined(__cplusplus) && !defined(CINTERFACE)
3009 struct IEnumConnections : public IUnknown
3011 virtual HRESULT STDMETHODCALLTYPE Next(
3012 ULONG cConnections,
3013 LPCONNECTDATA rgcd,
3014 ULONG* pcFetched) = 0;
3016 virtual HRESULT STDMETHODCALLTYPE Skip(
3017 ULONG cConnections) = 0;
3019 virtual HRESULT STDMETHODCALLTYPE Reset(
3020 ) = 0;
3022 virtual HRESULT STDMETHODCALLTYPE Clone(
3023 IEnumConnections** ppEnum) = 0;
3026 #else
3027 typedef struct IEnumConnectionsVtbl IEnumConnectionsVtbl;
3028 struct IEnumConnections {
3029 const IEnumConnectionsVtbl* lpVtbl;
3031 struct IEnumConnectionsVtbl {
3032 ICOM_MSVTABLE_COMPAT_FIELDS
3034 /*** IUnknown methods ***/
3035 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3036 IEnumConnections* This,
3037 REFIID riid,
3038 void** ppvObject);
3040 ULONG (STDMETHODCALLTYPE *AddRef)(
3041 IEnumConnections* This);
3043 ULONG (STDMETHODCALLTYPE *Release)(
3044 IEnumConnections* This);
3046 /*** IEnumConnections methods ***/
3047 HRESULT (STDMETHODCALLTYPE *Next)(
3048 IEnumConnections* This,
3049 ULONG cConnections,
3050 LPCONNECTDATA rgcd,
3051 ULONG* pcFetched);
3053 HRESULT (STDMETHODCALLTYPE *Skip)(
3054 IEnumConnections* This,
3055 ULONG cConnections);
3057 HRESULT (STDMETHODCALLTYPE *Reset)(
3058 IEnumConnections* This);
3060 HRESULT (STDMETHODCALLTYPE *Clone)(
3061 IEnumConnections* This,
3062 IEnumConnections** ppEnum);
3066 /*** IUnknown methods ***/
3067 #define IEnumConnections_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3068 #define IEnumConnections_AddRef(p) (p)->lpVtbl->AddRef(p)
3069 #define IEnumConnections_Release(p) (p)->lpVtbl->Release(p)
3070 /*** IEnumConnections methods ***/
3071 #define IEnumConnections_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
3072 #define IEnumConnections_Skip(p,a) (p)->lpVtbl->Skip(p,a)
3073 #define IEnumConnections_Reset(p) (p)->lpVtbl->Reset(p)
3074 #define IEnumConnections_Clone(p,a) (p)->lpVtbl->Clone(p,a)
3076 #endif
3078 #define IEnumConnections_METHODS \
3079 ICOM_MSVTABLE_COMPAT_FIELDS \
3080 /*** IUnknown methods ***/ \
3081 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3082 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3083 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3084 /*** IEnumConnections methods ***/ \
3085 STDMETHOD_(HRESULT,Next)(THIS_ ULONG cConnections, LPCONNECTDATA rgcd, ULONG* pcFetched) PURE; \
3086 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cConnections) PURE; \
3087 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
3088 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumConnections** ppEnum) PURE;
3090 HRESULT CALLBACK IEnumConnections_RemoteNext_Proxy(
3091 IEnumConnections* This,
3092 ULONG cConnections,
3093 LPCONNECTDATA rgcd,
3094 ULONG* pcFetched);
3095 void __RPC_STUB IEnumConnections_RemoteNext_Stub(
3096 struct IRpcStubBuffer* This,
3097 struct IRpcChannelBuffer* pRpcChannelBuffer,
3098 PRPC_MESSAGE pRpcMessage,
3099 DWORD* pdwStubPhase);
3100 HRESULT CALLBACK IEnumConnections_Next_Proxy(
3101 IEnumConnections* This,
3102 ULONG cConnections,
3103 LPCONNECTDATA rgcd,
3104 ULONG* pcFetched);
3105 HRESULT __RPC_STUB IEnumConnections_Next_Stub(
3106 IEnumConnections* This,
3107 ULONG cConnections,
3108 LPCONNECTDATA rgcd,
3109 ULONG* pcFetched);
3110 HRESULT CALLBACK IEnumConnections_Skip_Proxy(
3111 IEnumConnections* This,
3112 ULONG cConnections);
3113 void __RPC_STUB IEnumConnections_Skip_Stub(
3114 struct IRpcStubBuffer* This,
3115 struct IRpcChannelBuffer* pRpcChannelBuffer,
3116 PRPC_MESSAGE pRpcMessage,
3117 DWORD* pdwStubPhase);
3118 HRESULT CALLBACK IEnumConnections_Reset_Proxy(
3119 IEnumConnections* This);
3120 void __RPC_STUB IEnumConnections_Reset_Stub(
3121 struct IRpcStubBuffer* This,
3122 struct IRpcChannelBuffer* pRpcChannelBuffer,
3123 PRPC_MESSAGE pRpcMessage,
3124 DWORD* pdwStubPhase);
3125 HRESULT CALLBACK IEnumConnections_Clone_Proxy(
3126 IEnumConnections* This,
3127 IEnumConnections** ppEnum);
3128 void __RPC_STUB IEnumConnections_Clone_Stub(
3129 struct IRpcStubBuffer* This,
3130 struct IRpcChannelBuffer* pRpcChannelBuffer,
3131 PRPC_MESSAGE pRpcMessage,
3132 DWORD* pdwStubPhase);
3134 #endif /* __IEnumConnections_INTERFACE_DEFINED__ */
3136 typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS, *LPENUMCONNECTIONPOINTS;
3138 /*****************************************************************************
3139 * IEnumConnectionPoints interface
3141 #ifndef __IEnumConnectionPoints_INTERFACE_DEFINED__
3142 #define __IEnumConnectionPoints_INTERFACE_DEFINED__
3144 DEFINE_GUID(IID_IEnumConnectionPoints, 0xb196b285, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
3145 #if defined(__cplusplus) && !defined(CINTERFACE)
3146 struct IEnumConnectionPoints : public IUnknown
3148 virtual HRESULT STDMETHODCALLTYPE Next(
3149 ULONG cConnections,
3150 LPCONNECTIONPOINT* ppCP,
3151 ULONG* pcFetched) = 0;
3153 virtual HRESULT STDMETHODCALLTYPE Skip(
3154 ULONG cConnections) = 0;
3156 virtual HRESULT STDMETHODCALLTYPE Reset(
3157 ) = 0;
3159 virtual HRESULT STDMETHODCALLTYPE Clone(
3160 IEnumConnectionPoints** ppEnum) = 0;
3163 #else
3164 typedef struct IEnumConnectionPointsVtbl IEnumConnectionPointsVtbl;
3165 struct IEnumConnectionPoints {
3166 const IEnumConnectionPointsVtbl* lpVtbl;
3168 struct IEnumConnectionPointsVtbl {
3169 ICOM_MSVTABLE_COMPAT_FIELDS
3171 /*** IUnknown methods ***/
3172 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3173 IEnumConnectionPoints* This,
3174 REFIID riid,
3175 void** ppvObject);
3177 ULONG (STDMETHODCALLTYPE *AddRef)(
3178 IEnumConnectionPoints* This);
3180 ULONG (STDMETHODCALLTYPE *Release)(
3181 IEnumConnectionPoints* This);
3183 /*** IEnumConnectionPoints methods ***/
3184 HRESULT (STDMETHODCALLTYPE *Next)(
3185 IEnumConnectionPoints* This,
3186 ULONG cConnections,
3187 LPCONNECTIONPOINT* ppCP,
3188 ULONG* pcFetched);
3190 HRESULT (STDMETHODCALLTYPE *Skip)(
3191 IEnumConnectionPoints* This,
3192 ULONG cConnections);
3194 HRESULT (STDMETHODCALLTYPE *Reset)(
3195 IEnumConnectionPoints* This);
3197 HRESULT (STDMETHODCALLTYPE *Clone)(
3198 IEnumConnectionPoints* This,
3199 IEnumConnectionPoints** ppEnum);
3203 /*** IUnknown methods ***/
3204 #define IEnumConnectionPoints_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3205 #define IEnumConnectionPoints_AddRef(p) (p)->lpVtbl->AddRef(p)
3206 #define IEnumConnectionPoints_Release(p) (p)->lpVtbl->Release(p)
3207 /*** IEnumConnectionPoints methods ***/
3208 #define IEnumConnectionPoints_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
3209 #define IEnumConnectionPoints_Skip(p,a) (p)->lpVtbl->Skip(p,a)
3210 #define IEnumConnectionPoints_Reset(p) (p)->lpVtbl->Reset(p)
3211 #define IEnumConnectionPoints_Clone(p,a) (p)->lpVtbl->Clone(p,a)
3213 #endif
3215 #define IEnumConnectionPoints_METHODS \
3216 ICOM_MSVTABLE_COMPAT_FIELDS \
3217 /*** IUnknown methods ***/ \
3218 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3219 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3220 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3221 /*** IEnumConnectionPoints methods ***/ \
3222 STDMETHOD_(HRESULT,Next)(THIS_ ULONG cConnections, LPCONNECTIONPOINT* ppCP, ULONG* pcFetched) PURE; \
3223 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cConnections) PURE; \
3224 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
3225 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumConnectionPoints** ppEnum) PURE;
3227 HRESULT CALLBACK IEnumConnectionPoints_RemoteNext_Proxy(
3228 IEnumConnectionPoints* This,
3229 ULONG cConnections,
3230 LPCONNECTIONPOINT* ppCP,
3231 ULONG* pcFetched);
3232 void __RPC_STUB IEnumConnectionPoints_RemoteNext_Stub(
3233 struct IRpcStubBuffer* This,
3234 struct IRpcChannelBuffer* pRpcChannelBuffer,
3235 PRPC_MESSAGE pRpcMessage,
3236 DWORD* pdwStubPhase);
3237 HRESULT CALLBACK IEnumConnectionPoints_Next_Proxy(
3238 IEnumConnectionPoints* This,
3239 ULONG cConnections,
3240 LPCONNECTIONPOINT* ppCP,
3241 ULONG* pcFetched);
3242 HRESULT __RPC_STUB IEnumConnectionPoints_Next_Stub(
3243 IEnumConnectionPoints* This,
3244 ULONG cConnections,
3245 LPCONNECTIONPOINT* ppCP,
3246 ULONG* pcFetched);
3247 HRESULT CALLBACK IEnumConnectionPoints_Skip_Proxy(
3248 IEnumConnectionPoints* This,
3249 ULONG cConnections);
3250 void __RPC_STUB IEnumConnectionPoints_Skip_Stub(
3251 struct IRpcStubBuffer* This,
3252 struct IRpcChannelBuffer* pRpcChannelBuffer,
3253 PRPC_MESSAGE pRpcMessage,
3254 DWORD* pdwStubPhase);
3255 HRESULT CALLBACK IEnumConnectionPoints_Reset_Proxy(
3256 IEnumConnectionPoints* This);
3257 void __RPC_STUB IEnumConnectionPoints_Reset_Stub(
3258 struct IRpcStubBuffer* This,
3259 struct IRpcChannelBuffer* pRpcChannelBuffer,
3260 PRPC_MESSAGE pRpcMessage,
3261 DWORD* pdwStubPhase);
3262 HRESULT CALLBACK IEnumConnectionPoints_Clone_Proxy(
3263 IEnumConnectionPoints* This,
3264 IEnumConnectionPoints** ppEnum);
3265 void __RPC_STUB IEnumConnectionPoints_Clone_Stub(
3266 struct IRpcStubBuffer* This,
3267 struct IRpcChannelBuffer* pRpcChannelBuffer,
3268 PRPC_MESSAGE pRpcMessage,
3269 DWORD* pdwStubPhase);
3271 #endif /* __IEnumConnectionPoints_INTERFACE_DEFINED__ */
3273 #ifndef __IPropertyPageSite_FWD_DEFINED__
3274 #define __IPropertyPageSite_FWD_DEFINED__
3275 typedef struct IPropertyPageSite IPropertyPageSite;
3276 #endif
3278 #ifndef __IPropertyPage_FWD_DEFINED__
3279 #define __IPropertyPage_FWD_DEFINED__
3280 typedef struct IPropertyPage IPropertyPage;
3281 #endif
3283 typedef IPropertyPage *LPPROPERTYPAGE;
3285 typedef struct tagPROPPAGEINFO {
3286 ULONG cb;
3287 LPOLESTR pszTitle;
3288 SIZE size;
3289 LPOLESTR pszDocString;
3290 LPOLESTR pszHelpFile;
3291 DWORD dwHelpContext;
3292 } PROPPAGEINFO, *LPPROPPAGEINFO;
3294 /*****************************************************************************
3295 * IPropertyPage interface
3297 #ifndef __IPropertyPage_INTERFACE_DEFINED__
3298 #define __IPropertyPage_INTERFACE_DEFINED__
3300 DEFINE_GUID(IID_IPropertyPage, 0xb196b28d, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
3301 #if defined(__cplusplus) && !defined(CINTERFACE)
3302 struct IPropertyPage : public IUnknown
3304 virtual HRESULT STDMETHODCALLTYPE SetPageSite(
3305 IPropertyPageSite* pPageSite) = 0;
3307 virtual HRESULT STDMETHODCALLTYPE Activate(
3308 HWND hWndParent,
3309 LPCRECT pRect,
3310 BOOL bModal) = 0;
3312 virtual HRESULT STDMETHODCALLTYPE Deactivate(
3313 ) = 0;
3315 virtual HRESULT STDMETHODCALLTYPE GetPageInfo(
3316 PROPPAGEINFO* pPageInfo) = 0;
3318 virtual HRESULT STDMETHODCALLTYPE SetObjects(
3319 ULONG cObjects,
3320 IUnknown** ppUnk) = 0;
3322 virtual HRESULT STDMETHODCALLTYPE Show(
3323 UINT nCmdShow) = 0;
3325 virtual HRESULT STDMETHODCALLTYPE Move(
3326 LPCRECT pRect) = 0;
3328 virtual HRESULT STDMETHODCALLTYPE IsPageDirty(
3329 ) = 0;
3331 virtual HRESULT STDMETHODCALLTYPE Apply(
3332 ) = 0;
3334 virtual HRESULT STDMETHODCALLTYPE Help(
3335 LPCOLESTR pszHelpDir) = 0;
3337 virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(
3338 MSG* pMsg) = 0;
3341 #else
3342 typedef struct IPropertyPageVtbl IPropertyPageVtbl;
3343 struct IPropertyPage {
3344 const IPropertyPageVtbl* lpVtbl;
3346 struct IPropertyPageVtbl {
3347 ICOM_MSVTABLE_COMPAT_FIELDS
3349 /*** IUnknown methods ***/
3350 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3351 IPropertyPage* This,
3352 REFIID riid,
3353 void** ppvObject);
3355 ULONG (STDMETHODCALLTYPE *AddRef)(
3356 IPropertyPage* This);
3358 ULONG (STDMETHODCALLTYPE *Release)(
3359 IPropertyPage* This);
3361 /*** IPropertyPage methods ***/
3362 HRESULT (STDMETHODCALLTYPE *SetPageSite)(
3363 IPropertyPage* This,
3364 IPropertyPageSite* pPageSite);
3366 HRESULT (STDMETHODCALLTYPE *Activate)(
3367 IPropertyPage* This,
3368 HWND hWndParent,
3369 LPCRECT pRect,
3370 BOOL bModal);
3372 HRESULT (STDMETHODCALLTYPE *Deactivate)(
3373 IPropertyPage* This);
3375 HRESULT (STDMETHODCALLTYPE *GetPageInfo)(
3376 IPropertyPage* This,
3377 PROPPAGEINFO* pPageInfo);
3379 HRESULT (STDMETHODCALLTYPE *SetObjects)(
3380 IPropertyPage* This,
3381 ULONG cObjects,
3382 IUnknown** ppUnk);
3384 HRESULT (STDMETHODCALLTYPE *Show)(
3385 IPropertyPage* This,
3386 UINT nCmdShow);
3388 HRESULT (STDMETHODCALLTYPE *Move)(
3389 IPropertyPage* This,
3390 LPCRECT pRect);
3392 HRESULT (STDMETHODCALLTYPE *IsPageDirty)(
3393 IPropertyPage* This);
3395 HRESULT (STDMETHODCALLTYPE *Apply)(
3396 IPropertyPage* This);
3398 HRESULT (STDMETHODCALLTYPE *Help)(
3399 IPropertyPage* This,
3400 LPCOLESTR pszHelpDir);
3402 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
3403 IPropertyPage* This,
3404 MSG* pMsg);
3408 /*** IUnknown methods ***/
3409 #define IPropertyPage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3410 #define IPropertyPage_AddRef(p) (p)->lpVtbl->AddRef(p)
3411 #define IPropertyPage_Release(p) (p)->lpVtbl->Release(p)
3412 /*** IPropertyPage methods ***/
3413 #define IPropertyPage_SetPageSite(p,a) (p)->lpVtbl->SetPageSite(p,a)
3414 #define IPropertyPage_Activate(p,a,b,c) (p)->lpVtbl->Activate(p,a,b,c)
3415 #define IPropertyPage_Deactivate(p) (p)->lpVtbl->Deactivate(p)
3416 #define IPropertyPage_GetPageInfo(p,a) (p)->lpVtbl->GetPageInfo(p,a)
3417 #define IPropertyPage_SetObjects(p,a,b) (p)->lpVtbl->SetObjects(p,a,b)
3418 #define IPropertyPage_Show(p,a) (p)->lpVtbl->Show(p,a)
3419 #define IPropertyPage_Move(p,a) (p)->lpVtbl->Move(p,a)
3420 #define IPropertyPage_IsPageDirty(p) (p)->lpVtbl->IsPageDirty(p)
3421 #define IPropertyPage_Apply(p) (p)->lpVtbl->Apply(p)
3422 #define IPropertyPage_Help(p,a) (p)->lpVtbl->Help(p,a)
3423 #define IPropertyPage_TranslateAccelerator(p,a) (p)->lpVtbl->TranslateAccelerator(p,a)
3425 #endif
3427 #define IPropertyPage_METHODS \
3428 ICOM_MSVTABLE_COMPAT_FIELDS \
3429 /*** IUnknown methods ***/ \
3430 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3431 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3432 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3433 /*** IPropertyPage methods ***/ \
3434 STDMETHOD_(HRESULT,SetPageSite)(THIS_ IPropertyPageSite* pPageSite) PURE; \
3435 STDMETHOD_(HRESULT,Activate)(THIS_ HWND hWndParent, LPCRECT pRect, BOOL bModal) PURE; \
3436 STDMETHOD_(HRESULT,Deactivate)(THIS) PURE; \
3437 STDMETHOD_(HRESULT,GetPageInfo)(THIS_ PROPPAGEINFO* pPageInfo) PURE; \
3438 STDMETHOD_(HRESULT,SetObjects)(THIS_ ULONG cObjects, IUnknown** ppUnk) PURE; \
3439 STDMETHOD_(HRESULT,Show)(THIS_ UINT nCmdShow) PURE; \
3440 STDMETHOD_(HRESULT,Move)(THIS_ LPCRECT pRect) PURE; \
3441 STDMETHOD_(HRESULT,IsPageDirty)(THIS) PURE; \
3442 STDMETHOD_(HRESULT,Apply)(THIS) PURE; \
3443 STDMETHOD_(HRESULT,Help)(THIS_ LPCOLESTR pszHelpDir) PURE; \
3444 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ MSG* pMsg) PURE;
3446 HRESULT CALLBACK IPropertyPage_SetPageSite_Proxy(
3447 IPropertyPage* This,
3448 IPropertyPageSite* pPageSite);
3449 void __RPC_STUB IPropertyPage_SetPageSite_Stub(
3450 struct IRpcStubBuffer* This,
3451 struct IRpcChannelBuffer* pRpcChannelBuffer,
3452 PRPC_MESSAGE pRpcMessage,
3453 DWORD* pdwStubPhase);
3454 HRESULT CALLBACK IPropertyPage_Activate_Proxy(
3455 IPropertyPage* This,
3456 HWND hWndParent,
3457 LPCRECT pRect,
3458 BOOL bModal);
3459 void __RPC_STUB IPropertyPage_Activate_Stub(
3460 struct IRpcStubBuffer* This,
3461 struct IRpcChannelBuffer* pRpcChannelBuffer,
3462 PRPC_MESSAGE pRpcMessage,
3463 DWORD* pdwStubPhase);
3464 HRESULT CALLBACK IPropertyPage_Deactivate_Proxy(
3465 IPropertyPage* This);
3466 void __RPC_STUB IPropertyPage_Deactivate_Stub(
3467 struct IRpcStubBuffer* This,
3468 struct IRpcChannelBuffer* pRpcChannelBuffer,
3469 PRPC_MESSAGE pRpcMessage,
3470 DWORD* pdwStubPhase);
3471 HRESULT CALLBACK IPropertyPage_GetPageInfo_Proxy(
3472 IPropertyPage* This,
3473 PROPPAGEINFO* pPageInfo);
3474 void __RPC_STUB IPropertyPage_GetPageInfo_Stub(
3475 struct IRpcStubBuffer* This,
3476 struct IRpcChannelBuffer* pRpcChannelBuffer,
3477 PRPC_MESSAGE pRpcMessage,
3478 DWORD* pdwStubPhase);
3479 HRESULT CALLBACK IPropertyPage_SetObjects_Proxy(
3480 IPropertyPage* This,
3481 ULONG cObjects,
3482 IUnknown** ppUnk);
3483 void __RPC_STUB IPropertyPage_SetObjects_Stub(
3484 struct IRpcStubBuffer* This,
3485 struct IRpcChannelBuffer* pRpcChannelBuffer,
3486 PRPC_MESSAGE pRpcMessage,
3487 DWORD* pdwStubPhase);
3488 HRESULT CALLBACK IPropertyPage_Show_Proxy(
3489 IPropertyPage* This,
3490 UINT nCmdShow);
3491 void __RPC_STUB IPropertyPage_Show_Stub(
3492 struct IRpcStubBuffer* This,
3493 struct IRpcChannelBuffer* pRpcChannelBuffer,
3494 PRPC_MESSAGE pRpcMessage,
3495 DWORD* pdwStubPhase);
3496 HRESULT CALLBACK IPropertyPage_Move_Proxy(
3497 IPropertyPage* This,
3498 LPCRECT pRect);
3499 void __RPC_STUB IPropertyPage_Move_Stub(
3500 struct IRpcStubBuffer* This,
3501 struct IRpcChannelBuffer* pRpcChannelBuffer,
3502 PRPC_MESSAGE pRpcMessage,
3503 DWORD* pdwStubPhase);
3504 HRESULT CALLBACK IPropertyPage_IsPageDirty_Proxy(
3505 IPropertyPage* This);
3506 void __RPC_STUB IPropertyPage_IsPageDirty_Stub(
3507 struct IRpcStubBuffer* This,
3508 struct IRpcChannelBuffer* pRpcChannelBuffer,
3509 PRPC_MESSAGE pRpcMessage,
3510 DWORD* pdwStubPhase);
3511 HRESULT CALLBACK IPropertyPage_Apply_Proxy(
3512 IPropertyPage* This);
3513 void __RPC_STUB IPropertyPage_Apply_Stub(
3514 struct IRpcStubBuffer* This,
3515 struct IRpcChannelBuffer* pRpcChannelBuffer,
3516 PRPC_MESSAGE pRpcMessage,
3517 DWORD* pdwStubPhase);
3518 HRESULT CALLBACK IPropertyPage_Help_Proxy(
3519 IPropertyPage* This,
3520 LPCOLESTR pszHelpDir);
3521 void __RPC_STUB IPropertyPage_Help_Stub(
3522 struct IRpcStubBuffer* This,
3523 struct IRpcChannelBuffer* pRpcChannelBuffer,
3524 PRPC_MESSAGE pRpcMessage,
3525 DWORD* pdwStubPhase);
3526 HRESULT CALLBACK IPropertyPage_TranslateAccelerator_Proxy(
3527 IPropertyPage* This,
3528 MSG* pMsg);
3529 void __RPC_STUB IPropertyPage_TranslateAccelerator_Stub(
3530 struct IRpcStubBuffer* This,
3531 struct IRpcChannelBuffer* pRpcChannelBuffer,
3532 PRPC_MESSAGE pRpcMessage,
3533 DWORD* pdwStubPhase);
3535 #endif /* __IPropertyPage_INTERFACE_DEFINED__ */
3537 #ifndef __IPropertyPage2_FWD_DEFINED__
3538 #define __IPropertyPage2_FWD_DEFINED__
3539 typedef struct IPropertyPage2 IPropertyPage2;
3540 #endif
3542 typedef IPropertyPage2 *LPPROPERTYPAGE2;
3544 /*****************************************************************************
3545 * IPropertyPage2 interface
3547 #ifndef __IPropertyPage2_INTERFACE_DEFINED__
3548 #define __IPropertyPage2_INTERFACE_DEFINED__
3550 DEFINE_GUID(IID_IPropertyPage2, 0x01e44665, 0x24ac, 0x101b, 0x84,0xed, 0x08,0x00,0x2b,0x2e,0xc7,0x13);
3551 #if defined(__cplusplus) && !defined(CINTERFACE)
3552 struct IPropertyPage2 : public IPropertyPage
3554 virtual HRESULT STDMETHODCALLTYPE EditProperty(
3555 DISPID dispID) = 0;
3558 #else
3559 typedef struct IPropertyPage2Vtbl IPropertyPage2Vtbl;
3560 struct IPropertyPage2 {
3561 const IPropertyPage2Vtbl* lpVtbl;
3563 struct IPropertyPage2Vtbl {
3564 ICOM_MSVTABLE_COMPAT_FIELDS
3566 /*** IUnknown methods ***/
3567 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3568 IPropertyPage2* This,
3569 REFIID riid,
3570 void** ppvObject);
3572 ULONG (STDMETHODCALLTYPE *AddRef)(
3573 IPropertyPage2* This);
3575 ULONG (STDMETHODCALLTYPE *Release)(
3576 IPropertyPage2* This);
3578 /*** IPropertyPage methods ***/
3579 HRESULT (STDMETHODCALLTYPE *SetPageSite)(
3580 IPropertyPage2* This,
3581 IPropertyPageSite* pPageSite);
3583 HRESULT (STDMETHODCALLTYPE *Activate)(
3584 IPropertyPage2* This,
3585 HWND hWndParent,
3586 LPCRECT pRect,
3587 BOOL bModal);
3589 HRESULT (STDMETHODCALLTYPE *Deactivate)(
3590 IPropertyPage2* This);
3592 HRESULT (STDMETHODCALLTYPE *GetPageInfo)(
3593 IPropertyPage2* This,
3594 PROPPAGEINFO* pPageInfo);
3596 HRESULT (STDMETHODCALLTYPE *SetObjects)(
3597 IPropertyPage2* This,
3598 ULONG cObjects,
3599 IUnknown** ppUnk);
3601 HRESULT (STDMETHODCALLTYPE *Show)(
3602 IPropertyPage2* This,
3603 UINT nCmdShow);
3605 HRESULT (STDMETHODCALLTYPE *Move)(
3606 IPropertyPage2* This,
3607 LPCRECT pRect);
3609 HRESULT (STDMETHODCALLTYPE *IsPageDirty)(
3610 IPropertyPage2* This);
3612 HRESULT (STDMETHODCALLTYPE *Apply)(
3613 IPropertyPage2* This);
3615 HRESULT (STDMETHODCALLTYPE *Help)(
3616 IPropertyPage2* This,
3617 LPCOLESTR pszHelpDir);
3619 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
3620 IPropertyPage2* This,
3621 MSG* pMsg);
3623 /*** IPropertyPage2 methods ***/
3624 HRESULT (STDMETHODCALLTYPE *EditProperty)(
3625 IPropertyPage2* This,
3626 DISPID dispID);
3630 /*** IUnknown methods ***/
3631 #define IPropertyPage2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3632 #define IPropertyPage2_AddRef(p) (p)->lpVtbl->AddRef(p)
3633 #define IPropertyPage2_Release(p) (p)->lpVtbl->Release(p)
3634 /*** IPropertyPage methods ***/
3635 #define IPropertyPage2_SetPageSite(p,a) (p)->lpVtbl->SetPageSite(p,a)
3636 #define IPropertyPage2_Activate(p,a,b,c) (p)->lpVtbl->Activate(p,a,b,c)
3637 #define IPropertyPage2_Deactivate(p) (p)->lpVtbl->Deactivate(p)
3638 #define IPropertyPage2_GetPageInfo(p,a) (p)->lpVtbl->GetPageInfo(p,a)
3639 #define IPropertyPage2_SetObjects(p,a,b) (p)->lpVtbl->SetObjects(p,a,b)
3640 #define IPropertyPage2_Show(p,a) (p)->lpVtbl->Show(p,a)
3641 #define IPropertyPage2_Move(p,a) (p)->lpVtbl->Move(p,a)
3642 #define IPropertyPage2_IsPageDirty(p) (p)->lpVtbl->IsPageDirty(p)
3643 #define IPropertyPage2_Apply(p) (p)->lpVtbl->Apply(p)
3644 #define IPropertyPage2_Help(p,a) (p)->lpVtbl->Help(p,a)
3645 #define IPropertyPage2_TranslateAccelerator(p,a) (p)->lpVtbl->TranslateAccelerator(p,a)
3646 /*** IPropertyPage2 methods ***/
3647 #define IPropertyPage2_EditProperty(p,a) (p)->lpVtbl->EditProperty(p,a)
3649 #endif
3651 #define IPropertyPage2_METHODS \
3652 ICOM_MSVTABLE_COMPAT_FIELDS \
3653 /*** IUnknown methods ***/ \
3654 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3655 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3656 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3657 /*** IPropertyPage methods ***/ \
3658 STDMETHOD_(HRESULT,SetPageSite)(THIS_ IPropertyPageSite* pPageSite) PURE; \
3659 STDMETHOD_(HRESULT,Activate)(THIS_ HWND hWndParent, LPCRECT pRect, BOOL bModal) PURE; \
3660 STDMETHOD_(HRESULT,Deactivate)(THIS) PURE; \
3661 STDMETHOD_(HRESULT,GetPageInfo)(THIS_ PROPPAGEINFO* pPageInfo) PURE; \
3662 STDMETHOD_(HRESULT,SetObjects)(THIS_ ULONG cObjects, IUnknown** ppUnk) PURE; \
3663 STDMETHOD_(HRESULT,Show)(THIS_ UINT nCmdShow) PURE; \
3664 STDMETHOD_(HRESULT,Move)(THIS_ LPCRECT pRect) PURE; \
3665 STDMETHOD_(HRESULT,IsPageDirty)(THIS) PURE; \
3666 STDMETHOD_(HRESULT,Apply)(THIS) PURE; \
3667 STDMETHOD_(HRESULT,Help)(THIS_ LPCOLESTR pszHelpDir) PURE; \
3668 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ MSG* pMsg) PURE; \
3669 /*** IPropertyPage2 methods ***/ \
3670 STDMETHOD_(HRESULT,EditProperty)(THIS_ DISPID dispID) PURE;
3672 HRESULT CALLBACK IPropertyPage2_EditProperty_Proxy(
3673 IPropertyPage2* This,
3674 DISPID dispID);
3675 void __RPC_STUB IPropertyPage2_EditProperty_Stub(
3676 struct IRpcStubBuffer* This,
3677 struct IRpcChannelBuffer* pRpcChannelBuffer,
3678 PRPC_MESSAGE pRpcMessage,
3679 DWORD* pdwStubPhase);
3681 #endif /* __IPropertyPage2_INTERFACE_DEFINED__ */
3683 typedef IPropertyPageSite *LPPROPERTYPAGESITE;
3685 typedef enum tagPROPPAGESTATUS {
3686 PROPPAGESTATUS_DIRTY = 0x1,
3687 PROPPAGESTATUS_VALIDATE = 0x2,
3688 PROPPAGESTATUS_CLEAN = 0x4
3689 } PROPPAGESTATUS;
3691 /*****************************************************************************
3692 * IPropertyPageSite interface
3694 #ifndef __IPropertyPageSite_INTERFACE_DEFINED__
3695 #define __IPropertyPageSite_INTERFACE_DEFINED__
3697 DEFINE_GUID(IID_IPropertyPageSite, 0xb196b28c, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
3698 #if defined(__cplusplus) && !defined(CINTERFACE)
3699 struct IPropertyPageSite : public IUnknown
3701 virtual HRESULT STDMETHODCALLTYPE OnStatusChange(
3702 DWORD dwFlags) = 0;
3704 virtual HRESULT STDMETHODCALLTYPE GetLocaleID(
3705 LCID* pLocaleID) = 0;
3707 virtual HRESULT STDMETHODCALLTYPE GetPageContainer(
3708 IUnknown** ppUnk) = 0;
3710 virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(
3711 MSG* pMsg) = 0;
3714 #else
3715 typedef struct IPropertyPageSiteVtbl IPropertyPageSiteVtbl;
3716 struct IPropertyPageSite {
3717 const IPropertyPageSiteVtbl* lpVtbl;
3719 struct IPropertyPageSiteVtbl {
3720 ICOM_MSVTABLE_COMPAT_FIELDS
3722 /*** IUnknown methods ***/
3723 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3724 IPropertyPageSite* This,
3725 REFIID riid,
3726 void** ppvObject);
3728 ULONG (STDMETHODCALLTYPE *AddRef)(
3729 IPropertyPageSite* This);
3731 ULONG (STDMETHODCALLTYPE *Release)(
3732 IPropertyPageSite* This);
3734 /*** IPropertyPageSite methods ***/
3735 HRESULT (STDMETHODCALLTYPE *OnStatusChange)(
3736 IPropertyPageSite* This,
3737 DWORD dwFlags);
3739 HRESULT (STDMETHODCALLTYPE *GetLocaleID)(
3740 IPropertyPageSite* This,
3741 LCID* pLocaleID);
3743 HRESULT (STDMETHODCALLTYPE *GetPageContainer)(
3744 IPropertyPageSite* This,
3745 IUnknown** ppUnk);
3747 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
3748 IPropertyPageSite* This,
3749 MSG* pMsg);
3753 /*** IUnknown methods ***/
3754 #define IPropertyPageSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3755 #define IPropertyPageSite_AddRef(p) (p)->lpVtbl->AddRef(p)
3756 #define IPropertyPageSite_Release(p) (p)->lpVtbl->Release(p)
3757 /*** IPropertyPageSite methods ***/
3758 #define IPropertyPageSite_OnStatusChange(p,a) (p)->lpVtbl->OnStatusChange(p,a)
3759 #define IPropertyPageSite_GetLocaleID(p,a) (p)->lpVtbl->GetLocaleID(p,a)
3760 #define IPropertyPageSite_GetPageContainer(p,a) (p)->lpVtbl->GetPageContainer(p,a)
3761 #define IPropertyPageSite_TranslateAccelerator(p,a) (p)->lpVtbl->TranslateAccelerator(p,a)
3763 #endif
3765 #define IPropertyPageSite_METHODS \
3766 ICOM_MSVTABLE_COMPAT_FIELDS \
3767 /*** IUnknown methods ***/ \
3768 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3769 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3770 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3771 /*** IPropertyPageSite methods ***/ \
3772 STDMETHOD_(HRESULT,OnStatusChange)(THIS_ DWORD dwFlags) PURE; \
3773 STDMETHOD_(HRESULT,GetLocaleID)(THIS_ LCID* pLocaleID) PURE; \
3774 STDMETHOD_(HRESULT,GetPageContainer)(THIS_ IUnknown** ppUnk) PURE; \
3775 STDMETHOD_(HRESULT,TranslateAccelerator)(THIS_ MSG* pMsg) PURE;
3777 HRESULT CALLBACK IPropertyPageSite_OnStatusChange_Proxy(
3778 IPropertyPageSite* This,
3779 DWORD dwFlags);
3780 void __RPC_STUB IPropertyPageSite_OnStatusChange_Stub(
3781 struct IRpcStubBuffer* This,
3782 struct IRpcChannelBuffer* pRpcChannelBuffer,
3783 PRPC_MESSAGE pRpcMessage,
3784 DWORD* pdwStubPhase);
3785 HRESULT CALLBACK IPropertyPageSite_GetLocaleID_Proxy(
3786 IPropertyPageSite* This,
3787 LCID* pLocaleID);
3788 void __RPC_STUB IPropertyPageSite_GetLocaleID_Stub(
3789 struct IRpcStubBuffer* This,
3790 struct IRpcChannelBuffer* pRpcChannelBuffer,
3791 PRPC_MESSAGE pRpcMessage,
3792 DWORD* pdwStubPhase);
3793 HRESULT CALLBACK IPropertyPageSite_GetPageContainer_Proxy(
3794 IPropertyPageSite* This,
3795 IUnknown** ppUnk);
3796 void __RPC_STUB IPropertyPageSite_GetPageContainer_Stub(
3797 struct IRpcStubBuffer* This,
3798 struct IRpcChannelBuffer* pRpcChannelBuffer,
3799 PRPC_MESSAGE pRpcMessage,
3800 DWORD* pdwStubPhase);
3801 HRESULT CALLBACK IPropertyPageSite_TranslateAccelerator_Proxy(
3802 IPropertyPageSite* This,
3803 MSG* pMsg);
3804 void __RPC_STUB IPropertyPageSite_TranslateAccelerator_Stub(
3805 struct IRpcStubBuffer* This,
3806 struct IRpcChannelBuffer* pRpcChannelBuffer,
3807 PRPC_MESSAGE pRpcMessage,
3808 DWORD* pdwStubPhase);
3810 #endif /* __IPropertyPageSite_INTERFACE_DEFINED__ */
3812 #ifndef __IPropertyNotifySink_FWD_DEFINED__
3813 #define __IPropertyNotifySink_FWD_DEFINED__
3814 typedef struct IPropertyNotifySink IPropertyNotifySink;
3815 #endif
3817 typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK;
3819 /*****************************************************************************
3820 * IPropertyNotifySink interface
3822 #ifndef __IPropertyNotifySink_INTERFACE_DEFINED__
3823 #define __IPropertyNotifySink_INTERFACE_DEFINED__
3825 DEFINE_GUID(IID_IPropertyNotifySink, 0x9bfbbc02, 0xeff1, 0x101a, 0x84,0xed, 0x00,0xaa,0x00,0x34,0x1d,0x07);
3826 #if defined(__cplusplus) && !defined(CINTERFACE)
3827 struct IPropertyNotifySink : public IUnknown
3829 virtual HRESULT STDMETHODCALLTYPE OnChanged(
3830 DISPID dispID) = 0;
3832 virtual HRESULT STDMETHODCALLTYPE OnRequestEdit(
3833 DISPID dispID) = 0;
3836 #else
3837 typedef struct IPropertyNotifySinkVtbl IPropertyNotifySinkVtbl;
3838 struct IPropertyNotifySink {
3839 const IPropertyNotifySinkVtbl* lpVtbl;
3841 struct IPropertyNotifySinkVtbl {
3842 ICOM_MSVTABLE_COMPAT_FIELDS
3844 /*** IUnknown methods ***/
3845 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3846 IPropertyNotifySink* This,
3847 REFIID riid,
3848 void** ppvObject);
3850 ULONG (STDMETHODCALLTYPE *AddRef)(
3851 IPropertyNotifySink* This);
3853 ULONG (STDMETHODCALLTYPE *Release)(
3854 IPropertyNotifySink* This);
3856 /*** IPropertyNotifySink methods ***/
3857 HRESULT (STDMETHODCALLTYPE *OnChanged)(
3858 IPropertyNotifySink* This,
3859 DISPID dispID);
3861 HRESULT (STDMETHODCALLTYPE *OnRequestEdit)(
3862 IPropertyNotifySink* This,
3863 DISPID dispID);
3867 /*** IUnknown methods ***/
3868 #define IPropertyNotifySink_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3869 #define IPropertyNotifySink_AddRef(p) (p)->lpVtbl->AddRef(p)
3870 #define IPropertyNotifySink_Release(p) (p)->lpVtbl->Release(p)
3871 /*** IPropertyNotifySink methods ***/
3872 #define IPropertyNotifySink_OnChanged(p,a) (p)->lpVtbl->OnChanged(p,a)
3873 #define IPropertyNotifySink_OnRequestEdit(p,a) (p)->lpVtbl->OnRequestEdit(p,a)
3875 #endif
3877 #define IPropertyNotifySink_METHODS \
3878 ICOM_MSVTABLE_COMPAT_FIELDS \
3879 /*** IUnknown methods ***/ \
3880 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3881 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3882 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3883 /*** IPropertyNotifySink methods ***/ \
3884 STDMETHOD_(HRESULT,OnChanged)(THIS_ DISPID dispID) PURE; \
3885 STDMETHOD_(HRESULT,OnRequestEdit)(THIS_ DISPID dispID) PURE;
3887 HRESULT CALLBACK IPropertyNotifySink_OnChanged_Proxy(
3888 IPropertyNotifySink* This,
3889 DISPID dispID);
3890 void __RPC_STUB IPropertyNotifySink_OnChanged_Stub(
3891 struct IRpcStubBuffer* This,
3892 struct IRpcChannelBuffer* pRpcChannelBuffer,
3893 PRPC_MESSAGE pRpcMessage,
3894 DWORD* pdwStubPhase);
3895 HRESULT CALLBACK IPropertyNotifySink_OnRequestEdit_Proxy(
3896 IPropertyNotifySink* This,
3897 DISPID dispID);
3898 void __RPC_STUB IPropertyNotifySink_OnRequestEdit_Stub(
3899 struct IRpcStubBuffer* This,
3900 struct IRpcChannelBuffer* pRpcChannelBuffer,
3901 PRPC_MESSAGE pRpcMessage,
3902 DWORD* pdwStubPhase);
3904 #endif /* __IPropertyNotifySink_INTERFACE_DEFINED__ */
3906 #ifndef __ISimpleFrameSite_FWD_DEFINED__
3907 #define __ISimpleFrameSite_FWD_DEFINED__
3908 typedef struct ISimpleFrameSite ISimpleFrameSite;
3909 #endif
3911 typedef ISimpleFrameSite *LPSIMPLEFRAMESITE;
3913 /*****************************************************************************
3914 * ISimpleFrameSite interface
3916 #ifndef __ISimpleFrameSite_INTERFACE_DEFINED__
3917 #define __ISimpleFrameSite_INTERFACE_DEFINED__
3919 DEFINE_GUID(IID_ISimpleFrameSite, 0x742b0e01, 0x14e6, 0x101b, 0x91,0x4e, 0x00,0xaa,0x00,0x30,0x0c,0xab);
3920 #if defined(__cplusplus) && !defined(CINTERFACE)
3921 struct ISimpleFrameSite : public IUnknown
3923 virtual HRESULT STDMETHODCALLTYPE PreMessageFilter(
3924 HWND hWnd,
3925 UINT msg,
3926 WPARAM wp,
3927 LPARAM lp,
3928 LRESULT* plResult,
3929 DWORD* pdwCookie) = 0;
3931 virtual HRESULT STDMETHODCALLTYPE PostMessageFilter(
3932 HWND hWnd,
3933 UINT msg,
3934 WPARAM wp,
3935 LPARAM lp,
3936 LRESULT* plResult,
3937 DWORD dwCookie) = 0;
3940 #else
3941 typedef struct ISimpleFrameSiteVtbl ISimpleFrameSiteVtbl;
3942 struct ISimpleFrameSite {
3943 const ISimpleFrameSiteVtbl* lpVtbl;
3945 struct ISimpleFrameSiteVtbl {
3946 ICOM_MSVTABLE_COMPAT_FIELDS
3948 /*** IUnknown methods ***/
3949 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3950 ISimpleFrameSite* This,
3951 REFIID riid,
3952 void** ppvObject);
3954 ULONG (STDMETHODCALLTYPE *AddRef)(
3955 ISimpleFrameSite* This);
3957 ULONG (STDMETHODCALLTYPE *Release)(
3958 ISimpleFrameSite* This);
3960 /*** ISimpleFrameSite methods ***/
3961 HRESULT (STDMETHODCALLTYPE *PreMessageFilter)(
3962 ISimpleFrameSite* This,
3963 HWND hWnd,
3964 UINT msg,
3965 WPARAM wp,
3966 LPARAM lp,
3967 LRESULT* plResult,
3968 DWORD* pdwCookie);
3970 HRESULT (STDMETHODCALLTYPE *PostMessageFilter)(
3971 ISimpleFrameSite* This,
3972 HWND hWnd,
3973 UINT msg,
3974 WPARAM wp,
3975 LPARAM lp,
3976 LRESULT* plResult,
3977 DWORD dwCookie);
3981 /*** IUnknown methods ***/
3982 #define ISimpleFrameSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3983 #define ISimpleFrameSite_AddRef(p) (p)->lpVtbl->AddRef(p)
3984 #define ISimpleFrameSite_Release(p) (p)->lpVtbl->Release(p)
3985 /*** ISimpleFrameSite methods ***/
3986 #define ISimpleFrameSite_PreMessageFilter(p,a,b,c,d,e,f) (p)->lpVtbl->PreMessageFilter(p,a,b,c,d,e,f)
3987 #define ISimpleFrameSite_PostMessageFilter(p,a,b,c,d,e,f) (p)->lpVtbl->PostMessageFilter(p,a,b,c,d,e,f)
3989 #endif
3991 #define ISimpleFrameSite_METHODS \
3992 ICOM_MSVTABLE_COMPAT_FIELDS \
3993 /*** IUnknown methods ***/ \
3994 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
3995 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
3996 STDMETHOD_(ULONG,Release)(THIS) PURE; \
3997 /*** ISimpleFrameSite methods ***/ \
3998 STDMETHOD_(HRESULT,PreMessageFilter)(THIS_ HWND hWnd, UINT msg, WPARAM wp, LPARAM lp, LRESULT* plResult, DWORD* pdwCookie) PURE; \
3999 STDMETHOD_(HRESULT,PostMessageFilter)(THIS_ HWND hWnd, UINT msg, WPARAM wp, LPARAM lp, LRESULT* plResult, DWORD dwCookie) PURE;
4001 HRESULT CALLBACK ISimpleFrameSite_PreMessageFilter_Proxy(
4002 ISimpleFrameSite* This,
4003 HWND hWnd,
4004 UINT msg,
4005 WPARAM wp,
4006 LPARAM lp,
4007 LRESULT* plResult,
4008 DWORD* pdwCookie);
4009 void __RPC_STUB ISimpleFrameSite_PreMessageFilter_Stub(
4010 struct IRpcStubBuffer* This,
4011 struct IRpcChannelBuffer* pRpcChannelBuffer,
4012 PRPC_MESSAGE pRpcMessage,
4013 DWORD* pdwStubPhase);
4014 HRESULT CALLBACK ISimpleFrameSite_PostMessageFilter_Proxy(
4015 ISimpleFrameSite* This,
4016 HWND hWnd,
4017 UINT msg,
4018 WPARAM wp,
4019 LPARAM lp,
4020 LRESULT* plResult,
4021 DWORD dwCookie);
4022 void __RPC_STUB ISimpleFrameSite_PostMessageFilter_Stub(
4023 struct IRpcStubBuffer* This,
4024 struct IRpcChannelBuffer* pRpcChannelBuffer,
4025 PRPC_MESSAGE pRpcMessage,
4026 DWORD* pdwStubPhase);
4028 #endif /* __ISimpleFrameSite_INTERFACE_DEFINED__ */
4030 #ifndef __IPersistStreamInit_FWD_DEFINED__
4031 #define __IPersistStreamInit_FWD_DEFINED__
4032 typedef struct IPersistStreamInit IPersistStreamInit;
4033 #endif
4035 typedef IPersistStreamInit *LPPERSISTSTREAMINIT;
4037 /*****************************************************************************
4038 * IPersistStreamInit interface
4040 #ifndef __IPersistStreamInit_INTERFACE_DEFINED__
4041 #define __IPersistStreamInit_INTERFACE_DEFINED__
4043 DEFINE_GUID(IID_IPersistStreamInit, 0x7fd52380, 0x4e07, 0x101b, 0xae,0x2d, 0x08,0x00,0x2b,0x2e,0xc7,0x13);
4044 #if defined(__cplusplus) && !defined(CINTERFACE)
4045 struct IPersistStreamInit : public IPersist
4047 virtual HRESULT STDMETHODCALLTYPE IsDirty(
4048 ) = 0;
4050 virtual HRESULT STDMETHODCALLTYPE Load(
4051 LPSTREAM pStm) = 0;
4053 virtual HRESULT STDMETHODCALLTYPE Save(
4054 LPSTREAM pStm,
4055 BOOL fClearDirty) = 0;
4057 virtual HRESULT STDMETHODCALLTYPE GetSizeMax(
4058 ULARGE_INTEGER* pcbSize) = 0;
4060 virtual HRESULT STDMETHODCALLTYPE InitNew(
4061 ) = 0;
4064 #else
4065 typedef struct IPersistStreamInitVtbl IPersistStreamInitVtbl;
4066 struct IPersistStreamInit {
4067 const IPersistStreamInitVtbl* lpVtbl;
4069 struct IPersistStreamInitVtbl {
4070 ICOM_MSVTABLE_COMPAT_FIELDS
4072 /*** IUnknown methods ***/
4073 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4074 IPersistStreamInit* This,
4075 REFIID riid,
4076 void** ppvObject);
4078 ULONG (STDMETHODCALLTYPE *AddRef)(
4079 IPersistStreamInit* This);
4081 ULONG (STDMETHODCALLTYPE *Release)(
4082 IPersistStreamInit* This);
4084 /*** IPersist methods ***/
4085 HRESULT (STDMETHODCALLTYPE *GetClassID)(
4086 IPersistStreamInit* This,
4087 CLSID* pClassID);
4089 /*** IPersistStreamInit methods ***/
4090 HRESULT (STDMETHODCALLTYPE *IsDirty)(
4091 IPersistStreamInit* This);
4093 HRESULT (STDMETHODCALLTYPE *Load)(
4094 IPersistStreamInit* This,
4095 LPSTREAM pStm);
4097 HRESULT (STDMETHODCALLTYPE *Save)(
4098 IPersistStreamInit* This,
4099 LPSTREAM pStm,
4100 BOOL fClearDirty);
4102 HRESULT (STDMETHODCALLTYPE *GetSizeMax)(
4103 IPersistStreamInit* This,
4104 ULARGE_INTEGER* pcbSize);
4106 HRESULT (STDMETHODCALLTYPE *InitNew)(
4107 IPersistStreamInit* This);
4111 /*** IUnknown methods ***/
4112 #define IPersistStreamInit_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
4113 #define IPersistStreamInit_AddRef(p) (p)->lpVtbl->AddRef(p)
4114 #define IPersistStreamInit_Release(p) (p)->lpVtbl->Release(p)
4115 /*** IPersist methods ***/
4116 #define IPersistStreamInit_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
4117 /*** IPersistStreamInit methods ***/
4118 #define IPersistStreamInit_IsDirty(p) (p)->lpVtbl->IsDirty(p)
4119 #define IPersistStreamInit_Load(p,a) (p)->lpVtbl->Load(p,a)
4120 #define IPersistStreamInit_Save(p,a,b) (p)->lpVtbl->Save(p,a,b)
4121 #define IPersistStreamInit_GetSizeMax(p,a) (p)->lpVtbl->GetSizeMax(p,a)
4122 #define IPersistStreamInit_InitNew(p) (p)->lpVtbl->InitNew(p)
4124 #endif
4126 #define IPersistStreamInit_METHODS \
4127 ICOM_MSVTABLE_COMPAT_FIELDS \
4128 /*** IUnknown methods ***/ \
4129 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
4130 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
4131 STDMETHOD_(ULONG,Release)(THIS) PURE; \
4132 /*** IPersist methods ***/ \
4133 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
4134 /*** IPersistStreamInit methods ***/ \
4135 STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \
4136 STDMETHOD_(HRESULT,Load)(THIS_ LPSTREAM pStm) PURE; \
4137 STDMETHOD_(HRESULT,Save)(THIS_ LPSTREAM pStm, BOOL fClearDirty) PURE; \
4138 STDMETHOD_(HRESULT,GetSizeMax)(THIS_ ULARGE_INTEGER* pcbSize) PURE; \
4139 STDMETHOD_(HRESULT,InitNew)(THIS) PURE;
4141 HRESULT CALLBACK IPersistStreamInit_IsDirty_Proxy(
4142 IPersistStreamInit* This);
4143 void __RPC_STUB IPersistStreamInit_IsDirty_Stub(
4144 struct IRpcStubBuffer* This,
4145 struct IRpcChannelBuffer* pRpcChannelBuffer,
4146 PRPC_MESSAGE pRpcMessage,
4147 DWORD* pdwStubPhase);
4148 HRESULT CALLBACK IPersistStreamInit_Load_Proxy(
4149 IPersistStreamInit* This,
4150 LPSTREAM pStm);
4151 void __RPC_STUB IPersistStreamInit_Load_Stub(
4152 struct IRpcStubBuffer* This,
4153 struct IRpcChannelBuffer* pRpcChannelBuffer,
4154 PRPC_MESSAGE pRpcMessage,
4155 DWORD* pdwStubPhase);
4156 HRESULT CALLBACK IPersistStreamInit_Save_Proxy(
4157 IPersistStreamInit* This,
4158 LPSTREAM pStm,
4159 BOOL fClearDirty);
4160 void __RPC_STUB IPersistStreamInit_Save_Stub(
4161 struct IRpcStubBuffer* This,
4162 struct IRpcChannelBuffer* pRpcChannelBuffer,
4163 PRPC_MESSAGE pRpcMessage,
4164 DWORD* pdwStubPhase);
4165 HRESULT CALLBACK IPersistStreamInit_GetSizeMax_Proxy(
4166 IPersistStreamInit* This,
4167 ULARGE_INTEGER* pcbSize);
4168 void __RPC_STUB IPersistStreamInit_GetSizeMax_Stub(
4169 struct IRpcStubBuffer* This,
4170 struct IRpcChannelBuffer* pRpcChannelBuffer,
4171 PRPC_MESSAGE pRpcMessage,
4172 DWORD* pdwStubPhase);
4173 HRESULT CALLBACK IPersistStreamInit_InitNew_Proxy(
4174 IPersistStreamInit* This);
4175 void __RPC_STUB IPersistStreamInit_InitNew_Stub(
4176 struct IRpcStubBuffer* This,
4177 struct IRpcChannelBuffer* pRpcChannelBuffer,
4178 PRPC_MESSAGE pRpcMessage,
4179 DWORD* pdwStubPhase);
4181 #endif /* __IPersistStreamInit_INTERFACE_DEFINED__ */
4183 #ifndef __IPersistMemory_FWD_DEFINED__
4184 #define __IPersistMemory_FWD_DEFINED__
4185 typedef struct IPersistMemory IPersistMemory;
4186 #endif
4188 typedef IPersistMemory *LPPERSISTMEMORY;
4190 /*****************************************************************************
4191 * IPersistMemory interface
4193 #ifndef __IPersistMemory_INTERFACE_DEFINED__
4194 #define __IPersistMemory_INTERFACE_DEFINED__
4196 DEFINE_GUID(IID_IPersistMemory, 0xbd1ae5e0, 0xa6ae, 0x11ce, 0xbd,0x37, 0x50,0x42,0x00,0xc1,0x00,0x00);
4197 #if defined(__cplusplus) && !defined(CINTERFACE)
4198 struct IPersistMemory : public IPersist
4200 virtual HRESULT STDMETHODCALLTYPE IsDirty(
4201 ) = 0;
4203 virtual HRESULT STDMETHODCALLTYPE Load(
4204 LPVOID pMem,
4205 ULONG cbSize) = 0;
4207 virtual HRESULT STDMETHODCALLTYPE Save(
4208 LPVOID pMem,
4209 BOOL fClearDirty,
4210 ULONG cbSize) = 0;
4212 virtual HRESULT STDMETHODCALLTYPE GetSizeMax(
4213 ULONG* pCbSize) = 0;
4215 virtual HRESULT STDMETHODCALLTYPE InitNew(
4216 ) = 0;
4219 #else
4220 typedef struct IPersistMemoryVtbl IPersistMemoryVtbl;
4221 struct IPersistMemory {
4222 const IPersistMemoryVtbl* lpVtbl;
4224 struct IPersistMemoryVtbl {
4225 ICOM_MSVTABLE_COMPAT_FIELDS
4227 /*** IUnknown methods ***/
4228 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4229 IPersistMemory* This,
4230 REFIID riid,
4231 void** ppvObject);
4233 ULONG (STDMETHODCALLTYPE *AddRef)(
4234 IPersistMemory* This);
4236 ULONG (STDMETHODCALLTYPE *Release)(
4237 IPersistMemory* This);
4239 /*** IPersist methods ***/
4240 HRESULT (STDMETHODCALLTYPE *GetClassID)(
4241 IPersistMemory* This,
4242 CLSID* pClassID);
4244 /*** IPersistMemory methods ***/
4245 HRESULT (STDMETHODCALLTYPE *IsDirty)(
4246 IPersistMemory* This);
4248 HRESULT (STDMETHODCALLTYPE *Load)(
4249 IPersistMemory* This,
4250 LPVOID pMem,
4251 ULONG cbSize);
4253 HRESULT (STDMETHODCALLTYPE *Save)(
4254 IPersistMemory* This,
4255 LPVOID pMem,
4256 BOOL fClearDirty,
4257 ULONG cbSize);
4259 HRESULT (STDMETHODCALLTYPE *GetSizeMax)(
4260 IPersistMemory* This,
4261 ULONG* pCbSize);
4263 HRESULT (STDMETHODCALLTYPE *InitNew)(
4264 IPersistMemory* This);
4268 /*** IUnknown methods ***/
4269 #define IPersistMemory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
4270 #define IPersistMemory_AddRef(p) (p)->lpVtbl->AddRef(p)
4271 #define IPersistMemory_Release(p) (p)->lpVtbl->Release(p)
4272 /*** IPersist methods ***/
4273 #define IPersistMemory_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
4274 /*** IPersistMemory methods ***/
4275 #define IPersistMemory_IsDirty(p) (p)->lpVtbl->IsDirty(p)
4276 #define IPersistMemory_Load(p,a,b) (p)->lpVtbl->Load(p,a,b)
4277 #define IPersistMemory_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
4278 #define IPersistMemory_GetSizeMax(p,a) (p)->lpVtbl->GetSizeMax(p,a)
4279 #define IPersistMemory_InitNew(p) (p)->lpVtbl->InitNew(p)
4281 #endif
4283 #define IPersistMemory_METHODS \
4284 ICOM_MSVTABLE_COMPAT_FIELDS \
4285 /*** IUnknown methods ***/ \
4286 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
4287 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
4288 STDMETHOD_(ULONG,Release)(THIS) PURE; \
4289 /*** IPersist methods ***/ \
4290 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
4291 /*** IPersistMemory methods ***/ \
4292 STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \
4293 STDMETHOD_(HRESULT,Load)(THIS_ LPVOID pMem, ULONG cbSize) PURE; \
4294 STDMETHOD_(HRESULT,Save)(THIS_ LPVOID pMem, BOOL fClearDirty, ULONG cbSize) PURE; \
4295 STDMETHOD_(HRESULT,GetSizeMax)(THIS_ ULONG* pCbSize) PURE; \
4296 STDMETHOD_(HRESULT,InitNew)(THIS) PURE;
4298 HRESULT CALLBACK IPersistMemory_IsDirty_Proxy(
4299 IPersistMemory* This);
4300 void __RPC_STUB IPersistMemory_IsDirty_Stub(
4301 struct IRpcStubBuffer* This,
4302 struct IRpcChannelBuffer* pRpcChannelBuffer,
4303 PRPC_MESSAGE pRpcMessage,
4304 DWORD* pdwStubPhase);
4305 HRESULT CALLBACK IPersistMemory_RemoteLoad_Proxy(
4306 IPersistMemory* This,
4307 BYTE* pMem,
4308 ULONG cbSize);
4309 void __RPC_STUB IPersistMemory_RemoteLoad_Stub(
4310 struct IRpcStubBuffer* This,
4311 struct IRpcChannelBuffer* pRpcChannelBuffer,
4312 PRPC_MESSAGE pRpcMessage,
4313 DWORD* pdwStubPhase);
4314 HRESULT CALLBACK IPersistMemory_Load_Proxy(
4315 IPersistMemory* This,
4316 LPVOID pMem,
4317 ULONG cbSize);
4318 HRESULT __RPC_STUB IPersistMemory_Load_Stub(
4319 IPersistMemory* This,
4320 BYTE* pMem,
4321 ULONG cbSize);
4322 HRESULT CALLBACK IPersistMemory_RemoteSave_Proxy(
4323 IPersistMemory* This,
4324 BYTE* pMem,
4325 BOOL fClearDirty,
4326 ULONG cbSize);
4327 void __RPC_STUB IPersistMemory_RemoteSave_Stub(
4328 struct IRpcStubBuffer* This,
4329 struct IRpcChannelBuffer* pRpcChannelBuffer,
4330 PRPC_MESSAGE pRpcMessage,
4331 DWORD* pdwStubPhase);
4332 HRESULT CALLBACK IPersistMemory_Save_Proxy(
4333 IPersistMemory* This,
4334 LPVOID pMem,
4335 BOOL fClearDirty,
4336 ULONG cbSize);
4337 HRESULT __RPC_STUB IPersistMemory_Save_Stub(
4338 IPersistMemory* This,
4339 BYTE* pMem,
4340 BOOL fClearDirty,
4341 ULONG cbSize);
4342 HRESULT CALLBACK IPersistMemory_GetSizeMax_Proxy(
4343 IPersistMemory* This,
4344 ULONG* pCbSize);
4345 void __RPC_STUB IPersistMemory_GetSizeMax_Stub(
4346 struct IRpcStubBuffer* This,
4347 struct IRpcChannelBuffer* pRpcChannelBuffer,
4348 PRPC_MESSAGE pRpcMessage,
4349 DWORD* pdwStubPhase);
4350 HRESULT CALLBACK IPersistMemory_InitNew_Proxy(
4351 IPersistMemory* This);
4352 void __RPC_STUB IPersistMemory_InitNew_Stub(
4353 struct IRpcStubBuffer* This,
4354 struct IRpcChannelBuffer* pRpcChannelBuffer,
4355 PRPC_MESSAGE pRpcMessage,
4356 DWORD* pdwStubPhase);
4358 #endif /* __IPersistMemory_INTERFACE_DEFINED__ */
4360 #ifndef __IPersistPropertyBag_FWD_DEFINED__
4361 #define __IPersistPropertyBag_FWD_DEFINED__
4362 typedef struct IPersistPropertyBag IPersistPropertyBag;
4363 #endif
4365 typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG;
4367 /*****************************************************************************
4368 * IPersistPropertyBag interface
4370 #ifndef __IPersistPropertyBag_INTERFACE_DEFINED__
4371 #define __IPersistPropertyBag_INTERFACE_DEFINED__
4373 DEFINE_GUID(IID_IPersistPropertyBag, 0x37d84f60, 0x42cb, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51);
4374 #if defined(__cplusplus) && !defined(CINTERFACE)
4375 struct IPersistPropertyBag : public IPersist
4377 virtual HRESULT STDMETHODCALLTYPE InitNew(
4378 ) = 0;
4380 virtual HRESULT STDMETHODCALLTYPE Load(
4381 IPropertyBag* pPropBag,
4382 IErrorLog* pErrorLog) = 0;
4384 virtual HRESULT STDMETHODCALLTYPE Save(
4385 IPropertyBag* pPropBag,
4386 BOOL fClearDirty,
4387 BOOL fSaveAllProperties) = 0;
4390 #else
4391 typedef struct IPersistPropertyBagVtbl IPersistPropertyBagVtbl;
4392 struct IPersistPropertyBag {
4393 const IPersistPropertyBagVtbl* lpVtbl;
4395 struct IPersistPropertyBagVtbl {
4396 ICOM_MSVTABLE_COMPAT_FIELDS
4398 /*** IUnknown methods ***/
4399 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4400 IPersistPropertyBag* This,
4401 REFIID riid,
4402 void** ppvObject);
4404 ULONG (STDMETHODCALLTYPE *AddRef)(
4405 IPersistPropertyBag* This);
4407 ULONG (STDMETHODCALLTYPE *Release)(
4408 IPersistPropertyBag* This);
4410 /*** IPersist methods ***/
4411 HRESULT (STDMETHODCALLTYPE *GetClassID)(
4412 IPersistPropertyBag* This,
4413 CLSID* pClassID);
4415 /*** IPersistPropertyBag methods ***/
4416 HRESULT (STDMETHODCALLTYPE *InitNew)(
4417 IPersistPropertyBag* This);
4419 HRESULT (STDMETHODCALLTYPE *Load)(
4420 IPersistPropertyBag* This,
4421 IPropertyBag* pPropBag,
4422 IErrorLog* pErrorLog);
4424 HRESULT (STDMETHODCALLTYPE *Save)(
4425 IPersistPropertyBag* This,
4426 IPropertyBag* pPropBag,
4427 BOOL fClearDirty,
4428 BOOL fSaveAllProperties);
4432 /*** IUnknown methods ***/
4433 #define IPersistPropertyBag_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
4434 #define IPersistPropertyBag_AddRef(p) (p)->lpVtbl->AddRef(p)
4435 #define IPersistPropertyBag_Release(p) (p)->lpVtbl->Release(p)
4436 /*** IPersist methods ***/
4437 #define IPersistPropertyBag_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
4438 /*** IPersistPropertyBag methods ***/
4439 #define IPersistPropertyBag_InitNew(p) (p)->lpVtbl->InitNew(p)
4440 #define IPersistPropertyBag_Load(p,a,b) (p)->lpVtbl->Load(p,a,b)
4441 #define IPersistPropertyBag_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
4443 #endif
4445 #define IPersistPropertyBag_METHODS \
4446 ICOM_MSVTABLE_COMPAT_FIELDS \
4447 /*** IUnknown methods ***/ \
4448 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
4449 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
4450 STDMETHOD_(ULONG,Release)(THIS) PURE; \
4451 /*** IPersist methods ***/ \
4452 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
4453 /*** IPersistPropertyBag methods ***/ \
4454 STDMETHOD_(HRESULT,InitNew)(THIS) PURE; \
4455 STDMETHOD_(HRESULT,Load)(THIS_ IPropertyBag* pPropBag, IErrorLog* pErrorLog) PURE; \
4456 STDMETHOD_(HRESULT,Save)(THIS_ IPropertyBag* pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) PURE;
4458 HRESULT CALLBACK IPersistPropertyBag_InitNew_Proxy(
4459 IPersistPropertyBag* This);
4460 void __RPC_STUB IPersistPropertyBag_InitNew_Stub(
4461 struct IRpcStubBuffer* This,
4462 struct IRpcChannelBuffer* pRpcChannelBuffer,
4463 PRPC_MESSAGE pRpcMessage,
4464 DWORD* pdwStubPhase);
4465 HRESULT CALLBACK IPersistPropertyBag_Load_Proxy(
4466 IPersistPropertyBag* This,
4467 IPropertyBag* pPropBag,
4468 IErrorLog* pErrorLog);
4469 void __RPC_STUB IPersistPropertyBag_Load_Stub(
4470 struct IRpcStubBuffer* This,
4471 struct IRpcChannelBuffer* pRpcChannelBuffer,
4472 PRPC_MESSAGE pRpcMessage,
4473 DWORD* pdwStubPhase);
4474 HRESULT CALLBACK IPersistPropertyBag_Save_Proxy(
4475 IPersistPropertyBag* This,
4476 IPropertyBag* pPropBag,
4477 BOOL fClearDirty,
4478 BOOL fSaveAllProperties);
4479 void __RPC_STUB IPersistPropertyBag_Save_Stub(
4480 struct IRpcStubBuffer* This,
4481 struct IRpcChannelBuffer* pRpcChannelBuffer,
4482 PRPC_MESSAGE pRpcMessage,
4483 DWORD* pdwStubPhase);
4485 #endif /* __IPersistPropertyBag_INTERFACE_DEFINED__ */
4487 #ifndef __IPropertyBag2_FWD_DEFINED__
4488 #define __IPropertyBag2_FWD_DEFINED__
4489 typedef struct IPropertyBag2 IPropertyBag2;
4490 #endif
4492 typedef IPropertyBag2 *LPPROPERTYBAG2;
4494 typedef enum tagPROPBAG2_TYPE {
4495 PROPBAG2_TYPE_UNDEFINED = 0,
4496 PROPBAG2_TYPE_DATA = 1,
4497 PROPBAG2_TYPE_URL = 2,
4498 PROPBAG2_TYPE_OBJECT = 3,
4499 PROPBAG2_TYPE_STREAM = 4,
4500 PROPBAG2_TYPE_STORAGE = 5,
4501 PROPBAG2_TYPE_MONIKER = 6
4502 } PROPBAG2_TYPE;
4504 typedef struct tagPROPBAG2 {
4505 DWORD dwType;
4506 VARTYPE vt;
4507 CLIPFORMAT cfType;
4508 DWORD dwHint;
4509 LPOLESTR pstrName;
4510 CLSID clsid;
4511 } PROPBAG2;
4513 /*****************************************************************************
4514 * IPropertyBag2 interface
4516 #ifndef __IPropertyBag2_INTERFACE_DEFINED__
4517 #define __IPropertyBag2_INTERFACE_DEFINED__
4519 DEFINE_GUID(IID_IPropertyBag2, 0x22f55882, 0x280b, 0x11d0, 0xa8,0xa9, 0x00,0xa0,0xc9,0x0c,0x20,0x04);
4520 #if defined(__cplusplus) && !defined(CINTERFACE)
4521 struct IPropertyBag2 : public IUnknown
4523 virtual HRESULT STDMETHODCALLTYPE Read(
4524 ULONG cProperties,
4525 PROPBAG2* pPropBag,
4526 IErrorLog* pErrLog,
4527 VARIANT* pvarValue,
4528 HRESULT* phrError) = 0;
4530 virtual HRESULT STDMETHODCALLTYPE Write(
4531 ULONG cProperties,
4532 PROPBAG2* pPropBag,
4533 VARIANT* pvarValue) = 0;
4535 virtual HRESULT STDMETHODCALLTYPE CountProperties(
4536 ULONG* pcProperties) = 0;
4538 virtual HRESULT STDMETHODCALLTYPE GetPropertyInfo(
4539 ULONG iProperty,
4540 ULONG cProperties,
4541 PROPBAG2* pPropBag,
4542 ULONG* pcProperties) = 0;
4544 virtual HRESULT STDMETHODCALLTYPE LoadObject(
4545 LPCOLESTR pstrName,
4546 DWORD dwHint,
4547 IUnknown* pUnkObject,
4548 IErrorLog* pErrLog) = 0;
4551 #else
4552 typedef struct IPropertyBag2Vtbl IPropertyBag2Vtbl;
4553 struct IPropertyBag2 {
4554 const IPropertyBag2Vtbl* lpVtbl;
4556 struct IPropertyBag2Vtbl {
4557 ICOM_MSVTABLE_COMPAT_FIELDS
4559 /*** IUnknown methods ***/
4560 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4561 IPropertyBag2* This,
4562 REFIID riid,
4563 void** ppvObject);
4565 ULONG (STDMETHODCALLTYPE *AddRef)(
4566 IPropertyBag2* This);
4568 ULONG (STDMETHODCALLTYPE *Release)(
4569 IPropertyBag2* This);
4571 /*** IPropertyBag2 methods ***/
4572 HRESULT (STDMETHODCALLTYPE *Read)(
4573 IPropertyBag2* This,
4574 ULONG cProperties,
4575 PROPBAG2* pPropBag,
4576 IErrorLog* pErrLog,
4577 VARIANT* pvarValue,
4578 HRESULT* phrError);
4580 HRESULT (STDMETHODCALLTYPE *Write)(
4581 IPropertyBag2* This,
4582 ULONG cProperties,
4583 PROPBAG2* pPropBag,
4584 VARIANT* pvarValue);
4586 HRESULT (STDMETHODCALLTYPE *CountProperties)(
4587 IPropertyBag2* This,
4588 ULONG* pcProperties);
4590 HRESULT (STDMETHODCALLTYPE *GetPropertyInfo)(
4591 IPropertyBag2* This,
4592 ULONG iProperty,
4593 ULONG cProperties,
4594 PROPBAG2* pPropBag,
4595 ULONG* pcProperties);
4597 HRESULT (STDMETHODCALLTYPE *LoadObject)(
4598 IPropertyBag2* This,
4599 LPCOLESTR pstrName,
4600 DWORD dwHint,
4601 IUnknown* pUnkObject,
4602 IErrorLog* pErrLog);
4606 /*** IUnknown methods ***/
4607 #define IPropertyBag2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
4608 #define IPropertyBag2_AddRef(p) (p)->lpVtbl->AddRef(p)
4609 #define IPropertyBag2_Release(p) (p)->lpVtbl->Release(p)
4610 /*** IPropertyBag2 methods ***/
4611 #define IPropertyBag2_Read(p,a,b,c,d,e) (p)->lpVtbl->Read(p,a,b,c,d,e)
4612 #define IPropertyBag2_Write(p,a,b,c) (p)->lpVtbl->Write(p,a,b,c)
4613 #define IPropertyBag2_CountProperties(p,a) (p)->lpVtbl->CountProperties(p,a)
4614 #define IPropertyBag2_GetPropertyInfo(p,a,b,c,d) (p)->lpVtbl->GetPropertyInfo(p,a,b,c,d)
4615 #define IPropertyBag2_LoadObject(p,a,b,c,d) (p)->lpVtbl->LoadObject(p,a,b,c,d)
4617 #endif
4619 #define IPropertyBag2_METHODS \
4620 ICOM_MSVTABLE_COMPAT_FIELDS \
4621 /*** IUnknown methods ***/ \
4622 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
4623 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
4624 STDMETHOD_(ULONG,Release)(THIS) PURE; \
4625 /*** IPropertyBag2 methods ***/ \
4626 STDMETHOD_(HRESULT,Read)(THIS_ ULONG cProperties, PROPBAG2* pPropBag, IErrorLog* pErrLog, VARIANT* pvarValue, HRESULT* phrError) PURE; \
4627 STDMETHOD_(HRESULT,Write)(THIS_ ULONG cProperties, PROPBAG2* pPropBag, VARIANT* pvarValue) PURE; \
4628 STDMETHOD_(HRESULT,CountProperties)(THIS_ ULONG* pcProperties) PURE; \
4629 STDMETHOD_(HRESULT,GetPropertyInfo)(THIS_ ULONG iProperty, ULONG cProperties, PROPBAG2* pPropBag, ULONG* pcProperties) PURE; \
4630 STDMETHOD_(HRESULT,LoadObject)(THIS_ LPCOLESTR pstrName, DWORD dwHint, IUnknown* pUnkObject, IErrorLog* pErrLog) PURE;
4632 HRESULT CALLBACK IPropertyBag2_Read_Proxy(
4633 IPropertyBag2* This,
4634 ULONG cProperties,
4635 PROPBAG2* pPropBag,
4636 IErrorLog* pErrLog,
4637 VARIANT* pvarValue,
4638 HRESULT* phrError);
4639 void __RPC_STUB IPropertyBag2_Read_Stub(
4640 struct IRpcStubBuffer* This,
4641 struct IRpcChannelBuffer* pRpcChannelBuffer,
4642 PRPC_MESSAGE pRpcMessage,
4643 DWORD* pdwStubPhase);
4644 HRESULT CALLBACK IPropertyBag2_Write_Proxy(
4645 IPropertyBag2* This,
4646 ULONG cProperties,
4647 PROPBAG2* pPropBag,
4648 VARIANT* pvarValue);
4649 void __RPC_STUB IPropertyBag2_Write_Stub(
4650 struct IRpcStubBuffer* This,
4651 struct IRpcChannelBuffer* pRpcChannelBuffer,
4652 PRPC_MESSAGE pRpcMessage,
4653 DWORD* pdwStubPhase);
4654 HRESULT CALLBACK IPropertyBag2_CountProperties_Proxy(
4655 IPropertyBag2* This,
4656 ULONG* pcProperties);
4657 void __RPC_STUB IPropertyBag2_CountProperties_Stub(
4658 struct IRpcStubBuffer* This,
4659 struct IRpcChannelBuffer* pRpcChannelBuffer,
4660 PRPC_MESSAGE pRpcMessage,
4661 DWORD* pdwStubPhase);
4662 HRESULT CALLBACK IPropertyBag2_GetPropertyInfo_Proxy(
4663 IPropertyBag2* This,
4664 ULONG iProperty,
4665 ULONG cProperties,
4666 PROPBAG2* pPropBag,
4667 ULONG* pcProperties);
4668 void __RPC_STUB IPropertyBag2_GetPropertyInfo_Stub(
4669 struct IRpcStubBuffer* This,
4670 struct IRpcChannelBuffer* pRpcChannelBuffer,
4671 PRPC_MESSAGE pRpcMessage,
4672 DWORD* pdwStubPhase);
4673 HRESULT CALLBACK IPropertyBag2_LoadObject_Proxy(
4674 IPropertyBag2* This,
4675 LPCOLESTR pstrName,
4676 DWORD dwHint,
4677 IUnknown* pUnkObject,
4678 IErrorLog* pErrLog);
4679 void __RPC_STUB IPropertyBag2_LoadObject_Stub(
4680 struct IRpcStubBuffer* This,
4681 struct IRpcChannelBuffer* pRpcChannelBuffer,
4682 PRPC_MESSAGE pRpcMessage,
4683 DWORD* pdwStubPhase);
4685 #endif /* __IPropertyBag2_INTERFACE_DEFINED__ */
4687 #ifndef __IPersistPropertyBag2_FWD_DEFINED__
4688 #define __IPersistPropertyBag2_FWD_DEFINED__
4689 typedef struct IPersistPropertyBag2 IPersistPropertyBag2;
4690 #endif
4692 typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2;
4694 /*****************************************************************************
4695 * IPersistPropertyBag2 interface
4697 #ifndef __IPersistPropertyBag2_INTERFACE_DEFINED__
4698 #define __IPersistPropertyBag2_INTERFACE_DEFINED__
4700 DEFINE_GUID(IID_IPersistPropertyBag2, 0x22f55881, 0x280b, 0x11d0, 0xa8,0xa9, 0x00,0xa0,0xc9,0x0c,0x20,0x04);
4701 #if defined(__cplusplus) && !defined(CINTERFACE)
4702 struct IPersistPropertyBag2 : public IPersist
4704 virtual HRESULT STDMETHODCALLTYPE InitNew(
4705 ) = 0;
4707 virtual HRESULT STDMETHODCALLTYPE Load(
4708 IPropertyBag2* pPropBag,
4709 IErrorLog* pErrorLog) = 0;
4711 virtual HRESULT STDMETHODCALLTYPE Save(
4712 IPropertyBag2* pPropBag,
4713 BOOL fClearDirty,
4714 BOOL fSaveAllProperties) = 0;
4716 virtual HRESULT STDMETHODCALLTYPE IsDirty(
4717 ) = 0;
4720 #else
4721 typedef struct IPersistPropertyBag2Vtbl IPersistPropertyBag2Vtbl;
4722 struct IPersistPropertyBag2 {
4723 const IPersistPropertyBag2Vtbl* lpVtbl;
4725 struct IPersistPropertyBag2Vtbl {
4726 ICOM_MSVTABLE_COMPAT_FIELDS
4728 /*** IUnknown methods ***/
4729 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4730 IPersistPropertyBag2* This,
4731 REFIID riid,
4732 void** ppvObject);
4734 ULONG (STDMETHODCALLTYPE *AddRef)(
4735 IPersistPropertyBag2* This);
4737 ULONG (STDMETHODCALLTYPE *Release)(
4738 IPersistPropertyBag2* This);
4740 /*** IPersist methods ***/
4741 HRESULT (STDMETHODCALLTYPE *GetClassID)(
4742 IPersistPropertyBag2* This,
4743 CLSID* pClassID);
4745 /*** IPersistPropertyBag2 methods ***/
4746 HRESULT (STDMETHODCALLTYPE *InitNew)(
4747 IPersistPropertyBag2* This);
4749 HRESULT (STDMETHODCALLTYPE *Load)(
4750 IPersistPropertyBag2* This,
4751 IPropertyBag2* pPropBag,
4752 IErrorLog* pErrorLog);
4754 HRESULT (STDMETHODCALLTYPE *Save)(
4755 IPersistPropertyBag2* This,
4756 IPropertyBag2* pPropBag,
4757 BOOL fClearDirty,
4758 BOOL fSaveAllProperties);
4760 HRESULT (STDMETHODCALLTYPE *IsDirty)(
4761 IPersistPropertyBag2* This);
4765 /*** IUnknown methods ***/
4766 #define IPersistPropertyBag2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
4767 #define IPersistPropertyBag2_AddRef(p) (p)->lpVtbl->AddRef(p)
4768 #define IPersistPropertyBag2_Release(p) (p)->lpVtbl->Release(p)
4769 /*** IPersist methods ***/
4770 #define IPersistPropertyBag2_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
4771 /*** IPersistPropertyBag2 methods ***/
4772 #define IPersistPropertyBag2_InitNew(p) (p)->lpVtbl->InitNew(p)
4773 #define IPersistPropertyBag2_Load(p,a,b) (p)->lpVtbl->Load(p,a,b)
4774 #define IPersistPropertyBag2_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
4775 #define IPersistPropertyBag2_IsDirty(p) (p)->lpVtbl->IsDirty(p)
4777 #endif
4779 #define IPersistPropertyBag2_METHODS \
4780 ICOM_MSVTABLE_COMPAT_FIELDS \
4781 /*** IUnknown methods ***/ \
4782 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
4783 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
4784 STDMETHOD_(ULONG,Release)(THIS) PURE; \
4785 /*** IPersist methods ***/ \
4786 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
4787 /*** IPersistPropertyBag2 methods ***/ \
4788 STDMETHOD_(HRESULT,InitNew)(THIS) PURE; \
4789 STDMETHOD_(HRESULT,Load)(THIS_ IPropertyBag2* pPropBag, IErrorLog* pErrorLog) PURE; \
4790 STDMETHOD_(HRESULT,Save)(THIS_ IPropertyBag2* pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) PURE; \
4791 STDMETHOD_(HRESULT,IsDirty)(THIS) PURE;
4793 HRESULT CALLBACK IPersistPropertyBag2_InitNew_Proxy(
4794 IPersistPropertyBag2* This);
4795 void __RPC_STUB IPersistPropertyBag2_InitNew_Stub(
4796 struct IRpcStubBuffer* This,
4797 struct IRpcChannelBuffer* pRpcChannelBuffer,
4798 PRPC_MESSAGE pRpcMessage,
4799 DWORD* pdwStubPhase);
4800 HRESULT CALLBACK IPersistPropertyBag2_Load_Proxy(
4801 IPersistPropertyBag2* This,
4802 IPropertyBag2* pPropBag,
4803 IErrorLog* pErrorLog);
4804 void __RPC_STUB IPersistPropertyBag2_Load_Stub(
4805 struct IRpcStubBuffer* This,
4806 struct IRpcChannelBuffer* pRpcChannelBuffer,
4807 PRPC_MESSAGE pRpcMessage,
4808 DWORD* pdwStubPhase);
4809 HRESULT CALLBACK IPersistPropertyBag2_Save_Proxy(
4810 IPersistPropertyBag2* This,
4811 IPropertyBag2* pPropBag,
4812 BOOL fClearDirty,
4813 BOOL fSaveAllProperties);
4814 void __RPC_STUB IPersistPropertyBag2_Save_Stub(
4815 struct IRpcStubBuffer* This,
4816 struct IRpcChannelBuffer* pRpcChannelBuffer,
4817 PRPC_MESSAGE pRpcMessage,
4818 DWORD* pdwStubPhase);
4819 HRESULT CALLBACK IPersistPropertyBag2_IsDirty_Proxy(
4820 IPersistPropertyBag2* This);
4821 void __RPC_STUB IPersistPropertyBag2_IsDirty_Stub(
4822 struct IRpcStubBuffer* This,
4823 struct IRpcChannelBuffer* pRpcChannelBuffer,
4824 PRPC_MESSAGE pRpcMessage,
4825 DWORD* pdwStubPhase);
4827 #endif /* __IPersistPropertyBag2_INTERFACE_DEFINED__ */
4829 #ifndef __ISpecifyPropertyPages_FWD_DEFINED__
4830 #define __ISpecifyPropertyPages_FWD_DEFINED__
4831 typedef struct ISpecifyPropertyPages ISpecifyPropertyPages;
4832 #endif
4834 typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES;
4836 typedef struct tagCAUUID {
4837 ULONG cElems;
4838 GUID *pElems;
4839 } CAUUID, *LPCAUUID;
4841 /*****************************************************************************
4842 * ISpecifyPropertyPages interface
4844 #ifndef __ISpecifyPropertyPages_INTERFACE_DEFINED__
4845 #define __ISpecifyPropertyPages_INTERFACE_DEFINED__
4847 DEFINE_GUID(IID_ISpecifyPropertyPages, 0xb196b28b, 0xbab4, 0x101a, 0xb6,0x9c, 0x00,0xaa,0x00,0x34,0x1d,0x07);
4848 #if defined(__cplusplus) && !defined(CINTERFACE)
4849 struct ISpecifyPropertyPages : public IUnknown
4851 virtual HRESULT STDMETHODCALLTYPE GetPages(
4852 CAUUID* pPages) = 0;
4855 #else
4856 typedef struct ISpecifyPropertyPagesVtbl ISpecifyPropertyPagesVtbl;
4857 struct ISpecifyPropertyPages {
4858 const ISpecifyPropertyPagesVtbl* lpVtbl;
4860 struct ISpecifyPropertyPagesVtbl {
4861 ICOM_MSVTABLE_COMPAT_FIELDS
4863 /*** IUnknown methods ***/
4864 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4865 ISpecifyPropertyPages* This,
4866 REFIID riid,
4867 void** ppvObject);
4869 ULONG (STDMETHODCALLTYPE *AddRef)(
4870 ISpecifyPropertyPages* This);
4872 ULONG (STDMETHODCALLTYPE *Release)(
4873 ISpecifyPropertyPages* This);
4875 /*** ISpecifyPropertyPages methods ***/
4876 HRESULT (STDMETHODCALLTYPE *GetPages)(
4877 ISpecifyPropertyPages* This,
4878 CAUUID* pPages);
4882 /*** IUnknown methods ***/
4883 #define ISpecifyPropertyPages_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
4884 #define ISpecifyPropertyPages_AddRef(p) (p)->lpVtbl->AddRef(p)
4885 #define ISpecifyPropertyPages_Release(p) (p)->lpVtbl->Release(p)
4886 /*** ISpecifyPropertyPages methods ***/
4887 #define ISpecifyPropertyPages_GetPages(p,a) (p)->lpVtbl->GetPages(p,a)
4889 #endif
4891 #define ISpecifyPropertyPages_METHODS \
4892 ICOM_MSVTABLE_COMPAT_FIELDS \
4893 /*** IUnknown methods ***/ \
4894 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
4895 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
4896 STDMETHOD_(ULONG,Release)(THIS) PURE; \
4897 /*** ISpecifyPropertyPages methods ***/ \
4898 STDMETHOD_(HRESULT,GetPages)(THIS_ CAUUID* pPages) PURE;
4900 HRESULT CALLBACK ISpecifyPropertyPages_GetPages_Proxy(
4901 ISpecifyPropertyPages* This,
4902 CAUUID* pPages);
4903 void __RPC_STUB ISpecifyPropertyPages_GetPages_Stub(
4904 struct IRpcStubBuffer* This,
4905 struct IRpcChannelBuffer* pRpcChannelBuffer,
4906 PRPC_MESSAGE pRpcMessage,
4907 DWORD* pdwStubPhase);
4909 #endif /* __ISpecifyPropertyPages_INTERFACE_DEFINED__ */
4911 #ifndef __IPerPropertyBrowsing_FWD_DEFINED__
4912 #define __IPerPropertyBrowsing_FWD_DEFINED__
4913 typedef struct IPerPropertyBrowsing IPerPropertyBrowsing;
4914 #endif
4916 typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING;
4918 typedef struct tagCALPOLESTR {
4919 ULONG cElems;
4920 LPOLESTR *pElems;
4921 } CALPOLESTR, *LPCALPOLESTR;
4923 typedef struct tagCADWORD {
4924 ULONG cElems;
4925 DWORD *pElems;
4926 } CADWORD, *LPCADWORD;
4928 /*****************************************************************************
4929 * IPerPropertyBrowsing interface
4931 #ifndef __IPerPropertyBrowsing_INTERFACE_DEFINED__
4932 #define __IPerPropertyBrowsing_INTERFACE_DEFINED__
4934 DEFINE_GUID(IID_IPerPropertyBrowsing, 0x376bd3aa, 0x3845, 0x101b, 0x84,0xed, 0x08,0x00,0x2b,0x2e,0xc7,0x13);
4935 #if defined(__cplusplus) && !defined(CINTERFACE)
4936 struct IPerPropertyBrowsing : public IUnknown
4938 virtual HRESULT STDMETHODCALLTYPE GetDisplayString(
4939 DISPID dispID,
4940 BSTR* pBstr) = 0;
4942 virtual HRESULT STDMETHODCALLTYPE MapPropertyToPage(
4943 DISPID dispID,
4944 CLSID* pClsid) = 0;
4946 virtual HRESULT STDMETHODCALLTYPE GetPredefinedStrings(
4947 DISPID dispID,
4948 CALPOLESTR* pCaStringsOut,
4949 CADWORD* pCaCookiesOut) = 0;
4951 virtual HRESULT STDMETHODCALLTYPE GetPredefinedValue(
4952 DISPID dispID,
4953 DWORD dwCookie,
4954 VARIANT* pVarOut) = 0;
4957 #else
4958 typedef struct IPerPropertyBrowsingVtbl IPerPropertyBrowsingVtbl;
4959 struct IPerPropertyBrowsing {
4960 const IPerPropertyBrowsingVtbl* lpVtbl;
4962 struct IPerPropertyBrowsingVtbl {
4963 ICOM_MSVTABLE_COMPAT_FIELDS
4965 /*** IUnknown methods ***/
4966 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4967 IPerPropertyBrowsing* This,
4968 REFIID riid,
4969 void** ppvObject);
4971 ULONG (STDMETHODCALLTYPE *AddRef)(
4972 IPerPropertyBrowsing* This);
4974 ULONG (STDMETHODCALLTYPE *Release)(
4975 IPerPropertyBrowsing* This);
4977 /*** IPerPropertyBrowsing methods ***/
4978 HRESULT (STDMETHODCALLTYPE *GetDisplayString)(
4979 IPerPropertyBrowsing* This,
4980 DISPID dispID,
4981 BSTR* pBstr);
4983 HRESULT (STDMETHODCALLTYPE *MapPropertyToPage)(
4984 IPerPropertyBrowsing* This,
4985 DISPID dispID,
4986 CLSID* pClsid);
4988 HRESULT (STDMETHODCALLTYPE *GetPredefinedStrings)(
4989 IPerPropertyBrowsing* This,
4990 DISPID dispID,
4991 CALPOLESTR* pCaStringsOut,
4992 CADWORD* pCaCookiesOut);
4994 HRESULT (STDMETHODCALLTYPE *GetPredefinedValue)(
4995 IPerPropertyBrowsing* This,
4996 DISPID dispID,
4997 DWORD dwCookie,
4998 VARIANT* pVarOut);
5002 /*** IUnknown methods ***/
5003 #define IPerPropertyBrowsing_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5004 #define IPerPropertyBrowsing_AddRef(p) (p)->lpVtbl->AddRef(p)
5005 #define IPerPropertyBrowsing_Release(p) (p)->lpVtbl->Release(p)
5006 /*** IPerPropertyBrowsing methods ***/
5007 #define IPerPropertyBrowsing_GetDisplayString(p,a,b) (p)->lpVtbl->GetDisplayString(p,a,b)
5008 #define IPerPropertyBrowsing_MapPropertyToPage(p,a,b) (p)->lpVtbl->MapPropertyToPage(p,a,b)
5009 #define IPerPropertyBrowsing_GetPredefinedStrings(p,a,b,c) (p)->lpVtbl->GetPredefinedStrings(p,a,b,c)
5010 #define IPerPropertyBrowsing_GetPredefinedValue(p,a,b,c) (p)->lpVtbl->GetPredefinedValue(p,a,b,c)
5012 #endif
5014 #define IPerPropertyBrowsing_METHODS \
5015 ICOM_MSVTABLE_COMPAT_FIELDS \
5016 /*** IUnknown methods ***/ \
5017 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5018 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5019 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5020 /*** IPerPropertyBrowsing methods ***/ \
5021 STDMETHOD_(HRESULT,GetDisplayString)(THIS_ DISPID dispID, BSTR* pBstr) PURE; \
5022 STDMETHOD_(HRESULT,MapPropertyToPage)(THIS_ DISPID dispID, CLSID* pClsid) PURE; \
5023 STDMETHOD_(HRESULT,GetPredefinedStrings)(THIS_ DISPID dispID, CALPOLESTR* pCaStringsOut, CADWORD* pCaCookiesOut) PURE; \
5024 STDMETHOD_(HRESULT,GetPredefinedValue)(THIS_ DISPID dispID, DWORD dwCookie, VARIANT* pVarOut) PURE;
5026 HRESULT CALLBACK IPerPropertyBrowsing_GetDisplayString_Proxy(
5027 IPerPropertyBrowsing* This,
5028 DISPID dispID,
5029 BSTR* pBstr);
5030 void __RPC_STUB IPerPropertyBrowsing_GetDisplayString_Stub(
5031 struct IRpcStubBuffer* This,
5032 struct IRpcChannelBuffer* pRpcChannelBuffer,
5033 PRPC_MESSAGE pRpcMessage,
5034 DWORD* pdwStubPhase);
5035 HRESULT CALLBACK IPerPropertyBrowsing_MapPropertyToPage_Proxy(
5036 IPerPropertyBrowsing* This,
5037 DISPID dispID,
5038 CLSID* pClsid);
5039 void __RPC_STUB IPerPropertyBrowsing_MapPropertyToPage_Stub(
5040 struct IRpcStubBuffer* This,
5041 struct IRpcChannelBuffer* pRpcChannelBuffer,
5042 PRPC_MESSAGE pRpcMessage,
5043 DWORD* pdwStubPhase);
5044 HRESULT CALLBACK IPerPropertyBrowsing_GetPredefinedStrings_Proxy(
5045 IPerPropertyBrowsing* This,
5046 DISPID dispID,
5047 CALPOLESTR* pCaStringsOut,
5048 CADWORD* pCaCookiesOut);
5049 void __RPC_STUB IPerPropertyBrowsing_GetPredefinedStrings_Stub(
5050 struct IRpcStubBuffer* This,
5051 struct IRpcChannelBuffer* pRpcChannelBuffer,
5052 PRPC_MESSAGE pRpcMessage,
5053 DWORD* pdwStubPhase);
5054 HRESULT CALLBACK IPerPropertyBrowsing_GetPredefinedValue_Proxy(
5055 IPerPropertyBrowsing* This,
5056 DISPID dispID,
5057 DWORD dwCookie,
5058 VARIANT* pVarOut);
5059 void __RPC_STUB IPerPropertyBrowsing_GetPredefinedValue_Stub(
5060 struct IRpcStubBuffer* This,
5061 struct IRpcChannelBuffer* pRpcChannelBuffer,
5062 PRPC_MESSAGE pRpcMessage,
5063 DWORD* pdwStubPhase);
5065 #endif /* __IPerPropertyBrowsing_INTERFACE_DEFINED__ */
5067 #ifndef __IAdviseSinkEx_FWD_DEFINED__
5068 #define __IAdviseSinkEx_FWD_DEFINED__
5069 typedef struct IAdviseSinkEx IAdviseSinkEx;
5070 #endif
5072 typedef IAdviseSinkEx *LPADVISESINKEX;
5074 /*****************************************************************************
5075 * IAdviseSinkEx interface
5077 #ifndef __IAdviseSinkEx_INTERFACE_DEFINED__
5078 #define __IAdviseSinkEx_INTERFACE_DEFINED__
5080 DEFINE_GUID(IID_IAdviseSinkEx, 0x3af24290, 0x0c96, 0x11ce, 0xa0,0xcf, 0x00,0xaa,0x00,0x60,0x0a,0xb8);
5081 #if defined(__cplusplus) && !defined(CINTERFACE)
5082 struct IAdviseSinkEx : public IAdviseSink
5084 virtual void STDMETHODCALLTYPE OnViewStatusChange(
5085 DWORD dwViewStatus) = 0;
5088 #else
5089 typedef struct IAdviseSinkExVtbl IAdviseSinkExVtbl;
5090 struct IAdviseSinkEx {
5091 const IAdviseSinkExVtbl* lpVtbl;
5093 struct IAdviseSinkExVtbl {
5094 ICOM_MSVTABLE_COMPAT_FIELDS
5096 /*** IUnknown methods ***/
5097 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5098 IAdviseSinkEx* This,
5099 REFIID riid,
5100 void** ppvObject);
5102 ULONG (STDMETHODCALLTYPE *AddRef)(
5103 IAdviseSinkEx* This);
5105 ULONG (STDMETHODCALLTYPE *Release)(
5106 IAdviseSinkEx* This);
5108 /*** IAdviseSink methods ***/
5109 void (STDMETHODCALLTYPE *OnDataChange)(
5110 IAdviseSinkEx* This,
5111 FORMATETC* pFormatetc,
5112 STGMEDIUM* pStgmed);
5114 void (STDMETHODCALLTYPE *OnViewChange)(
5115 IAdviseSinkEx* This,
5116 DWORD dwAspect,
5117 LONG lindex);
5119 void (STDMETHODCALLTYPE *OnRename)(
5120 IAdviseSinkEx* This,
5121 IMoniker* pmk);
5123 void (STDMETHODCALLTYPE *OnSave)(
5124 IAdviseSinkEx* This);
5126 void (STDMETHODCALLTYPE *OnClose)(
5127 IAdviseSinkEx* This);
5129 /*** IAdviseSinkEx methods ***/
5130 void (STDMETHODCALLTYPE *OnViewStatusChange)(
5131 IAdviseSinkEx* This,
5132 DWORD dwViewStatus);
5136 /*** IUnknown methods ***/
5137 #define IAdviseSinkEx_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5138 #define IAdviseSinkEx_AddRef(p) (p)->lpVtbl->AddRef(p)
5139 #define IAdviseSinkEx_Release(p) (p)->lpVtbl->Release(p)
5140 /*** IAdviseSink methods ***/
5141 #define IAdviseSinkEx_OnDataChange(p,a,b) (p)->lpVtbl->OnDataChange(p,a,b)
5142 #define IAdviseSinkEx_OnViewChange(p,a,b) (p)->lpVtbl->OnViewChange(p,a,b)
5143 #define IAdviseSinkEx_OnRename(p,a) (p)->lpVtbl->OnRename(p,a)
5144 #define IAdviseSinkEx_OnSave(p) (p)->lpVtbl->OnSave(p)
5145 #define IAdviseSinkEx_OnClose(p) (p)->lpVtbl->OnClose(p)
5146 /*** IAdviseSinkEx methods ***/
5147 #define IAdviseSinkEx_OnViewStatusChange(p,a) (p)->lpVtbl->OnViewStatusChange(p,a)
5149 #endif
5151 #define IAdviseSinkEx_METHODS \
5152 ICOM_MSVTABLE_COMPAT_FIELDS \
5153 /*** IUnknown methods ***/ \
5154 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5155 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5156 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5157 /*** IAdviseSink methods ***/ \
5158 STDMETHOD_(void,OnDataChange)(THIS_ FORMATETC* pFormatetc, STGMEDIUM* pStgmed) PURE; \
5159 STDMETHOD_(void,OnViewChange)(THIS_ DWORD dwAspect, LONG lindex) PURE; \
5160 STDMETHOD_(void,OnRename)(THIS_ IMoniker* pmk) PURE; \
5161 STDMETHOD_(void,OnSave)(THIS) PURE; \
5162 STDMETHOD_(void,OnClose)(THIS) PURE; \
5163 /*** IAdviseSinkEx methods ***/ \
5164 STDMETHOD_(void,OnViewStatusChange)(THIS_ DWORD dwViewStatus) PURE;
5166 HRESULT CALLBACK IAdviseSinkEx_RemoteOnViewStatusChange_Proxy(
5167 IAdviseSinkEx* This,
5168 DWORD dwViewStatus);
5169 void __RPC_STUB IAdviseSinkEx_RemoteOnViewStatusChange_Stub(
5170 struct IRpcStubBuffer* This,
5171 struct IRpcChannelBuffer* pRpcChannelBuffer,
5172 PRPC_MESSAGE pRpcMessage,
5173 DWORD* pdwStubPhase);
5174 void CALLBACK IAdviseSinkEx_OnViewStatusChange_Proxy(
5175 IAdviseSinkEx* This,
5176 DWORD dwViewStatus);
5177 HRESULT __RPC_STUB IAdviseSinkEx_OnViewStatusChange_Stub(
5178 IAdviseSinkEx* This,
5179 DWORD dwViewStatus);
5181 #endif /* __IAdviseSinkEx_INTERFACE_DEFINED__ */
5183 #ifndef __IPointerInactive_FWD_DEFINED__
5184 #define __IPointerInactive_FWD_DEFINED__
5185 typedef struct IPointerInactive IPointerInactive;
5186 #endif
5188 typedef IPointerInactive *LPPOINTERINACTIVE;
5190 /*****************************************************************************
5191 * IPointerInactive interface
5193 #ifndef __IPointerInactive_INTERFACE_DEFINED__
5194 #define __IPointerInactive_INTERFACE_DEFINED__
5196 DEFINE_GUID(IID_IPointerInactive, 0x55980ba0, 0x35aa, 0x11cf, 0xb6,0x71, 0x00,0xaa,0x00,0x4c,0xd6,0xd8);
5197 #if defined(__cplusplus) && !defined(CINTERFACE)
5198 struct IPointerInactive : public IUnknown
5200 virtual HRESULT STDMETHODCALLTYPE GetActivationPolicy(
5201 DWORD* pdwPolicy) = 0;
5203 virtual HRESULT STDMETHODCALLTYPE OnInactiveMouseMove(
5204 LPCRECT pRectBounds,
5205 LONG x,
5206 LONG y,
5207 DWORD grfKeyState) = 0;
5209 virtual HRESULT STDMETHODCALLTYPE OnInactiveSetCursor(
5210 LPCRECT pRectBounds,
5211 LONG x,
5212 LONG y,
5213 DWORD dwMouseMsg,
5214 BOOL fSetAlways) = 0;
5217 #else
5218 typedef struct IPointerInactiveVtbl IPointerInactiveVtbl;
5219 struct IPointerInactive {
5220 const IPointerInactiveVtbl* lpVtbl;
5222 struct IPointerInactiveVtbl {
5223 ICOM_MSVTABLE_COMPAT_FIELDS
5225 /*** IUnknown methods ***/
5226 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5227 IPointerInactive* This,
5228 REFIID riid,
5229 void** ppvObject);
5231 ULONG (STDMETHODCALLTYPE *AddRef)(
5232 IPointerInactive* This);
5234 ULONG (STDMETHODCALLTYPE *Release)(
5235 IPointerInactive* This);
5237 /*** IPointerInactive methods ***/
5238 HRESULT (STDMETHODCALLTYPE *GetActivationPolicy)(
5239 IPointerInactive* This,
5240 DWORD* pdwPolicy);
5242 HRESULT (STDMETHODCALLTYPE *OnInactiveMouseMove)(
5243 IPointerInactive* This,
5244 LPCRECT pRectBounds,
5245 LONG x,
5246 LONG y,
5247 DWORD grfKeyState);
5249 HRESULT (STDMETHODCALLTYPE *OnInactiveSetCursor)(
5250 IPointerInactive* This,
5251 LPCRECT pRectBounds,
5252 LONG x,
5253 LONG y,
5254 DWORD dwMouseMsg,
5255 BOOL fSetAlways);
5259 /*** IUnknown methods ***/
5260 #define IPointerInactive_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5261 #define IPointerInactive_AddRef(p) (p)->lpVtbl->AddRef(p)
5262 #define IPointerInactive_Release(p) (p)->lpVtbl->Release(p)
5263 /*** IPointerInactive methods ***/
5264 #define IPointerInactive_GetActivationPolicy(p,a) (p)->lpVtbl->GetActivationPolicy(p,a)
5265 #define IPointerInactive_OnInactiveMouseMove(p,a,b,c,d) (p)->lpVtbl->OnInactiveMouseMove(p,a,b,c,d)
5266 #define IPointerInactive_OnInactiveSetCursor(p,a,b,c,d,e) (p)->lpVtbl->OnInactiveSetCursor(p,a,b,c,d,e)
5268 #endif
5270 #define IPointerInactive_METHODS \
5271 ICOM_MSVTABLE_COMPAT_FIELDS \
5272 /*** IUnknown methods ***/ \
5273 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5274 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5275 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5276 /*** IPointerInactive methods ***/ \
5277 STDMETHOD_(HRESULT,GetActivationPolicy)(THIS_ DWORD* pdwPolicy) PURE; \
5278 STDMETHOD_(HRESULT,OnInactiveMouseMove)(THIS_ LPCRECT pRectBounds, LONG x, LONG y, DWORD grfKeyState) PURE; \
5279 STDMETHOD_(HRESULT,OnInactiveSetCursor)(THIS_ LPCRECT pRectBounds, LONG x, LONG y, DWORD dwMouseMsg, BOOL fSetAlways) PURE;
5281 HRESULT CALLBACK IPointerInactive_GetActivationPolicy_Proxy(
5282 IPointerInactive* This,
5283 DWORD* pdwPolicy);
5284 void __RPC_STUB IPointerInactive_GetActivationPolicy_Stub(
5285 struct IRpcStubBuffer* This,
5286 struct IRpcChannelBuffer* pRpcChannelBuffer,
5287 PRPC_MESSAGE pRpcMessage,
5288 DWORD* pdwStubPhase);
5289 HRESULT CALLBACK IPointerInactive_OnInactiveMouseMove_Proxy(
5290 IPointerInactive* This,
5291 LPCRECT pRectBounds,
5292 LONG x,
5293 LONG y,
5294 DWORD grfKeyState);
5295 void __RPC_STUB IPointerInactive_OnInactiveMouseMove_Stub(
5296 struct IRpcStubBuffer* This,
5297 struct IRpcChannelBuffer* pRpcChannelBuffer,
5298 PRPC_MESSAGE pRpcMessage,
5299 DWORD* pdwStubPhase);
5300 HRESULT CALLBACK IPointerInactive_OnInactiveSetCursor_Proxy(
5301 IPointerInactive* This,
5302 LPCRECT pRectBounds,
5303 LONG x,
5304 LONG y,
5305 DWORD dwMouseMsg,
5306 BOOL fSetAlways);
5307 void __RPC_STUB IPointerInactive_OnInactiveSetCursor_Stub(
5308 struct IRpcStubBuffer* This,
5309 struct IRpcChannelBuffer* pRpcChannelBuffer,
5310 PRPC_MESSAGE pRpcMessage,
5311 DWORD* pdwStubPhase);
5313 #endif /* __IPointerInactive_INTERFACE_DEFINED__ */
5315 #ifndef __IOleUndoManager_FWD_DEFINED__
5316 #define __IOleUndoManager_FWD_DEFINED__
5317 typedef struct IOleUndoManager IOleUndoManager;
5318 #endif
5320 #ifndef __IOleUndoUnit_FWD_DEFINED__
5321 #define __IOleUndoUnit_FWD_DEFINED__
5322 typedef struct IOleUndoUnit IOleUndoUnit;
5323 #endif
5325 typedef IOleUndoUnit *LPOLEUNDOUNIT;
5327 /*****************************************************************************
5328 * IOleUndoUnit interface
5330 #ifndef __IOleUndoUnit_INTERFACE_DEFINED__
5331 #define __IOleUndoUnit_INTERFACE_DEFINED__
5333 DEFINE_GUID(IID_IOleUndoUnit, 0x894ad3b0, 0xef97, 0x11ce, 0x9b,0xc9, 0x00,0xaa,0x00,0x60,0x8e,0x01);
5334 #if defined(__cplusplus) && !defined(CINTERFACE)
5335 struct IOleUndoUnit : public IUnknown
5337 virtual HRESULT STDMETHODCALLTYPE Do(
5338 IOleUndoManager* pUndoManager) = 0;
5340 virtual HRESULT STDMETHODCALLTYPE GetDescription(
5341 BSTR* pBstr) = 0;
5343 virtual HRESULT STDMETHODCALLTYPE GetUnitType(
5344 CLSID* pClsid,
5345 LONG* plID) = 0;
5347 virtual HRESULT STDMETHODCALLTYPE OnNextAdd(
5348 ) = 0;
5351 #else
5352 typedef struct IOleUndoUnitVtbl IOleUndoUnitVtbl;
5353 struct IOleUndoUnit {
5354 const IOleUndoUnitVtbl* lpVtbl;
5356 struct IOleUndoUnitVtbl {
5357 ICOM_MSVTABLE_COMPAT_FIELDS
5359 /*** IUnknown methods ***/
5360 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5361 IOleUndoUnit* This,
5362 REFIID riid,
5363 void** ppvObject);
5365 ULONG (STDMETHODCALLTYPE *AddRef)(
5366 IOleUndoUnit* This);
5368 ULONG (STDMETHODCALLTYPE *Release)(
5369 IOleUndoUnit* This);
5371 /*** IOleUndoUnit methods ***/
5372 HRESULT (STDMETHODCALLTYPE *Do)(
5373 IOleUndoUnit* This,
5374 IOleUndoManager* pUndoManager);
5376 HRESULT (STDMETHODCALLTYPE *GetDescription)(
5377 IOleUndoUnit* This,
5378 BSTR* pBstr);
5380 HRESULT (STDMETHODCALLTYPE *GetUnitType)(
5381 IOleUndoUnit* This,
5382 CLSID* pClsid,
5383 LONG* plID);
5385 HRESULT (STDMETHODCALLTYPE *OnNextAdd)(
5386 IOleUndoUnit* This);
5390 /*** IUnknown methods ***/
5391 #define IOleUndoUnit_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5392 #define IOleUndoUnit_AddRef(p) (p)->lpVtbl->AddRef(p)
5393 #define IOleUndoUnit_Release(p) (p)->lpVtbl->Release(p)
5394 /*** IOleUndoUnit methods ***/
5395 #define IOleUndoUnit_Do(p,a) (p)->lpVtbl->Do(p,a)
5396 #define IOleUndoUnit_GetDescription(p,a) (p)->lpVtbl->GetDescription(p,a)
5397 #define IOleUndoUnit_GetUnitType(p,a,b) (p)->lpVtbl->GetUnitType(p,a,b)
5398 #define IOleUndoUnit_OnNextAdd(p) (p)->lpVtbl->OnNextAdd(p)
5400 #endif
5402 #define IOleUndoUnit_METHODS \
5403 ICOM_MSVTABLE_COMPAT_FIELDS \
5404 /*** IUnknown methods ***/ \
5405 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5406 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5407 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5408 /*** IOleUndoUnit methods ***/ \
5409 STDMETHOD_(HRESULT,Do)(THIS_ IOleUndoManager* pUndoManager) PURE; \
5410 STDMETHOD_(HRESULT,GetDescription)(THIS_ BSTR* pBstr) PURE; \
5411 STDMETHOD_(HRESULT,GetUnitType)(THIS_ CLSID* pClsid, LONG* plID) PURE; \
5412 STDMETHOD_(HRESULT,OnNextAdd)(THIS) PURE;
5414 HRESULT CALLBACK IOleUndoUnit_Do_Proxy(
5415 IOleUndoUnit* This,
5416 IOleUndoManager* pUndoManager);
5417 void __RPC_STUB IOleUndoUnit_Do_Stub(
5418 struct IRpcStubBuffer* This,
5419 struct IRpcChannelBuffer* pRpcChannelBuffer,
5420 PRPC_MESSAGE pRpcMessage,
5421 DWORD* pdwStubPhase);
5422 HRESULT CALLBACK IOleUndoUnit_GetDescription_Proxy(
5423 IOleUndoUnit* This,
5424 BSTR* pBstr);
5425 void __RPC_STUB IOleUndoUnit_GetDescription_Stub(
5426 struct IRpcStubBuffer* This,
5427 struct IRpcChannelBuffer* pRpcChannelBuffer,
5428 PRPC_MESSAGE pRpcMessage,
5429 DWORD* pdwStubPhase);
5430 HRESULT CALLBACK IOleUndoUnit_GetUnitType_Proxy(
5431 IOleUndoUnit* This,
5432 CLSID* pClsid,
5433 LONG* plID);
5434 void __RPC_STUB IOleUndoUnit_GetUnitType_Stub(
5435 struct IRpcStubBuffer* This,
5436 struct IRpcChannelBuffer* pRpcChannelBuffer,
5437 PRPC_MESSAGE pRpcMessage,
5438 DWORD* pdwStubPhase);
5439 HRESULT CALLBACK IOleUndoUnit_OnNextAdd_Proxy(
5440 IOleUndoUnit* This);
5441 void __RPC_STUB IOleUndoUnit_OnNextAdd_Stub(
5442 struct IRpcStubBuffer* This,
5443 struct IRpcChannelBuffer* pRpcChannelBuffer,
5444 PRPC_MESSAGE pRpcMessage,
5445 DWORD* pdwStubPhase);
5447 #endif /* __IOleUndoUnit_INTERFACE_DEFINED__ */
5449 #ifndef __IOleParentUndoUnit_FWD_DEFINED__
5450 #define __IOleParentUndoUnit_FWD_DEFINED__
5451 typedef struct IOleParentUndoUnit IOleParentUndoUnit;
5452 #endif
5454 typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT;
5456 /*****************************************************************************
5457 * IOleParentUndoUnit interface
5459 #ifndef __IOleParentUndoUnit_INTERFACE_DEFINED__
5460 #define __IOleParentUndoUnit_INTERFACE_DEFINED__
5462 DEFINE_GUID(IID_IOleParentUndoUnit, 0xa1faf330, 0xef97, 0x11ce, 0x9b,0xc9, 0x00,0xaa,0x00,0x60,0x8e,0x01);
5463 #if defined(__cplusplus) && !defined(CINTERFACE)
5464 struct IOleParentUndoUnit : public IOleUndoUnit
5466 virtual HRESULT STDMETHODCALLTYPE Open(
5467 IOleParentUndoUnit* pPUU) = 0;
5469 virtual HRESULT STDMETHODCALLTYPE Close(
5470 IOleParentUndoUnit* pPUU,
5471 BOOL fCommit) = 0;
5473 virtual HRESULT STDMETHODCALLTYPE Add(
5474 IOleUndoUnit* pUU) = 0;
5476 virtual HRESULT STDMETHODCALLTYPE FindUnit(
5477 IOleUndoUnit* pUU) = 0;
5479 virtual HRESULT STDMETHODCALLTYPE GetParentState(
5480 DWORD* pdwState) = 0;
5483 #else
5484 typedef struct IOleParentUndoUnitVtbl IOleParentUndoUnitVtbl;
5485 struct IOleParentUndoUnit {
5486 const IOleParentUndoUnitVtbl* lpVtbl;
5488 struct IOleParentUndoUnitVtbl {
5489 ICOM_MSVTABLE_COMPAT_FIELDS
5491 /*** IUnknown methods ***/
5492 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5493 IOleParentUndoUnit* This,
5494 REFIID riid,
5495 void** ppvObject);
5497 ULONG (STDMETHODCALLTYPE *AddRef)(
5498 IOleParentUndoUnit* This);
5500 ULONG (STDMETHODCALLTYPE *Release)(
5501 IOleParentUndoUnit* This);
5503 /*** IOleUndoUnit methods ***/
5504 HRESULT (STDMETHODCALLTYPE *Do)(
5505 IOleParentUndoUnit* This,
5506 IOleUndoManager* pUndoManager);
5508 HRESULT (STDMETHODCALLTYPE *GetDescription)(
5509 IOleParentUndoUnit* This,
5510 BSTR* pBstr);
5512 HRESULT (STDMETHODCALLTYPE *GetUnitType)(
5513 IOleParentUndoUnit* This,
5514 CLSID* pClsid,
5515 LONG* plID);
5517 HRESULT (STDMETHODCALLTYPE *OnNextAdd)(
5518 IOleParentUndoUnit* This);
5520 /*** IOleParentUndoUnit methods ***/
5521 HRESULT (STDMETHODCALLTYPE *Open)(
5522 IOleParentUndoUnit* This,
5523 IOleParentUndoUnit* pPUU);
5525 HRESULT (STDMETHODCALLTYPE *Close)(
5526 IOleParentUndoUnit* This,
5527 IOleParentUndoUnit* pPUU,
5528 BOOL fCommit);
5530 HRESULT (STDMETHODCALLTYPE *Add)(
5531 IOleParentUndoUnit* This,
5532 IOleUndoUnit* pUU);
5534 HRESULT (STDMETHODCALLTYPE *FindUnit)(
5535 IOleParentUndoUnit* This,
5536 IOleUndoUnit* pUU);
5538 HRESULT (STDMETHODCALLTYPE *GetParentState)(
5539 IOleParentUndoUnit* This,
5540 DWORD* pdwState);
5544 /*** IUnknown methods ***/
5545 #define IOleParentUndoUnit_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5546 #define IOleParentUndoUnit_AddRef(p) (p)->lpVtbl->AddRef(p)
5547 #define IOleParentUndoUnit_Release(p) (p)->lpVtbl->Release(p)
5548 /*** IOleUndoUnit methods ***/
5549 #define IOleParentUndoUnit_Do(p,a) (p)->lpVtbl->Do(p,a)
5550 #define IOleParentUndoUnit_GetDescription(p,a) (p)->lpVtbl->GetDescription(p,a)
5551 #define IOleParentUndoUnit_GetUnitType(p,a,b) (p)->lpVtbl->GetUnitType(p,a,b)
5552 #define IOleParentUndoUnit_OnNextAdd(p) (p)->lpVtbl->OnNextAdd(p)
5553 /*** IOleParentUndoUnit methods ***/
5554 #define IOleParentUndoUnit_Open(p,a) (p)->lpVtbl->Open(p,a)
5555 #define IOleParentUndoUnit_Close(p,a,b) (p)->lpVtbl->Close(p,a,b)
5556 #define IOleParentUndoUnit_Add(p,a) (p)->lpVtbl->Add(p,a)
5557 #define IOleParentUndoUnit_FindUnit(p,a) (p)->lpVtbl->FindUnit(p,a)
5558 #define IOleParentUndoUnit_GetParentState(p,a) (p)->lpVtbl->GetParentState(p,a)
5560 #endif
5562 #define IOleParentUndoUnit_METHODS \
5563 ICOM_MSVTABLE_COMPAT_FIELDS \
5564 /*** IUnknown methods ***/ \
5565 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5566 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5567 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5568 /*** IOleUndoUnit methods ***/ \
5569 STDMETHOD_(HRESULT,Do)(THIS_ IOleUndoManager* pUndoManager) PURE; \
5570 STDMETHOD_(HRESULT,GetDescription)(THIS_ BSTR* pBstr) PURE; \
5571 STDMETHOD_(HRESULT,GetUnitType)(THIS_ CLSID* pClsid, LONG* plID) PURE; \
5572 STDMETHOD_(HRESULT,OnNextAdd)(THIS) PURE; \
5573 /*** IOleParentUndoUnit methods ***/ \
5574 STDMETHOD_(HRESULT,Open)(THIS_ IOleParentUndoUnit* pPUU) PURE; \
5575 STDMETHOD_(HRESULT,Close)(THIS_ IOleParentUndoUnit* pPUU, BOOL fCommit) PURE; \
5576 STDMETHOD_(HRESULT,Add)(THIS_ IOleUndoUnit* pUU) PURE; \
5577 STDMETHOD_(HRESULT,FindUnit)(THIS_ IOleUndoUnit* pUU) PURE; \
5578 STDMETHOD_(HRESULT,GetParentState)(THIS_ DWORD* pdwState) PURE;
5580 HRESULT CALLBACK IOleParentUndoUnit_Open_Proxy(
5581 IOleParentUndoUnit* This,
5582 IOleParentUndoUnit* pPUU);
5583 void __RPC_STUB IOleParentUndoUnit_Open_Stub(
5584 struct IRpcStubBuffer* This,
5585 struct IRpcChannelBuffer* pRpcChannelBuffer,
5586 PRPC_MESSAGE pRpcMessage,
5587 DWORD* pdwStubPhase);
5588 HRESULT CALLBACK IOleParentUndoUnit_Close_Proxy(
5589 IOleParentUndoUnit* This,
5590 IOleParentUndoUnit* pPUU,
5591 BOOL fCommit);
5592 void __RPC_STUB IOleParentUndoUnit_Close_Stub(
5593 struct IRpcStubBuffer* This,
5594 struct IRpcChannelBuffer* pRpcChannelBuffer,
5595 PRPC_MESSAGE pRpcMessage,
5596 DWORD* pdwStubPhase);
5597 HRESULT CALLBACK IOleParentUndoUnit_Add_Proxy(
5598 IOleParentUndoUnit* This,
5599 IOleUndoUnit* pUU);
5600 void __RPC_STUB IOleParentUndoUnit_Add_Stub(
5601 struct IRpcStubBuffer* This,
5602 struct IRpcChannelBuffer* pRpcChannelBuffer,
5603 PRPC_MESSAGE pRpcMessage,
5604 DWORD* pdwStubPhase);
5605 HRESULT CALLBACK IOleParentUndoUnit_FindUnit_Proxy(
5606 IOleParentUndoUnit* This,
5607 IOleUndoUnit* pUU);
5608 void __RPC_STUB IOleParentUndoUnit_FindUnit_Stub(
5609 struct IRpcStubBuffer* This,
5610 struct IRpcChannelBuffer* pRpcChannelBuffer,
5611 PRPC_MESSAGE pRpcMessage,
5612 DWORD* pdwStubPhase);
5613 HRESULT CALLBACK IOleParentUndoUnit_GetParentState_Proxy(
5614 IOleParentUndoUnit* This,
5615 DWORD* pdwState);
5616 void __RPC_STUB IOleParentUndoUnit_GetParentState_Stub(
5617 struct IRpcStubBuffer* This,
5618 struct IRpcChannelBuffer* pRpcChannelBuffer,
5619 PRPC_MESSAGE pRpcMessage,
5620 DWORD* pdwStubPhase);
5622 #endif /* __IOleParentUndoUnit_INTERFACE_DEFINED__ */
5624 #ifndef __IEnumOleUndoUnits_FWD_DEFINED__
5625 #define __IEnumOleUndoUnits_FWD_DEFINED__
5626 typedef struct IEnumOleUndoUnits IEnumOleUndoUnits;
5627 #endif
5629 typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
5631 /*****************************************************************************
5632 * IEnumOleUndoUnits interface
5634 #ifndef __IEnumOleUndoUnits_INTERFACE_DEFINED__
5635 #define __IEnumOleUndoUnits_INTERFACE_DEFINED__
5637 DEFINE_GUID(IID_IEnumOleUndoUnits, 0xb3e7c340, 0xef97, 0x11ce, 0x9b,0xc9, 0x00,0xaa,0x00,0x60,0x8e,0x01);
5638 #if defined(__cplusplus) && !defined(CINTERFACE)
5639 struct IEnumOleUndoUnits : public IUnknown
5641 virtual HRESULT STDMETHODCALLTYPE Next(
5642 ULONG cElt,
5643 IOleUndoUnit** rgElt,
5644 ULONG* pcEltFetched) = 0;
5646 virtual HRESULT STDMETHODCALLTYPE Skip(
5647 ULONG cElt) = 0;
5649 virtual HRESULT STDMETHODCALLTYPE Reset(
5650 ) = 0;
5652 virtual HRESULT STDMETHODCALLTYPE Clone(
5653 IEnumOleUndoUnits** ppEnum) = 0;
5656 #else
5657 typedef struct IEnumOleUndoUnitsVtbl IEnumOleUndoUnitsVtbl;
5658 struct IEnumOleUndoUnits {
5659 const IEnumOleUndoUnitsVtbl* lpVtbl;
5661 struct IEnumOleUndoUnitsVtbl {
5662 ICOM_MSVTABLE_COMPAT_FIELDS
5664 /*** IUnknown methods ***/
5665 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5666 IEnumOleUndoUnits* This,
5667 REFIID riid,
5668 void** ppvObject);
5670 ULONG (STDMETHODCALLTYPE *AddRef)(
5671 IEnumOleUndoUnits* This);
5673 ULONG (STDMETHODCALLTYPE *Release)(
5674 IEnumOleUndoUnits* This);
5676 /*** IEnumOleUndoUnits methods ***/
5677 HRESULT (STDMETHODCALLTYPE *Next)(
5678 IEnumOleUndoUnits* This,
5679 ULONG cElt,
5680 IOleUndoUnit** rgElt,
5681 ULONG* pcEltFetched);
5683 HRESULT (STDMETHODCALLTYPE *Skip)(
5684 IEnumOleUndoUnits* This,
5685 ULONG cElt);
5687 HRESULT (STDMETHODCALLTYPE *Reset)(
5688 IEnumOleUndoUnits* This);
5690 HRESULT (STDMETHODCALLTYPE *Clone)(
5691 IEnumOleUndoUnits* This,
5692 IEnumOleUndoUnits** ppEnum);
5696 /*** IUnknown methods ***/
5697 #define IEnumOleUndoUnits_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5698 #define IEnumOleUndoUnits_AddRef(p) (p)->lpVtbl->AddRef(p)
5699 #define IEnumOleUndoUnits_Release(p) (p)->lpVtbl->Release(p)
5700 /*** IEnumOleUndoUnits methods ***/
5701 #define IEnumOleUndoUnits_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
5702 #define IEnumOleUndoUnits_Skip(p,a) (p)->lpVtbl->Skip(p,a)
5703 #define IEnumOleUndoUnits_Reset(p) (p)->lpVtbl->Reset(p)
5704 #define IEnumOleUndoUnits_Clone(p,a) (p)->lpVtbl->Clone(p,a)
5706 #endif
5708 #define IEnumOleUndoUnits_METHODS \
5709 ICOM_MSVTABLE_COMPAT_FIELDS \
5710 /*** IUnknown methods ***/ \
5711 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5712 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5713 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5714 /*** IEnumOleUndoUnits methods ***/ \
5715 STDMETHOD_(HRESULT,Next)(THIS_ ULONG cElt, IOleUndoUnit** rgElt, ULONG* pcEltFetched) PURE; \
5716 STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cElt) PURE; \
5717 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
5718 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumOleUndoUnits** ppEnum) PURE;
5720 HRESULT CALLBACK IEnumOleUndoUnits_RemoteNext_Proxy(
5721 IEnumOleUndoUnits* This,
5722 ULONG cElt,
5723 IOleUndoUnit** rgElt,
5724 ULONG* pcEltFetched);
5725 void __RPC_STUB IEnumOleUndoUnits_RemoteNext_Stub(
5726 struct IRpcStubBuffer* This,
5727 struct IRpcChannelBuffer* pRpcChannelBuffer,
5728 PRPC_MESSAGE pRpcMessage,
5729 DWORD* pdwStubPhase);
5730 HRESULT CALLBACK IEnumOleUndoUnits_Next_Proxy(
5731 IEnumOleUndoUnits* This,
5732 ULONG cElt,
5733 IOleUndoUnit** rgElt,
5734 ULONG* pcEltFetched);
5735 HRESULT __RPC_STUB IEnumOleUndoUnits_Next_Stub(
5736 IEnumOleUndoUnits* This,
5737 ULONG cElt,
5738 IOleUndoUnit** rgElt,
5739 ULONG* pcEltFetched);
5740 HRESULT CALLBACK IEnumOleUndoUnits_Skip_Proxy(
5741 IEnumOleUndoUnits* This,
5742 ULONG cElt);
5743 void __RPC_STUB IEnumOleUndoUnits_Skip_Stub(
5744 struct IRpcStubBuffer* This,
5745 struct IRpcChannelBuffer* pRpcChannelBuffer,
5746 PRPC_MESSAGE pRpcMessage,
5747 DWORD* pdwStubPhase);
5748 HRESULT CALLBACK IEnumOleUndoUnits_Reset_Proxy(
5749 IEnumOleUndoUnits* This);
5750 void __RPC_STUB IEnumOleUndoUnits_Reset_Stub(
5751 struct IRpcStubBuffer* This,
5752 struct IRpcChannelBuffer* pRpcChannelBuffer,
5753 PRPC_MESSAGE pRpcMessage,
5754 DWORD* pdwStubPhase);
5755 HRESULT CALLBACK IEnumOleUndoUnits_Clone_Proxy(
5756 IEnumOleUndoUnits* This,
5757 IEnumOleUndoUnits** ppEnum);
5758 void __RPC_STUB IEnumOleUndoUnits_Clone_Stub(
5759 struct IRpcStubBuffer* This,
5760 struct IRpcChannelBuffer* pRpcChannelBuffer,
5761 PRPC_MESSAGE pRpcMessage,
5762 DWORD* pdwStubPhase);
5764 #endif /* __IEnumOleUndoUnits_INTERFACE_DEFINED__ */
5766 typedef IOleUndoManager *LPOLEUNDOMANAGER;
5768 /*****************************************************************************
5769 * IOleUndoManager interface
5771 #ifndef __IOleUndoManager_INTERFACE_DEFINED__
5772 #define __IOleUndoManager_INTERFACE_DEFINED__
5774 DEFINE_GUID(IID_IOleUndoManager, 0xd001f200, 0xef97, 0x11ce, 0x9b,0xc9, 0x00,0xaa,0x00,0x60,0x8e,0x01);
5775 #if defined(__cplusplus) && !defined(CINTERFACE)
5776 struct IOleUndoManager : public IUnknown
5778 virtual HRESULT STDMETHODCALLTYPE Open(
5779 IOleParentUndoUnit* pPUU) = 0;
5781 virtual HRESULT STDMETHODCALLTYPE Close(
5782 IOleParentUndoUnit* pPUU,
5783 BOOL fCommit) = 0;
5785 virtual HRESULT STDMETHODCALLTYPE Add(
5786 IOleUndoUnit* pUU) = 0;
5788 virtual HRESULT STDMETHODCALLTYPE GetOpenParentState(
5789 DWORD* pdwState) = 0;
5791 virtual HRESULT STDMETHODCALLTYPE DiscardFrom(
5792 IOleUndoUnit* pUU) = 0;
5794 virtual HRESULT STDMETHODCALLTYPE UndoTo(
5795 IOleUndoUnit* pUU) = 0;
5797 virtual HRESULT STDMETHODCALLTYPE RedoTo(
5798 IOleUndoUnit* pUU) = 0;
5800 virtual HRESULT STDMETHODCALLTYPE EnumUndoable(
5801 IEnumOleUndoUnits** ppEnum) = 0;
5803 virtual HRESULT STDMETHODCALLTYPE EnumRedoable(
5804 IEnumOleUndoUnits** ppEnum) = 0;
5806 virtual HRESULT STDMETHODCALLTYPE GetLastUndoDescription(
5807 BSTR* pBstr) = 0;
5809 virtual HRESULT STDMETHODCALLTYPE GetLastRedoDescription(
5810 BSTR* pBstr) = 0;
5812 virtual HRESULT STDMETHODCALLTYPE Enable(
5813 BOOL fEnable) = 0;
5816 #else
5817 typedef struct IOleUndoManagerVtbl IOleUndoManagerVtbl;
5818 struct IOleUndoManager {
5819 const IOleUndoManagerVtbl* lpVtbl;
5821 struct IOleUndoManagerVtbl {
5822 ICOM_MSVTABLE_COMPAT_FIELDS
5824 /*** IUnknown methods ***/
5825 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5826 IOleUndoManager* This,
5827 REFIID riid,
5828 void** ppvObject);
5830 ULONG (STDMETHODCALLTYPE *AddRef)(
5831 IOleUndoManager* This);
5833 ULONG (STDMETHODCALLTYPE *Release)(
5834 IOleUndoManager* This);
5836 /*** IOleUndoManager methods ***/
5837 HRESULT (STDMETHODCALLTYPE *Open)(
5838 IOleUndoManager* This,
5839 IOleParentUndoUnit* pPUU);
5841 HRESULT (STDMETHODCALLTYPE *Close)(
5842 IOleUndoManager* This,
5843 IOleParentUndoUnit* pPUU,
5844 BOOL fCommit);
5846 HRESULT (STDMETHODCALLTYPE *Add)(
5847 IOleUndoManager* This,
5848 IOleUndoUnit* pUU);
5850 HRESULT (STDMETHODCALLTYPE *GetOpenParentState)(
5851 IOleUndoManager* This,
5852 DWORD* pdwState);
5854 HRESULT (STDMETHODCALLTYPE *DiscardFrom)(
5855 IOleUndoManager* This,
5856 IOleUndoUnit* pUU);
5858 HRESULT (STDMETHODCALLTYPE *UndoTo)(
5859 IOleUndoManager* This,
5860 IOleUndoUnit* pUU);
5862 HRESULT (STDMETHODCALLTYPE *RedoTo)(
5863 IOleUndoManager* This,
5864 IOleUndoUnit* pUU);
5866 HRESULT (STDMETHODCALLTYPE *EnumUndoable)(
5867 IOleUndoManager* This,
5868 IEnumOleUndoUnits** ppEnum);
5870 HRESULT (STDMETHODCALLTYPE *EnumRedoable)(
5871 IOleUndoManager* This,
5872 IEnumOleUndoUnits** ppEnum);
5874 HRESULT (STDMETHODCALLTYPE *GetLastUndoDescription)(
5875 IOleUndoManager* This,
5876 BSTR* pBstr);
5878 HRESULT (STDMETHODCALLTYPE *GetLastRedoDescription)(
5879 IOleUndoManager* This,
5880 BSTR* pBstr);
5882 HRESULT (STDMETHODCALLTYPE *Enable)(
5883 IOleUndoManager* This,
5884 BOOL fEnable);
5888 /*** IUnknown methods ***/
5889 #define IOleUndoManager_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
5890 #define IOleUndoManager_AddRef(p) (p)->lpVtbl->AddRef(p)
5891 #define IOleUndoManager_Release(p) (p)->lpVtbl->Release(p)
5892 /*** IOleUndoManager methods ***/
5893 #define IOleUndoManager_Open(p,a) (p)->lpVtbl->Open(p,a)
5894 #define IOleUndoManager_Close(p,a,b) (p)->lpVtbl->Close(p,a,b)
5895 #define IOleUndoManager_Add(p,a) (p)->lpVtbl->Add(p,a)
5896 #define IOleUndoManager_GetOpenParentState(p,a) (p)->lpVtbl->GetOpenParentState(p,a)
5897 #define IOleUndoManager_DiscardFrom(p,a) (p)->lpVtbl->DiscardFrom(p,a)
5898 #define IOleUndoManager_UndoTo(p,a) (p)->lpVtbl->UndoTo(p,a)
5899 #define IOleUndoManager_RedoTo(p,a) (p)->lpVtbl->RedoTo(p,a)
5900 #define IOleUndoManager_EnumUndoable(p,a) (p)->lpVtbl->EnumUndoable(p,a)
5901 #define IOleUndoManager_EnumRedoable(p,a) (p)->lpVtbl->EnumRedoable(p,a)
5902 #define IOleUndoManager_GetLastUndoDescription(p,a) (p)->lpVtbl->GetLastUndoDescription(p,a)
5903 #define IOleUndoManager_GetLastRedoDescription(p,a) (p)->lpVtbl->GetLastRedoDescription(p,a)
5904 #define IOleUndoManager_Enable(p,a) (p)->lpVtbl->Enable(p,a)
5906 #endif
5908 #define IOleUndoManager_METHODS \
5909 ICOM_MSVTABLE_COMPAT_FIELDS \
5910 /*** IUnknown methods ***/ \
5911 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
5912 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
5913 STDMETHOD_(ULONG,Release)(THIS) PURE; \
5914 /*** IOleUndoManager methods ***/ \
5915 STDMETHOD_(HRESULT,Open)(THIS_ IOleParentUndoUnit* pPUU) PURE; \
5916 STDMETHOD_(HRESULT,Close)(THIS_ IOleParentUndoUnit* pPUU, BOOL fCommit) PURE; \
5917 STDMETHOD_(HRESULT,Add)(THIS_ IOleUndoUnit* pUU) PURE; \
5918 STDMETHOD_(HRESULT,GetOpenParentState)(THIS_ DWORD* pdwState) PURE; \
5919 STDMETHOD_(HRESULT,DiscardFrom)(THIS_ IOleUndoUnit* pUU) PURE; \
5920 STDMETHOD_(HRESULT,UndoTo)(THIS_ IOleUndoUnit* pUU) PURE; \
5921 STDMETHOD_(HRESULT,RedoTo)(THIS_ IOleUndoUnit* pUU) PURE; \
5922 STDMETHOD_(HRESULT,EnumUndoable)(THIS_ IEnumOleUndoUnits** ppEnum) PURE; \
5923 STDMETHOD_(HRESULT,EnumRedoable)(THIS_ IEnumOleUndoUnits** ppEnum) PURE; \
5924 STDMETHOD_(HRESULT,GetLastUndoDescription)(THIS_ BSTR* pBstr) PURE; \
5925 STDMETHOD_(HRESULT,GetLastRedoDescription)(THIS_ BSTR* pBstr) PURE; \
5926 STDMETHOD_(HRESULT,Enable)(THIS_ BOOL fEnable) PURE;
5928 HRESULT CALLBACK IOleUndoManager_Open_Proxy(
5929 IOleUndoManager* This,
5930 IOleParentUndoUnit* pPUU);
5931 void __RPC_STUB IOleUndoManager_Open_Stub(
5932 struct IRpcStubBuffer* This,
5933 struct IRpcChannelBuffer* pRpcChannelBuffer,
5934 PRPC_MESSAGE pRpcMessage,
5935 DWORD* pdwStubPhase);
5936 HRESULT CALLBACK IOleUndoManager_Close_Proxy(
5937 IOleUndoManager* This,
5938 IOleParentUndoUnit* pPUU,
5939 BOOL fCommit);
5940 void __RPC_STUB IOleUndoManager_Close_Stub(
5941 struct IRpcStubBuffer* This,
5942 struct IRpcChannelBuffer* pRpcChannelBuffer,
5943 PRPC_MESSAGE pRpcMessage,
5944 DWORD* pdwStubPhase);
5945 HRESULT CALLBACK IOleUndoManager_Add_Proxy(
5946 IOleUndoManager* This,
5947 IOleUndoUnit* pUU);
5948 void __RPC_STUB IOleUndoManager_Add_Stub(
5949 struct IRpcStubBuffer* This,
5950 struct IRpcChannelBuffer* pRpcChannelBuffer,
5951 PRPC_MESSAGE pRpcMessage,
5952 DWORD* pdwStubPhase);
5953 HRESULT CALLBACK IOleUndoManager_GetOpenParentState_Proxy(
5954 IOleUndoManager* This,
5955 DWORD* pdwState);
5956 void __RPC_STUB IOleUndoManager_GetOpenParentState_Stub(
5957 struct IRpcStubBuffer* This,
5958 struct IRpcChannelBuffer* pRpcChannelBuffer,
5959 PRPC_MESSAGE pRpcMessage,
5960 DWORD* pdwStubPhase);
5961 HRESULT CALLBACK IOleUndoManager_DiscardFrom_Proxy(
5962 IOleUndoManager* This,
5963 IOleUndoUnit* pUU);
5964 void __RPC_STUB IOleUndoManager_DiscardFrom_Stub(
5965 struct IRpcStubBuffer* This,
5966 struct IRpcChannelBuffer* pRpcChannelBuffer,
5967 PRPC_MESSAGE pRpcMessage,
5968 DWORD* pdwStubPhase);
5969 HRESULT CALLBACK IOleUndoManager_UndoTo_Proxy(
5970 IOleUndoManager* This,
5971 IOleUndoUnit* pUU);
5972 void __RPC_STUB IOleUndoManager_UndoTo_Stub(
5973 struct IRpcStubBuffer* This,
5974 struct IRpcChannelBuffer* pRpcChannelBuffer,
5975 PRPC_MESSAGE pRpcMessage,
5976 DWORD* pdwStubPhase);
5977 HRESULT CALLBACK IOleUndoManager_RedoTo_Proxy(
5978 IOleUndoManager* This,
5979 IOleUndoUnit* pUU);
5980 void __RPC_STUB IOleUndoManager_RedoTo_Stub(
5981 struct IRpcStubBuffer* This,
5982 struct IRpcChannelBuffer* pRpcChannelBuffer,
5983 PRPC_MESSAGE pRpcMessage,
5984 DWORD* pdwStubPhase);
5985 HRESULT CALLBACK IOleUndoManager_EnumUndoable_Proxy(
5986 IOleUndoManager* This,
5987 IEnumOleUndoUnits** ppEnum);
5988 void __RPC_STUB IOleUndoManager_EnumUndoable_Stub(
5989 struct IRpcStubBuffer* This,
5990 struct IRpcChannelBuffer* pRpcChannelBuffer,
5991 PRPC_MESSAGE pRpcMessage,
5992 DWORD* pdwStubPhase);
5993 HRESULT CALLBACK IOleUndoManager_EnumRedoable_Proxy(
5994 IOleUndoManager* This,
5995 IEnumOleUndoUnits** ppEnum);
5996 void __RPC_STUB IOleUndoManager_EnumRedoable_Stub(
5997 struct IRpcStubBuffer* This,
5998 struct IRpcChannelBuffer* pRpcChannelBuffer,
5999 PRPC_MESSAGE pRpcMessage,
6000 DWORD* pdwStubPhase);
6001 HRESULT CALLBACK IOleUndoManager_GetLastUndoDescription_Proxy(
6002 IOleUndoManager* This,
6003 BSTR* pBstr);
6004 void __RPC_STUB IOleUndoManager_GetLastUndoDescription_Stub(
6005 struct IRpcStubBuffer* This,
6006 struct IRpcChannelBuffer* pRpcChannelBuffer,
6007 PRPC_MESSAGE pRpcMessage,
6008 DWORD* pdwStubPhase);
6009 HRESULT CALLBACK IOleUndoManager_GetLastRedoDescription_Proxy(
6010 IOleUndoManager* This,
6011 BSTR* pBstr);
6012 void __RPC_STUB IOleUndoManager_GetLastRedoDescription_Stub(
6013 struct IRpcStubBuffer* This,
6014 struct IRpcChannelBuffer* pRpcChannelBuffer,
6015 PRPC_MESSAGE pRpcMessage,
6016 DWORD* pdwStubPhase);
6017 HRESULT CALLBACK IOleUndoManager_Enable_Proxy(
6018 IOleUndoManager* This,
6019 BOOL fEnable);
6020 void __RPC_STUB IOleUndoManager_Enable_Stub(
6021 struct IRpcStubBuffer* This,
6022 struct IRpcChannelBuffer* pRpcChannelBuffer,
6023 PRPC_MESSAGE pRpcMessage,
6024 DWORD* pdwStubPhase);
6026 #endif /* __IOleUndoManager_INTERFACE_DEFINED__ */
6028 #ifndef __IQuickActivate_FWD_DEFINED__
6029 #define __IQuickActivate_FWD_DEFINED__
6030 typedef struct IQuickActivate IQuickActivate;
6031 #endif
6033 typedef IQuickActivate *LPQUICKACTIVATE;
6035 typedef enum tagQACONTAINERFLAGS {
6036 QACONTAINER_SHOWHATCHING = 0x1,
6037 QACONTAINER_SHOWGRABHANDLES = 0x2,
6038 QACONTAINER_USERMODE = 0x4,
6039 QACONTAINER_DISPLAYASDEFAULT = 0x8,
6040 QACONTAINER_UIDEAD = 0x10,
6041 QACONTAINER_AUTOCLIP = 0x20,
6042 QACONTAINER_MESSAGEREFLECT = 0x40,
6043 QACONTAINER_SUPPORTSMNEMONICS = 0x80
6044 } QACONTAINERFLAGS;
6046 typedef DWORD OLE_COLOR;
6048 typedef struct tagQACONTAINER {
6049 ULONG cbSize;
6050 IOleClientSite *pClientSite;
6051 IAdviseSinkEx *pAdviseSink;
6052 IPropertyNotifySink *pPropertyNotifySink;
6053 IUnknown *pUnkEventSink;
6054 DWORD dwAmbientFlags;
6055 OLE_COLOR colorFore;
6056 OLE_COLOR colorBack;
6057 IFont *pFont;
6058 IOleUndoManager *pUndoMgr;
6059 DWORD dwAppearance;
6060 LONG lcid;
6061 HPALETTE hpal;
6062 IBindHost *pBindHost;
6063 IOleControlSite *pOleControlSite;
6064 IServiceProvider *pServiceProvider;
6065 } QACONTAINER;
6067 typedef struct tagQACONTROL {
6068 ULONG cbSize;
6069 DWORD dwMiscStatus;
6070 DWORD dwViewStatus;
6071 DWORD dwEventCookie;
6072 DWORD dwPropNotifyCookie;
6073 DWORD dwPointerActivationPolicy;
6074 } QACONTROL;
6076 /*****************************************************************************
6077 * IQuickActivate interface
6079 #ifndef __IQuickActivate_INTERFACE_DEFINED__
6080 #define __IQuickActivate_INTERFACE_DEFINED__
6082 DEFINE_GUID(IID_IQuickActivate, 0xcf51ed10, 0x62fe, 0x11cf, 0xbf,0x86, 0x00,0xa0,0xc9,0x03,0x48,0x36);
6083 #if defined(__cplusplus) && !defined(CINTERFACE)
6084 struct IQuickActivate : public IUnknown
6086 virtual HRESULT STDMETHODCALLTYPE QuickActivate(
6087 QACONTAINER* pQaContainer,
6088 QACONTROL* pQaControl) = 0;
6090 virtual HRESULT STDMETHODCALLTYPE SetContentExtent(
6091 LPSIZEL pSizel) = 0;
6093 virtual HRESULT STDMETHODCALLTYPE GetContentExtent(
6094 LPSIZEL pSizel) = 0;
6097 #else
6098 typedef struct IQuickActivateVtbl IQuickActivateVtbl;
6099 struct IQuickActivate {
6100 const IQuickActivateVtbl* lpVtbl;
6102 struct IQuickActivateVtbl {
6103 ICOM_MSVTABLE_COMPAT_FIELDS
6105 /*** IUnknown methods ***/
6106 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6107 IQuickActivate* This,
6108 REFIID riid,
6109 void** ppvObject);
6111 ULONG (STDMETHODCALLTYPE *AddRef)(
6112 IQuickActivate* This);
6114 ULONG (STDMETHODCALLTYPE *Release)(
6115 IQuickActivate* This);
6117 /*** IQuickActivate methods ***/
6118 HRESULT (STDMETHODCALLTYPE *QuickActivate)(
6119 IQuickActivate* This,
6120 QACONTAINER* pQaContainer,
6121 QACONTROL* pQaControl);
6123 HRESULT (STDMETHODCALLTYPE *SetContentExtent)(
6124 IQuickActivate* This,
6125 LPSIZEL pSizel);
6127 HRESULT (STDMETHODCALLTYPE *GetContentExtent)(
6128 IQuickActivate* This,
6129 LPSIZEL pSizel);
6133 /*** IUnknown methods ***/
6134 #define IQuickActivate_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
6135 #define IQuickActivate_AddRef(p) (p)->lpVtbl->AddRef(p)
6136 #define IQuickActivate_Release(p) (p)->lpVtbl->Release(p)
6137 /*** IQuickActivate methods ***/
6138 #define IQuickActivate_QuickActivate(p,a,b) (p)->lpVtbl->QuickActivate(p,a,b)
6139 #define IQuickActivate_SetContentExtent(p,a) (p)->lpVtbl->SetContentExtent(p,a)
6140 #define IQuickActivate_GetContentExtent(p,a) (p)->lpVtbl->GetContentExtent(p,a)
6142 #endif
6144 #define IQuickActivate_METHODS \
6145 ICOM_MSVTABLE_COMPAT_FIELDS \
6146 /*** IUnknown methods ***/ \
6147 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
6148 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
6149 STDMETHOD_(ULONG,Release)(THIS) PURE; \
6150 /*** IQuickActivate methods ***/ \
6151 STDMETHOD_(HRESULT,QuickActivate)(THIS_ QACONTAINER* pQaContainer, QACONTROL* pQaControl) PURE; \
6152 STDMETHOD_(HRESULT,SetContentExtent)(THIS_ LPSIZEL pSizel) PURE; \
6153 STDMETHOD_(HRESULT,GetContentExtent)(THIS_ LPSIZEL pSizel) PURE;
6155 HRESULT CALLBACK IQuickActivate_RemoteQuickActivate_Proxy(
6156 IQuickActivate* This,
6157 QACONTAINER* pQaContainer,
6158 QACONTROL* pQaControl);
6159 void __RPC_STUB IQuickActivate_RemoteQuickActivate_Stub(
6160 struct IRpcStubBuffer* This,
6161 struct IRpcChannelBuffer* pRpcChannelBuffer,
6162 PRPC_MESSAGE pRpcMessage,
6163 DWORD* pdwStubPhase);
6164 HRESULT CALLBACK IQuickActivate_QuickActivate_Proxy(
6165 IQuickActivate* This,
6166 QACONTAINER* pQaContainer,
6167 QACONTROL* pQaControl);
6168 HRESULT __RPC_STUB IQuickActivate_QuickActivate_Stub(
6169 IQuickActivate* This,
6170 QACONTAINER* pQaContainer,
6171 QACONTROL* pQaControl);
6172 HRESULT CALLBACK IQuickActivate_SetContentExtent_Proxy(
6173 IQuickActivate* This,
6174 LPSIZEL pSizel);
6175 void __RPC_STUB IQuickActivate_SetContentExtent_Stub(
6176 struct IRpcStubBuffer* This,
6177 struct IRpcChannelBuffer* pRpcChannelBuffer,
6178 PRPC_MESSAGE pRpcMessage,
6179 DWORD* pdwStubPhase);
6180 HRESULT CALLBACK IQuickActivate_GetContentExtent_Proxy(
6181 IQuickActivate* This,
6182 LPSIZEL pSizel);
6183 void __RPC_STUB IQuickActivate_GetContentExtent_Stub(
6184 struct IRpcStubBuffer* This,
6185 struct IRpcChannelBuffer* pRpcChannelBuffer,
6186 PRPC_MESSAGE pRpcMessage,
6187 DWORD* pdwStubPhase);
6189 #endif /* __IQuickActivate_INTERFACE_DEFINED__ */
6191 #ifdef __cplusplus
6193 #endif
6194 #endif /* __WIDL_OCIDL_H */