| /* |
| * Copyright (C) 1999 Paul Quinn |
| * Copyright (C) 1999 Francis Beaudet |
| * Copyright (C) 2003 Alexandre Julliard |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
| */ |
| |
| #ifndef DO_NO_IMPORTS |
| import "oleidl.idl"; |
| import "oaidl.idl"; |
| import "servprov.idl"; |
| import "urlmon.idl"; |
| #endif |
| |
| /***************************************************************************** |
| * IOleControlTypes interface |
| */ |
| [ |
| pointer_default(unique) |
| ] |
| interface IOleControlTypes |
| { |
| typedef [v1_enum] enum tagUASFLAGS |
| { |
| UAS_NORMAL = 0x0, |
| UAS_BLOCKED = 0x1, |
| UAS_NOPARENTABLE = 0x2, |
| UAS_MASK = 0x3 |
| } UASFLAGS; |
| |
| typedef enum tagREADYSTATE |
| { |
| READYSTATE_UNINITIALIZED = 0, |
| READYSTATE_LOADING = 1, |
| READYSTATE_LOADED = 2, |
| READYSTATE_INTERACTIVE = 3, |
| READYSTATE_COMPLETE = 4 |
| } READYSTATE; |
| |
| typedef struct tagVARIANT_BLOB |
| { |
| DWORD clSize; |
| DWORD rpcReserved; |
| [size_is(clSize-1)] ULONGLONG ahData[]; |
| } wireVARIANT_BLOB; |
| |
| typedef struct tagUserVARIANT |
| { |
| wireVARIANT_BLOB pVarBlob; |
| } UserVARIANT; |
| } |
| |
| |
| /***************************************************************************** |
| * IFont interface |
| */ |
| [ |
| object, |
| uuid(bef6e002-a874-101a-8bba-00aa00300cab), |
| pointer_default(unique) |
| ] |
| interface IFont : IUnknown |
| { |
| typedef IFont *LPFONT; |
| typedef TEXTMETRICW TEXTMETRICOLE, *LPTEXTMETRICOLE; |
| |
| [propget] HRESULT Name( [out] BSTR *pname); |
| [propput] HRESULT Name( [in] BSTR name ); |
| [propget] HRESULT Size( [out] CY *psize ); |
| [propput] HRESULT Size( [in] CY size ); |
| [propget] HRESULT Bold( [out] BOOL *pbold ); |
| [propput] HRESULT Bold( [in] BOOL bold ); |
| [propget] HRESULT Italic( [out] BOOL *pitalic ); |
| [propput] HRESULT Italic( [in] BOOL italic ); |
| [propget] HRESULT Underline( [out] BOOL *punderline ); |
| [propput] HRESULT Underline( [in] BOOL underline ); |
| [propget] HRESULT Strikethrough( [out] BOOL *pstrikethrough ); |
| [propput] HRESULT Strikethrough( [in] BOOL strikethrough ); |
| [propget] HRESULT Weight( [out] SHORT *pweight ); |
| [propput] HRESULT Weight( [in] SHORT weight ); |
| [propget] HRESULT Charset( [out] SHORT *pcharset ); |
| [propput] HRESULT Charset( [in] SHORT charset ); |
| [propget] HRESULT hFont( [out] HFONT *phfont ); |
| HRESULT Clone( [out] IFont **ppfont ); |
| HRESULT IsEqual( [in] IFont *pFontOther ); |
| HRESULT SetRatio( [in] LONG cyLogical, [in] LONG cyHimetric ); |
| HRESULT QueryTextMetrics( [out] TEXTMETRICOLE * ptm ); |
| HRESULT AddRefHfont( [in] HFONT hfont ); |
| HRESULT ReleaseHfont( [in] HFONT hfont ); |
| HRESULT SetHdc( [in] HDC hdc ); |
| } |
| |
| |
| /***************************************************************************** |
| * IFontDisp interface |
| */ |
| [ |
| object, |
| uuid(bef6e003-a874-101a-8bba-00aa00300cab), |
| pointer_default(unique) |
| ] |
| interface IFontDisp : IDispatch |
| { |
| typedef IFontDisp *LPFONTDISP; |
| } |
| |
| |
| /***************************************************************************** |
| * IFontEventsDisp interface |
| */ |
| [ |
| object, |
| uuid(4ef6100a-af88-11d0-9846-00c04fc29993), |
| pointer_default(unique) |
| ] |
| interface IFontEventsDisp : IDispatch |
| { |
| typedef IFontEventsDisp *LPFONTEVENTS; |
| } |
| |
| |
| /***************************************************************************** |
| * IPicture interface |
| */ |
| [ |
| object, |
| uuid(7bf80980-bf32-101a-8bbb-00aa00300cab), |
| pointer_default(unique) |
| ] |
| interface IPicture : IUnknown |
| { |
| typedef IPicture *LPPICTURE; |
| |
| typedef enum tagPicture |
| { |
| PICTURE_SCALABLE = 0x1, |
| PICTURE_TRANSPARENT = 0x2 |
| } PICTUREATTRIBUTES; |
| |
| typedef UINT OLE_HANDLE; |
| typedef LONG OLE_XPOS_HIMETRIC; |
| typedef LONG OLE_YPOS_HIMETRIC; |
| typedef LONG OLE_XSIZE_HIMETRIC; |
| typedef LONG OLE_YSIZE_HIMETRIC; |
| |
| [propget] HRESULT Handle( [out] OLE_HANDLE *pHandle ); |
| [propget] HRESULT hPal( [out] OLE_HANDLE *phPal ); |
| [propget] HRESULT Type( [out] SHORT *pType ); |
| [propget] HRESULT Width( [out] OLE_XSIZE_HIMETRIC *pWidth ); |
| [propget] HRESULT Height( [out] OLE_YSIZE_HIMETRIC *pHeight ); |
| |
| HRESULT Render( |
| [in] HDC hdc, |
| [in] LONG x, |
| [in] LONG y, |
| [in] LONG cx, |
| [in] LONG cy, |
| [in] OLE_XPOS_HIMETRIC xSrc, |
| [in] OLE_YPOS_HIMETRIC ySrc, |
| [in] OLE_XSIZE_HIMETRIC cxSrc, |
| [in] OLE_YSIZE_HIMETRIC cySrc, |
| [in] LPCRECT pRcWBounds); |
| |
| HRESULT set_hPal( [in] OLE_HANDLE hPal ); |
| |
| [propget] HRESULT CurDC( [out] HDC *phDC ); |
| |
| HRESULT SelectPicture( |
| [in] HDC hDCIn, |
| [out] HDC * phDCOut, |
| [out] OLE_HANDLE * phBmpOut); |
| |
| [propget] HRESULT KeepOriginalFormat( [out] BOOL *pKeep ); |
| |
| [propput] HRESULT KeepOriginalFormat( [in] BOOL keep ); |
| |
| HRESULT PictureChanged(); |
| |
| HRESULT SaveAsFile( |
| [in] LPSTREAM pStream, |
| [in] BOOL fSaveMemCopy, |
| [out] LONG *pCbSize); |
| |
| [propget] HRESULT Attributes( [out] DWORD *pDwAttr ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPictureDisp interface |
| */ |
| [ |
| object, |
| uuid(7bf80981-bf32-101a-8bbb-00aa00300cab), |
| pointer_default(unique) |
| ] |
| interface IPictureDisp : IDispatch |
| { |
| typedef IPictureDisp *LPPICTUREDISP; |
| } |
| |
| |
| /***************************************************************************** |
| * IOleControl interface |
| */ |
| [ |
| object, |
| uuid(b196b288-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| |
| interface IOleControl : IUnknown |
| { |
| typedef IOleControl *LPOLECONTROL; |
| |
| typedef struct tagCONTROLINFO |
| { |
| ULONG cb; |
| HACCEL hAccel; |
| USHORT cAccel; |
| DWORD dwFlags; |
| } CONTROLINFO, *LPCONTROLINFO; |
| |
| typedef enum tagCTRLINFO |
| { |
| CTRLINFO_EATS_RETURN = 1, |
| CTRLINFO_EATS_ESCAPE = 2 |
| } CTRLINFO; |
| |
| HRESULT GetControlInfo( [out] CONTROLINFO *pCI ); |
| HRESULT OnMnemonic( [in] MSG *pMsg ); |
| HRESULT OnAmbientPropertyChange( [in] DISPID dispID ); |
| HRESULT FreezeEvents( [in] BOOL bFreeze ); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleControlSite interface |
| */ |
| [ |
| object, |
| uuid(b196b289-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IOleControlSite : IUnknown |
| { |
| typedef IOleControlSite *LPOLECONTROLSITE; |
| |
| typedef struct tagPOINTF |
| { |
| FLOAT x; |
| FLOAT y; |
| } POINTF, *LPPOINTF; |
| |
| typedef enum tagXFORMCOORDS |
| { |
| XFORMCOORDS_POSITION = 0x1, |
| XFORMCOORDS_SIZE = 0x2, |
| XFORMCOORDS_HIMETRICTOCONTAINER = 0x4, |
| XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8, |
| XFORMCOORDS_EVENTCOMPAT = 0x10 |
| } XFORMCOORDS; |
| |
| HRESULT OnControlInfoChanged(); |
| |
| HRESULT LockInPlaceActive( [in] BOOL fLock ); |
| |
| HRESULT GetExtendedControl( [out] IDispatch ** ppDisp ); |
| |
| HRESULT TransformCoords( |
| [in, out] POINTL *pPtlHimetric, |
| [in, out] POINTF *pPtfContainer, |
| [in] DWORD dwFlags); |
| |
| HRESULT TranslateAccelerator( [in] MSG *pMsg, [in] DWORD grfModifiers ); |
| |
| HRESULT OnFocus( [in] BOOL fGotFocus ); |
| |
| HRESULT ShowPropertyFrame(); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleInPlaceSiteEx interface |
| */ |
| [ |
| object, |
| uuid(9c2cad80-3424-11cf-b670-00aa004cd6d8), |
| pointer_default(unique) |
| ] |
| interface IOleInPlaceSiteEx : IOleInPlaceSite |
| { |
| typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX; |
| |
| typedef enum tagACTIVATEFLAGS |
| { |
| ACTIVATE_WINDOWLESS = 1 |
| } ACTIVATE_FLAGS; |
| |
| HRESULT OnInPlaceActivateEx( [out] BOOL * pfNoRedraw, [in] DWORD dwFlags ); |
| HRESULT OnInPlaceDeactivateEx( [in] BOOL fNoRedraw ); |
| HRESULT RequestUIActivate(); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleInPlaceSiteWindowless interface |
| */ |
| [ |
| local, |
| object, |
| uuid(922eada0-3424-11cf-b670-00aa004cd6d8), |
| pointer_default(unique) |
| ] |
| interface IOleInPlaceSiteWindowless : IOleInPlaceSiteEx |
| { |
| typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS; |
| |
| typedef enum tagOLEDCFLAGS |
| { |
| OLEDC_NODRAW = 0x1, |
| OLEDC_PAINTBKGND = 0x2, |
| OLEDC_OFFSCREEN = 0x4 |
| } OLEDCFLAGS; |
| |
| HRESULT CanWindowlessActivate(); |
| |
| HRESULT GetCapture(); |
| |
| HRESULT SetCapture( [in] BOOL fCapture ); |
| |
| HRESULT GetFocus(); |
| |
| HRESULT SetFocus( [in] BOOL fFocus ); |
| |
| HRESULT GetDC( |
| [in] LPCRECT pRect, |
| [in] DWORD grfFlags, |
| [out] HDC *phDC); |
| |
| HRESULT ReleaseDC( [in] HDC hDC ); |
| |
| HRESULT InvalidateRect( |
| [in] LPCRECT pRect, |
| [in] BOOL fErase); |
| |
| HRESULT InvalidateRgn( |
| [in] HRGN hRGN, |
| [in] BOOL fErase); |
| |
| HRESULT ScrollRect( |
| [in] INT dx, |
| [in] INT dy, |
| [in] LPCRECT pRectScroll, |
| [in] LPCRECT pRectClip); |
| |
| HRESULT AdjustRect( [in, out] LPRECT prc ); |
| |
| HRESULT OnDefWindowMessage( |
| [in] UINT msg, |
| [in] WPARAM wParam, |
| [in] LPARAM lParam, |
| [out] LRESULT *plResult); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleInPlaceObjectWindowless interface |
| */ |
| [ |
| local, |
| object, |
| uuid(1c2056cc-5ef4-101b-8bc8-00aa003e3b29), |
| pointer_default(unique) |
| ] |
| interface IOleInPlaceObjectWindowless : IOleInPlaceObject |
| { |
| typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS; |
| |
| HRESULT OnWindowMessage( |
| [in] UINT msg, |
| [in] WPARAM wParam, |
| [in] LPARAM lParam, |
| [out] LRESULT *plResult); |
| |
| HRESULT GetDropTarget( [out] IDropTarget **ppDropTarget ); |
| } |
| |
| |
| /***************************************************************************** |
| * IClassFactory2 interface |
| */ |
| [ |
| object, |
| uuid(b196b28f-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IClassFactory2 : IClassFactory |
| { |
| typedef IClassFactory2 *LPCLASSFACTORY2; |
| |
| typedef struct tagLICINFO |
| { |
| LONG cbLicInfo; |
| BOOL fRuntimeKeyAvail; |
| BOOL fLicVerified; |
| } LICINFO, *LPLICINFO; |
| |
| HRESULT GetLicInfo( [out] LICINFO *pLicInfo ); |
| |
| HRESULT RequestLicKey( |
| [in] DWORD dwReserved, |
| [out] BSTR *pBstrKey); |
| |
| [local] |
| HRESULT CreateInstanceLic( |
| [in] IUnknown *pUnkOuter, |
| [in] IUnknown *pUnkReserved, |
| [in] REFIID riid, |
| [in] BSTR bstrKey, |
| [out, iid_is(riid)] PVOID *ppvObj); |
| |
| [call_as(CreateInstanceLic)] |
| HRESULT RemoteCreateInstanceLic( |
| [in] REFIID riid, |
| [in] BSTR bstrKey, |
| [out, iid_is(riid)] IUnknown **ppvObj); |
| } |
| |
| |
| /***************************************************************************** |
| * IViewObject interface |
| */ |
| [ |
| local, |
| object, |
| uuid(3af24292-0c96-11ce-a0cf-00aa00600ab8), |
| pointer_default(unique) |
| ] |
| interface IViewObjectEx : IViewObject2 |
| { |
| typedef IViewObjectEx *LPVIEWOBJECTEX; |
| |
| typedef enum tagVIEWSTATUS |
| { |
| VIEWSTATUS_OPAQUE = 1, |
| VIEWSTATUS_SOLIDBKGND = 2, |
| VIEWSTATUS_DVASPECTOPAQUE = 4, |
| VIEWSTATUS_DVASPECTTRANSPARENT = 8, |
| VIEWSTATUS_SURFACE = 16, |
| VIEWSTATUS_3DSURFACE = 32 |
| } VIEWSTATUS; |
| |
| typedef enum tagHITRESULT |
| { |
| HITRESULT_OUTSIDE = 0, |
| HITRESULT_TRANSPARENT = 1, |
| HITRESULT_CLOSE = 2, |
| HITRESULT_HIT = 3 |
| } HITRESULT; |
| |
| typedef enum tagDVASPECT2 |
| { |
| DVASPECT_OPAQUE = 16, |
| DVASPECT_TRANSPARENT = 32 |
| } DVASPECT2; |
| |
| typedef struct tagExtentInfo |
| { |
| ULONG cb; |
| DWORD dwExtentMode; |
| SIZEL sizelProposed; |
| } DVEXTENTINFO; |
| |
| typedef enum tagAspectInfoFlag |
| { |
| DVASPECTINFOFLAG_CANOPTIMIZE = 1 |
| } DVASPECTINFOFLAG; |
| |
| typedef struct tagAspectInfo |
| { |
| ULONG cb; |
| DWORD dwFlags; |
| } DVASPECTINFO; |
| |
| HRESULT GetRect( |
| [in] DWORD dwAspect, |
| [out] LPRECTL pRect); |
| |
| HRESULT GetViewStatus( [out] DWORD *pdwStatus ); |
| |
| HRESULT QueryHitPoint( |
| [in] DWORD dwAspect, |
| [in] LPCRECT pRectBounds, |
| [in] POINT ptlLoc, |
| [in] LONG lCloseHint, |
| [out] DWORD *pHitResult); |
| |
| HRESULT QueryHitRect( |
| [in] DWORD dwAspect, |
| [in] LPCRECT pRectBounds, |
| [in] LPCRECT pRectLoc, |
| [in] LONG lCloseHint, |
| [out] DWORD *pHitResult); |
| |
| HRESULT GetNaturalExtent ( |
| [in] DWORD dwAspect, |
| [in] LONG lindex, |
| [in] DVTARGETDEVICE *ptd, |
| [in] HDC hicTargetDev, |
| [in] DVEXTENTINFO *pExtentInfo, |
| [out] LPSIZEL pSizel); |
| } |
| |
| |
| /***************************************************************************** |
| * IProvideClassInfo interface |
| */ |
| [ |
| object, |
| uuid(b196b283-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IProvideClassInfo : IUnknown |
| { |
| typedef IProvideClassInfo *LPPROVIDECLASSINFO; |
| |
| cpp_quote("#ifdef WINE_NO_UNICODE_MACROS") |
| cpp_quote("#undef GetClassInfo") |
| cpp_quote("#endif") |
| |
| HRESULT GetClassInfo( [out] ITypeInfo ** ppTI ); |
| } |
| |
| |
| /***************************************************************************** |
| * IProvideClassInfo2 interface |
| */ |
| [ |
| object, |
| uuid(a6bc3ac0-dbaa-11ce-9de3-00aa004bb851), |
| pointer_default(unique) |
| ] |
| interface IProvideClassInfo2 : IProvideClassInfo |
| { |
| typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2; |
| |
| typedef enum tagGUIDKIND |
| { |
| GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1 |
| } GUIDKIND; |
| |
| HRESULT GetGUID( |
| [in] DWORD dwGuidKind, |
| [out] GUID *pGUID ); |
| } |
| |
| |
| [ |
| object, |
| uuid(a7aba9c1-8983-11cf-8f20-00805f2cd064), |
| pointer_default(unique) |
| ] |
| interface IProvideMultipleClassInfo : IProvideClassInfo2 |
| { |
| cpp_quote("#define MULTICLASSINFO_GETTYPEINFO 0x00000001") |
| cpp_quote("#define MULTICLASSINFO_GETNUMRESERVEDDISPIDS 0x00000002") |
| cpp_quote("#define MULTICLASSINFO_GETIIDPRIMARY 0x00000004") |
| cpp_quote("#define MULTICLASSINFO_GETIIDSOURCE 0x00000008") |
| |
| cpp_quote("#define TIFLAGS_EXTENDDISPATCHONLY 0x00000001") |
| |
| typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO; |
| |
| HRESULT GetMultiTypeInfoCount( |
| [out] ULONG *pcti); |
| |
| HRESULT GetInfoOfIndex( |
| [in] ULONG iti, |
| [in] DWORD dwFlags, |
| [out] ITypeInfo **pptiCoClass, |
| [out] DWORD *pdwTIFlags, |
| [out] ULONG *pcdispidReserved, |
| [out] IID *piidPrimary, |
| [out] IID *piidSource); |
| } |
| |
| |
| /***************************************************************************** |
| * IConnectionPoint interface |
| */ |
| interface IConnectionPointContainer; /* forward declarations */ |
| interface IEnumConnections; |
| |
| [ |
| object, |
| uuid(b196b286-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IConnectionPoint : IUnknown |
| { |
| typedef IConnectionPoint *PCONNECTIONPOINT, *LPCONNECTIONPOINT; |
| |
| HRESULT GetConnectionInterface( [out] IID *pIID ); |
| HRESULT GetConnectionPointContainer( [out] IConnectionPointContainer **ppCPC ); |
| HRESULT Advise( [in] IUnknown *pUnkSink, [out] DWORD *pdwCookie ); |
| HRESULT Unadvise( [in] DWORD dwCookie ); |
| HRESULT EnumConnections( [out] IEnumConnections **ppEnum ); |
| } |
| |
| |
| /***************************************************************************** |
| * IConnectionPointContainer interface |
| */ |
| interface IEnumConnectionPoints; /* forward declaration */ |
| [ |
| object, |
| uuid(b196b284-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IConnectionPointContainer : IUnknown |
| { |
| typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER, *LPCONNECTIONPOINTCONTAINER; |
| |
| HRESULT EnumConnectionPoints( [out] IEnumConnectionPoints **ppEnum ); |
| HRESULT FindConnectionPoint( [in] REFIID riid, [out] IConnectionPoint **ppCP ); |
| } |
| |
| |
| /***************************************************************************** |
| * IEnumConnections interface |
| */ |
| [ |
| object, |
| uuid(b196b287-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IEnumConnections : IUnknown |
| { |
| typedef IEnumConnections *PENUMCONNECTIONS, *LPENUMCONNECTIONS; |
| |
| typedef struct tagCONNECTDATA |
| { |
| IUnknown *pUnk; |
| DWORD dwCookie; |
| } CONNECTDATA, *PCONNECTDATA, *LPCONNECTDATA; |
| |
| [local] |
| HRESULT Next( |
| [in] ULONG cConnections, |
| [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTDATA rgcd, |
| [out] ULONG *pcFetched); |
| |
| [call_as(Next)] |
| HRESULT RemoteNext( |
| [in] ULONG cConnections, |
| [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTDATA rgcd, |
| [out] ULONG *pcFetched); |
| |
| HRESULT Skip( [in] ULONG cConnections ); |
| |
| HRESULT Reset(); |
| |
| HRESULT Clone( [out] IEnumConnections **ppEnum ); |
| } |
| |
| |
| /***************************************************************************** |
| * IEnumConnectionPoints interface |
| */ |
| [ |
| object, |
| uuid(b196b285-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IEnumConnectionPoints : IUnknown |
| { |
| typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS, *LPENUMCONNECTIONPOINTS; |
| |
| [local] |
| HRESULT Next( |
| [in] ULONG cConnections, |
| [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTIONPOINT *ppCP, |
| [out] ULONG *pcFetched); |
| |
| [call_as(Next)] |
| HRESULT RemoteNext( |
| [in] ULONG cConnections, |
| [out, size_is(cConnections), length_is(*pcFetched)] LPCONNECTIONPOINT *ppCP, |
| [out] ULONG *pcFetched); |
| |
| HRESULT Skip( [in] ULONG cConnections ); |
| |
| HRESULT Reset(); |
| |
| HRESULT Clone( [out] IEnumConnectionPoints **ppEnum ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPropertyPage interface |
| */ |
| interface IPropertyPageSite; /* forward declaration */ |
| [ |
| object, |
| uuid(b196b28d-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IPropertyPage : IUnknown |
| { |
| typedef IPropertyPage *LPPROPERTYPAGE; |
| |
| typedef struct tagPROPPAGEINFO |
| { |
| ULONG cb; |
| LPOLESTR pszTitle; |
| SIZE size; |
| LPOLESTR pszDocString; |
| LPOLESTR pszHelpFile; |
| DWORD dwHelpContext; |
| } PROPPAGEINFO, *LPPROPPAGEINFO; |
| |
| HRESULT SetPageSite( [in] IPropertyPageSite *pPageSite ); |
| |
| HRESULT Activate( |
| [in] HWND hWndParent, |
| [in] LPCRECT pRect, |
| [in] BOOL bModal); |
| |
| HRESULT Deactivate(); |
| |
| HRESULT GetPageInfo( [out] PROPPAGEINFO *pPageInfo ); |
| |
| HRESULT SetObjects( |
| [in] ULONG cObjects, |
| [in, size_is(cObjects)] IUnknown **ppUnk); |
| |
| HRESULT Show( [in] UINT nCmdShow ); |
| |
| HRESULT Move( [in] LPCRECT pRect ); |
| |
| HRESULT IsPageDirty(); |
| |
| HRESULT Apply(); |
| |
| HRESULT Help( [in] LPCOLESTR pszHelpDir ); |
| |
| HRESULT TranslateAccelerator( [in] MSG *pMsg ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPropertyPage2 interface |
| */ |
| [ |
| object, |
| uuid(01e44665-24ac-101b-84ed-08002b2ec713), |
| pointer_default(unique) |
| ] |
| interface IPropertyPage2 : IPropertyPage |
| { |
| typedef IPropertyPage2 *LPPROPERTYPAGE2; |
| |
| HRESULT EditProperty( [in] DISPID dispID ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPropertyPageSite interface |
| */ |
| [ |
| object, |
| uuid(b196b28c-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IPropertyPageSite : IUnknown |
| { |
| typedef IPropertyPageSite *LPPROPERTYPAGESITE; |
| |
| typedef enum tagPROPPAGESTATUS |
| { |
| PROPPAGESTATUS_DIRTY = 0x1, |
| PROPPAGESTATUS_VALIDATE = 0x2, |
| PROPPAGESTATUS_CLEAN = 0x4 |
| } PROPPAGESTATUS; |
| |
| HRESULT OnStatusChange( [in] DWORD dwFlags ); |
| HRESULT GetLocaleID( [out] LCID *pLocaleID ); |
| HRESULT GetPageContainer( [out] IUnknown **ppUnk ); |
| HRESULT TranslateAccelerator( [in] MSG *pMsg ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPropertyNotifySink interface |
| */ |
| [ |
| object, |
| uuid(9bfbbc02-eff1-101a-84ed-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface IPropertyNotifySink : IUnknown |
| { |
| typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK; |
| |
| HRESULT OnChanged( [in] DISPID dispID ); |
| HRESULT OnRequestEdit( [in] DISPID dispID ); |
| } |
| |
| |
| /***************************************************************************** |
| * ISimpleFrameSite interface |
| */ |
| [ |
| object, |
| uuid(742b0e01-14e6-101b-914e-00aa00300cab), |
| pointer_default(unique) |
| ] |
| interface ISimpleFrameSite : IUnknown |
| { |
| typedef ISimpleFrameSite *LPSIMPLEFRAMESITE; |
| |
| HRESULT PreMessageFilter( |
| [in] HWND hWnd, |
| [in] UINT msg, |
| [in] WPARAM wp, |
| [in] LPARAM lp, |
| [out] LRESULT *plResult, |
| [out] DWORD *pdwCookie); |
| |
| HRESULT PostMessageFilter( |
| [in] HWND hWnd, |
| [in] UINT msg, |
| [in] WPARAM wp, |
| [in] LPARAM lp, |
| [out] LRESULT *plResult, |
| [in] DWORD dwCookie); |
| } |
| |
| |
| /***************************************************************************** |
| * IPersistStreamInit interface |
| */ |
| [ |
| object, |
| uuid(7fd52380-4e07-101b-ae2d-08002b2ec713), |
| pointer_default(unique) |
| ] |
| interface IPersistStreamInit : IPersist |
| { |
| typedef IPersistStreamInit *LPPERSISTSTREAMINIT; |
| |
| HRESULT IsDirty(); |
| HRESULT Load( [in] LPSTREAM pStm ); |
| HRESULT Save( [in] LPSTREAM pStm, [in] BOOL fClearDirty ); |
| HRESULT GetSizeMax( [out] ULARGE_INTEGER *pcbSize ); |
| HRESULT InitNew(); |
| } |
| |
| |
| /***************************************************************************** |
| * IPersistMemory interface |
| */ |
| [ |
| object, |
| uuid(bd1ae5e0-a6ae-11ce-bd37-504200c10000), |
| pointer_default(unique) |
| ] |
| interface IPersistMemory : IPersist |
| { |
| typedef IPersistMemory *LPPERSISTMEMORY; |
| |
| HRESULT IsDirty(); |
| |
| [local] |
| HRESULT Load( |
| [in, size_is(cbSize)] LPVOID pMem, |
| [in] ULONG cbSize); |
| |
| [call_as(Load)] |
| HRESULT RemoteLoad( |
| [in, size_is(cbSize)] BYTE *pMem, |
| [in] ULONG cbSize); |
| |
| [local] |
| HRESULT Save( |
| [out, size_is(cbSize)] LPVOID pMem, |
| [in] BOOL fClearDirty, |
| [in] ULONG cbSize); |
| |
| [call_as(Save)] |
| HRESULT RemoteSave( |
| [out, size_is(cbSize)] BYTE *pMem, |
| [in] BOOL fClearDirty, |
| [in] ULONG cbSize); |
| |
| HRESULT GetSizeMax( [out] ULONG *pCbSize ); |
| HRESULT InitNew(); |
| } |
| |
| |
| /***************************************************************************** |
| * IPersistPropertyBag interface |
| */ |
| [ |
| object, |
| uuid(37d84f60-42cb-11ce-8135-00aa004bb851), |
| pointer_default(unique) |
| ] |
| interface IPersistPropertyBag : IPersist |
| { |
| typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG; |
| |
| HRESULT InitNew(); |
| |
| HRESULT Load( |
| [in] IPropertyBag *pPropBag, |
| [in] IErrorLog *pErrorLog); |
| |
| HRESULT Save( |
| [in] IPropertyBag *pPropBag, |
| [in] BOOL fClearDirty, |
| [in] BOOL fSaveAllProperties); |
| } |
| |
| |
| /***************************************************************************** |
| * IPropertyBag2 interface |
| */ |
| [ |
| object, |
| uuid(22f55882-280b-11d0-a8a9-00a0c90c2004), |
| pointer_default(unique) |
| ] |
| interface IPropertyBag2 : IUnknown |
| { |
| typedef IPropertyBag2 *LPPROPERTYBAG2; |
| |
| typedef enum tagPROPBAG2_TYPE |
| { |
| PROPBAG2_TYPE_UNDEFINED = 0, |
| PROPBAG2_TYPE_DATA = 1, |
| PROPBAG2_TYPE_URL = 2, |
| PROPBAG2_TYPE_OBJECT = 3, |
| PROPBAG2_TYPE_STREAM = 4, |
| PROPBAG2_TYPE_STORAGE = 5, |
| PROPBAG2_TYPE_MONIKER = 6 |
| } PROPBAG2_TYPE; |
| |
| typedef struct tagPROPBAG2 |
| { |
| DWORD dwType; |
| VARTYPE vt; |
| CLIPFORMAT cfType; |
| DWORD dwHint; |
| LPOLESTR pstrName; |
| CLSID clsid; |
| } PROPBAG2; |
| |
| HRESULT Read( |
| [in] ULONG cProperties, |
| [in] PROPBAG2 *pPropBag, |
| [in] IErrorLog *pErrLog, |
| [out] VARIANT *pvarValue, |
| [out] HRESULT *phrError); |
| |
| HRESULT Write( |
| [in] ULONG cProperties, |
| [in] PROPBAG2 *pPropBag, |
| [in] VARIANT *pvarValue); |
| |
| HRESULT CountProperties( |
| [out] ULONG *pcProperties ); |
| |
| HRESULT GetPropertyInfo( |
| [in] ULONG iProperty, |
| [in] ULONG cProperties, |
| [out] PROPBAG2 *pPropBag, |
| [out] ULONG *pcProperties); |
| |
| HRESULT LoadObject( |
| [in] LPCOLESTR pstrName, |
| [in] DWORD dwHint, |
| [in] IUnknown *pUnkObject, |
| [in] IErrorLog *pErrLog); |
| } |
| |
| |
| /***************************************************************************** |
| * IPersistPropertyBag2 interface |
| */ |
| [ |
| object, |
| uuid(22f55881-280b-11d0-a8a9-00a0c90c2004), |
| pointer_default(unique) |
| ] |
| interface IPersistPropertyBag2 : IPersist |
| { |
| typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2; |
| |
| HRESULT InitNew(); |
| |
| HRESULT Load( |
| [in] IPropertyBag2 *pPropBag, |
| [in] IErrorLog *pErrorLog); |
| |
| HRESULT Save( |
| [in] IPropertyBag2 *pPropBag, |
| [in] BOOL fClearDirty, |
| [in] BOOL fSaveAllProperties); |
| |
| HRESULT IsDirty(); |
| } |
| |
| |
| /***************************************************************************** |
| * ISpecifyPropertyPages interface |
| */ |
| [ |
| object, |
| uuid(b196b28b-bab4-101a-b69c-00aa00341d07), |
| pointer_default(unique) |
| ] |
| interface ISpecifyPropertyPages : IUnknown |
| { |
| typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES; |
| |
| typedef struct tagCAUUID |
| { |
| ULONG cElems; |
| [size_is(cElems)] GUID *pElems; |
| } CAUUID, *LPCAUUID; |
| |
| HRESULT GetPages( [out] CAUUID *pPages ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPerPropertyBrowsing interface |
| */ |
| [ |
| object, |
| uuid(376bd3aa-3845-101b-84ed-08002b2ec713), |
| pointer_default(unique) |
| ] |
| interface IPerPropertyBrowsing : IUnknown |
| { |
| typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING; |
| |
| typedef struct tagCALPOLESTR |
| { |
| ULONG cElems; |
| [size_is(cElems)] LPOLESTR *pElems; |
| } CALPOLESTR, *LPCALPOLESTR; |
| |
| typedef struct tagCADWORD |
| { |
| ULONG cElems; |
| [size_is(cElems)] DWORD *pElems; |
| } CADWORD, *LPCADWORD; |
| |
| HRESULT GetDisplayString( |
| [in] DISPID dispID, |
| [out] BSTR *pBstr); |
| |
| HRESULT MapPropertyToPage( |
| [in] DISPID dispID, |
| [out] CLSID *pClsid); |
| |
| HRESULT GetPredefinedStrings( |
| [in] DISPID dispID, |
| [out] CALPOLESTR *pCaStringsOut, |
| [out] CADWORD *pCaCookiesOut); |
| |
| HRESULT GetPredefinedValue( |
| [in] DISPID dispID, |
| [in] DWORD dwCookie, |
| [out] VARIANT *pVarOut); |
| } |
| |
| |
| /***************************************************************************** |
| * IAdviseSinkEx interface |
| */ |
| [ |
| object, |
| uuid(3af24290-0c96-11ce-a0cf-00aa00600ab8), |
| pointer_default(unique) |
| ] |
| interface IAdviseSinkEx : IAdviseSink |
| { |
| typedef IAdviseSinkEx *LPADVISESINKEX; |
| |
| [local] |
| void OnViewStatusChange( [in] DWORD dwViewStatus ); |
| |
| [call_as(OnViewStatusChange)] |
| HRESULT RemoteOnViewStatusChange( [in] DWORD dwViewStatus ); |
| } |
| |
| |
| /***************************************************************************** |
| * IPointerInactive interface |
| */ |
| [ |
| object, |
| uuid(55980ba0-35aa-11cf-b671-00aa004cd6d8), |
| pointer_default(unique) |
| ] |
| interface IPointerInactive : IUnknown |
| { |
| typedef IPointerInactive *LPPOINTERINACTIVE; |
| |
| HRESULT GetActivationPolicy( |
| [out] DWORD *pdwPolicy); |
| |
| HRESULT OnInactiveMouseMove( |
| [in] LPCRECT pRectBounds, |
| [in] LONG x, |
| [in] LONG y, |
| [in] DWORD grfKeyState); |
| |
| HRESULT OnInactiveSetCursor( |
| [in] LPCRECT pRectBounds, |
| [in] LONG x, |
| [in] LONG y, |
| [in] DWORD dwMouseMsg, |
| [in] BOOL fSetAlways); |
| } |
| |
| |
| /***************************************************************************** |
| * IObjectWithSite interface |
| */ |
| [ |
| object, |
| uuid(fc4801a3-2ba9-11cf-a229-00aa003d7352), |
| pointer_default(unique) |
| ] |
| interface IObjectWithSite : IUnknown |
| { |
| typedef IObjectWithSite *LPOBJECTWITHSITE; |
| |
| HRESULT SetSite( |
| [in] IUnknown * pUnkSite); |
| |
| HRESULT GetSite( |
| [in] REFIID riid, |
| [out, iid_is(riid)] PVOID *ppvSite); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleUndoUnit interface |
| */ |
| interface IOleUndoManager; /* forward declaration */ |
| [ |
| object, |
| uuid(894ad3b0-ef97-11ce-9bc9-00aa00608e01), |
| pointer_default(unique) |
| ] |
| interface IOleUndoUnit : IUnknown |
| { |
| typedef IOleUndoUnit *LPOLEUNDOUNIT; |
| |
| HRESULT Do( [in] IOleUndoManager *pUndoManager ); |
| HRESULT GetDescription( [out] BSTR *pBstr ); |
| HRESULT GetUnitType( [out] CLSID *pClsid, [out] LONG *plID ); |
| HRESULT OnNextAdd(); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleParentUndoUnit interface |
| */ |
| [ |
| object, |
| uuid(a1faf330-ef97-11ce-9bc9-00aa00608e01), |
| pointer_default(unique) |
| ] |
| interface IOleParentUndoUnit : IOleUndoUnit |
| { |
| typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT; |
| |
| HRESULT Open( [in] IOleParentUndoUnit *pPUU ); |
| HRESULT Close( [in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit ); |
| HRESULT Add( [in] IOleUndoUnit *pUU ); |
| HRESULT FindUnit( [in] IOleUndoUnit *pUU ); |
| HRESULT GetParentState( [out] DWORD *pdwState ); |
| } |
| |
| |
| /***************************************************************************** |
| * IEnumOleUndoUnits interface |
| */ |
| [ |
| object, |
| uuid(b3e7c340-ef97-11ce-9bc9-00aa00608e01), |
| pointer_default(unique) |
| ] |
| interface IEnumOleUndoUnits : IUnknown |
| { |
| typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS; |
| |
| [local] |
| HRESULT Next( |
| [in] ULONG cElt, |
| [out, size_is(cElt), length_is(*pcEltFetched)] IOleUndoUnit **rgElt, |
| [out] ULONG *pcEltFetched); |
| |
| [call_as(Next)] |
| HRESULT RemoteNext( |
| [in] ULONG cElt, |
| [out, size_is(cElt), length_is(*pcEltFetched)] IOleUndoUnit **rgElt, |
| [out] ULONG *pcEltFetched); |
| |
| HRESULT Skip( [in] ULONG cElt ); |
| |
| HRESULT Reset(); |
| |
| HRESULT Clone( [out] IEnumOleUndoUnits **ppEnum ); |
| } |
| |
| |
| /***************************************************************************** |
| * IOleUndoManager interface |
| */ |
| [ |
| object, |
| uuid(d001f200-ef97-11ce-9bc9-00aa00608e01), |
| pointer_default(unique) |
| ] |
| interface IOleUndoManager : IUnknown |
| { |
| cpp_quote("#define SID_SOleUndoManager IID_IOleUndoManager") |
| typedef IOleUndoManager *LPOLEUNDOMANAGER; |
| |
| HRESULT Open( [in] IOleParentUndoUnit *pPUU ); |
| HRESULT Close( [in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit ); |
| HRESULT Add( [in] IOleUndoUnit *pUU ); |
| HRESULT GetOpenParentState( [out] DWORD *pdwState ); |
| HRESULT DiscardFrom( [in] IOleUndoUnit *pUU ); |
| HRESULT UndoTo( [in] IOleUndoUnit *pUU ); |
| HRESULT RedoTo( [in] IOleUndoUnit *pUU ); |
| HRESULT EnumUndoable( [out] IEnumOleUndoUnits **ppEnum ); |
| HRESULT EnumRedoable( [out] IEnumOleUndoUnits **ppEnum ); |
| HRESULT GetLastUndoDescription( [out] BSTR *pBstr ); |
| HRESULT GetLastRedoDescription( [out] BSTR *pBstr ); |
| HRESULT Enable( [in] BOOL fEnable ); |
| } |
| |
| |
| /***************************************************************************** |
| * IQuickActivate interface |
| */ |
| [ |
| object, |
| uuid(cf51ed10-62fe-11cf-bf86-00a0c9034836), |
| pointer_default(unique) |
| ] |
| interface IQuickActivate : IUnknown |
| { |
| typedef IQuickActivate *LPQUICKACTIVATE; |
| |
| typedef enum tagQACONTAINERFLAGS |
| { |
| QACONTAINER_SHOWHATCHING = 0x1, |
| QACONTAINER_SHOWGRABHANDLES = 0x2, |
| QACONTAINER_USERMODE = 0x4, |
| QACONTAINER_DISPLAYASDEFAULT = 0x8, |
| QACONTAINER_UIDEAD = 0x10, |
| QACONTAINER_AUTOCLIP = 0x20, |
| QACONTAINER_MESSAGEREFLECT = 0x40, |
| QACONTAINER_SUPPORTSMNEMONICS = 0x80 |
| } QACONTAINERFLAGS; |
| |
| typedef DWORD OLE_COLOR; |
| |
| typedef struct tagQACONTAINER |
| { |
| ULONG cbSize; |
| IOleClientSite *pClientSite; |
| IAdviseSinkEx *pAdviseSink; |
| IPropertyNotifySink *pPropertyNotifySink; |
| IUnknown *pUnkEventSink; |
| DWORD dwAmbientFlags; |
| OLE_COLOR colorFore; |
| OLE_COLOR colorBack; |
| IFont *pFont; |
| IOleUndoManager *pUndoMgr; |
| DWORD dwAppearance; |
| LONG lcid; |
| HPALETTE hpal; |
| IBindHost *pBindHost; |
| IOleControlSite *pOleControlSite; |
| IServiceProvider *pServiceProvider; |
| } QACONTAINER; |
| |
| typedef struct tagQACONTROL |
| { |
| ULONG cbSize; |
| DWORD dwMiscStatus; |
| DWORD dwViewStatus; |
| DWORD dwEventCookie; |
| DWORD dwPropNotifyCookie; |
| DWORD dwPointerActivationPolicy; |
| } QACONTROL; |
| |
| [local] |
| HRESULT QuickActivate( |
| [in] QACONTAINER *pQaContainer, |
| [in,out] QACONTROL *pQaControl); |
| |
| [call_as(QuickActivate)] |
| HRESULT RemoteQuickActivate( |
| [in] QACONTAINER *pQaContainer, |
| [out] QACONTROL *pQaControl); |
| |
| HRESULT SetContentExtent( [in] LPSIZEL pSizel ); |
| |
| HRESULT GetContentExtent( [out] LPSIZEL pSizel ); |
| } |