1cpp_quote("/**") 2cpp_quote(" * This file is part of the mingw-w64 runtime package.") 3cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.") 4cpp_quote(" */") 5cpp_quote("") 6#ifndef DO_NO_IMPORTS 7import "objidl.idl"; 8 9cpp_quote("") 10#endif 11 12cpp_quote("#include <winapifamily.h>") 13cpp_quote("") 14cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 15 16interface IOleInPlaceActiveObject; 17interface IEnumOLEVERB; 18 19cpp_quote("") 20[local, object, uuid (00000111-0000-0000-C000-000000000046)] 21interface IOleAdviseHolder : IUnknown { 22 typedef [unique] IOleAdviseHolder *LPOLEADVISEHOLDER; 23cpp_quote("") 24 HRESULT Advise ([in, unique] IAdviseSink *pAdvise,[out] DWORD *pdwConnection); 25 HRESULT Unadvise ([in] DWORD dwConnection); 26 HRESULT EnumAdvise ([out] IEnumSTATDATA **ppenumAdvise); 27 HRESULT SendOnRename ([in, unique] IMoniker *pmk); 28 HRESULT SendOnSave (void); 29 HRESULT SendOnClose (void); 30} 31cpp_quote("#endif") 32 33cpp_quote("") 34cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") 35[object, uuid (0000011e-0000-0000-C000-000000000046), pointer_default (unique)] 36interface IOleCache : IUnknown { 37 typedef [unique] IOleCache *LPOLECACHE; 38cpp_quote("") 39 HRESULT Cache ([in, unique] FORMATETC *pformatetc,[in] DWORD advf,[out] DWORD *pdwConnection); 40 HRESULT Uncache ([in] DWORD dwConnection); 41 HRESULT EnumCache ([out] IEnumSTATDATA **ppenumSTATDATA); 42 HRESULT InitCache ([in, unique] IDataObject *pDataObject); 43 HRESULT SetData ([in, unique] FORMATETC *pformatetc,[in, unique] STGMEDIUM *pmedium,[in] BOOL fRelease); 44} 45 46cpp_quote("") 47[object, uuid (00000128-0000-0000-C000-000000000046), pointer_default (unique)] 48interface IOleCache2 : IOleCache { 49 typedef [unique] IOleCache2 *LPOLECACHE2; 50cpp_quote("") 51 const DWORD UPDFCACHE_NODATACACHE = 0x00000001; 52 const DWORD UPDFCACHE_ONSAVECACHE = 0x00000002; 53 const DWORD UPDFCACHE_ONSTOPCACHE = 0x00000004; 54 const DWORD UPDFCACHE_NORMALCACHE = 0x00000008; 55 const DWORD UPDFCACHE_IFBLANK = 0x00000010; 56 const DWORD UPDFCACHE_ONLYIFBLANK = 0x80000000; 57 const DWORD UPDFCACHE_IFBLANKORONSAVECACHE = (UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE); 58 const DWORD UPDFCACHE_ALL = ((DWORD) (~ (UPDFCACHE_ONLYIFBLANK))); 59 const DWORD UPDFCACHE_ALLBUTNODATACACHE = (UPDFCACHE_ALL &((DWORD) (~UPDFCACHE_NODATACACHE))); 60cpp_quote("") 61 typedef [v1_enum] enum tagDISCARDCACHE { 62 DISCARDCACHE_SAVEIFDIRTY = 0, 63 DISCARDCACHE_NOSAVE = 1 64 } DISCARDCACHE; 65cpp_quote("") 66 [local] HRESULT UpdateCache ([in] LPDATAOBJECT pDataObject,[in] DWORD grfUpdf,[in] LPVOID pReserved); 67 [call_as (UpdateCache)] HRESULT RemoteUpdateCache ([in] LPDATAOBJECT pDataObject,[in] DWORD grfUpdf,[in] LONG_PTR pReserved); 68 HRESULT DiscardCache ([in] DWORD dwDiscardOptions); 69} 70cpp_quote("#endif") 71 72cpp_quote("") 73cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 74[object, uuid (00000129-0000-0000-C000-000000000046)] 75interface IOleCacheControl : IUnknown { 76 typedef [unique] IOleCacheControl *LPOLECACHECONTROL; 77cpp_quote("") 78 HRESULT OnRun (LPDATAOBJECT pDataObject); 79 HRESULT OnStop (void); 80} 81 82cpp_quote("") 83[object, uuid (0000011a-0000-0000-C000-000000000046), pointer_default (unique)] 84interface IParseDisplayName : IUnknown { 85 typedef [unique] IParseDisplayName *LPPARSEDISPLAYNAME; 86cpp_quote("") 87 HRESULT ParseDisplayName ([in, unique] IBindCtx *pbc,[in] LPOLESTR pszDisplayName,[out] ULONG *pchEaten,[out] IMoniker **ppmkOut); 88} 89 90cpp_quote("") 91[object, uuid (0000011b-0000-0000-C000-000000000046), pointer_default (unique)] 92interface IOleContainer : IParseDisplayName { 93 typedef [unique] IOleContainer *LPOLECONTAINER; 94cpp_quote("") 95 HRESULT EnumObjects ([in] DWORD grfFlags,[out] IEnumUnknown **ppenum); 96 HRESULT LockContainer ([in] BOOL fLock); 97} 98 99cpp_quote("") 100[object, uuid (00000118-0000-0000-C000-000000000046), pointer_default (unique)] 101interface IOleClientSite : IUnknown { 102 typedef [unique] IOleClientSite *LPOLECLIENTSITE; 103cpp_quote("") 104 HRESULT SaveObject (void); 105 HRESULT GetMoniker ([in] DWORD dwAssign,[in] DWORD dwWhichMoniker,[out] IMoniker **ppmk); 106 HRESULT GetContainer ([out] IOleContainer **ppContainer); 107 HRESULT ShowObject (void); 108 HRESULT OnShowWindow ([in] BOOL fShow); 109 HRESULT RequestNewObjectLayout (void); 110} 111 112cpp_quote("") 113[object, uuid (00000112-0000-0000-C000-000000000046), pointer_default (unique)] 114interface IOleObject : IUnknown { 115 typedef [unique] IOleObject *LPOLEOBJECT; 116cpp_quote("") 117 typedef enum tagOLEGETMONIKER { 118 OLEGETMONIKER_ONLYIFTHERE = 1, 119 OLEGETMONIKER_FORCEASSIGN = 2, 120 OLEGETMONIKER_UNASSIGN = 3, 121 OLEGETMONIKER_TEMPFORUSER = 4 122 } OLEGETMONIKER; 123cpp_quote("") 124 typedef enum tagOLEWHICHMK { 125 OLEWHICHMK_CONTAINER = 1, 126 OLEWHICHMK_OBJREL = 2, 127 OLEWHICHMK_OBJFULL = 3 128 } OLEWHICHMK; 129cpp_quote("") 130 typedef enum tagUSERCLASSTYPE { 131 USERCLASSTYPE_FULL = 1, 132 USERCLASSTYPE_SHORT = 2, 133 USERCLASSTYPE_APPNAME = 3, 134 } USERCLASSTYPE; 135cpp_quote("") 136 typedef enum tagOLEMISC { 137 OLEMISC_RECOMPOSEONRESIZE = 0x00000001, 138 OLEMISC_ONLYICONIC = 0x00000002, 139 OLEMISC_INSERTNOTREPLACE = 0x00000004, 140 OLEMISC_STATIC = 0x00000008, 141 OLEMISC_CANTLINKINSIDE = 0x00000010, 142 OLEMISC_CANLINKBYOLE1 = 0x00000020, 143 OLEMISC_ISLINKOBJECT = 0x00000040, 144 OLEMISC_INSIDEOUT = 0x00000080, 145 OLEMISC_ACTIVATEWHENVISIBLE = 0x00000100, 146 OLEMISC_RENDERINGISDEVICEINDEPENDENT= 0x00000200, 147 OLEMISC_INVISIBLEATRUNTIME = 0x00000400, 148 OLEMISC_ALWAYSRUN = 0x00000800, 149 OLEMISC_ACTSLIKEBUTTON = 0x00001000, 150 OLEMISC_ACTSLIKELABEL = 0x00002000, 151 OLEMISC_NOUIACTIVATE = 0x00004000, 152 OLEMISC_ALIGNABLE = 0x00008000, 153 OLEMISC_SIMPLEFRAME = 0x00010000, 154 OLEMISC_SETCLIENTSITEFIRST = 0x00020000, 155 OLEMISC_IMEMODE = 0x00040000, 156 OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x00080000, 157 OLEMISC_WANTSTOMENUMERGE = 0x00100000, 158 OLEMISC_SUPPORTSMULTILEVELUNDO = 0x00200000 159 } OLEMISC; 160 typedef enum tagOLECLOSE { 161 OLECLOSE_SAVEIFDIRTY = 0, 162 OLECLOSE_NOSAVE = 1, 163 OLECLOSE_PROMPTSAVE = 2 164 } OLECLOSE; 165cpp_quote("") 166 HRESULT SetClientSite ([in, unique] IOleClientSite *pClientSite); 167 HRESULT GetClientSite ([out] IOleClientSite **ppClientSite); 168 HRESULT SetHostNames ([in] LPCOLESTR szContainerApp,[in, unique] LPCOLESTR szContainerObj); 169 HRESULT Close ([in] DWORD dwSaveOption); 170 HRESULT SetMoniker ([in] DWORD dwWhichMoniker,[in, unique] IMoniker *pmk); 171 HRESULT GetMoniker ([in] DWORD dwAssign,[in] DWORD dwWhichMoniker,[out] IMoniker **ppmk); 172 HRESULT InitFromData ([in, unique] IDataObject *pDataObject,[in] BOOL fCreation,[in] DWORD dwReserved); 173 HRESULT GetClipboardData ([in] DWORD dwReserved,[out] IDataObject **ppDataObject); 174 HRESULT DoVerb ([in] LONG iVerb,[in, unique] LPMSG lpmsg,[in, unique] IOleClientSite *pActiveSite,[in] LONG lindex,[in] HWND hwndParent,[in, unique] LPCRECT lprcPosRect); 175 HRESULT EnumVerbs ([out] IEnumOLEVERB **ppEnumOleVerb); 176 HRESULT Update (void); 177 HRESULT IsUpToDate (void); 178 HRESULT GetUserClassID ([out] CLSID *pClsid); 179 HRESULT GetUserType ([in] DWORD dwFormOfType,[out] LPOLESTR *pszUserType); 180 HRESULT SetExtent ([in] DWORD dwDrawAspect,[in] SIZEL *psizel); 181 HRESULT GetExtent ([in] DWORD dwDrawAspect,[out] SIZEL *psizel); 182 HRESULT Advise ([in, unique] IAdviseSink *pAdvSink,[out] DWORD *pdwConnection); 183 HRESULT Unadvise ([in] DWORD dwConnection); 184 HRESULT EnumAdvise ([out] IEnumSTATDATA **ppenumAdvise); 185 HRESULT GetMiscStatus ([in] DWORD dwAspect,[out] DWORD *pdwStatus); 186 HRESULT SetColorScheme ([in] LOGPALETTE *pLogpal); 187} 188 189cpp_quote("") 190[uuid (B0916C84-7416-101a-BCEA-08002b2b79ef)] 191interface IOLETypes { 192 typedef enum tagOLERENDER { 193 OLERENDER_NONE = 0, 194 OLERENDER_DRAW = 1, 195 OLERENDER_FORMAT = 2, 196 OLERENDER_ASIS = 3 197 } OLERENDER; 198cpp_quote("") 199 typedef OLERENDER *LPOLERENDER; 200cpp_quote("") 201 typedef struct tagOBJECTDESCRIPTOR { 202 ULONG cbSize; 203 CLSID clsid; 204 DWORD dwDrawAspect; 205 SIZEL sizel; 206 POINTL pointl; 207 DWORD dwStatus; 208 DWORD dwFullUserTypeName; 209 DWORD dwSrcOfCopy; 210 } OBJECTDESCRIPTOR, *POBJECTDESCRIPTOR, *LPOBJECTDESCRIPTOR, LINKSRCDESCRIPTOR, *PLINKSRCDESCRIPTOR, *LPLINKSRCDESCRIPTOR; 211} 212 213cpp_quote("") 214[object, uuid (00000114-0000-0000-C000-000000000046), pointer_default (unique)] 215interface IOleWindow : IUnknown { 216 typedef [unique] IOleWindow *LPOLEWINDOW; 217cpp_quote("") 218 [input_sync] HRESULT GetWindow ([out] HWND *phwnd); 219 HRESULT ContextSensitiveHelp ([in] BOOL fEnterMode); 220} 221 222cpp_quote("") 223[object, uuid (0000011d-0000-0000-C000-000000000046)] 224interface IOleLink : IUnknown { 225 typedef [unique] IOleLink *LPOLELINK; 226cpp_quote("") 227 typedef enum tagOLEUPDATE { 228 OLEUPDATE_ALWAYS=1, 229 OLEUPDATE_ONCALL=3 230 } OLEUPDATE; 231cpp_quote("") 232 typedef OLEUPDATE *LPOLEUPDATE; 233 typedef OLEUPDATE *POLEUPDATE; 234cpp_quote("") 235 typedef enum tagOLELINKBIND { 236 OLELINKBIND_EVENIFCLASSDIFF = 1, 237 } OLELINKBIND; 238cpp_quote("") 239 HRESULT SetUpdateOptions ([in] DWORD dwUpdateOpt); 240 HRESULT GetUpdateOptions ([out] DWORD *pdwUpdateOpt); 241 HRESULT SetSourceMoniker ([in, unique] IMoniker *pmk,[in] REFCLSID rclsid); 242 HRESULT GetSourceMoniker ([out] IMoniker **ppmk); 243 HRESULT SetSourceDisplayName ([in]LPCOLESTR pszStatusText); 244 HRESULT GetSourceDisplayName ([out] LPOLESTR *ppszDisplayName); 245 HRESULT BindToSource ([in] DWORD bindflags,[in, unique] IBindCtx *pbc); 246 HRESULT BindIfRunning (void); 247 HRESULT GetBoundSource ([out] IUnknown **ppunk); 248 HRESULT UnbindSource (void); 249 HRESULT Update ([in, unique] IBindCtx *pbc); 250} 251 252cpp_quote("") 253[object, uuid (0000011c-0000-0000-C000-000000000046), pointer_default (unique)] 254interface IOleItemContainer : IOleContainer { 255 typedef [unique] IOleItemContainer *LPOLEITEMCONTAINER; 256cpp_quote("") 257 typedef enum tagBINDSPEED { 258 BINDSPEED_INDEFINITE = 1, 259 BINDSPEED_MODERATE = 2, 260 BINDSPEED_IMMEDIATE = 3 261 } BINDSPEED; 262cpp_quote("") 263 typedef [v1_enum] enum tagOLECONTF { 264 OLECONTF_EMBEDDINGS = 1, 265 OLECONTF_LINKS = 2, 266 OLECONTF_OTHERS = 4, 267 OLECONTF_ONLYUSER = 8, 268 OLECONTF_ONLYIFRUNNING = 16 269 } OLECONTF; 270cpp_quote("") 271 HRESULT GetObject ([in] LPOLESTR pszItem,[in] DWORD dwSpeedNeeded,[in, unique] IBindCtx *pbc,[in] REFIID riid,[out, iid_is (riid)] void **ppvObject); 272 HRESULT GetObjectStorage ([in] LPOLESTR pszItem,[in, unique] IBindCtx *pbc,[in] REFIID riid,[out, iid_is (riid)] void **ppvStorage); 273 HRESULT IsRunning ([in] LPOLESTR pszItem); 274} 275 276cpp_quote("") 277[object, uuid (00000115-0000-0000-C000-000000000046), pointer_default (unique)] 278interface IOleInPlaceUIWindow : IOleWindow { 279 typedef [unique] IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW; 280 typedef RECT BORDERWIDTHS; 281 typedef LPRECT LPBORDERWIDTHS; 282 typedef LPCRECT LPCBORDERWIDTHS; 283cpp_quote("") 284 [input_sync] HRESULT GetBorder ([out] LPRECT lprectBorder); 285 [input_sync] HRESULT RequestBorderSpace ([in, unique] LPCBORDERWIDTHS pborderwidths); 286 [input_sync] HRESULT SetBorderSpace ([in, unique] LPCBORDERWIDTHS pborderwidths); 287 HRESULT SetActiveObject ([in, unique] IOleInPlaceActiveObject *pActiveObject,[in, string, unique] LPCOLESTR pszObjName); 288} 289 290cpp_quote("") 291[object, uuid (00000117-0000-0000-C000-000000000046)] 292interface IOleInPlaceActiveObject : IOleWindow { 293 typedef [unique] IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT; 294cpp_quote("") 295 [local] HRESULT TranslateAccelerator ([in] LPMSG lpmsg); 296 [call_as (TranslateAccelerator)] HRESULT RemoteTranslateAccelerator (); 297 [input_sync] HRESULT OnFrameWindowActivate ([in] BOOL fActivate); 298 [input_sync] HRESULT OnDocWindowActivate ([in] BOOL fActivate); 299 [local] HRESULT ResizeBorder ([in] LPCRECT prcBorder,[in, unique] IOleInPlaceUIWindow *pUIWindow,[in] BOOL fFrameWindow); 300 [call_as (ResizeBorder), input_sync] HRESULT RemoteResizeBorder ([in] LPCRECT prcBorder,[in] REFIID riid,[in, unique, iid_is (riid)] IOleInPlaceUIWindow *pUIWindow,[in] BOOL fFrameWindow); 301 HRESULT EnableModeless ([in] BOOL fEnable); 302} 303 304cpp_quote("") 305[object, uuid (00000116-0000-0000-C000-000000000046), pointer_default (unique)] 306interface IOleInPlaceFrame : IOleInPlaceUIWindow { 307 typedef [unique] IOleInPlaceFrame *LPOLEINPLACEFRAME; 308cpp_quote("") 309 typedef struct tagOIFI { 310 UINT cb; 311 BOOL fMDIApp; 312 HWND hwndFrame; 313 HACCEL haccel; 314 UINT cAccelEntries; 315 } OLEINPLACEFRAMEINFO,*LPOLEINPLACEFRAMEINFO; 316cpp_quote("") 317 typedef struct tagOleMenuGroupWidths { 318 LONG width[6]; 319 } OLEMENUGROUPWIDTHS,*LPOLEMENUGROUPWIDTHS; 320cpp_quote("") 321 typedef HGLOBAL HOLEMENU; 322cpp_quote("") 323 HRESULT InsertMenus ([in] HMENU hmenuShared,[in, out] LPOLEMENUGROUPWIDTHS lpMenuWidths); 324 [input_sync] HRESULT SetMenu ([in] HMENU hmenuShared,[in] HOLEMENU holemenu,[in] HWND hwndActiveObject); 325 HRESULT RemoveMenus ([in] HMENU hmenuShared); 326 [input_sync] HRESULT SetStatusText ([in, unique] LPCOLESTR pszStatusText); 327 HRESULT EnableModeless ([in] BOOL fEnable); 328 HRESULT TranslateAccelerator ([in] LPMSG lpmsg,[in] WORD wID); 329} 330 331cpp_quote("") 332[object, uuid (00000113-0000-0000-C000-000000000046), pointer_default (unique)] 333interface IOleInPlaceObject : IOleWindow { 334 typedef [unique] IOleInPlaceObject *LPOLEINPLACEOBJECT; 335cpp_quote("") 336 HRESULT InPlaceDeactivate (void); 337 HRESULT UIDeactivate (void); 338 [input_sync] HRESULT SetObjectRects ([in] LPCRECT lprcPosRect,[in] LPCRECT lprcClipRect); 339 HRESULT ReactivateAndUndo (void); 340} 341 342cpp_quote("") 343[object, uuid (00000119-0000-0000-C000-000000000046), pointer_default (unique)] 344interface IOleInPlaceSite : IOleWindow { 345 typedef [unique] IOleInPlaceSite *LPOLEINPLACESITE; 346cpp_quote("") 347 HRESULT CanInPlaceActivate (void); 348 HRESULT OnInPlaceActivate (void); 349 HRESULT OnUIActivate (void); 350 HRESULT GetWindowContext ([out] IOleInPlaceFrame **ppFrame,[out] IOleInPlaceUIWindow **ppDoc,[out] LPRECT lprcPosRect,[out] LPRECT lprcClipRect,[in, out] LPOLEINPLACEFRAMEINFO lpFrameInfo); 351 HRESULT Scroll ([in] SIZE scrollExtant); 352 HRESULT OnUIDeactivate ([in] BOOL fUndoable); 353 HRESULT OnInPlaceDeactivate (void); 354 HRESULT DiscardUndoState (void); 355 HRESULT DeactivateAndUndo (void); 356 HRESULT OnPosRectChange ([in] LPCRECT lprcPosRect); 357} 358 359cpp_quote("") 360[object, uuid (0000012a-0000-0000-C000-000000000046)] 361interface IContinue : IUnknown { 362 HRESULT FContinue (); 363} 364 365cpp_quote("") 366[object, uuid (0000010d-0000-0000-C000-000000000046)] 367interface IViewObject : IUnknown { 368 typedef [unique] IViewObject *LPVIEWOBJECT; 369cpp_quote("") 370 [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); 371 [call_as (Draw)] HRESULT RemoteDraw ([in] DWORD dwDrawAspect,[in] LONG lindex,[in] ULONG_PTR pvAspect,[in, unique] DVTARGETDEVICE *ptd,[in] HDC hdcTargetDev,[in] HDC hdcDraw,[in, unique] LPCRECTL lprcBounds,[in, unique] LPCRECTL lprcWBounds,[in] IContinue *pContinue); 372 [local] HRESULT GetColorSet ([in] DWORD dwDrawAspect,[in] LONG lindex,[in, unique] void *pvAspect,[in, unique] DVTARGETDEVICE *ptd,[in] HDC hicTargetDev,[out] LOGPALETTE **ppColorSet); 373 [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); 374 [local] HRESULT Freeze ([in] DWORD dwDrawAspect,[in] LONG lindex,[in, unique] void *pvAspect,[out] DWORD *pdwFreeze); 375 [call_as (Freeze)] HRESULT RemoteFreeze ([in] DWORD dwDrawAspect,[in] LONG lindex,[in] ULONG_PTR pvAspect,[out] DWORD *pdwFreeze); 376 HRESULT Unfreeze ([in] DWORD dwFreeze); 377 HRESULT SetAdvise ([in] DWORD aspects,[in] DWORD advf,[in, unique] IAdviseSink *pAdvSink); 378 [local] HRESULT GetAdvise ([out, unique] DWORD *pAspects,[out, unique] DWORD *pAdvf,[out] IAdviseSink **ppAdvSink); 379 [call_as (GetAdvise)] HRESULT RemoteGetAdvise ([out] DWORD *pAspects,[out] DWORD *pAdvf,[out] IAdviseSink **ppAdvSink); 380} 381 382cpp_quote("") 383[object, uuid (00000127-0000-0000-C000-000000000046)] 384interface IViewObject2 : IViewObject { 385 typedef [unique] IViewObject2 *LPVIEWOBJECT2; 386cpp_quote("") 387 HRESULT GetExtent ([in] DWORD dwDrawAspect,[in] LONG lindex,[in, unique] DVTARGETDEVICE *ptd,[out] LPSIZEL lpsizel); 388} 389 390cpp_quote("") 391[local, object, uuid (00000121-0000-0000-C000-000000000046)] 392interface IDropSource : IUnknown { 393 typedef [unique] IDropSource *LPDROPSOURCE; 394cpp_quote("") 395 HRESULT QueryContinueDrag ([in] BOOL fEscapePressed,[in] DWORD grfKeyState); 396 HRESULT GiveFeedback ([in] DWORD dwEffect); 397} 398 399cpp_quote("") 400[object, uuid (00000122-0000-0000-C000-000000000046), pointer_default (unique)] 401interface IDropTarget : IUnknown { 402 typedef [unique] IDropTarget *LPDROPTARGET; 403cpp_quote("") 404 const DWORD MK_ALT = 0x0020; 405 const DWORD DROPEFFECT_NONE = 0; 406 const DWORD DROPEFFECT_COPY = 1; 407 const DWORD DROPEFFECT_MOVE = 2; 408 const DWORD DROPEFFECT_LINK = 4; 409 const DWORD DROPEFFECT_SCROLL = 0x80000000; 410 cpp_quote("") 411 const DWORD DD_DEFSCROLLINSET = 11; 412 cpp_quote("") 413 const DWORD DD_DEFSCROLLDELAY = 50; 414 cpp_quote("") 415 const DWORD DD_DEFSCROLLINTERVAL = 50; 416 cpp_quote("") 417 const DWORD DD_DEFDRAGDELAY = 200; 418 cpp_quote("") 419 const DWORD DD_DEFDRAGMINDIST = 2; 420cpp_quote("") 421 HRESULT DragEnter ([in, unique] IDataObject *pDataObj,[in] DWORD grfKeyState,[in] POINTL pt,[in, out] DWORD *pdwEffect); 422 HRESULT DragOver ([in] DWORD grfKeyState,[in] POINTL pt,[in, out] DWORD *pdwEffect); 423 HRESULT DragLeave (void); 424 HRESULT Drop ([in, unique] IDataObject *pDataObj,[in] DWORD grfKeyState,[in] POINTL pt,[in, out] DWORD *pdwEffect); 425} 426 427cpp_quote("") 428[local, object, uuid (0000012b-0000-0000-C000-000000000046), pointer_default (unique)] 429interface IDropSourceNotify : IUnknown { 430 HRESULT DragEnterTarget ([in] HWND hwndTarget); 431 HRESULT DragLeaveTarget (void); 432} 433cpp_quote("#endif") 434 435cpp_quote("") 436cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") 437[object, uuid (00000104-0000-0000-C000-000000000046), pointer_default (unique)] 438interface IEnumOLEVERB : IUnknown { 439 typedef [unique] IEnumOLEVERB *LPENUMOLEVERB; 440cpp_quote("") 441 typedef struct tagOLEVERB { 442 LONG lVerb; 443 LPOLESTR lpszVerbName; 444 DWORD fuFlags; 445 DWORD grfAttribs; 446 } OLEVERB,*LPOLEVERB; 447cpp_quote("") 448 typedef [v1_enum] enum tagOLEVERBATTRIB { 449 OLEVERBATTRIB_NEVERDIRTIES = 1, 450 OLEVERBATTRIB_ONCONTAINERMENU = 2 451 } OLEVERBATTRIB; 452cpp_quote("") 453 [local] HRESULT Next ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]LPOLEVERB rgelt,[out] ULONG *pceltFetched); 454 [call_as (Next)] HRESULT RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)]LPOLEVERB rgelt,[out] ULONG *pceltFetched); 455 HRESULT Skip ([in] ULONG celt); 456 HRESULT Reset (); 457 HRESULT Clone ([out] IEnumOLEVERB **ppenum); 458} 459cpp_quote("#endif") 460