Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenoleidl.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
1.7.6.1
|