ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

oleidl.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 "objidl.idl";
00023 #endif
00024 
00025 interface IOleInPlaceActiveObject;
00026 
00027 cpp_quote("#include <winuser.h>")
00028 
00029 /*****************************************************************************
00030  * IOleTypes interface
00031  */
00032 [
00033     uuid(b0916c84-7416-101a-bcea-08002b2b79ef)
00034 ]
00035 interface IOLETypes
00036 {
00037     typedef enum tagOLERENDER
00038     {
00039     OLERENDER_NONE = 0,
00040     OLERENDER_DRAW = 1,
00041     OLERENDER_FORMAT = 2,
00042     OLERENDER_ASIS = 3
00043     } OLERENDER, *LPOLERENDER;
00044 
00045     typedef struct tagOBJECTDESCRIPTOR
00046     {
00047     ULONG cbSize;
00048     CLSID clsid;
00049     DWORD dwDrawAspect;
00050     SIZEL sizel;
00051     POINTL pointl;
00052     DWORD dwStatus;
00053     DWORD dwFullUserTypeName;
00054     DWORD dwSrcOfCopy;
00055     } OBJECTDESCRIPTOR,  *POBJECTDESCRIPTOR,   *LPOBJECTDESCRIPTOR,
00056       LINKSRCDESCRIPTOR, *PLINKSRCDESCRIPTOR,  *LPLINKSRCDESCRIPTOR;
00057 }
00058 
00059 
00060 /*****************************************************************************
00061  * IOleWindow interface
00062  */
00063 [
00064     object,
00065     uuid(00000114-0000-0000-c000-000000000046),
00066     pointer_default(unique)
00067 ]
00068 interface IOleWindow : IUnknown
00069 {
00070     typedef [unique] IOleWindow *LPOLEWINDOW;
00071 
00072     HRESULT GetWindow(
00073         [out] HWND *phwnd);
00074 
00075     HRESULT ContextSensitiveHelp(
00076         [in] BOOL fEnterMode);
00077 }
00078 
00079 
00080 /*****************************************************************************
00081  * IOleInPlaceObject interface
00082  */
00083 [
00084     object,
00085     uuid(00000113-0000-0000-c000-000000000046),
00086     pointer_default(unique)
00087 ]
00088 interface IOleInPlaceObject : IOleWindow
00089 {
00090     typedef [unique] IOleInPlaceObject *LPOLEINPLACEOBJECT;
00091 
00092     HRESULT InPlaceDeactivate();
00093 
00094     HRESULT UIDeactivate();
00095 
00096     HRESULT SetObjectRects(
00097         [in] LPCRECT lprcPosRect,
00098         [in] LPCRECT lprcClipRect);
00099 
00100     HRESULT ReactivateAndUndo();
00101 }
00102 
00103 
00104 /*****************************************************************************
00105  * IOleInPlaceUIWindow interface
00106  */
00107 [
00108     object,
00109     uuid(00000115-0000-0000-c000-000000000046),
00110     pointer_default(unique)
00111 ]
00112 
00113 interface IOleInPlaceUIWindow : IOleWindow
00114 {
00115     typedef [unique] IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
00116 
00117     typedef RECT BORDERWIDTHS;
00118     typedef LPRECT LPBORDERWIDTHS;
00119     typedef LPCRECT LPCBORDERWIDTHS;
00120 
00121     HRESULT GetBorder(
00122         [out] LPRECT lprectBorder);
00123 
00124     HRESULT RequestBorderSpace(
00125         [in, unique] LPCBORDERWIDTHS pborderwidths);
00126 
00127     HRESULT SetBorderSpace(
00128         [in, unique] LPCBORDERWIDTHS pborderwidths);
00129 
00130     HRESULT SetActiveObject(
00131         [in, unique] IOleInPlaceActiveObject *pActiveObject,
00132         [in, string, unique] LPCOLESTR pszObjName);
00133 }
00134 
00135 
00136 /* avoid conflict with Wine Unicode macros */
00137 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
00138 cpp_quote("#undef TranslateAccelerator")
00139 cpp_quote("#endif")
00140 
00141 /*****************************************************************************
00142  * IOleInPlaceFrame interface
00143  */
00144 [
00145     object,
00146     uuid(00000116-0000-0000-c000-000000000046),
00147     pointer_default(unique)
00148 ]
00149 interface IOleInPlaceFrame : IOleInPlaceUIWindow
00150 {
00151     typedef [unique] IOleInPlaceFrame *LPOLEINPLACEFRAME;
00152 
00153     typedef struct tagOleInPlaceFrameInfo
00154     {
00155         UINT cb;
00156         BOOL fMDIApp;
00157         HWND hwndFrame;
00158         HACCEL haccel;
00159         UINT cAccelEntries;
00160     } OLEINPLACEFRAMEINFO, *LPOLEINPLACEFRAMEINFO;
00161 
00162     typedef struct  tagOleMenuGroupWidths
00163     {
00164         LONG width[ 6 ];
00165     } OLEMENUGROUPWIDTHS, *LPOLEMENUGROUPWIDTHS;
00166 
00167     typedef HGLOBAL HOLEMENU;
00168 
00169     HRESULT InsertMenus(
00170         [in] HMENU hmenuShared,
00171         [in,out] LPOLEMENUGROUPWIDTHS lpMenuWidths);
00172 
00173     HRESULT SetMenu(
00174         [in] HMENU hmenuShared,
00175         [in] HOLEMENU holemenu,
00176         [in] HWND hwndActiveObject);
00177 
00178     HRESULT RemoveMenus(
00179         [in] HMENU hmenuShared);
00180 
00181     HRESULT SetStatusText(
00182         [in, unique] LPCOLESTR pszStatusText);
00183 
00184     HRESULT EnableModeless(
00185         [in] BOOL fEnable);
00186 
00187     HRESULT TranslateAccelerator(
00188         [in] LPMSG lpmsg,
00189         [in] WORD wID);
00190 }
00191 
00192 
00193 /*****************************************************************************
00194  * IOleInPlaceActiveObject interface
00195  */
00196 [
00197     object,
00198     uuid(00000117-0000-0000-c000-000000000046)
00199 ]
00200 interface IOleInPlaceActiveObject : IOleWindow
00201 {
00202     typedef [unique] IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
00203 
00204     [local]
00205     HRESULT TranslateAccelerator(
00206         [in] LPMSG lpmsg);
00207 
00208     [call_as(TranslateAccelerator)]
00209     HRESULT RemoteTranslateAccelerator();
00210 
00211     HRESULT OnFrameWindowActivate(
00212         [in] BOOL fActivate);
00213 
00214     HRESULT OnDocWindowActivate(
00215         [in] BOOL fActivate);
00216 
00217     [local]
00218     HRESULT ResizeBorder(
00219         [in] LPCRECT prcBorder,
00220         [in, unique] IOleInPlaceUIWindow *pUIWindow,
00221         [in] BOOL fFrameWindow);
00222 
00223     [call_as(ResizeBorder)]
00224     HRESULT RemoteResizeBorder(
00225         [in] LPCRECT prcBorder,
00226         [in] REFIID riid,
00227         [in, unique, iid_is(riid)] IOleInPlaceUIWindow *pUIWindow,
00228         [in] BOOL fFrameWindow);
00229 
00230     HRESULT EnableModeless(
00231         [in] BOOL fEnable);
00232 }
00233 
00234 
00235 /*****************************************************************************
00236  * IOleInPlaceSite interface
00237  */
00238 [
00239     object,
00240     uuid(00000119-0000-0000-c000-000000000046),
00241     pointer_default(unique)
00242 ]
00243 interface IOleInPlaceSite : IOleWindow
00244 {
00245     typedef [unique] IOleInPlaceSite *LPOLEINPLACESITE;
00246 
00247     HRESULT CanInPlaceActivate();
00248     HRESULT OnInPlaceActivate();
00249     HRESULT OnUIActivate();
00250 
00251     HRESULT GetWindowContext(
00252         [out] IOleInPlaceFrame **ppFrame,
00253         [out] IOleInPlaceUIWindow **ppDoc,
00254         [out] LPRECT lprcPosRect,
00255         [out] LPRECT lprcClipRect,
00256         [in, out] LPOLEINPLACEFRAMEINFO lpFrameInfo);
00257 
00258     HRESULT Scroll(
00259         [in] SIZE scrollExtent);
00260 
00261     HRESULT OnUIDeactivate(
00262         [in] BOOL fUndoable);
00263 
00264     HRESULT OnInPlaceDeactivate();
00265     HRESULT DiscardUndoState();
00266     HRESULT DeactivateAndUndo();
00267 
00268     HRESULT OnPosRectChange(
00269         [in] LPCRECT lprcPosRect);
00270 }
00271 
00272 
00273 /*****************************************************************************
00274  * IParseDisplayName interface
00275  */
00276 [
00277     object,
00278     uuid(0000011a-0000-0000-c000-000000000046),
00279     pointer_default(unique)
00280 ]
00281 interface IParseDisplayName : IUnknown
00282 {
00283     typedef [unique] IParseDisplayName *LPPARSEDISPLAYNAME;
00284 
00285     HRESULT ParseDisplayName(
00286         [in, unique] IBindCtx *pbc,
00287         [in] LPOLESTR pszDisplayName,
00288         [out] ULONG *pchEaten,
00289         [out] IMoniker **ppmkOut);
00290 }
00291 
00292 
00293 /*****************************************************************************
00294  * IOleContainer interface
00295  */
00296 [
00297     object,
00298     uuid(0000011b-0000-0000-c000-000000000046),
00299     pointer_default(unique)
00300 ]
00301 interface IOleContainer : IParseDisplayName
00302 {
00303     typedef [unique] IOleContainer *LPOLECONTAINER;
00304 
00305     HRESULT EnumObjects(
00306         [in] DWORD grfFlags,
00307         [out] IEnumUnknown **ppenum);
00308 
00309     HRESULT LockContainer(
00310         [in] BOOL fLock);
00311 }
00312 
00313 
00314 /*****************************************************************************
00315  * IOleItemContainer interface
00316  */
00317 [
00318     object,
00319     uuid(0000011c-0000-0000-c000-000000000046),
00320     pointer_default(unique)
00321 ]
00322 interface IOleItemContainer : IOleContainer
00323 {
00324     typedef [unique] IOleItemContainer *LPOLEITEMCONTAINER;
00325 
00326     typedef enum tagBINDSPEED
00327     {
00328     BINDSPEED_INDEFINITE = 1,
00329     BINDSPEED_MODERATE = 2,
00330     BINDSPEED_IMMEDIATE = 3
00331     } BINDSPEED;
00332 
00333     typedef enum tagOLECONTF
00334     {
00335     OLECONTF_EMBEDDINGS = 1,
00336     OLECONTF_LINKS = 2,
00337     OLECONTF_OTHERS = 4,
00338     OLECONTF_ONLYUSER = 8,
00339     OLECONTF_ONLYIFRUNNING = 16
00340     } OLECONTF;
00341 
00342 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
00343 cpp_quote("#undef GetObject")
00344 cpp_quote("#endif")
00345     HRESULT GetObject(
00346         [in] LPOLESTR pszItem,
00347         [in] DWORD dwSpeedNeeded,
00348         [in, unique] IBindCtx *pbc,
00349         [in] REFIID riid,
00350         [out, iid_is(riid)] void **ppvObject);
00351 
00352     HRESULT GetObjectStorage(
00353         [in] LPOLESTR pszItem,
00354         [in, unique] IBindCtx *pbc,
00355         [in] REFIID riid,
00356         [out, iid_is(riid)] void **ppvStorage);
00357 
00358     HRESULT IsRunning(
00359         [in] LPOLESTR pszItem);
00360 }
00361 
00362 
00363 /*****************************************************************************
00364  * IOleLink interface
00365  */
00366 [
00367     object,
00368     uuid(0000011d-0000-0000-c000-000000000046)
00369 ]
00370 interface IOleLink : IUnknown
00371 {
00372     typedef [unique] IOleLink *LPOLELINK;
00373 
00374     typedef enum tagOLEUPDATE
00375     {
00376     OLEUPDATE_ALWAYS = 1,
00377     OLEUPDATE_ONCALL = 3
00378     } OLEUPDATE, *POLEUPDATE, *LPOLEUPDATE;
00379 
00380     typedef enum tagOLELINKBIND
00381     {
00382     OLELINKBIND_EVENIFCLASSDIFF = 1
00383     } OLELINKBIND;
00384 
00385     HRESULT SetUpdateOptions(
00386         [in] DWORD dwUpdateOpt);
00387 
00388     HRESULT GetUpdateOptions(
00389         [out] DWORD *pdwUpdateOpt);
00390 
00391     HRESULT SetSourceMoniker(
00392         [in, unique] IMoniker *pmk,
00393         [in] REFCLSID rclsid);
00394 
00395     HRESULT GetSourceMoniker(
00396         [out] IMoniker **ppmk);
00397 
00398     HRESULT SetSourceDisplayName(
00399         [in]LPCOLESTR pszStatusText);
00400 
00401     HRESULT GetSourceDisplayName(
00402         [out] LPOLESTR *ppszDisplayName);
00403 
00404     HRESULT BindToSource(
00405         [in] DWORD bindflags,
00406         [in, unique] IBindCtx *pbc);
00407 
00408     HRESULT BindIfRunning();
00409 
00410     HRESULT GetBoundSource(
00411         [out] IUnknown **ppunk);
00412 
00413     HRESULT UnbindSource();
00414 
00415     HRESULT Update(
00416         [in, unique] IBindCtx *pbc);
00417 }
00418 
00419 
00420 /*****************************************************************************
00421  * IOleClientSite interface
00422  */
00423 [
00424     object,
00425     uuid(00000118-0000-0000-c000-000000000046),
00426     pointer_default(unique)
00427 ]
00428 interface IOleClientSite : IUnknown
00429 {
00430     typedef [unique] IOleClientSite * LPOLECLIENTSITE;
00431 
00432     HRESULT SaveObject();
00433 
00434     HRESULT GetMoniker(
00435         [in] DWORD dwAssign,
00436         [in] DWORD dwWhichMoniker,
00437         [out] IMoniker **ppmk);
00438 
00439     HRESULT GetContainer(
00440         [out] IOleContainer **ppContainer);
00441 
00442     HRESULT ShowObject();
00443 
00444     HRESULT OnShowWindow(
00445         [in] BOOL fShow);
00446 
00447     HRESULT RequestNewObjectLayout();
00448 }
00449 
00450 
00451 /*****************************************************************************
00452  * IOleCache interface
00453  */
00454 [
00455     object,
00456     uuid(0000011e-0000-0000-c000-000000000046),
00457     pointer_default(unique)
00458 ]
00459 interface IOleCache : IUnknown
00460 {
00461     typedef [unique] IOleCache *LPOLECACHE;
00462 
00463     HRESULT Cache(
00464         [in, unique] FORMATETC *pformatetc,
00465         [in] DWORD advf,
00466         [out] DWORD *pdwConnection);
00467 
00468     HRESULT Uncache(
00469         [in] DWORD dwConnection);
00470 
00471     HRESULT EnumCache(
00472         [out] IEnumSTATDATA **ppenumSTATDATA);
00473 
00474     HRESULT InitCache(
00475         [in, unique] IDataObject *pDataObject);
00476 
00477     HRESULT SetData(
00478         [in, unique] FORMATETC *pformatetc,
00479         [in, unique] STGMEDIUM *pmedium,
00480         [in] BOOL fRelease);
00481 }
00482 
00483 
00484 /*****************************************************************************
00485  * IOleCache2 interface
00486  */
00487 [
00488     object,
00489     uuid(00000128-0000-0000-c000-000000000046),
00490     pointer_default(unique)
00491 ]
00492 interface IOleCache2 : IOleCache
00493 {
00494     typedef [unique] IOleCache2 *LPOLECACHE2;
00495 
00496     const DWORD UPDFCACHE_NODATACACHE = 0x00000001;
00497     const DWORD UPDFCACHE_ONSAVECACHE = 0x00000002;
00498     const DWORD UPDFCACHE_ONSTOPCACHE = 0x00000004;
00499     const DWORD UPDFCACHE_NORMALCACHE = 0x00000008;
00500     const DWORD UPDFCACHE_IFBLANK     = 0x00000010;
00501     const DWORD UPDFCACHE_ONLYIFBLANK = 0x80000000;
00502 
00503     const DWORD UPDFCACHE_IFBLANKORONSAVECACHE = (UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE);
00504     const DWORD UPDFCACHE_ALL = ((DWORD)(~(UPDFCACHE_ONLYIFBLANK)));
00505     const DWORD UPDFCACHE_ALLBUTNODATACACHE = (UPDFCACHE_ALL & ((DWORD)(~UPDFCACHE_NODATACACHE)));
00506 
00507     typedef enum tagDISCARDCACHE
00508     {
00509         DISCARDCACHE_SAVEIFDIRTY = 0,
00510         DISCARDCACHE_NOSAVE =  1
00511     } DISCARDCACHE;
00512 
00513     [local]
00514     HRESULT UpdateCache(
00515         [in] LPDATAOBJECT pDataObject,
00516         [in] DWORD grfUpdf,
00517         [in] LPVOID pReserved);
00518 
00519     [call_as(UpdateCache)]
00520     HRESULT RemoteUpdateCache(
00521         [in] LPDATAOBJECT pDataObject,
00522         [in] DWORD grfUpdf,
00523         [in] LONG_PTR pReserved);
00524 
00525     HRESULT DiscardCache(
00526         [in] DWORD dwDiscardOptions);
00527 }
00528 
00529 
00530 /*****************************************************************************
00531  * IOleCacheControl interface
00532  */
00533 [
00534     object,
00535     uuid(00000129-0000-0000-c000-000000000046)
00536 ]
00537 interface IOleCacheControl : IUnknown
00538 {
00539     typedef [unique] IOleCacheControl *LPOLECACHECONTROL;
00540 
00541     HRESULT OnRun(
00542         LPDATAOBJECT pDataObject);
00543 
00544     HRESULT OnStop();
00545 }
00546 
00547 
00548 /*****************************************************************************
00549  *  IEnumOLEVERB interface
00550  */
00551 [
00552     object,
00553     uuid(00000104-0000-0000-c000-000000000046),
00554     pointer_default(unique)
00555 ]
00556 interface IEnumOLEVERB : IUnknown
00557 {
00558     typedef [unique] IEnumOLEVERB *LPENUMOLEVERB;
00559 
00560     typedef struct tagOLEVERB
00561     {
00562     LONG lVerb;
00563     LPOLESTR lpszVerbName;
00564     DWORD fuFlags;
00565     DWORD grfAttribs;
00566     } OLEVERB, *LPOLEVERB;
00567 
00568     typedef enum tagOLEVERBATTRIB
00569     {
00570     OLEVERBATTRIB_NEVERDIRTIES = 1,
00571     OLEVERBATTRIB_ONCONTAINERMENU = 2
00572     } OLEVERBATTRIB;
00573 
00574     [local]
00575     HRESULT Next(
00576         [in] ULONG celt,
00577         [out, size_is(celt), length_is(*pceltFetched)] LPOLEVERB rgelt,
00578         [out] ULONG *pceltFetched);
00579 
00580     [call_as(Next)]
00581     HRESULT RemoteNext(
00582         [in] ULONG celt,
00583         [out, size_is(celt), length_is(*pceltFetched)] LPOLEVERB rgelt,
00584         [out] ULONG *pceltFetched);
00585 
00586     HRESULT Skip(
00587         [in] ULONG celt);
00588 
00589     HRESULT Reset();
00590 
00591     HRESULT Clone(
00592         [out] IEnumOLEVERB **ppenum);
00593 }
00594 
00595 
00596 /*****************************************************************************
00597  * IOleObject interface
00598  */
00599 [
00600     object,
00601     uuid(00000112-0000-0000-c000-000000000046),
00602     pointer_default(unique)
00603 ]
00604 interface IOleObject : IUnknown
00605 {
00606     typedef [unique] IOleObject *LPOLEOBJECT;
00607 
00608     typedef enum tagOLEGETMONIKER
00609     {
00610     OLEGETMONIKER_ONLYIFTHERE = 1,
00611     OLEGETMONIKER_FORCEASSIGN = 2,
00612     OLEGETMONIKER_UNASSIGN = 3,
00613     OLEGETMONIKER_TEMPFORUSER = 4
00614     } OLEGETMONIKER;
00615 
00616     typedef enum tagOLEWHICHMK
00617     {
00618     OLEWHICHMK_CONTAINER = 1,
00619     OLEWHICHMK_OBJREL = 2,
00620     OLEWHICHMK_OBJFULL = 3
00621     } OLEWHICHMK;
00622 
00623     typedef enum tagUSERCLASSTYPE
00624     {
00625     USERCLASSTYPE_FULL = 1,
00626     USERCLASSTYPE_SHORT = 2,
00627     USERCLASSTYPE_APPNAME = 3
00628     } USERCLASSTYPE;
00629 
00630     typedef enum tagOLEMISC
00631     {
00632     OLEMISC_RECOMPOSEONRESIZE = 0x1,
00633     OLEMISC_ONLYICONIC = 0x2,
00634     OLEMISC_INSERTNOTREPLACE = 0x4,
00635     OLEMISC_STATIC = 0x8,
00636     OLEMISC_CANTLINKINSIDE = 0x10,
00637     OLEMISC_CANLINKBYOLE1 = 0x20,
00638     OLEMISC_ISLINKOBJECT = 0x40,
00639     OLEMISC_INSIDEOUT = 0x80,
00640     OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
00641     OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
00642     OLEMISC_INVISIBLEATRUNTIME = 0x400,
00643     OLEMISC_ALWAYSRUN = 0x800,
00644     OLEMISC_ACTSLIKEBUTTON = 0x1000,
00645     OLEMISC_ACTSLIKELABEL = 0x2000,
00646     OLEMISC_NOUIACTIVATE = 0x4000,
00647     OLEMISC_ALIGNABLE = 0x8000,
00648     OLEMISC_SIMPLEFRAME = 0x10000,
00649     OLEMISC_SETCLIENTSITEFIRST = 0x20000,
00650     OLEMISC_IMEMODE = 0x40000,
00651     OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
00652     OLEMISC_WANTSTOMENUMERGE = 0x100000,
00653     OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
00654     } OLEMISC;
00655 
00656     typedef enum tagOLECLOSE
00657     {
00658     OLECLOSE_SAVEIFDIRTY = 0,
00659     OLECLOSE_NOSAVE = 1,
00660     OLECLOSE_PROMPTSAVE = 2
00661     } OLECLOSE;
00662 
00663     HRESULT SetClientSite(
00664         [in, unique] IOleClientSite *pClientSite);
00665 
00666     HRESULT GetClientSite(
00667         [out] IOleClientSite **ppClientSite);
00668 
00669     HRESULT SetHostNames(
00670         [in] LPCOLESTR szContainerApp,
00671         [in, unique] LPCOLESTR szContainerObj);
00672 
00673     HRESULT Close(
00674         [in] DWORD dwSaveOption);
00675 
00676     HRESULT SetMoniker(
00677         [in] DWORD dwWhichMoniker,
00678         [in, unique] IMoniker *pmk);
00679 
00680     HRESULT GetMoniker(
00681         [in] DWORD dwAssign,
00682         [in] DWORD dwWhichMoniker,
00683         [out] IMoniker **ppmk);
00684 
00685     HRESULT InitFromData(
00686         [in, unique] IDataObject *pDataObject,
00687         [in] BOOL fCreation,
00688         [in] DWORD dwReserved);
00689 
00690     HRESULT GetClipboardData(
00691         [in] DWORD dwReserved,
00692         [out] IDataObject **ppDataObject);
00693 
00694     HRESULT DoVerb(
00695         [in] LONG iVerb,
00696         [in, unique] LPMSG lpmsg,
00697         [in, unique] IOleClientSite *pActiveSite,
00698         [in] LONG lindex,
00699         [in] HWND hwndParent,
00700         [in, unique] LPCRECT lprcPosRect);
00701 
00702     HRESULT EnumVerbs(
00703         [out] IEnumOLEVERB **ppEnumOleVerb);
00704 
00705     HRESULT Update();
00706 
00707     HRESULT IsUpToDate();
00708 
00709     HRESULT GetUserClassID(
00710         [out] CLSID *pClsid);
00711 
00712     HRESULT GetUserType(
00713         [in] DWORD dwFormOfType,
00714         [out] LPOLESTR *pszUserType);
00715 
00716     HRESULT SetExtent(
00717         [in] DWORD dwDrawAspect,
00718         [in] SIZEL *psizel);
00719 
00720     HRESULT GetExtent(
00721         [in] DWORD dwDrawAspect,
00722         [out] SIZEL *psizel);
00723 
00724     HRESULT Advise(
00725         [in, unique] IAdviseSink *pAdvSink,
00726         [out] DWORD *pdwConnection);
00727 
00728     HRESULT Unadvise(
00729         [in] DWORD dwConnection);
00730 
00731     HRESULT EnumAdvise(
00732         [out] IEnumSTATDATA **ppenumAdvise);
00733 
00734     HRESULT GetMiscStatus(
00735         [in] DWORD dwAspect,
00736         [out] DWORD *pdwStatus);
00737 
00738     HRESULT SetColorScheme(
00739         [in] LOGPALETTE *pLogpal);
00740 }
00741 
00742 
00743 /*****************************************************************************
00744  * IOleAdviseHolder interface
00745  */
00746 [
00747     local,
00748     object,
00749     uuid(00000111-0000-0000-c000-000000000046)
00750 ]
00751 interface IOleAdviseHolder : IUnknown
00752 {
00753     typedef [unique] IOleAdviseHolder * LPOLEADVISEHOLDER;
00754 
00755     HRESULT Advise(
00756         [in, unique] IAdviseSink *pAdvise,
00757         [out] DWORD *pdwConnection);
00758 
00759     HRESULT Unadvise(
00760         [in] DWORD dwConnection);
00761 
00762     HRESULT EnumAdvise(
00763         [out] IEnumSTATDATA **ppenumAdvise);
00764 
00765     HRESULT SendOnRename(
00766         [in, unique] IMoniker *pmk);
00767 
00768     HRESULT SendOnSave();
00769     HRESULT SendOnClose();
00770 }
00771 
00772 
00773 /*****************************************************************************
00774  * IContinue interface
00775  */
00776 [
00777     object,
00778     uuid(0000012a-0000-0000-c000-000000000046)
00779 ]
00780 interface IContinue : IUnknown
00781 {
00782     HRESULT FContinue();
00783 }
00784 
00785 
00786 /*****************************************************************************
00787  * IViewObject interface
00788  */
00789 [
00790     object,
00791     uuid(0000010d-0000-0000-c000-000000000046)
00792 ]
00793 interface IViewObject : IUnknown
00794 {
00795     typedef [unique] IViewObject *LPVIEWOBJECT;
00796 
00797     [local]
00798     HRESULT Draw(
00799         [in] DWORD dwDrawAspect,
00800         [in] LONG lindex,
00801         [in, unique] void * pvAspect,
00802         [in, unique] DVTARGETDEVICE *ptd,
00803         [in] HDC hdcTargetDev,
00804         [in] HDC hdcDraw,
00805         [in] LPCRECTL lprcBounds,
00806         [in, unique] LPCRECTL lprcWBounds,
00807         [in] BOOL (*pfnContinue)(ULONG_PTR dwContinue),
00808         [in] ULONG_PTR dwContinue);
00809 
00810     [call_as(Draw)]
00811     HRESULT RemoteDraw(
00812         [in] DWORD dwDrawAspect,
00813         [in] LONG lindex,
00814         [in] ULONG_PTR pvAspect,
00815         [in, unique] DVTARGETDEVICE *ptd,
00816         [in] ULONG_PTR hdcTargetDev,
00817         [in] ULONG_PTR hdcDraw,
00818         [in] LPCRECTL lprcBounds,
00819         [in, unique] LPCRECTL lprcWBounds,
00820         [in] IContinue *pContinue);
00821 
00822     [local]
00823     HRESULT GetColorSet(
00824         [in] DWORD dwDrawAspect,
00825         [in] LONG lindex,
00826         [in, unique] void *pvAspect,
00827         [in, unique] DVTARGETDEVICE *ptd,
00828         [in] HDC hicTargetDev,
00829         [out] LOGPALETTE **ppColorSet);
00830 
00831     [call_as(GetColorSet)]
00832     HRESULT RemoteGetColorSet(
00833         [in] DWORD dwDrawAspect,
00834         [in] LONG lindex,
00835         [in] ULONG_PTR pvAspect,
00836         [in, unique] DVTARGETDEVICE *ptd,
00837         [in] ULONG_PTR hicTargetDev,
00838         [out] LOGPALETTE **ppColorSet);
00839 
00840     [local]
00841     HRESULT Freeze(
00842         [in] DWORD dwDrawAspect,
00843         [in] LONG lindex,
00844         [in, unique] void *pvAspect,
00845         [out] DWORD *pdwFreeze);
00846 
00847     [call_as(Freeze)]
00848     HRESULT RemoteFreeze(
00849         [in] DWORD dwDrawAspect,
00850         [in] LONG lindex,
00851         [in] ULONG_PTR pvAspect,
00852         [out] DWORD *pdwFreeze);
00853 
00854     HRESULT Unfreeze(
00855         [in] DWORD dwFreeze);
00856 
00857     HRESULT SetAdvise(
00858         [in] DWORD aspects,
00859         [in] DWORD advf,
00860         [in, unique] IAdviseSink *pAdvSink);
00861 
00862     [local]
00863     HRESULT GetAdvise(
00864         [out, unique] DWORD *pAspects,
00865         [out, unique] DWORD *pAdvf,
00866         [out] IAdviseSink **ppAdvSink);
00867 
00868     [call_as(GetAdvise)]
00869     HRESULT RemoteGetAdvise(
00870         [out] DWORD *pAspects,
00871         [out] DWORD *pAdvf,
00872         [out] IAdviseSink **ppAdvSink);
00873 }
00874 
00875 
00876 /*****************************************************************************
00877  * IViewObject2 interface
00878  */
00879 [
00880     object,
00881     uuid(00000127-0000-0000-c000-000000000046)
00882 ]
00883 interface IViewObject2 : IViewObject
00884 {
00885     typedef [unique] IViewObject2 *LPVIEWOBJECT2;
00886 
00887     HRESULT GetExtent(
00888         [in]  DWORD dwDrawAspect,
00889         [in]  LONG lindex,
00890         [in, unique]  DVTARGETDEVICE* ptd,
00891         [out] LPSIZEL lpsizel);
00892 }
00893 
00894 
00895 /*****************************************************************************
00896  * IDropSource interface
00897  */
00898 [
00899     local,
00900     object,
00901     uuid(00000121-0000-0000-c000-000000000046)
00902 ]
00903 interface IDropSource : IUnknown
00904 {
00905     typedef [unique] IDropSource *LPDROPSOURCE;
00906 
00907     HRESULT QueryContinueDrag(
00908         [in] BOOL fEscapePressed,
00909         [in] DWORD grfKeyState);
00910 
00911     HRESULT GiveFeedback(
00912         [in] DWORD dwEffect);
00913 }
00914 
00915 
00916 /*****************************************************************************
00917  * IDropTarget interface
00918  */
00919 [
00920     object,
00921     uuid(00000122-0000-0000-c000-000000000046),
00922     pointer_default(unique)
00923 ]
00924 interface IDropTarget : IUnknown
00925 {
00926     typedef [unique] IDropTarget *LPDROPTARGET;
00927 
00928     const DWORD MK_ALT = 0x20;
00929     const DWORD DROPEFFECT_NONE = 0;
00930     const DWORD DROPEFFECT_COPY = 1;
00931     const DWORD DROPEFFECT_MOVE = 2;
00932     const DWORD DROPEFFECT_LINK = 4;
00933     const DWORD DROPEFFECT_SCROLL = 0x80000000;
00934     const DWORD DD_DEFSCROLLINSET = 11;
00935     const DWORD DD_DEFSCROLLDELAY = 50;
00936     const DWORD DD_DEFSCROLLINTERVAL = 50;
00937     const DWORD DD_DEFDRAGDELAY = 200;
00938     const DWORD DD_DEFDRAGMINDIST = 2;
00939 
00940     HRESULT DragEnter(
00941         [in, unique] IDataObject *pDataObj,
00942         [in] DWORD grfKeyState,
00943         [in] POINTL pt,
00944         [in, out] DWORD *pdwEffect);
00945 
00946     HRESULT DragOver(
00947         [in] DWORD grfKeyState,
00948         [in] POINTL pt,
00949         [in, out] DWORD *pdwEffect);
00950 
00951     HRESULT DragLeave();
00952 
00953     HRESULT Drop(
00954         [in, unique] IDataObject *pDataObj,
00955         [in] DWORD grfKeyState,
00956         [in] POINTL pt,
00957         [in, out] DWORD *pdwEffect);
00958 }

Generated on Sun May 27 2012 04:32:13 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.