123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955 |
- /*
- * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
- import "objidl.idl";
- /*****************************************************************************
- * IOleTypes interface
- */
- [
- uuid(b0916c84-7416-101a-bcea-08002b2b79ef)
- ]
- interface IOLETypes
- {
- typedef enum tagOLERENDER
- {
- OLERENDER_NONE = 0,
- OLERENDER_DRAW = 1,
- OLERENDER_FORMAT = 2,
- OLERENDER_ASIS = 3
- } OLERENDER, *LPOLERENDER;
- typedef struct tagOBJECTDESCRIPTOR
- {
- ULONG cbSize;
- CLSID clsid;
- DWORD dwDrawAspect;
- SIZEL sizel;
- POINTL pointl;
- DWORD dwStatus;
- DWORD dwFullUserTypeName;
- DWORD dwSrcOfCopy;
- } OBJECTDESCRIPTOR, *POBJECTDESCRIPTOR, *LPOBJECTDESCRIPTOR,
- LINKSRCDESCRIPTOR, *PLINKSRCDESCRIPTOR, *LPLINKSRCDESCRIPTOR;
- }
- /*****************************************************************************
- * IOleWindow interface
- */
- [
- object,
- uuid(00000114-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleWindow : IUnknown
- {
- typedef [unique] IOleWindow *LPOLEWINDOW;
- HRESULT GetWindow(
- [out] HWND *phwnd);
- HRESULT ContextSensitiveHelp(
- [in] BOOL fEnterMode);
- }
- /*****************************************************************************
- * IOleInPlaceObject interface
- */
- [
- object,
- uuid(00000113-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleInPlaceObject : IOleWindow
- {
- typedef [unique] IOleInPlaceObject *LPOLEINPLACEOBJECT;
- HRESULT InPlaceDeactivate();
- HRESULT UIDeactivate();
- HRESULT SetObjectRects(
- [in] LPCRECT lprcPosRect,
- [in] LPCRECT lprcClipRect);
- HRESULT ReactivateAndUndo();
- }
- /* avoid conflict with Wine Unicode macros */
- cpp_quote("#ifdef __WINESRC__")
- cpp_quote("#undef TranslateAccelerator")
- cpp_quote("#endif")
- /*****************************************************************************
- * IOleInPlaceActiveObject interface
- */
- interface IOleInPlaceUIWindow; /* forward declaration */
- [
- object,
- uuid(00000117-0000-0000-c000-000000000046)
- ]
- interface IOleInPlaceActiveObject : IOleWindow
- {
- typedef [unique] IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
- [local]
- HRESULT TranslateAccelerator(
- [in] LPMSG lpmsg);
- [call_as(TranslateAccelerator)]
- HRESULT RemoteTranslateAccelerator();
- HRESULT OnFrameWindowActivate(
- [in] BOOL fActivate);
- HRESULT OnDocWindowActivate(
- [in] BOOL fActivate);
- [local]
- HRESULT ResizeBorder(
- [in] LPCRECT prcBorder,
- [in, unique] IOleInPlaceUIWindow *pUIWindow,
- [in] BOOL fFrameWindow);
- [call_as(ResizeBorder)]
- HRESULT RemoteResizeBorder(
- [in] LPCRECT prcBorder,
- [in] REFIID riid,
- [in, unique, iid_is(riid)] IOleInPlaceUIWindow *pUIWindow,
- [in] BOOL fFrameWindow);
- HRESULT EnableModeless(
- [in] BOOL fEnable);
- }
- /*****************************************************************************
- * IOleInPlaceUIWindow interface
- */
- [
- object,
- uuid(00000115-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleInPlaceUIWindow : IOleWindow
- {
- typedef [unique] IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
- typedef RECT BORDERWIDTHS;
- typedef LPRECT LPBORDERWIDTHS;
- typedef LPCRECT LPCBORDERWIDTHS;
- HRESULT GetBorder(
- [out] LPRECT lprectBorder);
- HRESULT RequestBorderSpace(
- [in, unique] LPCBORDERWIDTHS pborderwidths);
- HRESULT SetBorderSpace(
- [in, unique] LPCBORDERWIDTHS pborderwidths);
- HRESULT SetActiveObject(
- [in, unique] IOleInPlaceActiveObject *pActiveObject,
- [in, string, unique] LPCOLESTR pszObjName);
- }
- /*****************************************************************************
- * IOleInPlaceFrame interface
- */
- [
- object,
- uuid(00000116-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleInPlaceFrame : IOleInPlaceUIWindow
- {
- typedef [unique] IOleInPlaceFrame *LPOLEINPLACEFRAME;
- typedef struct tagOleInPlaceFrameInfo
- {
- UINT cb;
- BOOL fMDIApp;
- HWND hwndFrame;
- HACCEL haccel;
- UINT cAccelEntries;
- } OLEINPLACEFRAMEINFO, *LPOLEINPLACEFRAMEINFO;
- typedef struct tagOleMenuGroupWidths
- {
- LONG width[ 6 ];
- } OLEMENUGROUPWIDTHS, *LPOLEMENUGROUPWIDTHS;
- typedef HGLOBAL HOLEMENU;
- HRESULT InsertMenus(
- [in] HMENU hmenuShared,
- [in,out] LPOLEMENUGROUPWIDTHS lpMenuWidths);
- HRESULT SetMenu(
- [in] HMENU hmenuShared,
- [in] HOLEMENU holemenu,
- [in] HWND hwndActiveObject);
- HRESULT RemoveMenus(
- [in] HMENU hmenuShared);
- HRESULT SetStatusText(
- [in, unique] LPCOLESTR pszStatusText);
- HRESULT EnableModeless(
- [in] BOOL fEnable);
- HRESULT TranslateAccelerator(
- [in] LPMSG lpmsg,
- [in] WORD wID);
- }
- /*****************************************************************************
- * IOleInPlaceSite interface
- */
- [
- object,
- uuid(00000119-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleInPlaceSite : IOleWindow
- {
- typedef [unique] IOleInPlaceSite *LPOLEINPLACESITE;
- HRESULT CanInPlaceActivate();
- HRESULT OnInPlaceActivate();
- HRESULT OnUIActivate();
- HRESULT GetWindowContext(
- [out] IOleInPlaceFrame **ppFrame,
- [out] IOleInPlaceUIWindow **ppDoc,
- [out] LPRECT lprcPosRect,
- [out] LPRECT lprcClipRect,
- [in, out] LPOLEINPLACEFRAMEINFO lpFrameInfo);
- HRESULT Scroll(
- [in] SIZE scrollExtant);
- HRESULT OnUIDeactivate(
- [in] BOOL fUndoable);
- HRESULT OnInPlaceDeactivate();
- HRESULT DiscardUndoState();
- HRESULT DeactivateAndUndo();
- HRESULT OnPosRectChange(
- [in] LPCRECT lprcPosRect);
- }
- /*****************************************************************************
- * IParseDisplayName interface
- */
- [
- object,
- uuid(0000011a-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IParseDisplayName : IUnknown
- {
- typedef [unique] IParseDisplayName *LPPARSEDISPLAYNAME;
- HRESULT ParseDisplayName(
- [in, unique] IBindCtx *pbc,
- [in] LPOLESTR pszDisplayName,
- [out] ULONG *pchEaten,
- [out] IMoniker **ppmkOut);
- }
- /*****************************************************************************
- * IOleContainer interface
- */
- [
- object,
- uuid(0000011b-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleContainer : IParseDisplayName
- {
- typedef [unique] IOleContainer *LPOLECONTAINER;
- HRESULT EnumObjects(
- [in] DWORD grfFlags,
- [out] IEnumUnknown **ppenum);
- HRESULT LockContainer(
- [in] BOOL fLock);
- }
- /*****************************************************************************
- * IOleItemContainer interface
- */
- [
- object,
- uuid(0000011c-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleItemContainer : IOleContainer
- {
- typedef [unique] IOleItemContainer *LPOLEITEMCONTAINER;
- typedef enum tagBINDSPEED
- {
- BINDSPEED_INDEFINITE = 1,
- BINDSPEED_MODERATE = 2,
- BINDSPEED_IMMEDIATE = 3
- } BINDSPEED;
- typedef enum tagOLECONTF
- {
- OLECONTF_EMBEDDINGS = 1,
- OLECONTF_LINKS = 2,
- OLECONTF_OTHERS = 4,
- OLECONTF_OLNYUSER = 8,
- OLECONTF_ONLYIFRUNNING = 16
- } OLECONTF;
- cpp_quote("#ifdef __WINESRC__")
- cpp_quote("#undef GetObject")
- cpp_quote("#endif")
- HRESULT GetObject(
- [in] LPOLESTR pszItem,
- [in] DWORD dwSpeedNeeded,
- [in, unique] IBindCtx *pbc,
- [in] REFIID riid,
- [out, iid_is(riid)] void **ppvObject);
- HRESULT GetObjectStorage(
- [in] LPOLESTR pszItem,
- [in, unique] IBindCtx *pbc,
- [in] REFIID riid,
- [out, iid_is(riid)] void **ppvStorage);
- HRESULT IsRunning(
- [in] LPOLESTR pszItem);
- }
- /*****************************************************************************
- * IOleLink interface
- */
- [
- object,
- uuid(0000011d-0000-0000-c000-000000000046)
- ]
- interface IOleLink : IUnknown
- {
- typedef [unique] IOleLink *LPOLELINK;
- typedef enum tagOLEUPDATE
- {
- OLEUPDATE_ALWAYS = 1,
- OLEUPDATE_ONCALL = 3
- } OLEUPDATE, *POLEUPDATE, *LPOLEUPDATE;
- typedef enum tagOLELINKBIND
- {
- OLELINKBIND_EVENIFCLASSDIFF = 1
- } OLELINKBIND;
- HRESULT SetUpdateOptions(
- [in] DWORD dwUpdateOpt);
- HRESULT GetUpdateOptions(
- [out] DWORD *pdwUpdateOpt);
- HRESULT SetSourceMoniker(
- [in, unique] IMoniker *pmk,
- [in] REFCLSID rclsid);
- HRESULT GetSourceMoniker(
- [out] IMoniker **ppmk);
- HRESULT SetSourceDisplayName(
- [in]LPCOLESTR pszStatusText);
- HRESULT GetSourceDisplayName(
- [out] LPOLESTR *ppszDisplayName);
- HRESULT BindToSource(
- [in] DWORD bindflags,
- [in, unique] IBindCtx *pbc);
- HRESULT BindIfRunning();
- HRESULT GetBoundSource(
- [out] IUnknown **ppunk);
- HRESULT UnbindSource();
- HRESULT Update(
- [in, unique] IBindCtx *pbc);
- }
- /*****************************************************************************
- * IOleClientSite interface
- */
- [
- object,
- uuid(00000118-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleClientSite : IUnknown
- {
- typedef [unique] IOleClientSite * LPOLECLIENTSITE;
- HRESULT SaveObject();
- HRESULT GetMoniker(
- [in] DWORD dwAssign,
- [in] DWORD dwWhichMoniker,
- [out] IMoniker **ppmk);
- HRESULT GetContainer(
- [out] IOleContainer **ppContainer);
- HRESULT ShowObject();
- HRESULT OnShowWindow(
- [in] BOOL fShow);
- HRESULT RequestNewObjectLayout();
- }
- /*****************************************************************************
- * IOleCache interface
- */
- [
- object,
- uuid(0000011e-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleCache : IUnknown
- {
- typedef [unique] IOleCache *LPOLECACHE;
- HRESULT Cache(
- [in, unique] FORMATETC *pformatetc,
- [in] DWORD advf,
- [out] DWORD *pdwConnection);
- HRESULT Uncache(
- [in] DWORD dwConnection);
- HRESULT EnumCache(
- [out] IEnumSTATDATA **ppenumSTATDATA);
- HRESULT InitCache(
- [in, unique] IDataObject *pDataObject);
- HRESULT SetData(
- [in, unique] FORMATETC *pformatetc,
- [in, unique] STGMEDIUM *pmedium,
- [in] BOOL fRelease);
- }
- /*****************************************************************************
- * IOleCache2 interface
- */
- [
- object,
- uuid(00000128-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleCache2 : IOleCache
- {
- typedef [unique] IOleCache2 *LPOLECACHE2;
- const DWORD UPDFCACHE_NODATACACHE = 0x00000001;
- const DWORD UPDFCACHE_ONSAVECACHE = 0x00000002;
- const DWORD UPDFCACHE_ONSTOPCACHE = 0x00000004;
- const DWORD UPDFCACHE_NORMALCACHE = 0x00000008;
- const DWORD UPDFCACHE_IFBLANK = 0x00000010;
- const DWORD UPDFCACHE_ONLYIFBLANK = 0x80000000;
- const DWORD UPDFCACHE_IFBLANKORONSAVECACHE = (UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE);
- const DWORD UPDFCACHE_ALL = ((DWORD)(~(UPDFCACHE_ONLYIFBLANK)));
- const DWORD UPDFCACHE_ALLBUTNODATACACHE = (UPDFCACHE_ALL & ((DWORD)(~UPDFCACHE_NODATACACHE)));
- typedef enum tagDISCARDCACHE
- {
- DISCARDCACHE_SAVEIFDIRTY = 0,
- DISCARDCACHE_NOSAVE = 1
- } DISCARDCACHE;
- [local]
- HRESULT UpdateCache(
- [in] LPDATAOBJECT pDataObject,
- [in] DWORD grfUpdf,
- [in] LPVOID pReserved);
- [call_as(UpdateCache)]
- HRESULT RemoteUpdateCache(
- [in] LPDATAOBJECT pDataObject,
- [in] DWORD grfUpdf,
- [in] LONG_PTR pReserved);
- HRESULT DiscardCache(
- [in] DWORD dwDiscardOptions);
- }
- /*****************************************************************************
- * IOleCacheControl interface
- */
- [
- object,
- uuid(00000129-0000-0000-c000-000000000046)
- ]
- interface IOleCacheControl : IUnknown
- {
- typedef [unique] IOleCacheControl *LPOLECACHECONTROL;
- HRESULT OnRun(
- LPDATAOBJECT pDataObject);
- HRESULT OnStop();
- }
- /*****************************************************************************
- * IEnumOLEVERB interface
- */
- [
- object,
- uuid(00000104-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IEnumOLEVERB : IUnknown
- {
- typedef [unique] IEnumOLEVERB *LPENUMOLEVERB;
- typedef struct tagOLEVERB
- {
- LONG lVerb;
- LPOLESTR lpszVerbName;
- DWORD fuFlags;
- DWORD grfAttribs;
- } OLEVERB, *LPOLEVERB;
- typedef enum tagOLEVERBATTRIB
- {
- OLEVERBATTRIB_NEVERDIRTIES = 1,
- OLEVERBATTRIB_ONCONTAINERMENU = 2
- } OLEVERBATTRIB;
- [local]
- HRESULT Next(
- [in] ULONG celt,
- [out, size_is(celt), length_is(*pceltFetched)] LPOLEVERB rgelt,
- [out] ULONG *pceltFetched);
- [call_as(Next)]
- HRESULT RemoteNext(
- [in] ULONG celt,
- [out, size_is(celt), length_is(*pceltFetched)] LPOLEVERB rgelt,
- [out] ULONG *pceltFetched);
- HRESULT Skip(
- [in] ULONG celt);
- HRESULT Reset();
- HRESULT Clone(
- [out] IEnumOLEVERB **ppenum);
- }
- /*****************************************************************************
- * IOleObject interface
- */
- [
- object,
- uuid(00000112-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IOleObject : IUnknown
- {
- typedef [unique] IOleObject *LPOLEOBJECT;
- typedef enum tagOLEGETMONIKER
- {
- OLEGETMONIKER_ONLYIFTHERE = 1,
- OLEGETMONIKER_FORCEASSIGN = 2,
- OLEGETMONIKER_UNASSIGN = 3,
- OLEGETMONIKER_TEMPFORUSER = 4
- } OLEGETMONIKER;
- typedef enum tagOLEWHICHMK
- {
- OLEWHICHMK_CONTAINER = 1,
- OLEWHICHMK_OBJREL = 2,
- OLEWHICHMK_OBJFULL = 3
- } OLEWHICHMK;
- typedef enum tagUSERCLASSTYPE
- {
- USERCLASSTYPE_FULL = 1,
- USERCLASSTYPE_SHORT = 2,
- USERCLASSTYPE_APPNAME = 3
- } USERCLASSTYPE;
- typedef enum tagOLEMISC
- {
- OLEMISC_RECOMPOSEONRESIZE = 0x1,
- OLEMISC_ONLYICONIC = 0x2,
- OLEMISC_INSERTNOTREPLACE = 0x4,
- OLEMISC_STATIC = 0x8,
- OLEMISC_CANTLINKINSIDE = 0x10,
- OLEMISC_CANLINKBYOLE1 = 0x20,
- OLEMISC_ISLINKOBJECT = 0x40,
- OLEMISC_INSIDEOUT = 0x80,
- OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
- OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
- OLEMISC_INVISIBLEATRUNTIME = 0x400,
- OLEMISC_ALWAYSRUN = 0x800,
- OLEMISC_ACTSLIKEBUTTON = 0x1000,
- OLEMISC_ACTSLIKELABEL = 0x2000,
- OLEMISC_NOUIACTIVATE = 0x4000,
- OLEMISC_ALIGNABLE = 0x8000,
- OLEMISC_SIMPLEFRAME = 0x10000,
- OLEMISC_SETCLIENTSITEFIRST = 0x20000,
- OLEMISC_IMEMODE = 0x40000,
- OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
- OLEMISC_WANTSTOMENUMERGE = 0x100000,
- OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
- } OLEMISC;
- typedef enum tagOLECLOSE
- {
- OLECLOSE_SAVEIFDIRTY = 0,
- OLECLOSE_NOSAVE = 1,
- OLECLOSE_PROMPTSAVE = 2
- } OLECLOSE;
- HRESULT SetClientSite(
- [in, unique] IOleClientSite *pClientSite);
- HRESULT GetClientSite(
- [out] IOleClientSite **ppClientSite);
- HRESULT SetHostNames(
- [in] LPCOLESTR szContainerApp,
- [in, unique] LPCOLESTR szContainerObj);
- HRESULT Close(
- [in] DWORD dwSaveOption);
- HRESULT SetMoniker(
- [in] DWORD dwWhichMoniker,
- [in, unique] IMoniker *pmk);
- HRESULT GetMoniker(
- [in] DWORD dwAssign,
- [in] DWORD dwWhichMoniker,
- [out] IMoniker **ppmk);
- HRESULT InitFromData(
- [in, unique] IDataObject *pDataObject,
- [in] BOOL fCreation,
- [in] DWORD dwReserved);
- HRESULT GetClipboardData(
- [in] DWORD dwReserved,
- [out] IDataObject **ppDataObject);
- HRESULT DoVerb(
- [in] LONG iVerb,
- [in, unique] LPMSG lpmsg,
- [in, unique] IOleClientSite *pActiveSite,
- [in] LONG lindex,
- [in] HWND hwndParent,
- [in, unique] LPCRECT lprcPosRect);
- HRESULT EnumVerbs(
- [out] IEnumOLEVERB **ppEnumOleVerb);
- HRESULT Update();
- HRESULT IsUpToDate();
- HRESULT GetUserClassID(
- [out] CLSID *pClsid);
- HRESULT GetUserType(
- [in] DWORD dwFormOfType,
- [out] LPOLESTR *pszUserType);
- HRESULT SetExtent(
- [in] DWORD dwDrawAspect,
- [in] SIZEL *psizel);
- HRESULT GetExtent(
- [in] DWORD dwDrawAspect,
- [out] SIZEL *psizel);
- HRESULT Advise(
- [in, unique] IAdviseSink *pAdvSink,
- [out] DWORD *pdwConnection);
- HRESULT Unadvise(
- [in] DWORD dwConnection);
- HRESULT EnumAdvise(
- [out] IEnumSTATDATA **ppenumAdvise);
- HRESULT GetMiscStatus(
- [in] DWORD dwAspect,
- [out] DWORD *pdwStatus);
- HRESULT SetColorScheme(
- [in] LOGPALETTE *pLogpal);
- }
- /*****************************************************************************
- * IOleAdviseHolder interface
- */
- [
- local,
- object,
- uuid(00000111-0000-0000-c000-000000000046)
- ]
- interface IOleAdviseHolder : IUnknown
- {
- typedef [unique] IOleAdviseHolder * LPOLEADVISEHOLDER;
- HRESULT Advise(
- [in, unique] IAdviseSink *pAdvise,
- [out] DWORD *pdwConnection);
- HRESULT Unadvise(
- [in] DWORD dwConnection);
- HRESULT EnumAdvise(
- [out] IEnumSTATDATA **ppenumAdvise);
- HRESULT SendOnRename(
- [in, unique] IMoniker *pmk);
- HRESULT SendOnSave();
- HRESULT SendOnClose();
- }
- /*****************************************************************************
- * IContinue interface
- */
- [
- object,
- uuid(0000012a-0000-0000-c000-000000000046)
- ]
- interface IContinue : IUnknown
- {
- HRESULT FContinue();
- }
- /*****************************************************************************
- * IViewObject interface
- */
- [
- object,
- uuid(0000010d-0000-0000-c000-000000000046)
- ]
- interface IViewObject : IUnknown
- {
- typedef [unique] IViewObject *LPVIEWOBJECT;
- [local]
- HRESULT Draw(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in, unique] void * pvAspect,
- [in, unique] DVTARGETDEVICE *ptd,
- [in] HDC hdcTargetDev,
- [in] HDC hdcDraw,
- [in] LPCRECTL lprcBounds,
- [in, unique] LPCRECTL lprcWBounds,
- [in] BOOL (*pfnContinue)(ULONG_PTR dwContinue),
- [in] ULONG_PTR dwContinue);
- [call_as(Draw)]
- HRESULT RemoteDraw(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in] ULONG_PTR pvAspect,
- [in, unique] DVTARGETDEVICE *ptd,
- [in] ULONG_PTR hdcTargetDev,
- [in] ULONG_PTR hdcDraw,
- [in] LPCRECTL lprcBounds,
- [in, unique] LPCRECTL lprcWBounds,
- [in] IContinue *pContinue);
- [local]
- HRESULT GetColorSet(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in, unique] void *pvAspect,
- [in, unique] DVTARGETDEVICE *ptd,
- [in] HDC hicTargetDev,
- [out] LOGPALETTE **ppColorSet);
- [call_as(GetColorSet)]
- HRESULT RemoteGetColorSet(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in] ULONG_PTR pvAspect,
- [in, unique] DVTARGETDEVICE *ptd,
- [in] ULONG_PTR hicTargetDev,
- [out] LOGPALETTE **ppColorSet);
- [local]
- HRESULT Freeze(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in, unique] void *pvAspect,
- [out] DWORD *pdwFreeze);
- [call_as(Freeze)]
- HRESULT RemoteFreeze(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in] ULONG_PTR pvAspect,
- [out] DWORD *pdwFreeze);
- HRESULT Unfreeze(
- [in] DWORD dwFreeze);
- HRESULT SetAdvise(
- [in] DWORD aspects,
- [in] DWORD advf,
- [in, unique] IAdviseSink *pAdvSink);
- [local]
- HRESULT GetAdvise(
- [out, unique] DWORD *pAspects,
- [out, unique] DWORD *pAdvf,
- [out] IAdviseSink **ppAdvSink);
- [call_as(GetAdvise)]
- HRESULT RemoteGetAdvise(
- [out] DWORD *pAspects,
- [out] DWORD *pAdvf,
- [out] IAdviseSink **ppAdvSink);
- }
- /*****************************************************************************
- * IViewObject2 interface
- */
- [
- object,
- uuid(00000127-0000-0000-c000-000000000046)
- ]
- interface IViewObject2 : IViewObject
- {
- typedef [unique] IViewObject2 *LPVIEWOBJECT2;
- HRESULT GetExtent(
- [in] DWORD dwDrawAspect,
- [in] LONG lindex,
- [in, unique] DVTARGETDEVICE* ptd,
- [out] LPSIZEL lpsizel);
- }
- /*****************************************************************************
- * IDropSource interface
- */
- [
- local,
- object,
- uuid(00000121-0000-0000-c000-000000000046)
- ]
- interface IDropSource : IUnknown
- {
- typedef [unique] IDropSource *LPDROPSOURCE;
- HRESULT QueryContinueDrag(
- [in] BOOL fEscapePressed,
- [in] DWORD grfKeyState);
- HRESULT GiveFeedback(
- [in] DWORD dwEffect);
- }
- /*****************************************************************************
- * IDropTarget interface
- */
- [
- object,
- uuid(00000122-0000-0000-c000-000000000046),
- pointer_default(unique)
- ]
- interface IDropTarget : IUnknown
- {
- typedef [unique] IDropTarget *LPDROPTARGET;
- const DWORD MK_ALT = 0x20;
- const DWORD DROPEFFECT_NONE = 0;
- const DWORD DROPEFFECT_COPY = 1;
- const DWORD DROPEFFECT_MOVE = 2;
- const DWORD DROPEFFECT_LINK = 4;
- const DWORD DROPEFFECT_SCROLL = 0x80000000;
- const DWORD DD_DEFSCROLLINSET = 11;
- const DWORD DD_DEFSCROLLDELAY = 50;
- const DWORD DD_DEFSCROLLINTERVAL = 50;
- const DWORD DD_DEFDRAGDELAY = 200;
- const DWORD DD_DEFDRAGMINDIST = 2;
- HRESULT DragEnter(
- [in, unique] IDataObject *pDataObj,
- [in] DWORD grfKeyState,
- [in] POINTL pt,
- [in, out] DWORD *pdwEffect);
- HRESULT DragOver(
- [in] DWORD grfKeyState,
- [in] POINTL pt,
- [in, out] DWORD *pdwEffect);
- HRESULT DragLeave();
- HRESULT Drop(
- [in, unique] IDataObject *pDataObj,
- [in] DWORD grfKeyState,
- [in] POINTL pt,
- [in, out] DWORD *pdwEffect);
- }
|