Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenocidl.idl
Go to the documentation of this file.
00001 /* 00002 * Copyright (C) 1999 Paul Quinn 00003 * Copyright (C) 1999 Francis Beaudet 00004 * Copyright (C) 2003 Alexandre Julliard 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00019 */ 00020 00021 #ifndef DO_NO_IMPORTS 00022 import "oleidl.idl"; 00023 import "oaidl.idl"; 00024 import "servprov.idl"; 00025 import "urlmon.idl"; 00026 #endif 00027 00028 /***************************************************************************** 00029 * IOleControlTypes interface 00030 */ 00031 [ 00032 pointer_default(unique) 00033 ] 00034 interface IOleControlTypes 00035 { 00036 typedef [v1_enum] enum tagUASFLAGS 00037 { 00038 UAS_NORMAL = 0x0, 00039 UAS_BLOCKED = 0x1, 00040 UAS_NOPARENTABLE = 0x2, 00041 UAS_MASK = 0x3 00042 } UASFLAGS; 00043 00044 typedef enum tagREADYSTATE 00045 { 00046 READYSTATE_UNINITIALIZED = 0, 00047 READYSTATE_LOADING = 1, 00048 READYSTATE_LOADED = 2, 00049 READYSTATE_INTERACTIVE = 3, 00050 READYSTATE_COMPLETE = 4 00051 } READYSTATE; 00052 00053 typedef struct tagVARIANT_BLOB 00054 { 00055 DWORD clSize; 00056 DWORD rpcReserved; 00057 [size_is(clSize-1)] ULONGLONG ahData[]; 00058 } wireVARIANT_BLOB; 00059 00060 typedef struct tagUserVARIANT 00061 { 00062 wireVARIANT_BLOB pVarBlob; 00063 } UserVARIANT; 00064 } 00065 00066 00067 /***************************************************************************** 00068 * IFont interface 00069 */ 00070 [ 00071 object, 00072 uuid(bef6e002-a874-101a-8bba-00aa00300cab), 00073 pointer_default(unique) 00074 ] 00075 interface IFont : IUnknown 00076 { 00077 typedef IFont *LPFONT; 00078 typedef TEXTMETRICW TEXTMETRICOLE, *LPTEXTMETRICOLE; 00079 00080 [propget] HRESULT Name( [out] BSTR *pname); 00081 [propput] HRESULT Name( [in] BSTR name ); 00082 [propget] HRESULT Size( [out] CY *psize ); 00083 [propput] HRESULT Size( [in] CY size ); 00084 [propget] HRESULT Bold( [out] BOOL *pbold ); 00085 [propput] HRESULT Bold( [in] BOOL bold ); 00086 [propget] HRESULT Italic( [out] BOOL *pitalic ); 00087 [propput] HRESULT Italic( [in] BOOL italic ); 00088 [propget] HRESULT Underline( [out] BOOL *punderline ); 00089 [propput] HRESULT Underline( [in] BOOL underline ); 00090 [propget] HRESULT Strikethrough( [out] BOOL *pstrikethrough ); 00091 [propput] HRESULT Strikethrough( [in] BOOL strikethrough ); 00092 [propget] HRESULT Weight( [out] SHORT *pweight ); 00093 [propput] HRESULT Weight( [in] SHORT weight ); 00094 [propget] HRESULT Charset( [out] SHORT *pcharset ); 00095 [propput] HRESULT Charset( [in] SHORT charset ); 00096 [propget] HRESULT hFont( [out] HFONT *phfont ); 00097 HRESULT Clone( [out] IFont **ppfont ); 00098 HRESULT IsEqual( [in] IFont *pFontOther ); 00099 HRESULT SetRatio( [in] LONG cyLogical, [in] LONG cyHimetric ); 00100 HRESULT QueryTextMetrics( [out] TEXTMETRICOLE * ptm ); 00101 HRESULT AddRefHfont( [in] HFONT hfont ); 00102 HRESULT ReleaseHfont( [in] HFONT hfont ); 00103 HRESULT SetHdc( [in] HDC hdc ); 00104 } 00105 00106 00107 /***************************************************************************** 00108 * IFontDisp interface 00109 */ 00110 [ 00111 object, 00112 uuid(bef6e003-a874-101a-8bba-00aa00300cab), 00113 pointer_default(unique) 00114 ] 00115 interface IFontDisp : IDispatch 00116 { 00117 typedef IFontDisp *LPFONTDISP; 00118 } 00119 00120 00121 /***************************************************************************** 00122 * IFontEventsDisp interface 00123 */ 00124 [ 00125 object, 00126 uuid(4ef6100a-af88-11d0-9846-00c04fc29993), 00127 pointer_default(unique) 00128 ] 00129 interface IFontEventsDisp : IDispatch 00130 { 00131 typedef IFontEventsDisp *LPFONTEVENTS; 00132 } 00133 00134 00135 /***************************************************************************** 00136 * IPicture interface 00137 */ 00138 [ 00139 object, 00140 uuid(7bf80980-bf32-101a-8bbb-00aa00300cab), 00141 pointer_default(unique) 00142 ] 00143 interface IPicture : IUnknown 00144 { 00145 typedef IPicture *LPPICTURE; 00146 00147 typedef enum tagPicture 00148 { 00149 PICTURE_SCALABLE = 0x1, 00150 PICTURE_TRANSPARENT = 0x2 00151 } PICTUREATTRIBUTES; 00152 00153 typedef UINT OLE_HANDLE; 00154 typedef LONG OLE_XPOS_HIMETRIC; 00155 typedef LONG OLE_YPOS_HIMETRIC; 00156 typedef LONG OLE_XSIZE_HIMETRIC; 00157 typedef LONG OLE_YSIZE_HIMETRIC; 00158 00159 [propget] HRESULT Handle( [out] OLE_HANDLE *pHandle ); 00160 [propget] HRESULT hPal( [out] OLE_HANDLE *phPal ); 00161 [propget] HRESULT Type( [out] SHORT *pType ); 00162 [propget] HRESULT Width( [out] OLE_XSIZE_HIMETRIC *pWidth ); 00163 [propget] HRESULT Height( [out] OLE_YSIZE_HIMETRIC *pHeight ); 00164 00165 HRESULT Render( 00166 [in] HDC hdc, 00167 [in] LONG x, 00168 [in] LONG y, 00169 [in] LONG cx, 00170 [in] LONG cy, 00171 [in] OLE_XPOS_HIMETRIC xSrc, 00172 [in] OLE_YPOS_HIMETRIC ySrc, 00173 [in] OLE_XSIZE_HIMETRIC cxSrc, 00174 [in] OLE_YSIZE_HIMETRIC cySrc, 00175 [in] LPCRECT pRcWBounds); 00176 00177 HRESULT set_hPal( [in] OLE_HANDLE hPal ); 00178 00179 [propget] HRESULT CurDC( [out] HDC *phDC ); 00180 00181 HRESULT SelectPicture( 00182 [in] HDC hDCIn, 00183 [out] HDC * phDCOut, 00184 [out] OLE_HANDLE * phBmpOut); 00185 00186 [propget] HRESULT KeepOriginalFormat( [out] BOOL *pKeep ); 00187 00188 [propput] HRESULT KeepOriginalFormat( [in] BOOL keep ); 00189 00190 HRESULT PictureChanged(); 00191 00192 HRESULT SaveAsFile( 00193 [in] LPSTREAM pStream, 00194 [in] BOOL fSaveMemCopy, 00195 [out] LONG *pCbSize); 00196 00197 [propget] HRESULT Attributes( [out] DWORD *pDwAttr ); 00198 } 00199 00200 00201 /***************************************************************************** 00202 * IPictureDisp interface 00203 */ 00204 [ 00205 object, 00206 uuid(7bf80981-bf32-101a-8bbb-00aa00300cab), 00207 pointer_default(unique) 00208 ] 00209 interface IPictureDisp : IDispatch 00210 { 00211 typedef IPictureDisp *LPPICTUREDISP; 00212 } 00213 00214 00215 /***************************************************************************** 00216 * IOleControl interface 00217 */ 00218 [ 00219 object, 00220 uuid(b196b288-bab4-101a-b69c-00aa00341d07), 00221 pointer_default(unique) 00222 ] 00223 00224 interface IOleControl : IUnknown 00225 { 00226 typedef IOleControl *LPOLECONTROL; 00227 00228 typedef struct tagCONTROLINFO 00229 { 00230 ULONG cb; 00231 HACCEL hAccel; 00232 USHORT cAccel; 00233 DWORD dwFlags; 00234 } CONTROLINFO, *LPCONTROLINFO; 00235 00236 typedef enum tagCTRLINFO 00237 { 00238 CTRLINFO_EATS_RETURN = 1, 00239 CTRLINFO_EATS_ESCAPE = 2 00240 } CTRLINFO; 00241 00242 HRESULT GetControlInfo( [out] CONTROLINFO *pCI ); 00243 HRESULT OnMnemonic( [in] MSG *pMsg ); 00244 HRESULT OnAmbientPropertyChange( [in] DISPID dispID ); 00245 HRESULT FreezeEvents( [in] BOOL bFreeze ); 00246 } 00247 00248 00249 /***************************************************************************** 00250 * IOleControlSite interface 00251 */ 00252 [ 00253 object, 00254 uuid(b196b289-bab4-101a-b69c-00aa00341d07), 00255 pointer_default(unique) 00256 ] 00257 interface IOleControlSite : IUnknown 00258 { 00259 typedef IOleControlSite *LPOLECONTROLSITE; 00260 00261 typedef struct tagPOINTF 00262 { 00263 FLOAT x; 00264 FLOAT y; 00265 } POINTF, *LPPOINTF; 00266 00267 typedef enum tagXFORMCOORDS 00268 { 00269 XFORMCOORDS_POSITION = 0x1, 00270 XFORMCOORDS_SIZE = 0x2, 00271 XFORMCOORDS_HIMETRICTOCONTAINER = 0x4, 00272 XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8, 00273 XFORMCOORDS_EVENTCOMPAT = 0x10 00274 } XFORMCOORDS; 00275 00276 HRESULT OnControlInfoChanged(); 00277 00278 HRESULT LockInPlaceActive( [in] BOOL fLock ); 00279 00280 HRESULT GetExtendedControl( [out] IDispatch ** ppDisp ); 00281 00282 HRESULT TransformCoords( 00283 [in, out] POINTL *pPtlHimetric, 00284 [in, out] POINTF *pPtfContainer, 00285 [in] DWORD dwFlags); 00286 00287 HRESULT TranslateAccelerator( [in] MSG *pMsg, [in] DWORD grfModifiers ); 00288 00289 HRESULT OnFocus( [in] BOOL fGotFocus ); 00290 00291 HRESULT ShowPropertyFrame(); 00292 } 00293 00294 00295 /***************************************************************************** 00296 * IOleInPlaceSiteEx interface 00297 */ 00298 [ 00299 object, 00300 uuid(9c2cad80-3424-11cf-b670-00aa004cd6d8), 00301 pointer_default(unique) 00302 ] 00303 interface IOleInPlaceSiteEx : IOleInPlaceSite 00304 { 00305 typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX; 00306 00307 typedef enum tagACTIVATEFLAGS 00308 { 00309 ACTIVATE_WINDOWLESS = 1 00310 } ACTIVATE_FLAGS; 00311 00312 HRESULT OnInPlaceActivateEx( [out] BOOL * pfNoRedraw, [in] DWORD dwFlags ); 00313 HRESULT OnInPlaceDeactivateEx( [in] BOOL fNoRedraw ); 00314 HRESULT RequestUIActivate(); 00315 } 00316 00317 00318 /***************************************************************************** 00319 * IOleInPlaceSiteWindowless interface 00320 */ 00321 [ 00322 local, 00323 object, 00324 uuid(922eada0-3424-11cf-b670-00aa004cd6d8), 00325 pointer_default(unique) 00326 ] 00327 interface IOleInPlaceSiteWindowless : IOleInPlaceSiteEx 00328 { 00329 typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS; 00330 00331 typedef enum tagOLEDCFLAGS 00332 { 00333 OLEDC_NODRAW = 0x1, 00334 OLEDC_PAINTBKGND = 0x2, 00335 OLEDC_OFFSCREEN = 0x4 00336 } OLEDCFLAGS; 00337 00338 HRESULT CanWindowlessActivate(); 00339 00340 HRESULT GetCapture(); 00341 00342 HRESULT SetCapture( [in] BOOL fCapture ); 00343 00344 HRESULT GetFocus(); 00345 00346 HRESULT SetFocus( [in] BOOL fFocus ); 00347 00348 HRESULT GetDC( 00349 [in] LPCRECT pRect, 00350 [in] DWORD grfFlags, 00351 [out] HDC *phDC); 00352 00353 HRESULT ReleaseDC( [in] HDC hDC ); 00354 00355 HRESULT InvalidateRect( 00356 [in] LPCRECT pRect, 00357 [in] BOOL fErase); 00358 00359 HRESULT InvalidateRgn( 00360 [in] HRGN hRGN, 00361 [in] BOOL fErase); 00362 00363 HRESULT ScrollRect( 00364 [in] INT dx, 00365 [in] INT dy, 00366 [in] LPCRECT pRectScroll, 00367 [in] LPCRECT pRectClip); 00368 00369 HRESULT AdjustRect( [in, out] LPRECT prc ); 00370 00371 HRESULT OnDefWindowMessage( 00372 [in] UINT msg, 00373 [in] WPARAM wParam, 00374 [in] LPARAM lParam, 00375 [out] LRESULT *plResult); 00376 } 00377 00378 00379 /***************************************************************************** 00380 * IOleInPlaceObjectWindowless interface 00381 */ 00382 [ 00383 local, 00384 object, 00385 uuid(1c2056cc-5ef4-101b-8bc8-00aa003e3b29), 00386 pointer_default(unique) 00387 ] 00388 interface IOleInPlaceObjectWindowless : IOleInPlaceObject 00389 { 00390 typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS; 00391 00392 HRESULT OnWindowMessage( 00393 [in] UINT msg, 00394 [in] WPARAM wParam, 00395 [in] LPARAM lParam, 00396 [out] LRESULT *plResult); 00397 00398 HRESULT GetDropTarget( [out] IDropTarget **ppDropTarget ); 00399 } 00400 00401 00402 /***************************************************************************** 00403 * IClassFactory2 interface 00404 */ 00405 [ 00406 object, 00407 uuid(b196b28f-bab4-101a-b69c-00aa00341d07), 00408 pointer_default(unique) 00409 ] 00410 interface IClassFactory2 : IClassFactory 00411 { 00412 typedef IClassFactory2 *LPCLASSFACTORY2; 00413 00414 typedef struct tagLICINFO 00415 { 00416 LONG cbLicInfo; 00417 BOOL fRuntimeKeyAvail; 00418 BOOL fLicVerified; 00419 } LICINFO, *LPLICINFO; 00420 00421 HRESULT GetLicInfo( [out] LICINFO *pLicInfo ); 00422 00423 HRESULT RequestLicKey( 00424 [in] DWORD dwReserved, 00425 [out] BSTR *pBstrKey); 00426 00427 [local] 00428 HRESULT CreateInstanceLic( 00429 [in] IUnknown *pUnkOuter, 00430 [in] IUnknown *pUnkReserved, 00431 [in] REFIID riid, 00432 [in] BSTR bstrKey, 00433 [out, iid_is(riid)] PVOID *ppvObj); 00434 00435 [call_as(CreateInstanceLic)] 00436 HRESULT RemoteCreateInstanceLic( 00437 [in] REFIID riid, 00438 [in] BSTR bstrKey, 00439 [out, iid_is(riid)] IUnknown **ppvObj); 00440 } 00441 00442 00443 /***************************************************************************** 00444 * IViewObject interface 00445 */ 00446 [ 00447 local, 00448 object, 00449 uuid(3af24292-0c96-11ce-a0cf-00aa00600ab8), 00450 pointer_default(unique) 00451 ] 00452 interface IViewObjectEx : IViewObject2 00453 { 00454 typedef IViewObjectEx *LPVIEWOBJECTEX; 00455 00456 typedef enum tagVIEWSTATUS 00457 { 00458 VIEWSTATUS_OPAQUE = 1, 00459 VIEWSTATUS_SOLIDBKGND = 2, 00460 VIEWSTATUS_DVASPECTOPAQUE = 4, 00461 VIEWSTATUS_DVASPECTTRANSPARENT = 8, 00462 VIEWSTATUS_SURFACE = 16, 00463 VIEWSTATUS_3DSURFACE = 32 00464 } VIEWSTATUS; 00465 00466 typedef enum tagHITRESULT 00467 { 00468 HITRESULT_OUTSIDE = 0, 00469 HITRESULT_TRANSPARENT = 1, 00470 HITRESULT_CLOSE = 2, 00471 HITRESULT_HIT = 3 00472 } HITRESULT; 00473 00474 typedef enum tagDVASPECT2 00475 { 00476 DVASPECT_OPAQUE = 16, 00477 DVASPECT_TRANSPARENT = 32 00478 } DVASPECT2; 00479 00480 typedef struct tagExtentInfo 00481 { 00482 ULONG cb; 00483 DWORD dwExtentMode; 00484 SIZEL sizelProposed; 00485 } DVEXTENTINFO; 00486 00487 typedef enum tagAspectInfoFlag 00488 { 00489 DVASPECTINFOFLAG_CANOPTIMIZE = 1 00490 } DVASPECTINFOFLAG; 00491 00492 typedef struct tagAspectInfo 00493 { 00494 ULONG cb; 00495 DWORD dwFlags; 00496 } DVASPECTINFO; 00497 00498 HRESULT GetRect( 00499 [in] DWORD dwAspect, 00500 [out] LPRECTL pRect); 00501 00502 HRESULT GetViewStatus( [out] DWORD *pdwStatus ); 00503 00504 HRESULT QueryHitPoint( 00505 [in] DWORD dwAspect, 00506 [in] LPCRECT pRectBounds, 00507 [in] POINT ptlLoc, 00508 [in] LONG lCloseHint, 00509 [out] DWORD *pHitResult); 00510 00511 HRESULT QueryHitRect( 00512 [in] DWORD dwAspect, 00513 [in] LPCRECT pRectBounds, 00514 [in] LPCRECT pRectLoc, 00515 [in] LONG lCloseHint, 00516 [out] DWORD *pHitResult); 00517 00518 HRESULT GetNaturalExtent ( 00519 [in] DWORD dwAspect, 00520 [in] LONG lindex, 00521 [in] DVTARGETDEVICE *ptd, 00522 [in] HDC hicTargetDev, 00523 [in] DVEXTENTINFO *pExtentInfo, 00524 [out] LPSIZEL pSizel); 00525 } 00526 00527 00528 /***************************************************************************** 00529 * IProvideClassInfo interface 00530 */ 00531 [ 00532 object, 00533 uuid(b196b283-bab4-101a-b69c-00aa00341d07), 00534 pointer_default(unique) 00535 ] 00536 interface IProvideClassInfo : IUnknown 00537 { 00538 typedef IProvideClassInfo *LPPROVIDECLASSINFO; 00539 00540 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS") 00541 cpp_quote("#undef GetClassInfo") 00542 cpp_quote("#endif") 00543 00544 HRESULT GetClassInfo( [out] ITypeInfo ** ppTI ); 00545 } 00546 00547 00548 /***************************************************************************** 00549 * IProvideClassInfo2 interface 00550 */ 00551 [ 00552 object, 00553 uuid(a6bc3ac0-dbaa-11ce-9de3-00aa004bb851), 00554 pointer_default(unique) 00555 ] 00556 interface IProvideClassInfo2 : IProvideClassInfo 00557 { 00558 typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2; 00559 00560 typedef enum tagGUIDKIND 00561 { 00562 GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1 00563 } GUIDKIND; 00564 00565 HRESULT GetGUID( 00566 [in] DWORD dwGuidKind, 00567 [out] GUID *pGUID ); 00568 } 00569 00570 00571 [ 00572 object, 00573 uuid(a7aba9c1-8983-11cf-8f20-00805f2cd064), 00574 pointer_default(unique) 00575 ] 00576 interface IProvideMultipleClassInfo : IProvideClassInfo2 00577 { 00578 cpp_quote("#define MULTICLASSINFO_GETTYPEINFO 0x00000001") 00579 cpp_quote("#define MULTICLASSINFO_GETNUMRESERVEDDISPIDS 0x00000002") 00580 cpp_quote("#define MULTICLASSINFO_GETIIDPRIMARY 0x00000004") 00581 cpp_quote("#define MULTICLASSINFO_GETIIDSOURCE 0x00000008") 00582 00583 cpp_quote("#define TIFLAGS_EXTENDDISPATCHONLY 0x00000001") 00584 00585 typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO; 00586 00587 HRESULT GetMultiTypeInfoCount( 00588 [out] ULONG *pcti); 00589 00590 HRESULT GetInfoOfIndex( 00591 [in] ULONG iti, 00592 [in] DWORD dwFlags, 00593 [out] ITypeInfo **pptiCoClass, 00594 [out] DWORD *pdwTIFlags, 00595 [out] ULONG *pcdispidReserved, 00596 [out] IID *piidPrimary, 00597 [out] IID *piidSource); 00598 } 00599 00600 00601 /***************************************************************************** 00602 * IConnectionPoint interface 00603 */ 00604 interface IConnectionPointContainer; /* forward declarations */ 00605 interface IEnumConnections; 00606 00607 [ 00608 object, 00609 uuid(b196b286-bab4-101a-b69c-00aa00341d07), 00610 pointer_default(unique) 00611 ] 00612 interface IConnectionPoint : IUnknown 00613 { 00614 typedef IConnectionPoint *PCONNECTIONPOINT, *LPCONNECTIONPOINT; 00615 00616 HRESULT GetConnectionInterface( [out] IID *pIID ); 00617 HRESULT GetConnectionPointContainer( [out] IConnectionPointContainer **ppCPC ); 00618 HRESULT Advise( [in] IUnknown *pUnkSink, [out] DWORD *pdwCookie ); 00619 HRESULT Unadvise( [in] DWORD dwCookie ); 00620 HRESULT EnumConnections( [out] IEnumConnections **ppEnum ); 00621 } 00622 00623 00624 /***************************************************************************** 00625 * IConnectionPointContainer interface 00626 */ 00627 interface IEnumConnectionPoints; /* forward declaration */ 00628 [ 00629 object, 00630 uuid(b196b284-bab4-101a-b69c-00aa00341d07), 00631 pointer_default(unique) 00632 ] 00633 interface IConnectionPointContainer : IUnknown 00634 { 00635 typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER, *LPCONNECTIONPOINTCONTAINER; 00636 00637 HRESULT EnumConnectionPoints( [out] IEnumConnectionPoints **ppEnum ); 00638 HRESULT FindConnectionPoint( [in] REFIID riid, [out] IConnectionPoint **ppCP ); 00639 } 00640 00641 00642 /***************************************************************************** 00643 * IEnumConnections interface 00644 */ 00645 [ 00646 object, 00647 uuid(b196b287-bab4-101a-b69c-00aa00341d07), 00648 pointer_default(unique) 00649 ] 00650 interface IEnumConnections : IUnknown 00651 { 00652 typedef IEnumConnections *PENUMCONNECTIONS, *LPENUMCONNECTIONS; 00653 00654 typedef struct tagCONNECTDATA 00655 { 00656 IUnknown *pUnk; 00657 DWORD dwCookie; 00658 } CONNECTDATA, *PCONNECTDATA, *LPCONNECTDATA; 00659 00660 [local] 00661 HRESULT Next( 00662 [in] ULONG cConnections, 00663 [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTDATA rgcd, 00664 [out] ULONG *pcFetched); 00665 00666 [call_as(Next)] 00667 HRESULT RemoteNext( 00668 [in] ULONG cConnections, 00669 [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTDATA rgcd, 00670 [out] ULONG *pcFetched); 00671 00672 HRESULT Skip( [in] ULONG cConnections ); 00673 00674 HRESULT Reset(); 00675 00676 HRESULT Clone( [out] IEnumConnections **ppEnum ); 00677 } 00678 00679 00680 /***************************************************************************** 00681 * IEnumConnectionPoints interface 00682 */ 00683 [ 00684 object, 00685 uuid(b196b285-bab4-101a-b69c-00aa00341d07), 00686 pointer_default(unique) 00687 ] 00688 interface IEnumConnectionPoints : IUnknown 00689 { 00690 typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS, *LPENUMCONNECTIONPOINTS; 00691 00692 [local] 00693 HRESULT Next( 00694 [in] ULONG cConnections, 00695 [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTIONPOINT *ppCP, 00696 [out] ULONG *pcFetched); 00697 00698 [call_as(Next)] 00699 HRESULT RemoteNext( 00700 [in] ULONG cConnections, 00701 [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTIONPOINT *ppCP, 00702 [out] ULONG *pcFetched); 00703 00704 HRESULT Skip( [in] ULONG cConnections ); 00705 00706 HRESULT Reset(); 00707 00708 HRESULT Clone( [out] IEnumConnectionPoints **ppEnum ); 00709 } 00710 00711 00712 /***************************************************************************** 00713 * IPropertyPage interface 00714 */ 00715 interface IPropertyPageSite; /* forward declaration */ 00716 [ 00717 object, 00718 uuid(b196b28d-bab4-101a-b69c-00aa00341d07), 00719 pointer_default(unique) 00720 ] 00721 interface IPropertyPage : IUnknown 00722 { 00723 typedef IPropertyPage *LPPROPERTYPAGE; 00724 00725 typedef struct tagPROPPAGEINFO 00726 { 00727 ULONG cb; 00728 LPOLESTR pszTitle; 00729 SIZE size; 00730 LPOLESTR pszDocString; 00731 LPOLESTR pszHelpFile; 00732 DWORD dwHelpContext; 00733 } PROPPAGEINFO, *LPPROPPAGEINFO; 00734 00735 HRESULT SetPageSite( [in] IPropertyPageSite *pPageSite ); 00736 00737 HRESULT Activate( 00738 [in] HWND hWndParent, 00739 [in] LPCRECT pRect, 00740 [in] BOOL bModal); 00741 00742 HRESULT Deactivate(); 00743 00744 HRESULT GetPageInfo( [out] PROPPAGEINFO *pPageInfo ); 00745 00746 HRESULT SetObjects( 00747 [in] ULONG cObjects, 00748 [in, size_is(cObjects)] IUnknown **ppUnk); 00749 00750 HRESULT Show( [in] UINT nCmdShow ); 00751 00752 HRESULT Move( [in] LPCRECT pRect ); 00753 00754 HRESULT IsPageDirty(); 00755 00756 HRESULT Apply(); 00757 00758 HRESULT Help( [in] LPCOLESTR pszHelpDir ); 00759 00760 HRESULT TranslateAccelerator( [in] MSG *pMsg ); 00761 } 00762 00763 00764 /***************************************************************************** 00765 * IPropertyPage2 interface 00766 */ 00767 [ 00768 object, 00769 uuid(01e44665-24ac-101b-84ed-08002b2ec713), 00770 pointer_default(unique) 00771 ] 00772 interface IPropertyPage2 : IPropertyPage 00773 { 00774 typedef IPropertyPage2 *LPPROPERTYPAGE2; 00775 00776 HRESULT EditProperty( [in] DISPID dispID ); 00777 } 00778 00779 00780 /***************************************************************************** 00781 * IPropertyPageSite interface 00782 */ 00783 [ 00784 object, 00785 uuid(b196b28c-bab4-101a-b69c-00aa00341d07), 00786 pointer_default(unique) 00787 ] 00788 interface IPropertyPageSite : IUnknown 00789 { 00790 typedef IPropertyPageSite *LPPROPERTYPAGESITE; 00791 00792 typedef enum tagPROPPAGESTATUS 00793 { 00794 PROPPAGESTATUS_DIRTY = 0x1, 00795 PROPPAGESTATUS_VALIDATE = 0x2, 00796 PROPPAGESTATUS_CLEAN = 0x4 00797 } PROPPAGESTATUS; 00798 00799 HRESULT OnStatusChange( [in] DWORD dwFlags ); 00800 HRESULT GetLocaleID( [out] LCID *pLocaleID ); 00801 HRESULT GetPageContainer( [out] IUnknown **ppUnk ); 00802 HRESULT TranslateAccelerator( [in] MSG *pMsg ); 00803 } 00804 00805 00806 /***************************************************************************** 00807 * IPropertyNotifySink interface 00808 */ 00809 [ 00810 object, 00811 uuid(9bfbbc02-eff1-101a-84ed-00aa00341d07), 00812 pointer_default(unique) 00813 ] 00814 interface IPropertyNotifySink : IUnknown 00815 { 00816 typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK; 00817 00818 HRESULT OnChanged( [in] DISPID dispID ); 00819 HRESULT OnRequestEdit( [in] DISPID dispID ); 00820 } 00821 00822 00823 /***************************************************************************** 00824 * ISimpleFrameSite interface 00825 */ 00826 [ 00827 object, 00828 uuid(742b0e01-14e6-101b-914e-00aa00300cab), 00829 pointer_default(unique) 00830 ] 00831 interface ISimpleFrameSite : IUnknown 00832 { 00833 typedef ISimpleFrameSite *LPSIMPLEFRAMESITE; 00834 00835 HRESULT PreMessageFilter( 00836 [in] HWND hWnd, 00837 [in] UINT msg, 00838 [in] WPARAM wp, 00839 [in] LPARAM lp, 00840 [out] LRESULT *plResult, 00841 [out] DWORD *pdwCookie); 00842 00843 HRESULT PostMessageFilter( 00844 [in] HWND hWnd, 00845 [in] UINT msg, 00846 [in] WPARAM wp, 00847 [in] LPARAM lp, 00848 [out] LRESULT *plResult, 00849 [in] DWORD dwCookie); 00850 } 00851 00852 00853 /***************************************************************************** 00854 * IPersistStreamInit interface 00855 */ 00856 [ 00857 object, 00858 uuid(7fd52380-4e07-101b-ae2d-08002b2ec713), 00859 pointer_default(unique) 00860 ] 00861 interface IPersistStreamInit : IPersist 00862 { 00863 typedef IPersistStreamInit *LPPERSISTSTREAMINIT; 00864 00865 HRESULT IsDirty(); 00866 HRESULT Load( [in] LPSTREAM pStm ); 00867 HRESULT Save( [in] LPSTREAM pStm, [in] BOOL fClearDirty ); 00868 HRESULT GetSizeMax( [out] ULARGE_INTEGER *pcbSize ); 00869 HRESULT InitNew(); 00870 } 00871 00872 00873 /***************************************************************************** 00874 * IPersistMemory interface 00875 */ 00876 [ 00877 object, 00878 uuid(bd1ae5e0-a6ae-11ce-bd37-504200c10000), 00879 pointer_default(unique) 00880 ] 00881 interface IPersistMemory : IPersist 00882 { 00883 typedef IPersistMemory *LPPERSISTMEMORY; 00884 00885 HRESULT IsDirty(); 00886 00887 [local] 00888 HRESULT Load( 00889 [in, size_is(cbSize)] LPVOID pMem, 00890 [in] ULONG cbSize); 00891 00892 [call_as(Load)] 00893 HRESULT RemoteLoad( 00894 [in, size_is(cbSize)] BYTE *pMem, 00895 [in] ULONG cbSize); 00896 00897 [local] 00898 HRESULT Save( 00899 [out, size_is(cbSize)] LPVOID pMem, 00900 [in] BOOL fClearDirty, 00901 [in] ULONG cbSize); 00902 00903 [call_as(Save)] 00904 HRESULT RemoteSave( 00905 [out, size_is(cbSize)] BYTE *pMem, 00906 [in] BOOL fClearDirty, 00907 [in] ULONG cbSize); 00908 00909 HRESULT GetSizeMax( [out] ULONG *pCbSize ); 00910 HRESULT InitNew(); 00911 } 00912 00913 00914 /***************************************************************************** 00915 * IPersistPropertyBag interface 00916 */ 00917 [ 00918 object, 00919 uuid(37d84f60-42cb-11ce-8135-00aa004bb851), 00920 pointer_default(unique) 00921 ] 00922 interface IPersistPropertyBag : IPersist 00923 { 00924 typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG; 00925 00926 HRESULT InitNew(); 00927 00928 HRESULT Load( 00929 [in] IPropertyBag *pPropBag, 00930 [in] IErrorLog *pErrorLog); 00931 00932 HRESULT Save( 00933 [in] IPropertyBag *pPropBag, 00934 [in] BOOL fClearDirty, 00935 [in] BOOL fSaveAllProperties); 00936 } 00937 00938 00939 /***************************************************************************** 00940 * IPropertyBag2 interface 00941 */ 00942 [ 00943 object, 00944 uuid(22f55882-280b-11d0-a8a9-00a0c90c2004), 00945 pointer_default(unique) 00946 ] 00947 interface IPropertyBag2 : IUnknown 00948 { 00949 typedef IPropertyBag2 *LPPROPERTYBAG2; 00950 00951 typedef enum tagPROPBAG2_TYPE 00952 { 00953 PROPBAG2_TYPE_UNDEFINED = 0, 00954 PROPBAG2_TYPE_DATA = 1, 00955 PROPBAG2_TYPE_URL = 2, 00956 PROPBAG2_TYPE_OBJECT = 3, 00957 PROPBAG2_TYPE_STREAM = 4, 00958 PROPBAG2_TYPE_STORAGE = 5, 00959 PROPBAG2_TYPE_MONIKER = 6 00960 } PROPBAG2_TYPE; 00961 00962 typedef struct tagPROPBAG2 00963 { 00964 DWORD dwType; 00965 VARTYPE vt; 00966 CLIPFORMAT cfType; 00967 DWORD dwHint; 00968 LPOLESTR pstrName; 00969 CLSID clsid; 00970 } PROPBAG2; 00971 00972 HRESULT Read( 00973 [in] ULONG cProperties, 00974 [in] PROPBAG2 *pPropBag, 00975 [in] IErrorLog *pErrLog, 00976 [out] VARIANT *pvarValue, 00977 [out] HRESULT *phrError); 00978 00979 HRESULT Write( 00980 [in] ULONG cProperties, 00981 [in] PROPBAG2 *pPropBag, 00982 [in] VARIANT *pvarValue); 00983 00984 HRESULT CountProperties( 00985 [out] ULONG *pcProperties ); 00986 00987 HRESULT GetPropertyInfo( 00988 [in] ULONG iProperty, 00989 [in] ULONG cProperties, 00990 [out] PROPBAG2 *pPropBag, 00991 [out] ULONG *pcProperties); 00992 00993 HRESULT LoadObject( 00994 [in] LPCOLESTR pstrName, 00995 [in] DWORD dwHint, 00996 [in] IUnknown *pUnkObject, 00997 [in] IErrorLog *pErrLog); 00998 } 00999 01000 01001 /***************************************************************************** 01002 * IPersistPropertyBag2 interface 01003 */ 01004 [ 01005 object, 01006 uuid(22f55881-280b-11d0-a8a9-00a0c90c2004), 01007 pointer_default(unique) 01008 ] 01009 interface IPersistPropertyBag2 : IPersist 01010 { 01011 typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2; 01012 01013 HRESULT InitNew(); 01014 01015 HRESULT Load( 01016 [in] IPropertyBag2 *pPropBag, 01017 [in] IErrorLog *pErrorLog); 01018 01019 HRESULT Save( 01020 [in] IPropertyBag2 *pPropBag, 01021 [in] BOOL fClearDirty, 01022 [in] BOOL fSaveAllProperties); 01023 01024 HRESULT IsDirty(); 01025 } 01026 01027 01028 /***************************************************************************** 01029 * ISpecifyPropertyPages interface 01030 */ 01031 [ 01032 object, 01033 uuid(b196b28b-bab4-101a-b69c-00aa00341d07), 01034 pointer_default(unique) 01035 ] 01036 interface ISpecifyPropertyPages : IUnknown 01037 { 01038 typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES; 01039 01040 typedef struct tagCAUUID 01041 { 01042 ULONG cElems; 01043 [size_is(cElems)] GUID *pElems; 01044 } CAUUID, *LPCAUUID; 01045 01046 HRESULT GetPages( [out] CAUUID *pPages ); 01047 } 01048 01049 01050 /***************************************************************************** 01051 * IPerPropertyBrowsing interface 01052 */ 01053 [ 01054 object, 01055 uuid(376bd3aa-3845-101b-84ed-08002b2ec713), 01056 pointer_default(unique) 01057 ] 01058 interface IPerPropertyBrowsing : IUnknown 01059 { 01060 typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING; 01061 01062 typedef struct tagCALPOLESTR 01063 { 01064 ULONG cElems; 01065 [size_is(cElems)] LPOLESTR *pElems; 01066 } CALPOLESTR, *LPCALPOLESTR; 01067 01068 typedef struct tagCADWORD 01069 { 01070 ULONG cElems; 01071 [size_is(cElems)] DWORD *pElems; 01072 } CADWORD, *LPCADWORD; 01073 01074 HRESULT GetDisplayString( 01075 [in] DISPID dispID, 01076 [out] BSTR *pBstr); 01077 01078 HRESULT MapPropertyToPage( 01079 [in] DISPID dispID, 01080 [out] CLSID *pClsid); 01081 01082 HRESULT GetPredefinedStrings( 01083 [in] DISPID dispID, 01084 [out] CALPOLESTR *pCaStringsOut, 01085 [out] CADWORD *pCaCookiesOut); 01086 01087 HRESULT GetPredefinedValue( 01088 [in] DISPID dispID, 01089 [in] DWORD dwCookie, 01090 [out] VARIANT *pVarOut); 01091 } 01092 01093 01094 /***************************************************************************** 01095 * IAdviseSinkEx interface 01096 */ 01097 [ 01098 object, 01099 uuid(3af24290-0c96-11ce-a0cf-00aa00600ab8), 01100 pointer_default(unique) 01101 ] 01102 interface IAdviseSinkEx : IAdviseSink 01103 { 01104 typedef IAdviseSinkEx *LPADVISESINKEX; 01105 01106 [local] 01107 void OnViewStatusChange( [in] DWORD dwViewStatus ); 01108 01109 [call_as(OnViewStatusChange)] 01110 HRESULT RemoteOnViewStatusChange( [in] DWORD dwViewStatus ); 01111 } 01112 01113 01114 /***************************************************************************** 01115 * IPointerInactive interface 01116 */ 01117 [ 01118 object, 01119 uuid(55980ba0-35aa-11cf-b671-00aa004cd6d8), 01120 pointer_default(unique) 01121 ] 01122 interface IPointerInactive : IUnknown 01123 { 01124 typedef IPointerInactive *LPPOINTERINACTIVE; 01125 01126 HRESULT GetActivationPolicy( 01127 [out] DWORD *pdwPolicy); 01128 01129 HRESULT OnInactiveMouseMove( 01130 [in] LPCRECT pRectBounds, 01131 [in] LONG x, 01132 [in] LONG y, 01133 [in] DWORD grfKeyState); 01134 01135 HRESULT OnInactiveSetCursor( 01136 [in] LPCRECT pRectBounds, 01137 [in] LONG x, 01138 [in] LONG y, 01139 [in] DWORD dwMouseMsg, 01140 [in] BOOL fSetAlways); 01141 } 01142 01143 01144 /***************************************************************************** 01145 * IObjectWithSite interface 01146 */ 01147 [ 01148 object, 01149 uuid(fc4801a3-2ba9-11cf-a229-00aa003d7352), 01150 pointer_default(unique) 01151 ] 01152 interface IObjectWithSite : IUnknown 01153 { 01154 typedef IObjectWithSite *LPOBJECTWITHSITE; 01155 01156 HRESULT SetSite( 01157 [in] IUnknown * pUnkSite); 01158 01159 HRESULT GetSite( 01160 [in] REFIID riid, 01161 [out, iid_is(riid)] PVOID *ppvSite); 01162 } 01163 01164 01165 /***************************************************************************** 01166 * IOleUndoUnit interface 01167 */ 01168 interface IOleUndoManager; /* forward declaration */ 01169 [ 01170 object, 01171 uuid(894ad3b0-ef97-11ce-9bc9-00aa00608e01), 01172 pointer_default(unique) 01173 ] 01174 interface IOleUndoUnit : IUnknown 01175 { 01176 typedef IOleUndoUnit *LPOLEUNDOUNIT; 01177 01178 HRESULT Do( [in] IOleUndoManager *pUndoManager ); 01179 HRESULT GetDescription( [out] BSTR *pBstr ); 01180 HRESULT GetUnitType( [out] CLSID *pClsid, [out] LONG *plID ); 01181 HRESULT OnNextAdd(); 01182 } 01183 01184 01185 /***************************************************************************** 01186 * IOleParentUndoUnit interface 01187 */ 01188 [ 01189 object, 01190 uuid(a1faf330-ef97-11ce-9bc9-00aa00608e01), 01191 pointer_default(unique) 01192 ] 01193 interface IOleParentUndoUnit : IOleUndoUnit 01194 { 01195 typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT; 01196 01197 HRESULT Open( [in] IOleParentUndoUnit *pPUU ); 01198 HRESULT Close( [in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit ); 01199 HRESULT Add( [in] IOleUndoUnit *pUU ); 01200 HRESULT FindUnit( [in] IOleUndoUnit *pUU ); 01201 HRESULT GetParentState( [out] DWORD *pdwState ); 01202 } 01203 01204 01205 /***************************************************************************** 01206 * IEnumOleUndoUnits interface 01207 */ 01208 [ 01209 object, 01210 uuid(b3e7c340-ef97-11ce-9bc9-00aa00608e01), 01211 pointer_default(unique) 01212 ] 01213 interface IEnumOleUndoUnits : IUnknown 01214 { 01215 typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS; 01216 01217 [local] 01218 HRESULT Next( 01219 [in] ULONG cElt, 01220 [out, size_is(cElt), length_is(*pcEltFetched)] IOleUndoUnit **rgElt, 01221 [out] ULONG *pcEltFetched); 01222 01223 [call_as(Next)] 01224 HRESULT RemoteNext( 01225 [in] ULONG cElt, 01226 [out, size_is(cElt), length_is(*pcEltFetched)] IOleUndoUnit **rgElt, 01227 [out] ULONG *pcEltFetched); 01228 01229 HRESULT Skip( [in] ULONG cElt ); 01230 01231 HRESULT Reset(); 01232 01233 HRESULT Clone( [out] IEnumOleUndoUnits **ppEnum ); 01234 } 01235 01236 01237 /***************************************************************************** 01238 * IOleUndoManager interface 01239 */ 01240 [ 01241 object, 01242 uuid(d001f200-ef97-11ce-9bc9-00aa00608e01), 01243 pointer_default(unique) 01244 ] 01245 interface IOleUndoManager : IUnknown 01246 { 01247 cpp_quote("#define SID_SOleUndoManager IID_IOleUndoManager") 01248 typedef IOleUndoManager *LPOLEUNDOMANAGER; 01249 01250 HRESULT Open( [in] IOleParentUndoUnit *pPUU ); 01251 HRESULT Close( [in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit ); 01252 HRESULT Add( [in] IOleUndoUnit *pUU ); 01253 HRESULT GetOpenParentState( [out] DWORD *pdwState ); 01254 HRESULT DiscardFrom( [in] IOleUndoUnit *pUU ); 01255 HRESULT UndoTo( [in] IOleUndoUnit *pUU ); 01256 HRESULT RedoTo( [in] IOleUndoUnit *pUU ); 01257 HRESULT EnumUndoable( [out] IEnumOleUndoUnits **ppEnum ); 01258 HRESULT EnumRedoable( [out] IEnumOleUndoUnits **ppEnum ); 01259 HRESULT GetLastUndoDescription( [out] BSTR *pBstr ); 01260 HRESULT GetLastRedoDescription( [out] BSTR *pBstr ); 01261 HRESULT Enable( [in] BOOL fEnable ); 01262 } 01263 01264 01265 /***************************************************************************** 01266 * IQuickActivate interface 01267 */ 01268 [ 01269 object, 01270 uuid(cf51ed10-62fe-11cf-bf86-00a0c9034836), 01271 pointer_default(unique) 01272 ] 01273 interface IQuickActivate : IUnknown 01274 { 01275 typedef IQuickActivate *LPQUICKACTIVATE; 01276 01277 typedef enum tagQACONTAINERFLAGS 01278 { 01279 QACONTAINER_SHOWHATCHING = 0x1, 01280 QACONTAINER_SHOWGRABHANDLES = 0x2, 01281 QACONTAINER_USERMODE = 0x4, 01282 QACONTAINER_DISPLAYASDEFAULT = 0x8, 01283 QACONTAINER_UIDEAD = 0x10, 01284 QACONTAINER_AUTOCLIP = 0x20, 01285 QACONTAINER_MESSAGEREFLECT = 0x40, 01286 QACONTAINER_SUPPORTSMNEMONICS = 0x80 01287 } QACONTAINERFLAGS; 01288 01289 typedef DWORD OLE_COLOR; 01290 01291 typedef struct tagQACONTAINER 01292 { 01293 ULONG cbSize; 01294 IOleClientSite *pClientSite; 01295 IAdviseSinkEx *pAdviseSink; 01296 IPropertyNotifySink *pPropertyNotifySink; 01297 IUnknown *pUnkEventSink; 01298 DWORD dwAmbientFlags; 01299 OLE_COLOR colorFore; 01300 OLE_COLOR colorBack; 01301 IFont *pFont; 01302 IOleUndoManager *pUndoMgr; 01303 DWORD dwAppearance; 01304 LONG lcid; 01305 HPALETTE hpal; 01306 IBindHost *pBindHost; 01307 IOleControlSite *pOleControlSite; 01308 IServiceProvider *pServiceProvider; 01309 } QACONTAINER; 01310 01311 typedef struct tagQACONTROL 01312 { 01313 ULONG cbSize; 01314 DWORD dwMiscStatus; 01315 DWORD dwViewStatus; 01316 DWORD dwEventCookie; 01317 DWORD dwPropNotifyCookie; 01318 DWORD dwPointerActivationPolicy; 01319 } QACONTROL; 01320 01321 [local] 01322 HRESULT QuickActivate( 01323 [in] QACONTAINER *pQaContainer, 01324 [in,out] QACONTROL *pQaControl); 01325 01326 [call_as(QuickActivate)] 01327 HRESULT RemoteQuickActivate( 01328 [in] QACONTAINER *pQaContainer, 01329 [out] QACONTROL *pQaControl); 01330 01331 HRESULT SetContentExtent( [in] LPSIZEL pSizel ); 01332 01333 HRESULT GetContentExtent( [out] LPSIZEL pSizel ); 01334 } Generated on Sat May 26 2012 04:30:57 for ReactOS by
1.7.6.1
|