1 | /*
|
---|
2 | * Copyright (C) 1999 Paul Quinn
|
---|
3 | * Copyright (C) 1999 Francis Beaudet
|
---|
4 | * Copyright (C) 2003 Alexandre Julliard
|
---|
5 | *
|
---|
6 | * This library is free software; you can redistribute it and/or
|
---|
7 | * modify it under the terms of the GNU Lesser General Public
|
---|
8 | * License as published by the Free Software Foundation; either
|
---|
9 | * version 2.1 of the License, or (at your option) any later version.
|
---|
10 | *
|
---|
11 | * This library is distributed in the hope that it will be useful,
|
---|
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
14 | * Lesser General Public License for more details.
|
---|
15 | *
|
---|
16 | * You should have received a copy of the GNU Lesser General Public
|
---|
17 | * License along with this library; if not, write to the Free Software
|
---|
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
---|
19 | */
|
---|
20 |
|
---|
21 | /*
|
---|
22 | * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
|
---|
23 | * other than GPL or LGPL is available it will apply instead, Sun elects to use only
|
---|
24 | * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
|
---|
25 | * a choice of LGPL license versions is made available with the language indicating
|
---|
26 | * that LGPLv2 or any later version may be used, or where a choice of which version
|
---|
27 | * of the LGPL is applied is otherwise unspecified.
|
---|
28 | */
|
---|
29 |
|
---|
30 | #ifndef DO_NO_IMPORTS
|
---|
31 | import "oleidl.idl";
|
---|
32 | import "oaidl.idl";
|
---|
33 | import "servprov.idl";
|
---|
34 | import "urlmon.idl";
|
---|
35 | #endif
|
---|
36 |
|
---|
37 | /*****************************************************************************
|
---|
38 | * IOleControlTypes interface
|
---|
39 | */
|
---|
40 | [
|
---|
41 | pointer_default(unique)
|
---|
42 | ]
|
---|
43 | interface IOleControlTypes
|
---|
44 | {
|
---|
45 | typedef [v1_enum] enum tagUASFLAGS
|
---|
46 | {
|
---|
47 | UAS_NORMAL = 0x0,
|
---|
48 | UAS_BLOCKED = 0x1,
|
---|
49 | UAS_NOPARENTABLE = 0x2,
|
---|
50 | UAS_MASK = 0x3
|
---|
51 | } UASFLAGS;
|
---|
52 |
|
---|
53 | typedef enum tagREADYSTATE
|
---|
54 | {
|
---|
55 | READYSTATE_UNINITIALIZED = 0,
|
---|
56 | READYSTATE_LOADING = 1,
|
---|
57 | READYSTATE_LOADED = 2,
|
---|
58 | READYSTATE_INTERACTIVE = 3,
|
---|
59 | READYSTATE_COMPLETE = 4
|
---|
60 | } READYSTATE;
|
---|
61 |
|
---|
62 | typedef struct tagVARIANT_BLOB
|
---|
63 | {
|
---|
64 | DWORD clSize;
|
---|
65 | DWORD rpcReserved;
|
---|
66 | [size_is(clSize-1)] ULONGLONG ahData[];
|
---|
67 | } wireVARIANT_BLOB;
|
---|
68 |
|
---|
69 | typedef struct tagUserVARIANT
|
---|
70 | {
|
---|
71 | wireVARIANT_BLOB pVarBlob;
|
---|
72 | } UserVARIANT;
|
---|
73 | }
|
---|
74 |
|
---|
75 |
|
---|
76 | /*****************************************************************************
|
---|
77 | * IFont interface
|
---|
78 | */
|
---|
79 | [
|
---|
80 | object,
|
---|
81 | uuid(bef6e002-a874-101a-8bba-00aa00300cab),
|
---|
82 | pointer_default(unique)
|
---|
83 | ]
|
---|
84 | interface IFont : IUnknown
|
---|
85 | {
|
---|
86 | typedef IFont *LPFONT;
|
---|
87 | typedef TEXTMETRICW TEXTMETRICOLE, *LPTEXTMETRICOLE;
|
---|
88 |
|
---|
89 | [propget] HRESULT Name( [out] BSTR *pname);
|
---|
90 | [propput] HRESULT Name( [in] BSTR name );
|
---|
91 | [propget] HRESULT Size( [out] CY *psize );
|
---|
92 | [propput] HRESULT Size( [in] CY size );
|
---|
93 | [propget] HRESULT Bold( [out] BOOL *pbold );
|
---|
94 | [propput] HRESULT Bold( [in] BOOL bold );
|
---|
95 | [propget] HRESULT Italic( [out] BOOL *pitalic );
|
---|
96 | [propput] HRESULT Italic( [in] BOOL italic );
|
---|
97 | [propget] HRESULT Underline( [out] BOOL *punderline );
|
---|
98 | [propput] HRESULT Underline( [in] BOOL underline );
|
---|
99 | [propget] HRESULT Strikethrough( [out] BOOL *pstrikethrough );
|
---|
100 | [propput] HRESULT Strikethrough( [in] BOOL strikethrough );
|
---|
101 | [propget] HRESULT Weight( [out] SHORT *pweight );
|
---|
102 | [propput] HRESULT Weight( [in] SHORT weight );
|
---|
103 | [propget] HRESULT Charset( [out] SHORT *pcharset );
|
---|
104 | [propput] HRESULT Charset( [in] SHORT charset );
|
---|
105 | [propget] HRESULT hFont( [out] HFONT *phfont );
|
---|
106 | HRESULT Clone( [out] IFont **ppfont );
|
---|
107 | HRESULT IsEqual( [in] IFont *pFontOther );
|
---|
108 | HRESULT SetRatio( [in] LONG cyLogical, [in] LONG cyHimetric );
|
---|
109 | HRESULT QueryTextMetrics( [out] TEXTMETRICOLE * ptm );
|
---|
110 | HRESULT AddRefHfont( [in] HFONT hfont );
|
---|
111 | HRESULT ReleaseHfont( [in] HFONT hfont );
|
---|
112 | HRESULT SetHdc( [in] HDC hdc );
|
---|
113 | }
|
---|
114 |
|
---|
115 |
|
---|
116 | /*****************************************************************************
|
---|
117 | * IFontDisp interface
|
---|
118 | */
|
---|
119 | [
|
---|
120 | object,
|
---|
121 | uuid(bef6e003-a874-101a-8bba-00aa00300cab),
|
---|
122 | pointer_default(unique)
|
---|
123 | ]
|
---|
124 | interface IFontDisp : IDispatch
|
---|
125 | {
|
---|
126 | typedef IFontDisp *LPFONTDISP;
|
---|
127 | }
|
---|
128 |
|
---|
129 |
|
---|
130 | /*****************************************************************************
|
---|
131 | * IFontEventsDisp interface
|
---|
132 | */
|
---|
133 | [
|
---|
134 | object,
|
---|
135 | uuid(4ef6100a-af88-11d0-9846-00c04fc29993),
|
---|
136 | pointer_default(unique)
|
---|
137 | ]
|
---|
138 | interface IFontEventsDisp : IDispatch
|
---|
139 | {
|
---|
140 | typedef IFontEventsDisp *LPFONTEVENTS;
|
---|
141 | }
|
---|
142 |
|
---|
143 |
|
---|
144 | /*****************************************************************************
|
---|
145 | * IPicture interface
|
---|
146 | */
|
---|
147 | [
|
---|
148 | object,
|
---|
149 | uuid(7bf80980-bf32-101a-8bbb-00aa00300cab),
|
---|
150 | pointer_default(unique)
|
---|
151 | ]
|
---|
152 | interface IPicture : IUnknown
|
---|
153 | {
|
---|
154 | typedef IPicture *LPPICTURE;
|
---|
155 |
|
---|
156 | typedef enum tagPicture
|
---|
157 | {
|
---|
158 | PICTURE_SCALABLE = 0x1,
|
---|
159 | PICTURE_TRANSPARENT = 0x2
|
---|
160 | } PICTUREATTRIBUTES;
|
---|
161 |
|
---|
162 | typedef UINT OLE_HANDLE;
|
---|
163 | typedef LONG OLE_XPOS_HIMETRIC;
|
---|
164 | typedef LONG OLE_YPOS_HIMETRIC;
|
---|
165 | typedef LONG OLE_XSIZE_HIMETRIC;
|
---|
166 | typedef LONG OLE_YSIZE_HIMETRIC;
|
---|
167 |
|
---|
168 | [propget] HRESULT Handle( [out] OLE_HANDLE *pHandle );
|
---|
169 | [propget] HRESULT hPal( [out] OLE_HANDLE *phPal );
|
---|
170 | [propget] HRESULT Type( [out] SHORT *pType );
|
---|
171 | [propget] HRESULT Width( [out] OLE_XSIZE_HIMETRIC *pWidth );
|
---|
172 | [propget] HRESULT Height( [out] OLE_YSIZE_HIMETRIC *pHeight );
|
---|
173 |
|
---|
174 | HRESULT Render(
|
---|
175 | [in] HDC hdc,
|
---|
176 | [in] LONG x,
|
---|
177 | [in] LONG y,
|
---|
178 | [in] LONG cx,
|
---|
179 | [in] LONG cy,
|
---|
180 | [in] OLE_XPOS_HIMETRIC xSrc,
|
---|
181 | [in] OLE_YPOS_HIMETRIC ySrc,
|
---|
182 | [in] OLE_XSIZE_HIMETRIC cxSrc,
|
---|
183 | [in] OLE_YSIZE_HIMETRIC cySrc,
|
---|
184 | [in] LPCRECT pRcWBounds);
|
---|
185 |
|
---|
186 | HRESULT set_hPal( [in] OLE_HANDLE hPal );
|
---|
187 |
|
---|
188 | [propget] HRESULT CurDC( [out] HDC *phDC );
|
---|
189 |
|
---|
190 | HRESULT SelectPicture(
|
---|
191 | [in] HDC hDCIn,
|
---|
192 | [out] HDC * phDCOut,
|
---|
193 | [out] OLE_HANDLE * phBmpOut);
|
---|
194 |
|
---|
195 | [propget] HRESULT KeepOriginalFormat( [out] BOOL *pKeep );
|
---|
196 |
|
---|
197 | [propput] HRESULT KeepOriginalFormat( [in] BOOL keep );
|
---|
198 |
|
---|
199 | HRESULT PictureChanged();
|
---|
200 |
|
---|
201 | HRESULT SaveAsFile(
|
---|
202 | [in] LPSTREAM pStream,
|
---|
203 | [in] BOOL fSaveMemCopy,
|
---|
204 | [out] LONG *pCbSize);
|
---|
205 |
|
---|
206 | [propget] HRESULT Attributes( [out] DWORD *pDwAttr );
|
---|
207 | }
|
---|
208 |
|
---|
209 |
|
---|
210 | /*****************************************************************************
|
---|
211 | * IPictureDisp interface
|
---|
212 | */
|
---|
213 | [
|
---|
214 | object,
|
---|
215 | uuid(7bf80981-bf32-101a-8bbb-00aa00300cab),
|
---|
216 | pointer_default(unique)
|
---|
217 | ]
|
---|
218 | interface IPictureDisp : IDispatch
|
---|
219 | {
|
---|
220 | typedef IPictureDisp *LPPICTUREDISP;
|
---|
221 | }
|
---|
222 |
|
---|
223 |
|
---|
224 | /*****************************************************************************
|
---|
225 | * IOleControl interface
|
---|
226 | */
|
---|
227 | [
|
---|
228 | object,
|
---|
229 | uuid(b196b288-bab4-101a-b69c-00aa00341d07),
|
---|
230 | pointer_default(unique)
|
---|
231 | ]
|
---|
232 |
|
---|
233 | interface IOleControl : IUnknown
|
---|
234 | {
|
---|
235 | typedef IOleControl *LPOLECONTROL;
|
---|
236 |
|
---|
237 | typedef struct tagCONTROLINFO
|
---|
238 | {
|
---|
239 | ULONG cb;
|
---|
240 | HACCEL hAccel;
|
---|
241 | USHORT cAccel;
|
---|
242 | DWORD dwFlags;
|
---|
243 | } CONTROLINFO, *LPCONTROLINFO;
|
---|
244 |
|
---|
245 | typedef enum tagCTRLINFO
|
---|
246 | {
|
---|
247 | CTRLINFO_EATS_RETURN = 1,
|
---|
248 | CTRLINFO_EATS_ESCAPE = 2
|
---|
249 | } CTRLINFO;
|
---|
250 |
|
---|
251 | HRESULT GetControlInfo( [out] CONTROLINFO *pCI );
|
---|
252 | HRESULT OnMnemonic( [in] MSG *pMsg );
|
---|
253 | HRESULT OnAmbientPropertyChange( [in] DISPID dispID );
|
---|
254 | HRESULT FreezeEvents( [in] BOOL bFreeze );
|
---|
255 | }
|
---|
256 |
|
---|
257 |
|
---|
258 | /*****************************************************************************
|
---|
259 | * IOleControlSite interface
|
---|
260 | */
|
---|
261 | [
|
---|
262 | object,
|
---|
263 | uuid(b196b289-bab4-101a-b69c-00aa00341d07),
|
---|
264 | pointer_default(unique)
|
---|
265 | ]
|
---|
266 | interface IOleControlSite : IUnknown
|
---|
267 | {
|
---|
268 | typedef IOleControlSite *LPOLECONTROLSITE;
|
---|
269 |
|
---|
270 | typedef struct tagPOINTF
|
---|
271 | {
|
---|
272 | FLOAT x;
|
---|
273 | FLOAT y;
|
---|
274 | } POINTF, *LPPOINTF;
|
---|
275 |
|
---|
276 | typedef enum tagXFORMCOORDS
|
---|
277 | {
|
---|
278 | XFORMCOORDS_POSITION = 0x1,
|
---|
279 | XFORMCOORDS_SIZE = 0x2,
|
---|
280 | XFORMCOORDS_HIMETRICTOCONTAINER = 0x4,
|
---|
281 | XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8,
|
---|
282 | XFORMCOORDS_EVENTCOMPAT = 0x10
|
---|
283 | } XFORMCOORDS;
|
---|
284 |
|
---|
285 | HRESULT OnControlInfoChanged();
|
---|
286 |
|
---|
287 | HRESULT LockInPlaceActive( [in] BOOL fLock );
|
---|
288 |
|
---|
289 | HRESULT GetExtendedControl( [out] IDispatch ** ppDisp );
|
---|
290 |
|
---|
291 | HRESULT TransformCoords(
|
---|
292 | [in, out] POINTL *pPtlHimetric,
|
---|
293 | [in, out] POINTF *pPtfContainer,
|
---|
294 | [in] DWORD dwFlags);
|
---|
295 |
|
---|
296 | HRESULT TranslateAccelerator( [in] MSG *pMsg, [in] DWORD grfModifiers );
|
---|
297 |
|
---|
298 | HRESULT OnFocus( [in] BOOL fGotFocus );
|
---|
299 |
|
---|
300 | HRESULT ShowPropertyFrame();
|
---|
301 | }
|
---|
302 |
|
---|
303 |
|
---|
304 | /*****************************************************************************
|
---|
305 | * IOleInPlaceSiteEx interface
|
---|
306 | */
|
---|
307 | [
|
---|
308 | object,
|
---|
309 | uuid(9c2cad80-3424-11cf-b670-00aa004cd6d8),
|
---|
310 | pointer_default(unique)
|
---|
311 | ]
|
---|
312 | interface IOleInPlaceSiteEx : IOleInPlaceSite
|
---|
313 | {
|
---|
314 | typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX;
|
---|
315 |
|
---|
316 | typedef enum tagACTIVATEFLAGS
|
---|
317 | {
|
---|
318 | ACTIVATE_WINDOWLESS = 1
|
---|
319 | } ACTIVATE_FLAGS;
|
---|
320 |
|
---|
321 | HRESULT OnInPlaceActivateEx( [out] BOOL * pfNoRedraw, [in] DWORD dwFlags );
|
---|
322 | HRESULT OnInPlaceDeactivateEx( [in] BOOL fNoRedraw );
|
---|
323 | HRESULT RequestUIActivate();
|
---|
324 | }
|
---|
325 |
|
---|
326 |
|
---|
327 | /*****************************************************************************
|
---|
328 | * IOleInPlaceSiteWindowless interface
|
---|
329 | */
|
---|
330 | [
|
---|
331 | local,
|
---|
332 | object,
|
---|
333 | uuid(922eada0-3424-11cf-b670-00aa004cd6d8),
|
---|
334 | pointer_default(unique)
|
---|
335 | ]
|
---|
336 | interface IOleInPlaceSiteWindowless : IOleInPlaceSiteEx
|
---|
337 | {
|
---|
338 | typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS;
|
---|
339 |
|
---|
340 | typedef enum tagOLEDCFLAGS
|
---|
341 | {
|
---|
342 | OLEDC_NODRAW = 0x1,
|
---|
343 | OLEDC_PAINTBKGND = 0x2,
|
---|
344 | OLEDC_OFFSCREEN = 0x4
|
---|
345 | } OLEDCFLAGS;
|
---|
346 |
|
---|
347 | HRESULT CanWindowlessActivate();
|
---|
348 |
|
---|
349 | HRESULT GetCapture();
|
---|
350 |
|
---|
351 | HRESULT SetCapture( [in] BOOL fCapture );
|
---|
352 |
|
---|
353 | HRESULT GetFocus();
|
---|
354 |
|
---|
355 | HRESULT SetFocus( [in] BOOL fFocus );
|
---|
356 |
|
---|
357 | HRESULT GetDC(
|
---|
358 | [in] LPCRECT pRect,
|
---|
359 | [in] DWORD grfFlags,
|
---|
360 | [out] HDC *phDC);
|
---|
361 |
|
---|
362 | HRESULT ReleaseDC( [in] HDC hDC );
|
---|
363 |
|
---|
364 | HRESULT InvalidateRect(
|
---|
365 | [in] LPCRECT pRect,
|
---|
366 | [in] BOOL fErase);
|
---|
367 |
|
---|
368 | HRESULT InvalidateRgn(
|
---|
369 | [in] HRGN hRGN,
|
---|
370 | [in] BOOL fErase);
|
---|
371 |
|
---|
372 | HRESULT ScrollRect(
|
---|
373 | [in] INT dx,
|
---|
374 | [in] INT dy,
|
---|
375 | [in] LPCRECT pRectScroll,
|
---|
376 | [in] LPCRECT pRectClip);
|
---|
377 |
|
---|
378 | HRESULT AdjustRect( [in, out] LPRECT prc );
|
---|
379 |
|
---|
380 | HRESULT OnDefWindowMessage(
|
---|
381 | [in] UINT msg,
|
---|
382 | [in] WPARAM wParam,
|
---|
383 | [in] LPARAM lParam,
|
---|
384 | [out] LRESULT *plResult);
|
---|
385 | }
|
---|
386 |
|
---|
387 |
|
---|
388 | /*****************************************************************************
|
---|
389 | * IOleInPlaceObjectWindowless interface
|
---|
390 | */
|
---|
391 | [
|
---|
392 | local,
|
---|
393 | object,
|
---|
394 | uuid(1c2056cc-5ef4-101b-8bc8-00aa003e3b29),
|
---|
395 | pointer_default(unique)
|
---|
396 | ]
|
---|
397 | interface IOleInPlaceObjectWindowless : IOleInPlaceObject
|
---|
398 | {
|
---|
399 | typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS;
|
---|
400 |
|
---|
401 | HRESULT OnWindowMessage(
|
---|
402 | [in] UINT msg,
|
---|
403 | [in] WPARAM wParam,
|
---|
404 | [in] LPARAM lParam,
|
---|
405 | [out] LRESULT *plResult);
|
---|
406 |
|
---|
407 | HRESULT GetDropTarget( [out] IDropTarget **ppDropTarget );
|
---|
408 | }
|
---|
409 |
|
---|
410 |
|
---|
411 | /*****************************************************************************
|
---|
412 | * IClassFactory2 interface
|
---|
413 | */
|
---|
414 | [
|
---|
415 | object,
|
---|
416 | uuid(b196b28f-bab4-101a-b69c-00aa00341d07),
|
---|
417 | pointer_default(unique)
|
---|
418 | ]
|
---|
419 | interface IClassFactory2 : IClassFactory
|
---|
420 | {
|
---|
421 | typedef IClassFactory2 *LPCLASSFACTORY2;
|
---|
422 |
|
---|
423 | typedef struct tagLICINFO
|
---|
424 | {
|
---|
425 | LONG cbLicInfo;
|
---|
426 | BOOL fRuntimeKeyAvail;
|
---|
427 | BOOL fLicVerified;
|
---|
428 | } LICINFO, *LPLICINFO;
|
---|
429 |
|
---|
430 | HRESULT GetLicInfo( [out] LICINFO *pLicInfo );
|
---|
431 |
|
---|
432 | HRESULT RequestLicKey(
|
---|
433 | [in] DWORD dwReserved,
|
---|
434 | [out] BSTR *pBstrKey);
|
---|
435 |
|
---|
436 | [local]
|
---|
437 | HRESULT CreateInstanceLic(
|
---|
438 | [in] IUnknown *pUnkOuter,
|
---|
439 | [in] IUnknown *pUnkReserved,
|
---|
440 | [in] REFIID riid,
|
---|
441 | [in] BSTR bstrKey,
|
---|
442 | [out, iid_is(riid)] PVOID *ppvObj);
|
---|
443 |
|
---|
444 | [call_as(CreateInstanceLic)]
|
---|
445 | HRESULT RemoteCreateInstanceLic(
|
---|
446 | [in] REFIID riid,
|
---|
447 | [in] BSTR bstrKey,
|
---|
448 | [out, iid_is(riid)] IUnknown **ppvObj);
|
---|
449 | }
|
---|
450 |
|
---|
451 |
|
---|
452 | /*****************************************************************************
|
---|
453 | * IViewObject interface
|
---|
454 | */
|
---|
455 | [
|
---|
456 | local,
|
---|
457 | object,
|
---|
458 | uuid(3af24292-0c96-11ce-a0cf-00aa00600ab8),
|
---|
459 | pointer_default(unique)
|
---|
460 | ]
|
---|
461 | interface IViewObjectEx : IViewObject2
|
---|
462 | {
|
---|
463 | typedef IViewObjectEx *LPVIEWOBJECTEX;
|
---|
464 |
|
---|
465 | typedef enum tagVIEWSTATUS
|
---|
466 | {
|
---|
467 | VIEWSTATUS_OPAQUE = 1,
|
---|
468 | VIEWSTATUS_SOLIDBKGND = 2,
|
---|
469 | VIEWSTATUS_DVASPECTOPAQUE = 4,
|
---|
470 | VIEWSTATUS_DVASPECTTRANSPARENT = 8,
|
---|
471 | VIEWSTATUS_SURFACE = 16,
|
---|
472 | VIEWSTATUS_3DSURFACE = 32
|
---|
473 | } VIEWSTATUS;
|
---|
474 |
|
---|
475 | typedef enum tagHITRESULT
|
---|
476 | {
|
---|
477 | HITRESULT_OUTSIDE = 0,
|
---|
478 | HITRESULT_TRANSPARENT = 1,
|
---|
479 | HITRESULT_CLOSE = 2,
|
---|
480 | HITRESULT_HIT = 3
|
---|
481 | } HITRESULT;
|
---|
482 |
|
---|
483 | typedef enum tagDVASPECT2
|
---|
484 | {
|
---|
485 | DVASPECT_OPAQUE = 16,
|
---|
486 | DVASPECT_TRANSPARENT = 32
|
---|
487 | } DVASPECT2;
|
---|
488 |
|
---|
489 | typedef struct tagExtentInfo
|
---|
490 | {
|
---|
491 | ULONG cb;
|
---|
492 | DWORD dwExtentMode;
|
---|
493 | SIZEL sizelProposed;
|
---|
494 | } DVEXTENTINFO;
|
---|
495 |
|
---|
496 | typedef enum tagAspectInfoFlag
|
---|
497 | {
|
---|
498 | DVASPECTINFOFLAG_CANOPTIMIZE = 1
|
---|
499 | } DVASPECTINFOFLAG;
|
---|
500 |
|
---|
501 | typedef struct tagAspectInfo
|
---|
502 | {
|
---|
503 | ULONG cb;
|
---|
504 | DWORD dwFlags;
|
---|
505 | } DVASPECTINFO;
|
---|
506 |
|
---|
507 | HRESULT GetRect(
|
---|
508 | [in] DWORD dwAspect,
|
---|
509 | [out] LPRECTL pRect);
|
---|
510 |
|
---|
511 | HRESULT GetViewStatus( [out] DWORD *pdwStatus );
|
---|
512 |
|
---|
513 | HRESULT QueryHitPoint(
|
---|
514 | [in] DWORD dwAspect,
|
---|
515 | [in] LPCRECT pRectBounds,
|
---|
516 | [in] POINT ptlLoc,
|
---|
517 | [in] LONG lCloseHint,
|
---|
518 | [out] DWORD *pHitResult);
|
---|
519 |
|
---|
520 | HRESULT QueryHitRect(
|
---|
521 | [in] DWORD dwAspect,
|
---|
522 | [in] LPCRECT pRectBounds,
|
---|
523 | [in] LPCRECT pRectLoc,
|
---|
524 | [in] LONG lCloseHint,
|
---|
525 | [out] DWORD *pHitResult);
|
---|
526 |
|
---|
527 | HRESULT GetNaturalExtent (
|
---|
528 | [in] DWORD dwAspect,
|
---|
529 | [in] LONG lindex,
|
---|
530 | [in] DVTARGETDEVICE *ptd,
|
---|
531 | [in] HDC hicTargetDev,
|
---|
532 | [in] DVEXTENTINFO *pExtentInfo,
|
---|
533 | [out] LPSIZEL pSizel);
|
---|
534 | }
|
---|
535 |
|
---|
536 |
|
---|
537 | /*****************************************************************************
|
---|
538 | * IProvideClassInfo interface
|
---|
539 | */
|
---|
540 | [
|
---|
541 | object,
|
---|
542 | uuid(b196b283-bab4-101a-b69c-00aa00341d07),
|
---|
543 | pointer_default(unique)
|
---|
544 | ]
|
---|
545 | interface IProvideClassInfo : IUnknown
|
---|
546 | {
|
---|
547 | typedef IProvideClassInfo *LPPROVIDECLASSINFO;
|
---|
548 |
|
---|
549 | cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
|
---|
550 | cpp_quote("#undef GetClassInfo")
|
---|
551 | cpp_quote("#endif")
|
---|
552 |
|
---|
553 | HRESULT GetClassInfo( [out] ITypeInfo ** ppTI );
|
---|
554 | }
|
---|
555 |
|
---|
556 |
|
---|
557 | /*****************************************************************************
|
---|
558 | * IProvideClassInfo2 interface
|
---|
559 | */
|
---|
560 | [
|
---|
561 | object,
|
---|
562 | uuid(a6bc3ac0-dbaa-11ce-9de3-00aa004bb851),
|
---|
563 | pointer_default(unique)
|
---|
564 | ]
|
---|
565 | interface IProvideClassInfo2 : IProvideClassInfo
|
---|
566 | {
|
---|
567 | typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2;
|
---|
568 |
|
---|
569 | typedef enum tagGUIDKIND
|
---|
570 | {
|
---|
571 | GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1
|
---|
572 | } GUIDKIND;
|
---|
573 |
|
---|
574 | HRESULT GetGUID(
|
---|
575 | [in] DWORD dwGuidKind,
|
---|
576 | [out] GUID *pGUID );
|
---|
577 | }
|
---|
578 |
|
---|
579 |
|
---|
580 | [
|
---|
581 | object,
|
---|
582 | uuid(a7aba9c1-8983-11cf-8f20-00805f2cd064),
|
---|
583 | pointer_default(unique)
|
---|
584 | ]
|
---|
585 | interface IProvideMultipleClassInfo : IProvideClassInfo2
|
---|
586 | {
|
---|
587 | cpp_quote("#define MULTICLASSINFO_GETTYPEINFO 0x00000001")
|
---|
588 | cpp_quote("#define MULTICLASSINFO_GETNUMRESERVEDDISPIDS 0x00000002")
|
---|
589 | cpp_quote("#define MULTICLASSINFO_GETIIDPRIMARY 0x00000004")
|
---|
590 | cpp_quote("#define MULTICLASSINFO_GETIIDSOURCE 0x00000008")
|
---|
591 |
|
---|
592 | cpp_quote("#define TIFLAGS_EXTENDDISPATCHONLY 0x00000001")
|
---|
593 |
|
---|
594 | typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO;
|
---|
595 |
|
---|
596 | HRESULT GetMultiTypeInfoCount(
|
---|
597 | [out] ULONG *pcti);
|
---|
598 |
|
---|
599 | HRESULT GetInfoOfIndex(
|
---|
600 | [in] ULONG iti,
|
---|
601 | [in] DWORD dwFlags,
|
---|
602 | [out] ITypeInfo **pptiCoClass,
|
---|
603 | [out] DWORD *pdwTIFlags,
|
---|
604 | [out] ULONG *pcdispidReserved,
|
---|
605 | [out] IID *piidPrimary,
|
---|
606 | [out] IID *piidSource);
|
---|
607 | }
|
---|
608 |
|
---|
609 |
|
---|
610 | /*****************************************************************************
|
---|
611 | * IConnectionPoint interface
|
---|
612 | */
|
---|
613 | interface IConnectionPointContainer; /* forward declarations */
|
---|
614 | interface IEnumConnections;
|
---|
615 |
|
---|
616 | [
|
---|
617 | object,
|
---|
618 | uuid(b196b286-bab4-101a-b69c-00aa00341d07),
|
---|
619 | pointer_default(unique)
|
---|
620 | ]
|
---|
621 | interface IConnectionPoint : IUnknown
|
---|
622 | {
|
---|
623 | typedef IConnectionPoint *PCONNECTIONPOINT, *LPCONNECTIONPOINT;
|
---|
624 |
|
---|
625 | HRESULT GetConnectionInterface( [out] IID *pIID );
|
---|
626 | HRESULT GetConnectionPointContainer( [out] IConnectionPointContainer **ppCPC );
|
---|
627 | HRESULT Advise( [in] IUnknown *pUnkSink, [out] DWORD *pdwCookie );
|
---|
628 | HRESULT Unadvise( [in] DWORD dwCookie );
|
---|
629 | HRESULT EnumConnections( [out] IEnumConnections **ppEnum );
|
---|
630 | }
|
---|
631 |
|
---|
632 |
|
---|
633 | /*****************************************************************************
|
---|
634 | * IConnectionPointContainer interface
|
---|
635 | */
|
---|
636 | interface IEnumConnectionPoints; /* forward declaration */
|
---|
637 | [
|
---|
638 | object,
|
---|
639 | uuid(b196b284-bab4-101a-b69c-00aa00341d07),
|
---|
640 | pointer_default(unique)
|
---|
641 | ]
|
---|
642 | interface IConnectionPointContainer : IUnknown
|
---|
643 | {
|
---|
644 | typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER, *LPCONNECTIONPOINTCONTAINER;
|
---|
645 |
|
---|
646 | HRESULT EnumConnectionPoints( [out] IEnumConnectionPoints **ppEnum );
|
---|
647 | HRESULT FindConnectionPoint( [in] REFIID riid, [out] IConnectionPoint **ppCP );
|
---|
648 | }
|
---|
649 |
|
---|
650 |
|
---|
651 | /*****************************************************************************
|
---|
652 | * IEnumConnections interface
|
---|
653 | */
|
---|
654 | [
|
---|
655 | object,
|
---|
656 | uuid(b196b287-bab4-101a-b69c-00aa00341d07),
|
---|
657 | pointer_default(unique)
|
---|
658 | ]
|
---|
659 | interface IEnumConnections : IUnknown
|
---|
660 | {
|
---|
661 | typedef IEnumConnections *PENUMCONNECTIONS, *LPENUMCONNECTIONS;
|
---|
662 |
|
---|
663 | typedef struct tagCONNECTDATA
|
---|
664 | {
|
---|
665 | IUnknown *pUnk;
|
---|
666 | DWORD dwCookie;
|
---|
667 | } CONNECTDATA, *PCONNECTDATA, *LPCONNECTDATA;
|
---|
668 |
|
---|
669 | [local]
|
---|
670 | HRESULT Next(
|
---|
671 | [in] ULONG cConnections,
|
---|
672 | [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTDATA rgcd,
|
---|
673 | [out] ULONG *pcFetched);
|
---|
674 |
|
---|
675 | [call_as(Next)]
|
---|
676 | HRESULT RemoteNext(
|
---|
677 | [in] ULONG cConnections,
|
---|
678 | [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTDATA rgcd,
|
---|
679 | [out] ULONG *pcFetched);
|
---|
680 |
|
---|
681 | HRESULT Skip( [in] ULONG cConnections );
|
---|
682 |
|
---|
683 | HRESULT Reset();
|
---|
684 |
|
---|
685 | HRESULT Clone( [out] IEnumConnections **ppEnum );
|
---|
686 | }
|
---|
687 |
|
---|
688 |
|
---|
689 | /*****************************************************************************
|
---|
690 | * IEnumConnectionPoints interface
|
---|
691 | */
|
---|
692 | [
|
---|
693 | object,
|
---|
694 | uuid(b196b285-bab4-101a-b69c-00aa00341d07),
|
---|
695 | pointer_default(unique)
|
---|
696 | ]
|
---|
697 | interface IEnumConnectionPoints : IUnknown
|
---|
698 | {
|
---|
699 | typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS, *LPENUMCONNECTIONPOINTS;
|
---|
700 |
|
---|
701 | [local]
|
---|
702 | HRESULT Next(
|
---|
703 | [in] ULONG cConnections,
|
---|
704 | [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTIONPOINT *ppCP,
|
---|
705 | [out] ULONG *pcFetched);
|
---|
706 |
|
---|
707 | [call_as(Next)]
|
---|
708 | HRESULT RemoteNext(
|
---|
709 | [in] ULONG cConnections,
|
---|
710 | [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTIONPOINT *ppCP,
|
---|
711 | [out] ULONG *pcFetched);
|
---|
712 |
|
---|
713 | HRESULT Skip( [in] ULONG cConnections );
|
---|
714 |
|
---|
715 | HRESULT Reset();
|
---|
716 |
|
---|
717 | HRESULT Clone( [out] IEnumConnectionPoints **ppEnum );
|
---|
718 | }
|
---|
719 |
|
---|
720 |
|
---|
721 | /*****************************************************************************
|
---|
722 | * IPropertyPage interface
|
---|
723 | */
|
---|
724 | interface IPropertyPageSite; /* forward declaration */
|
---|
725 | [
|
---|
726 | object,
|
---|
727 | uuid(b196b28d-bab4-101a-b69c-00aa00341d07),
|
---|
728 | pointer_default(unique)
|
---|
729 | ]
|
---|
730 | interface IPropertyPage : IUnknown
|
---|
731 | {
|
---|
732 | typedef IPropertyPage *LPPROPERTYPAGE;
|
---|
733 |
|
---|
734 | typedef struct tagPROPPAGEINFO
|
---|
735 | {
|
---|
736 | ULONG cb;
|
---|
737 | LPOLESTR pszTitle;
|
---|
738 | SIZE size;
|
---|
739 | LPOLESTR pszDocString;
|
---|
740 | LPOLESTR pszHelpFile;
|
---|
741 | DWORD dwHelpContext;
|
---|
742 | } PROPPAGEINFO, *LPPROPPAGEINFO;
|
---|
743 |
|
---|
744 | HRESULT SetPageSite( [in] IPropertyPageSite *pPageSite );
|
---|
745 |
|
---|
746 | HRESULT Activate(
|
---|
747 | [in] HWND hWndParent,
|
---|
748 | [in] LPCRECT pRect,
|
---|
749 | [in] BOOL bModal);
|
---|
750 |
|
---|
751 | HRESULT Deactivate();
|
---|
752 |
|
---|
753 | HRESULT GetPageInfo( [out] PROPPAGEINFO *pPageInfo );
|
---|
754 |
|
---|
755 | HRESULT SetObjects(
|
---|
756 | [in] ULONG cObjects,
|
---|
757 | [in, size_is(cObjects)] IUnknown **ppUnk);
|
---|
758 |
|
---|
759 | HRESULT Show( [in] UINT nCmdShow );
|
---|
760 |
|
---|
761 | HRESULT Move( [in] LPCRECT pRect );
|
---|
762 |
|
---|
763 | HRESULT IsPageDirty();
|
---|
764 |
|
---|
765 | HRESULT Apply();
|
---|
766 |
|
---|
767 | HRESULT Help( [in] LPCOLESTR pszHelpDir );
|
---|
768 |
|
---|
769 | HRESULT TranslateAccelerator( [in] MSG *pMsg );
|
---|
770 | }
|
---|
771 |
|
---|
772 |
|
---|
773 | /*****************************************************************************
|
---|
774 | * IPropertyPage2 interface
|
---|
775 | */
|
---|
776 | [
|
---|
777 | object,
|
---|
778 | uuid(01e44665-24ac-101b-84ed-08002b2ec713),
|
---|
779 | pointer_default(unique)
|
---|
780 | ]
|
---|
781 | interface IPropertyPage2 : IPropertyPage
|
---|
782 | {
|
---|
783 | typedef IPropertyPage2 *LPPROPERTYPAGE2;
|
---|
784 |
|
---|
785 | HRESULT EditProperty( [in] DISPID dispID );
|
---|
786 | }
|
---|
787 |
|
---|
788 |
|
---|
789 | /*****************************************************************************
|
---|
790 | * IPropertyPageSite interface
|
---|
791 | */
|
---|
792 | [
|
---|
793 | object,
|
---|
794 | uuid(b196b28c-bab4-101a-b69c-00aa00341d07),
|
---|
795 | pointer_default(unique)
|
---|
796 | ]
|
---|
797 | interface IPropertyPageSite : IUnknown
|
---|
798 | {
|
---|
799 | typedef IPropertyPageSite *LPPROPERTYPAGESITE;
|
---|
800 |
|
---|
801 | typedef enum tagPROPPAGESTATUS
|
---|
802 | {
|
---|
803 | PROPPAGESTATUS_DIRTY = 0x1,
|
---|
804 | PROPPAGESTATUS_VALIDATE = 0x2,
|
---|
805 | PROPPAGESTATUS_CLEAN = 0x4
|
---|
806 | } PROPPAGESTATUS;
|
---|
807 |
|
---|
808 | HRESULT OnStatusChange( [in] DWORD dwFlags );
|
---|
809 | HRESULT GetLocaleID( [out] LCID *pLocaleID );
|
---|
810 | HRESULT GetPageContainer( [out] IUnknown **ppUnk );
|
---|
811 | HRESULT TranslateAccelerator( [in] MSG *pMsg );
|
---|
812 | }
|
---|
813 |
|
---|
814 |
|
---|
815 | /*****************************************************************************
|
---|
816 | * IPropertyNotifySink interface
|
---|
817 | */
|
---|
818 | [
|
---|
819 | object,
|
---|
820 | uuid(9bfbbc02-eff1-101a-84ed-00aa00341d07),
|
---|
821 | pointer_default(unique)
|
---|
822 | ]
|
---|
823 | interface IPropertyNotifySink : IUnknown
|
---|
824 | {
|
---|
825 | typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK;
|
---|
826 |
|
---|
827 | HRESULT OnChanged( [in] DISPID dispID );
|
---|
828 | HRESULT OnRequestEdit( [in] DISPID dispID );
|
---|
829 | }
|
---|
830 |
|
---|
831 |
|
---|
832 | /*****************************************************************************
|
---|
833 | * ISimpleFrameSite interface
|
---|
834 | */
|
---|
835 | [
|
---|
836 | object,
|
---|
837 | uuid(742b0e01-14e6-101b-914e-00aa00300cab),
|
---|
838 | pointer_default(unique)
|
---|
839 | ]
|
---|
840 | interface ISimpleFrameSite : IUnknown
|
---|
841 | {
|
---|
842 | typedef ISimpleFrameSite *LPSIMPLEFRAMESITE;
|
---|
843 |
|
---|
844 | HRESULT PreMessageFilter(
|
---|
845 | [in] HWND hWnd,
|
---|
846 | [in] UINT msg,
|
---|
847 | [in] WPARAM wp,
|
---|
848 | [in] LPARAM lp,
|
---|
849 | [out] LRESULT *plResult,
|
---|
850 | [out] DWORD *pdwCookie);
|
---|
851 |
|
---|
852 | HRESULT PostMessageFilter(
|
---|
853 | [in] HWND hWnd,
|
---|
854 | [in] UINT msg,
|
---|
855 | [in] WPARAM wp,
|
---|
856 | [in] LPARAM lp,
|
---|
857 | [out] LRESULT *plResult,
|
---|
858 | [in] DWORD dwCookie);
|
---|
859 | }
|
---|
860 |
|
---|
861 |
|
---|
862 | /*****************************************************************************
|
---|
863 | * IPersistStreamInit interface
|
---|
864 | */
|
---|
865 | [
|
---|
866 | object,
|
---|
867 | uuid(7fd52380-4e07-101b-ae2d-08002b2ec713),
|
---|
868 | pointer_default(unique)
|
---|
869 | ]
|
---|
870 | interface IPersistStreamInit : IPersist
|
---|
871 | {
|
---|
872 | typedef IPersistStreamInit *LPPERSISTSTREAMINIT;
|
---|
873 |
|
---|
874 | HRESULT IsDirty();
|
---|
875 | HRESULT Load( [in] LPSTREAM pStm );
|
---|
876 | HRESULT Save( [in] LPSTREAM pStm, [in] BOOL fClearDirty );
|
---|
877 | HRESULT GetSizeMax( [out] ULARGE_INTEGER *pcbSize );
|
---|
878 | HRESULT InitNew();
|
---|
879 | }
|
---|
880 |
|
---|
881 |
|
---|
882 | /*****************************************************************************
|
---|
883 | * IPersistMemory interface
|
---|
884 | */
|
---|
885 | [
|
---|
886 | object,
|
---|
887 | uuid(bd1ae5e0-a6ae-11ce-bd37-504200c10000),
|
---|
888 | pointer_default(unique)
|
---|
889 | ]
|
---|
890 | interface IPersistMemory : IPersist
|
---|
891 | {
|
---|
892 | typedef IPersistMemory *LPPERSISTMEMORY;
|
---|
893 |
|
---|
894 | HRESULT IsDirty();
|
---|
895 |
|
---|
896 | [local]
|
---|
897 | HRESULT Load(
|
---|
898 | [in, size_is(cbSize)] LPVOID pMem,
|
---|
899 | [in] ULONG cbSize);
|
---|
900 |
|
---|
901 | [call_as(Load)]
|
---|
902 | HRESULT RemoteLoad(
|
---|
903 | [in, size_is(cbSize)] BYTE *pMem,
|
---|
904 | [in] ULONG cbSize);
|
---|
905 |
|
---|
906 | [local]
|
---|
907 | HRESULT Save(
|
---|
908 | [out, size_is(cbSize)] LPVOID pMem,
|
---|
909 | [in] BOOL fClearDirty,
|
---|
910 | [in] ULONG cbSize);
|
---|
911 |
|
---|
912 | [call_as(Save)]
|
---|
913 | HRESULT RemoteSave(
|
---|
914 | [out, size_is(cbSize)] BYTE *pMem,
|
---|
915 | [in] BOOL fClearDirty,
|
---|
916 | [in] ULONG cbSize);
|
---|
917 |
|
---|
918 | HRESULT GetSizeMax( [out] ULONG *pCbSize );
|
---|
919 | HRESULT InitNew();
|
---|
920 | }
|
---|
921 |
|
---|
922 |
|
---|
923 | /*****************************************************************************
|
---|
924 | * IPersistPropertyBag interface
|
---|
925 | */
|
---|
926 | [
|
---|
927 | object,
|
---|
928 | uuid(37d84f60-42cb-11ce-8135-00aa004bb851),
|
---|
929 | pointer_default(unique)
|
---|
930 | ]
|
---|
931 | interface IPersistPropertyBag : IPersist
|
---|
932 | {
|
---|
933 | typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG;
|
---|
934 |
|
---|
935 | HRESULT InitNew();
|
---|
936 |
|
---|
937 | HRESULT Load(
|
---|
938 | [in] IPropertyBag *pPropBag,
|
---|
939 | [in] IErrorLog *pErrorLog);
|
---|
940 |
|
---|
941 | HRESULT Save(
|
---|
942 | [in] IPropertyBag *pPropBag,
|
---|
943 | [in] BOOL fClearDirty,
|
---|
944 | [in] BOOL fSaveAllProperties);
|
---|
945 | }
|
---|
946 |
|
---|
947 |
|
---|
948 | /*****************************************************************************
|
---|
949 | * IPropertyBag2 interface
|
---|
950 | */
|
---|
951 | [
|
---|
952 | object,
|
---|
953 | uuid(22f55882-280b-11d0-a8a9-00a0c90c2004),
|
---|
954 | pointer_default(unique)
|
---|
955 | ]
|
---|
956 | interface IPropertyBag2 : IUnknown
|
---|
957 | {
|
---|
958 | typedef IPropertyBag2 *LPPROPERTYBAG2;
|
---|
959 |
|
---|
960 | typedef enum tagPROPBAG2_TYPE
|
---|
961 | {
|
---|
962 | PROPBAG2_TYPE_UNDEFINED = 0,
|
---|
963 | PROPBAG2_TYPE_DATA = 1,
|
---|
964 | PROPBAG2_TYPE_URL = 2,
|
---|
965 | PROPBAG2_TYPE_OBJECT = 3,
|
---|
966 | PROPBAG2_TYPE_STREAM = 4,
|
---|
967 | PROPBAG2_TYPE_STORAGE = 5,
|
---|
968 | PROPBAG2_TYPE_MONIKER = 6
|
---|
969 | } PROPBAG2_TYPE;
|
---|
970 |
|
---|
971 | typedef struct tagPROPBAG2
|
---|
972 | {
|
---|
973 | DWORD dwType;
|
---|
974 | VARTYPE vt;
|
---|
975 | CLIPFORMAT cfType;
|
---|
976 | DWORD dwHint;
|
---|
977 | LPOLESTR pstrName;
|
---|
978 | CLSID clsid;
|
---|
979 | } PROPBAG2;
|
---|
980 |
|
---|
981 | HRESULT Read(
|
---|
982 | [in] ULONG cProperties,
|
---|
983 | [in] PROPBAG2 *pPropBag,
|
---|
984 | [in] IErrorLog *pErrLog,
|
---|
985 | [out] VARIANT *pvarValue,
|
---|
986 | [out] HRESULT *phrError);
|
---|
987 |
|
---|
988 | HRESULT Write(
|
---|
989 | [in] ULONG cProperties,
|
---|
990 | [in] PROPBAG2 *pPropBag,
|
---|
991 | [in] VARIANT *pvarValue);
|
---|
992 |
|
---|
993 | HRESULT CountProperties(
|
---|
994 | [out] ULONG *pcProperties );
|
---|
995 |
|
---|
996 | HRESULT GetPropertyInfo(
|
---|
997 | [in] ULONG iProperty,
|
---|
998 | [in] ULONG cProperties,
|
---|
999 | [out] PROPBAG2 *pPropBag,
|
---|
1000 | [out] ULONG *pcProperties);
|
---|
1001 |
|
---|
1002 | HRESULT LoadObject(
|
---|
1003 | [in] LPCOLESTR pstrName,
|
---|
1004 | [in] DWORD dwHint,
|
---|
1005 | [in] IUnknown *pUnkObject,
|
---|
1006 | [in] IErrorLog *pErrLog);
|
---|
1007 | }
|
---|
1008 |
|
---|
1009 |
|
---|
1010 | /*****************************************************************************
|
---|
1011 | * IPersistPropertyBag2 interface
|
---|
1012 | */
|
---|
1013 | [
|
---|
1014 | object,
|
---|
1015 | uuid(22f55881-280b-11d0-a8a9-00a0c90c2004),
|
---|
1016 | pointer_default(unique)
|
---|
1017 | ]
|
---|
1018 | interface IPersistPropertyBag2 : IPersist
|
---|
1019 | {
|
---|
1020 | typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2;
|
---|
1021 |
|
---|
1022 | HRESULT InitNew();
|
---|
1023 |
|
---|
1024 | HRESULT Load(
|
---|
1025 | [in] IPropertyBag2 *pPropBag,
|
---|
1026 | [in] IErrorLog *pErrorLog);
|
---|
1027 |
|
---|
1028 | HRESULT Save(
|
---|
1029 | [in] IPropertyBag2 *pPropBag,
|
---|
1030 | [in] BOOL fClearDirty,
|
---|
1031 | [in] BOOL fSaveAllProperties);
|
---|
1032 |
|
---|
1033 | HRESULT IsDirty();
|
---|
1034 | }
|
---|
1035 |
|
---|
1036 |
|
---|
1037 | /*****************************************************************************
|
---|
1038 | * ISpecifyPropertyPages interface
|
---|
1039 | */
|
---|
1040 | [
|
---|
1041 | object,
|
---|
1042 | uuid(b196b28b-bab4-101a-b69c-00aa00341d07),
|
---|
1043 | pointer_default(unique)
|
---|
1044 | ]
|
---|
1045 | interface ISpecifyPropertyPages : IUnknown
|
---|
1046 | {
|
---|
1047 | typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES;
|
---|
1048 |
|
---|
1049 | typedef struct tagCAUUID
|
---|
1050 | {
|
---|
1051 | ULONG cElems;
|
---|
1052 | [size_is(cElems)] GUID *pElems;
|
---|
1053 | } CAUUID, *LPCAUUID;
|
---|
1054 |
|
---|
1055 | HRESULT GetPages( [out] CAUUID *pPages );
|
---|
1056 | }
|
---|
1057 |
|
---|
1058 |
|
---|
1059 | /*****************************************************************************
|
---|
1060 | * IPerPropertyBrowsing interface
|
---|
1061 | */
|
---|
1062 | [
|
---|
1063 | object,
|
---|
1064 | uuid(376bd3aa-3845-101b-84ed-08002b2ec713),
|
---|
1065 | pointer_default(unique)
|
---|
1066 | ]
|
---|
1067 | interface IPerPropertyBrowsing : IUnknown
|
---|
1068 | {
|
---|
1069 | typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING;
|
---|
1070 |
|
---|
1071 | typedef struct tagCALPOLESTR
|
---|
1072 | {
|
---|
1073 | ULONG cElems;
|
---|
1074 | [size_is(cElems)] LPOLESTR *pElems;
|
---|
1075 | } CALPOLESTR, *LPCALPOLESTR;
|
---|
1076 |
|
---|
1077 | typedef struct tagCADWORD
|
---|
1078 | {
|
---|
1079 | ULONG cElems;
|
---|
1080 | [size_is(cElems)] DWORD *pElems;
|
---|
1081 | } CADWORD, *LPCADWORD;
|
---|
1082 |
|
---|
1083 | HRESULT GetDisplayString(
|
---|
1084 | [in] DISPID dispID,
|
---|
1085 | [out] BSTR *pBstr);
|
---|
1086 |
|
---|
1087 | HRESULT MapPropertyToPage(
|
---|
1088 | [in] DISPID dispID,
|
---|
1089 | [out] CLSID *pClsid);
|
---|
1090 |
|
---|
1091 | HRESULT GetPredefinedStrings(
|
---|
1092 | [in] DISPID dispID,
|
---|
1093 | [out] CALPOLESTR *pCaStringsOut,
|
---|
1094 | [out] CADWORD *pCaCookiesOut);
|
---|
1095 |
|
---|
1096 | HRESULT GetPredefinedValue(
|
---|
1097 | [in] DISPID dispID,
|
---|
1098 | [in] DWORD dwCookie,
|
---|
1099 | [out] VARIANT *pVarOut);
|
---|
1100 | }
|
---|
1101 |
|
---|
1102 |
|
---|
1103 | /*****************************************************************************
|
---|
1104 | * IAdviseSinkEx interface
|
---|
1105 | */
|
---|
1106 | [
|
---|
1107 | object,
|
---|
1108 | uuid(3af24290-0c96-11ce-a0cf-00aa00600ab8),
|
---|
1109 | pointer_default(unique)
|
---|
1110 | ]
|
---|
1111 | interface IAdviseSinkEx : IAdviseSink
|
---|
1112 | {
|
---|
1113 | typedef IAdviseSinkEx *LPADVISESINKEX;
|
---|
1114 |
|
---|
1115 | [local]
|
---|
1116 | void OnViewStatusChange( [in] DWORD dwViewStatus );
|
---|
1117 |
|
---|
1118 | [call_as(OnViewStatusChange)]
|
---|
1119 | HRESULT RemoteOnViewStatusChange( [in] DWORD dwViewStatus );
|
---|
1120 | }
|
---|
1121 |
|
---|
1122 |
|
---|
1123 | /*****************************************************************************
|
---|
1124 | * IPointerInactive interface
|
---|
1125 | */
|
---|
1126 | [
|
---|
1127 | object,
|
---|
1128 | uuid(55980ba0-35aa-11cf-b671-00aa004cd6d8),
|
---|
1129 | pointer_default(unique)
|
---|
1130 | ]
|
---|
1131 | interface IPointerInactive : IUnknown
|
---|
1132 | {
|
---|
1133 | typedef IPointerInactive *LPPOINTERINACTIVE;
|
---|
1134 |
|
---|
1135 | HRESULT GetActivationPolicy(
|
---|
1136 | [out] DWORD *pdwPolicy);
|
---|
1137 |
|
---|
1138 | HRESULT OnInactiveMouseMove(
|
---|
1139 | [in] LPCRECT pRectBounds,
|
---|
1140 | [in] LONG x,
|
---|
1141 | [in] LONG y,
|
---|
1142 | [in] DWORD grfKeyState);
|
---|
1143 |
|
---|
1144 | HRESULT OnInactiveSetCursor(
|
---|
1145 | [in] LPCRECT pRectBounds,
|
---|
1146 | [in] LONG x,
|
---|
1147 | [in] LONG y,
|
---|
1148 | [in] DWORD dwMouseMsg,
|
---|
1149 | [in] BOOL fSetAlways);
|
---|
1150 | }
|
---|
1151 |
|
---|
1152 |
|
---|
1153 | /*****************************************************************************
|
---|
1154 | * IObjectWithSite interface
|
---|
1155 | */
|
---|
1156 | [
|
---|
1157 | object,
|
---|
1158 | uuid(fc4801a3-2ba9-11cf-a229-00aa003d7352),
|
---|
1159 | pointer_default(unique)
|
---|
1160 | ]
|
---|
1161 | interface IObjectWithSite : IUnknown
|
---|
1162 | {
|
---|
1163 | typedef IObjectWithSite *LPOBJECTWITHSITE;
|
---|
1164 |
|
---|
1165 | HRESULT SetSite(
|
---|
1166 | [in] IUnknown * pUnkSite);
|
---|
1167 |
|
---|
1168 | HRESULT GetSite(
|
---|
1169 | [in] REFIID riid,
|
---|
1170 | [out, iid_is(riid)] PVOID *ppvSite);
|
---|
1171 | }
|
---|
1172 |
|
---|
1173 |
|
---|
1174 | /*****************************************************************************
|
---|
1175 | * IOleUndoUnit interface
|
---|
1176 | */
|
---|
1177 | interface IOleUndoManager; /* forward declaration */
|
---|
1178 | [
|
---|
1179 | object,
|
---|
1180 | uuid(894ad3b0-ef97-11ce-9bc9-00aa00608e01),
|
---|
1181 | pointer_default(unique)
|
---|
1182 | ]
|
---|
1183 | interface IOleUndoUnit : IUnknown
|
---|
1184 | {
|
---|
1185 | typedef IOleUndoUnit *LPOLEUNDOUNIT;
|
---|
1186 |
|
---|
1187 | HRESULT Do( [in] IOleUndoManager *pUndoManager );
|
---|
1188 | HRESULT GetDescription( [out] BSTR *pBstr );
|
---|
1189 | HRESULT GetUnitType( [out] CLSID *pClsid, [out] LONG *plID );
|
---|
1190 | HRESULT OnNextAdd();
|
---|
1191 | }
|
---|
1192 |
|
---|
1193 |
|
---|
1194 | /*****************************************************************************
|
---|
1195 | * IOleParentUndoUnit interface
|
---|
1196 | */
|
---|
1197 | [
|
---|
1198 | object,
|
---|
1199 | uuid(a1faf330-ef97-11ce-9bc9-00aa00608e01),
|
---|
1200 | pointer_default(unique)
|
---|
1201 | ]
|
---|
1202 | interface IOleParentUndoUnit : IOleUndoUnit
|
---|
1203 | {
|
---|
1204 | typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT;
|
---|
1205 |
|
---|
1206 | HRESULT Open( [in] IOleParentUndoUnit *pPUU );
|
---|
1207 | HRESULT Close( [in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit );
|
---|
1208 | HRESULT Add( [in] IOleUndoUnit *pUU );
|
---|
1209 | HRESULT FindUnit( [in] IOleUndoUnit *pUU );
|
---|
1210 | HRESULT GetParentState( [out] DWORD *pdwState );
|
---|
1211 | }
|
---|
1212 |
|
---|
1213 |
|
---|
1214 | /*****************************************************************************
|
---|
1215 | * IEnumOleUndoUnits interface
|
---|
1216 | */
|
---|
1217 | [
|
---|
1218 | object,
|
---|
1219 | uuid(b3e7c340-ef97-11ce-9bc9-00aa00608e01),
|
---|
1220 | pointer_default(unique)
|
---|
1221 | ]
|
---|
1222 | interface IEnumOleUndoUnits : IUnknown
|
---|
1223 | {
|
---|
1224 | typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
|
---|
1225 |
|
---|
1226 | [local]
|
---|
1227 | HRESULT Next(
|
---|
1228 | [in] ULONG cElt,
|
---|
1229 | [out, size_is(cElt), length_is(*pcEltFetched)] IOleUndoUnit **rgElt,
|
---|
1230 | [out] ULONG *pcEltFetched);
|
---|
1231 |
|
---|
1232 | [call_as(Next)]
|
---|
1233 | HRESULT RemoteNext(
|
---|
1234 | [in] ULONG cElt,
|
---|
1235 | [out, size_is(cElt), length_is(*pcEltFetched)] IOleUndoUnit **rgElt,
|
---|
1236 | [out] ULONG *pcEltFetched);
|
---|
1237 |
|
---|
1238 | HRESULT Skip( [in] ULONG cElt );
|
---|
1239 |
|
---|
1240 | HRESULT Reset();
|
---|
1241 |
|
---|
1242 | HRESULT Clone( [out] IEnumOleUndoUnits **ppEnum );
|
---|
1243 | }
|
---|
1244 |
|
---|
1245 |
|
---|
1246 | /*****************************************************************************
|
---|
1247 | * IOleUndoManager interface
|
---|
1248 | */
|
---|
1249 | [
|
---|
1250 | object,
|
---|
1251 | uuid(d001f200-ef97-11ce-9bc9-00aa00608e01),
|
---|
1252 | pointer_default(unique)
|
---|
1253 | ]
|
---|
1254 | interface IOleUndoManager : IUnknown
|
---|
1255 | {
|
---|
1256 | cpp_quote("#define SID_SOleUndoManager IID_IOleUndoManager")
|
---|
1257 | typedef IOleUndoManager *LPOLEUNDOMANAGER;
|
---|
1258 |
|
---|
1259 | HRESULT Open( [in] IOleParentUndoUnit *pPUU );
|
---|
1260 | HRESULT Close( [in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit );
|
---|
1261 | HRESULT Add( [in] IOleUndoUnit *pUU );
|
---|
1262 | HRESULT GetOpenParentState( [out] DWORD *pdwState );
|
---|
1263 | HRESULT DiscardFrom( [in] IOleUndoUnit *pUU );
|
---|
1264 | HRESULT UndoTo( [in] IOleUndoUnit *pUU );
|
---|
1265 | HRESULT RedoTo( [in] IOleUndoUnit *pUU );
|
---|
1266 | HRESULT EnumUndoable( [out] IEnumOleUndoUnits **ppEnum );
|
---|
1267 | HRESULT EnumRedoable( [out] IEnumOleUndoUnits **ppEnum );
|
---|
1268 | HRESULT GetLastUndoDescription( [out] BSTR *pBstr );
|
---|
1269 | HRESULT GetLastRedoDescription( [out] BSTR *pBstr );
|
---|
1270 | HRESULT Enable( [in] BOOL fEnable );
|
---|
1271 | }
|
---|
1272 |
|
---|
1273 |
|
---|
1274 | /*****************************************************************************
|
---|
1275 | * IQuickActivate interface
|
---|
1276 | */
|
---|
1277 | [
|
---|
1278 | object,
|
---|
1279 | uuid(cf51ed10-62fe-11cf-bf86-00a0c9034836),
|
---|
1280 | pointer_default(unique)
|
---|
1281 | ]
|
---|
1282 | interface IQuickActivate : IUnknown
|
---|
1283 | {
|
---|
1284 | typedef IQuickActivate *LPQUICKACTIVATE;
|
---|
1285 |
|
---|
1286 | typedef enum tagQACONTAINERFLAGS
|
---|
1287 | {
|
---|
1288 | QACONTAINER_SHOWHATCHING = 0x1,
|
---|
1289 | QACONTAINER_SHOWGRABHANDLES = 0x2,
|
---|
1290 | QACONTAINER_USERMODE = 0x4,
|
---|
1291 | QACONTAINER_DISPLAYASDEFAULT = 0x8,
|
---|
1292 | QACONTAINER_UIDEAD = 0x10,
|
---|
1293 | QACONTAINER_AUTOCLIP = 0x20,
|
---|
1294 | QACONTAINER_MESSAGEREFLECT = 0x40,
|
---|
1295 | QACONTAINER_SUPPORTSMNEMONICS = 0x80
|
---|
1296 | } QACONTAINERFLAGS;
|
---|
1297 |
|
---|
1298 | typedef DWORD OLE_COLOR;
|
---|
1299 |
|
---|
1300 | typedef struct tagQACONTAINER
|
---|
1301 | {
|
---|
1302 | ULONG cbSize;
|
---|
1303 | IOleClientSite *pClientSite;
|
---|
1304 | IAdviseSinkEx *pAdviseSink;
|
---|
1305 | IPropertyNotifySink *pPropertyNotifySink;
|
---|
1306 | IUnknown *pUnkEventSink;
|
---|
1307 | DWORD dwAmbientFlags;
|
---|
1308 | OLE_COLOR colorFore;
|
---|
1309 | OLE_COLOR colorBack;
|
---|
1310 | IFont *pFont;
|
---|
1311 | IOleUndoManager *pUndoMgr;
|
---|
1312 | DWORD dwAppearance;
|
---|
1313 | LONG lcid;
|
---|
1314 | HPALETTE hpal;
|
---|
1315 | IBindHost *pBindHost;
|
---|
1316 | IOleControlSite *pOleControlSite;
|
---|
1317 | IServiceProvider *pServiceProvider;
|
---|
1318 | } QACONTAINER;
|
---|
1319 |
|
---|
1320 | typedef struct tagQACONTROL
|
---|
1321 | {
|
---|
1322 | ULONG cbSize;
|
---|
1323 | DWORD dwMiscStatus;
|
---|
1324 | DWORD dwViewStatus;
|
---|
1325 | DWORD dwEventCookie;
|
---|
1326 | DWORD dwPropNotifyCookie;
|
---|
1327 | DWORD dwPointerActivationPolicy;
|
---|
1328 | } QACONTROL;
|
---|
1329 |
|
---|
1330 | [local]
|
---|
1331 | HRESULT QuickActivate(
|
---|
1332 | [in] QACONTAINER *pQaContainer,
|
---|
1333 | [in,out] QACONTROL *pQaControl);
|
---|
1334 |
|
---|
1335 | [call_as(QuickActivate)]
|
---|
1336 | HRESULT RemoteQuickActivate(
|
---|
1337 | [in] QACONTAINER *pQaContainer,
|
---|
1338 | [out] QACONTROL *pQaControl);
|
---|
1339 |
|
---|
1340 | HRESULT SetContentExtent( [in] LPSIZEL pSizel );
|
---|
1341 |
|
---|
1342 | HRESULT GetContentExtent( [out] LPSIZEL pSizel );
|
---|
1343 | }
|
---|