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("") 6cpp_quote("#include <winapifamily.h>") 7cpp_quote("") 8 9#ifndef DO_NO_IMPORTS 10import "oleidl.idl"; 11import "oaidl.idl"; 12import "oleidl.idl"; 13import "servprov.idl"; 14import "urlmon.idl"; 15#endif 16 17cpp_quote("") 18cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") 19interface IEnumConnections; 20interface IEnumConnectionPoints; 21interface IConnectionPoint; 22interface IConnectionPointContainer; 23cpp_quote("#endif") 24 25cpp_quote("") 26cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 27interface IBindHost; 28interface IClassFactory2; 29interface IDropTarget; 30interface IProvideClassInfo; 31interface IProvideClassInfo2; 32interface IProvideMultipleClassInfo; 33interface IOleClientSite; 34interface IOleControl; 35interface IOleControlSite; 36interface IPropertyPage; 37interface IPropertyPage2; 38interface IPropertyPageSite; 39interface IPropertyNotifySink; 40interface ISpecifyPropertyPages; 41interface IPersistMemory; 42interface IPersistStreamInit; 43interface IPersistPropertyBag; 44interface ISimpleFrameSite; 45interface IFont; 46interface IPicture; 47interface IFontEventsDisp; 48interface IFontDisp; 49interface IPictureDisp; 50interface IAdviseSinkEx; 51interface IOleInPlaceObjectWindowless; 52interface IOleInPlaceSite; 53interface IOleInPlaceSiteEx; 54interface IOleInPlaceSiteWindowless; 55interface IViewObject2; 56interface IViewObjectEx; 57interface IOleUndoUnit; 58interface IOleParentUndoUnit; 59interface IEnumOleUndoUnits; 60interface IOleUndoManager; 61interface IPointerInactive; 62interface IObjectWithSite; 63interface IErrorLog; 64interface IPropertyBag; 65interface IPerPropertyBrowsing; 66interface IPropertyBag2; 67interface IPersistPropertyBag2; 68interface IQuickActivate; 69cpp_quote("#endif") 70 71cpp_quote("") 72#if !defined (_DCOM_OA_REMOTING_) && !defined (_DCOM_OC_REMOTING_) 73cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 74[version (1.0), pointer_default (unique)] 75interface IOleControlTypes { 76 typedef [v1_enum] enum tagUASFLAGS { 77 UAS_NORMAL = 0x00, 78 UAS_BLOCKED = 0x01, 79 UAS_NOPARENTENABLE = 0x02, 80 UAS_MASK = 0x03 81 } UASFLAGS; 82 cpp_quote("") 83 typedef [v1_enum] enum tagREADYSTATE { 84 READYSTATE_UNINITIALIZED= 0, 85 READYSTATE_LOADING = 1, 86 READYSTATE_LOADED = 2, 87 READYSTATE_INTERACTIVE = 3, 88 READYSTATE_COMPLETE = 4 89 } READYSTATE; 90} 91cpp_quote("#endif") 92 93cpp_quote("") 94cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") 95[object, uuid (B196B287-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 96interface IEnumConnections : IUnknown { 97 typedef IEnumConnections *PENUMCONNECTIONS; 98 typedef IEnumConnections *LPENUMCONNECTIONS; 99 typedef struct tagCONNECTDATA { 100 IUnknown *pUnk; 101 DWORD dwCookie; 102 } CONNECTDATA; 103 104cpp_quote("") 105 typedef struct tagCONNECTDATA *PCONNECTDATA; 106 typedef struct tagCONNECTDATA *LPCONNECTDATA; 107cpp_quote("") 108 [local] HRESULT Next ([in] ULONG cConnections,[out, size_is (cConnections), length_is (*pcFetched)]LPCONNECTDATA rgcd,[out] ULONG *pcFetched); 109 [call_as (Next)] HRESULT RemoteNext ([in] ULONG cConnections,[out, size_is (cConnections), length_is (*pcFetched)]LPCONNECTDATA rgcd,[out] ULONG *pcFetched); 110 HRESULT Skip ([in] ULONG cConnections); 111 HRESULT Reset (void); 112 HRESULT Clone ([out] IEnumConnections **ppEnum); 113} 114 115cpp_quote("") 116[object, uuid (B196B286-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 117interface IConnectionPoint : IUnknown { 118 typedef IConnectionPoint *PCONNECTIONPOINT; 119 typedef IConnectionPoint *LPCONNECTIONPOINT; 120cpp_quote("") 121 HRESULT GetConnectionInterface ([out] IID *pIID); 122 HRESULT GetConnectionPointContainer ([out] IConnectionPointContainer **ppCPC); 123 HRESULT Advise ([in] IUnknown *pUnkSink,[out] DWORD *pdwCookie); 124 HRESULT Unadvise ([in] DWORD dwCookie); 125 HRESULT EnumConnections ([out] IEnumConnections **ppEnum); 126} 127 128cpp_quote("") 129[object, uuid (B196B285-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 130interface IEnumConnectionPoints : IUnknown { 131 typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS; 132 typedef IEnumConnectionPoints *LPENUMCONNECTIONPOINTS; 133cpp_quote("") 134 [local] HRESULT Next ([in] ULONG cConnections,[out, size_is (cConnections), length_is (*pcFetched)]LPCONNECTIONPOINT *ppCP,[out] ULONG *pcFetched); 135 [call_as (Next)] HRESULT RemoteNext ([in] ULONG cConnections,[out, size_is (cConnections), length_is (*pcFetched)]LPCONNECTIONPOINT *ppCP,[out] ULONG *pcFetched); 136 HRESULT Skip ([in] ULONG cConnections); 137 HRESULT Reset (void); 138 HRESULT Clone ([out] IEnumConnectionPoints **ppEnum); 139} 140 141cpp_quote("") 142[object, uuid (B196B284-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 143interface IConnectionPointContainer : IUnknown { 144 typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER; 145 typedef IConnectionPointContainer *LPCONNECTIONPOINTCONTAINER; 146cpp_quote("") 147 HRESULT EnumConnectionPoints ([out] IEnumConnectionPoints **ppEnum); 148 HRESULT FindConnectionPoint ([in] REFIID riid,[out] IConnectionPoint **ppCP); 149} 150cpp_quote("#endif") 151 152cpp_quote("") 153cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 154[object, uuid (B196B28F-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 155interface IClassFactory2 : IClassFactory { 156 typedef IClassFactory2 *LPCLASSFACTORY2; 157cpp_quote("") 158 typedef struct tagLICINFO { 159 LONG cbLicInfo; 160 BOOL fRuntimeKeyAvail; 161 BOOL fLicVerified; 162 } LICINFO; 163 164cpp_quote("") 165 typedef struct tagLICINFO *LPLICINFO; 166cpp_quote("") 167 HRESULT GetLicInfo ([in, out] LICINFO *pLicInfo); 168 HRESULT RequestLicKey ([in] DWORD dwReserved,[out] BSTR *pBstrKey); 169 [local] HRESULT CreateInstanceLic ([in] IUnknown *pUnkOuter,[in] IUnknown *pUnkReserved,[in] REFIID riid,[in] BSTR bstrKey,[out, iid_is (riid)] PVOID *ppvObj); 170 [call_as (CreateInstanceLic)] HRESULT RemoteCreateInstanceLic ([in] REFIID riid,[in] BSTR bstrKey,[out, iid_is (riid)] IUnknown **ppvObj); 171} 172 173cpp_quote("") 174[object, uuid (B196B283-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 175interface IProvideClassInfo : IUnknown { 176 typedef IProvideClassInfo *LPPROVIDECLASSINFO; 177cpp_quote("") 178 HRESULT GetClassInfo ([out] ITypeInfo **ppTI); 179} 180 181cpp_quote("") 182[object, uuid (A6BC3AC0-DBAA-11ce-9de3-00aa004bb851), pointer_default (unique)] 183interface IProvideClassInfo2 : IProvideClassInfo { 184 typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2; 185cpp_quote("") 186 typedef enum tagGUIDKIND { 187 GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1 188 } GUIDKIND; 189cpp_quote("") 190 HRESULT GetGUID ([in] DWORD dwGuidKind,[out] GUID *pGUID); 191} 192 193cpp_quote("") 194[object, uuid (A7ABA9C1-8983-11cf-8f20-00805f2cd064), pointer_default (unique)] 195interface IProvideMultipleClassInfo : IProvideClassInfo2 { 196 cpp_quote("#define MULTICLASSINFO_GETTYPEINFO 0x1") 197 cpp_quote("#define MULTICLASSINFO_GETNUMRESERVEDDISPIDS 0x2") 198 cpp_quote("#define MULTICLASSINFO_GETIIDPRIMARY 0x4") 199 cpp_quote("#define MULTICLASSINFO_GETIIDSOURCE 0x8") 200 cpp_quote("") 201cpp_quote("#define TIFLAGS_EXTENDDISPATCHONLY 0x1") 202 203cpp_quote("") 204 typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO; 205cpp_quote("") 206 HRESULT GetMultiTypeInfoCount ([out] ULONG *pcti); 207 HRESULT GetInfoOfIndex ([in] ULONG iti,[in] DWORD dwFlags,[out] ITypeInfo **pptiCoClass,[out] DWORD *pdwTIFlags,[out] ULONG *pcdispidReserved,[out] IID *piidPrimary,[out] IID *piidSource); 208} 209 210cpp_quote("") 211[object, uuid (B196B288-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 212interface IOleControl : IUnknown { 213 typedef IOleControl *LPOLECONTROL; 214cpp_quote("") 215 typedef struct tagCONTROLINFO { 216 ULONG cb; 217 HACCEL hAccel; 218 USHORT cAccel; 219 DWORD dwFlags; 220 } CONTROLINFO; 221cpp_quote("") 222 typedef struct tagCONTROLINFO *LPCONTROLINFO; 223cpp_quote("") 224 typedef enum tagCTRLINFO { 225 CTRLINFO_EATS_RETURN = 1, 226 CTRLINFO_EATS_ESCAPE = 2 227 } CTRLINFO; 228cpp_quote("") 229 HRESULT GetControlInfo ([in, out] CONTROLINFO *pCI); 230 HRESULT OnMnemonic ([in] MSG *pMsg); 231 HRESULT OnAmbientPropertyChange ([in] DISPID dispID); 232 HRESULT FreezeEvents ([in] BOOL bFreeze); 233} 234 235cpp_quote("") 236[object, uuid (B196B289-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 237interface IOleControlSite : IUnknown { 238 typedef IOleControlSite *LPOLECONTROLSITE; 239cpp_quote("") 240 typedef struct tagPOINTF { 241 FLOAT x; 242 FLOAT y; 243 } POINTF; 244cpp_quote("") 245 typedef struct tagPOINTF *LPPOINTF; 246cpp_quote("") 247 typedef enum tagXFORMCOORDS { 248 XFORMCOORDS_POSITION = 0x1, 249 XFORMCOORDS_SIZE = 0x2, 250 XFORMCOORDS_HIMETRICTOCONTAINER = 0x4, 251 XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8, 252 XFORMCOORDS_EVENTCOMPAT = 0x10 253 } XFORMCOORDS; 254cpp_quote("") 255 HRESULT OnControlInfoChanged (void); 256 HRESULT LockInPlaceActive ([in] BOOL fLock); 257 HRESULT GetExtendedControl ([out] IDispatch **ppDisp); 258 HRESULT TransformCoords ([in, out] POINTL *pPtlHimetric,[in, out] POINTF *pPtfContainer,[in] DWORD dwFlags); 259 HRESULT TranslateAccelerator ([in] MSG *pMsg,[in] DWORD grfModifiers); 260 HRESULT OnFocus ([in] BOOL fGotFocus); 261 HRESULT ShowPropertyFrame (void); 262} 263 264cpp_quote("") 265[object, uuid (B196B28D-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 266interface IPropertyPage : IUnknown { 267 typedef IPropertyPage *LPPROPERTYPAGE; 268cpp_quote("") 269 typedef struct tagPROPPAGEINFO { 270 ULONG cb; 271 LPOLESTR pszTitle; 272 SIZE size; 273 LPOLESTR pszDocString; 274 LPOLESTR pszHelpFile; 275 DWORD dwHelpContext; 276 } PROPPAGEINFO; 277cpp_quote("") 278 typedef struct tagPROPPAGEINFO *LPPROPPAGEINFO; 279cpp_quote("") 280 HRESULT SetPageSite ([in] IPropertyPageSite *pPageSite); 281 HRESULT Activate ([in] HWND hWndParent,[in] LPCRECT pRect,[in] BOOL bModal); 282 HRESULT Deactivate (void); 283 HRESULT GetPageInfo ([out] PROPPAGEINFO *pPageInfo); 284 HRESULT SetObjects ([in] ULONG cObjects,[in, size_is (cObjects)] IUnknown **ppUnk); 285 HRESULT Show ([in] UINT nCmdShow); 286 HRESULT Move ([in] LPCRECT pRect); 287 HRESULT IsPageDirty (void); 288 HRESULT Apply (void); 289 HRESULT Help ([in] LPCOLESTR pszHelpDir); 290 HRESULT TranslateAccelerator ([in] MSG *pMsg); 291} 292 293cpp_quote("") 294[object, uuid (01e44665-24ac-101b-84ed-08002b2ec713), pointer_default (unique)] 295interface IPropertyPage2 : IPropertyPage { 296 typedef IPropertyPage2 *LPPROPERTYPAGE2; 297cpp_quote("") 298 HRESULT EditProperty ([in] DISPID dispID); 299} 300 301cpp_quote("") 302[object, uuid (B196B28C-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 303interface IPropertyPageSite : IUnknown { 304 typedef IPropertyPageSite *LPPROPERTYPAGESITE; 305cpp_quote("") 306 typedef enum tagPROPPAGESTATUS { 307 PROPPAGESTATUS_DIRTY = 0x01, 308 PROPPAGESTATUS_VALIDATE = 0x02, 309 PROPPAGESTATUS_CLEAN = 0x04 310 } PROPPAGESTATUS; 311cpp_quote("") 312 HRESULT OnStatusChange ([in] DWORD dwFlags); 313 HRESULT GetLocaleID ([out] LCID *pLocaleID); 314 HRESULT GetPageContainer ([out] IUnknown **ppUnk); 315 HRESULT TranslateAccelerator ([in] MSG *pMsg); 316} 317 318cpp_quote("") 319[object, uuid (9bfbbc02-EFF1-101a-84ed-00aa00341d07), pointer_default (unique)] 320interface IPropertyNotifySink : IUnknown { 321 typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK; 322cpp_quote("") 323 HRESULT OnChanged ([in] DISPID dispID); 324 HRESULT OnRequestEdit ([in] DISPID dispID); 325} 326 327cpp_quote("") 328[object, uuid (B196B28B-BAB4-101a-B69C-00aa00341d07), pointer_default (unique)] 329interface ISpecifyPropertyPages : IUnknown { 330 typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES; 331cpp_quote("") 332 typedef struct tagCAUUID { 333 ULONG cElems; 334 [size_is (cElems)] GUID *pElems; 335 } CAUUID; 336cpp_quote("") 337 typedef struct tagCAUUID *LPCAUUID; 338cpp_quote("") 339 HRESULT GetPages ([out] CAUUID *pPages); 340} 341 342cpp_quote("") 343[object, uuid (BD1AE5E0-A6AE-11ce-BD37-504200c10000), pointer_default (unique)] 344interface IPersistMemory : IPersist { 345 typedef IPersistMemory *LPPERSISTMEMORY; 346cpp_quote("") 347 HRESULT IsDirty (void); 348 [local] HRESULT Load ([in, size_is (cbSize)] LPVOID pMem,[in] ULONG cbSize); 349 [call_as (Load)] HRESULT RemoteLoad ([in, size_is (cbSize)] BYTE *pMem,[in] ULONG cbSize); 350 [local] HRESULT Save ([out, size_is (cbSize)] LPVOID pMem,[in] BOOL fClearDirty,[in] ULONG cbSize); 351 [call_as (Save)] HRESULT RemoteSave ([out, size_is (cbSize)] BYTE *pMem,[in] BOOL fClearDirty,[in] ULONG cbSize); 352 HRESULT GetSizeMax ([out] ULONG *pCbSize); 353 HRESULT InitNew (void); 354} 355 356cpp_quote("") 357[object, uuid (7fd52380-4e07-101b-AE2D-08002b2ec713), pointer_default (unique)] 358interface IPersistStreamInit : IPersist { 359 typedef IPersistStreamInit *LPPERSISTSTREAMINIT; 360cpp_quote("") 361 HRESULT IsDirty (void); 362 HRESULT Load ([in] LPSTREAM pStm); 363 HRESULT Save ([in] LPSTREAM pStm,[in] BOOL fClearDirty); 364 HRESULT GetSizeMax ([out] ULARGE_INTEGER *pCbSize); 365 HRESULT InitNew (void); 366} 367 368cpp_quote("") 369[object, uuid (37d84f60-42cb-11ce-8135-00aa004bb851), pointer_default (unique)] 370interface IPersistPropertyBag : IPersist { 371 typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG; 372cpp_quote("") 373 HRESULT InitNew (void); 374 HRESULT Load ([in] IPropertyBag *pPropBag,[in, unique] IErrorLog *pErrorLog); 375 HRESULT Save ([in] IPropertyBag *pPropBag,[in] BOOL fClearDirty,[in] BOOL fSaveAllProperties); 376} 377 378cpp_quote("") 379[object, uuid (742b0e01-14e6-101b-914e-00aa00300cab), pointer_default (unique)] 380interface ISimpleFrameSite : IUnknown { 381 typedef ISimpleFrameSite *LPSIMPLEFRAMESITE; 382cpp_quote("") 383 HRESULT PreMessageFilter ([in] HWND hWnd,[in] UINT msg,[in] WPARAM wp,[in] LPARAM lp,[out] LRESULT *plResult,[out] DWORD *pdwCookie); 384 HRESULT PostMessageFilter ([in] HWND hWnd,[in] UINT msg,[in] WPARAM wp,[in] LPARAM lp,[out] LRESULT *plResult,[in] DWORD dwCookie); 385} 386 387cpp_quote("") 388[object, uuid (BEF6E002-A874-101a-8bba-00aa00300cab), pointer_default (unique)] 389interface IFont : IUnknown { 390 typedef IFont *LPFONT; 391cpp_quote("") 392 cpp_quote("#ifndef OLE2ANSI") 393 typedef TEXTMETRICW TEXTMETRICOLE; 394 cpp_quote("#else") 395 cpp_quote("typedef TEXTMETRIC TEXTMETRICOLE;") 396 cpp_quote("#endif") 397 398cpp_quote("") 399 typedef TEXTMETRICOLE *LPTEXTMETRICOLE; 400cpp_quote("") 401 HRESULT get_Name ([out] BSTR *pName); 402 HRESULT put_Name ([in] BSTR name); 403 HRESULT get_Size ([out] CY *pSize); 404 HRESULT put_Size ([in] CY size); 405 HRESULT get_Bold ([out] BOOL *pBold); 406 HRESULT put_Bold ([in] BOOL bold); 407 HRESULT get_Italic ([out] BOOL *pItalic); 408 HRESULT put_Italic ([in] BOOL italic); 409 HRESULT get_Underline ([out] BOOL *pUnderline); 410 HRESULT put_Underline ([in] BOOL underline); 411 HRESULT get_Strikethrough ([out] BOOL *pStrikethrough); 412 HRESULT put_Strikethrough ([in] BOOL strikethrough); 413 HRESULT get_Weight ([out] SHORT *pWeight); 414 HRESULT put_Weight ([in] SHORT weight); 415 HRESULT get_Charset ([out] SHORT *pCharset); 416 HRESULT put_Charset ([in] SHORT charset); 417 HRESULT get_hFont ([out] HFONT *phFont); 418 HRESULT Clone ([out] IFont **ppFont); 419 HRESULT IsEqual ([in] IFont *pFontOther); 420 HRESULT SetRatio ([in] LONG cyLogical,[in] LONG cyHimetric); 421 HRESULT QueryTextMetrics ([out] TEXTMETRICOLE *pTM); 422 HRESULT AddRefHfont ([in] HFONT hFont); 423 HRESULT ReleaseHfont ([in] HFONT hFont); 424 HRESULT SetHdc ([in] HDC hDC); 425} 426 427cpp_quote("") 428[object, uuid (7bf80980-BF32-101a-8bbb-00aa00300cab), pointer_default (unique)] 429interface IPicture : IUnknown { 430 typedef IPicture *LPPICTURE; 431cpp_quote("") 432 typedef enum tagPictureAttributes { 433 PICTURE_SCALABLE = 0x1, 434 PICTURE_TRANSPARENT = 0x2 435 } PICTUREATTRIBUTES; 436cpp_quote("") 437 typedef [uuid (66504313-BE0F-101a-8bbb-00aa00300cab), public] UINT OLE_HANDLE; 438 typedef [uuid (66504306-BE0F-101a-8bbb-00aa00300cab), hidden] LONG OLE_XPOS_HIMETRIC; 439 typedef [uuid (66504307-BE0F-101a-8bbb-00aa00300cab), hidden] LONG OLE_YPOS_HIMETRIC; 440 typedef [uuid (66504308-BE0F-101a-8bbb-00aa00300cab), hidden] LONG OLE_XSIZE_HIMETRIC; 441 typedef [uuid (66504309-BE0F-101a-8bbb-00aa00300cab), hidden] LONG OLE_YSIZE_HIMETRIC; 442cpp_quote("") 443 HRESULT get_Handle ([out] OLE_HANDLE *pHandle); 444 HRESULT get_hPal ([out] OLE_HANDLE *phPal); 445 HRESULT get_Type ([out] SHORT *pType); 446 HRESULT get_Width ([out] OLE_XSIZE_HIMETRIC *pWidth); 447 HRESULT get_Height ([out] OLE_YSIZE_HIMETRIC *pHeight); 448 HRESULT Render ([in] HDC hDC,[in] LONG x,[in] LONG y,[in] LONG cx,[in] LONG cy,[in] OLE_XPOS_HIMETRIC xSrc,[in] OLE_YPOS_HIMETRIC ySrc,[in] OLE_XSIZE_HIMETRIC cxSrc,[in] OLE_YSIZE_HIMETRIC cySrc,[in] LPCRECT pRcWBounds); 449 HRESULT set_hPal ([in] OLE_HANDLE hPal); 450 HRESULT get_CurDC ([out] HDC *phDC); 451 HRESULT SelectPicture ([in] HDC hDCIn,[out] HDC *phDCOut,[out] OLE_HANDLE *phBmpOut); 452 HRESULT get_KeepOriginalFormat ([out] BOOL *pKeep); 453 HRESULT put_KeepOriginalFormat ([in] BOOL keep); 454 HRESULT PictureChanged (void); 455 HRESULT SaveAsFile ([in] LPSTREAM pStream,[in] BOOL fSaveMemCopy,[out] LONG *pCbSize); 456 HRESULT get_Attributes ([out] DWORD *pDwAttr); 457} 458 459cpp_quote("") 460[object, uuid (F5185DD8-2012-4b0b-AAD9-F052C6BD482B), pointer_default (unique)] 461interface IPicture2 : IUnknown { 462 typedef IPicture2 *LPPICTURE2; 463 typedef UINT_PTR HHANDLE; 464cpp_quote("") 465 HRESULT get_Handle ([out] HHANDLE *pHandle); 466 HRESULT get_hPal ([out] HHANDLE *phPal); 467 HRESULT get_Type ([out] SHORT *pType); 468 HRESULT get_Width ([out] OLE_XSIZE_HIMETRIC *pWidth); 469 HRESULT get_Height ([out] OLE_YSIZE_HIMETRIC *pHeight); 470 HRESULT Render ([in] HDC hDC,[in] LONG x,[in] LONG y,[in] LONG cx,[in] LONG cy,[in] OLE_XPOS_HIMETRIC xSrc,[in] OLE_YPOS_HIMETRIC ySrc,[in] OLE_XSIZE_HIMETRIC cxSrc,[in] OLE_YSIZE_HIMETRIC cySrc,[in] LPCRECT pRcWBounds); 471 HRESULT set_hPal ([in] HHANDLE hPal); 472 HRESULT get_CurDC ([out] HDC *phDC); 473 HRESULT SelectPicture ([in] HDC hDCIn,[out] HDC *phDCOut,[out] HHANDLE *phBmpOut); 474 HRESULT get_KeepOriginalFormat ([out] BOOL *pKeep); 475 HRESULT put_KeepOriginalFormat ([in] BOOL keep); 476 HRESULT PictureChanged (void); 477 HRESULT SaveAsFile ([in] LPSTREAM pStream,[in] BOOL fSaveMemCopy,[out] LONG *pCbSize); 478 HRESULT get_Attributes ([out] DWORD *pDwAttr); 479} 480 481cpp_quote("") 482[object, uuid (4ef6100a-AF88-11d0-9846-00c04fc29993), pointer_default (unique)] 483interface IFontEventsDisp : IDispatch { 484 typedef IFontEventsDisp *LPFONTEVENTS; 485} 486 487cpp_quote("") 488[object, uuid (BEF6E003-A874-101a-8bba-00aa00300cab), pointer_default (unique)] 489interface IFontDisp : IDispatch { 490 typedef IFontDisp *LPFONTDISP; 491} 492 493cpp_quote("") 494[object, uuid (7bf80981-BF32-101a-8bbb-00aa00300cab), pointer_default (unique)] 495interface IPictureDisp : IDispatch { 496 typedef IPictureDisp *LPPICTUREDISP; 497} 498 499cpp_quote("") 500[object, pointer_default (unique), uuid (1c2056cc-5ef4-101b-8bc8-00aa003e3b29)] 501interface IOleInPlaceObjectWindowless : IOleInPlaceObject { 502 typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS; 503cpp_quote("") 504 HRESULT OnWindowMessage ([in] UINT msg,[in] WPARAM wParam,[in] LPARAM lParam,[out] LRESULT *plResult); 505 HRESULT GetDropTarget ([out] IDropTarget **ppDropTarget); 506} 507 508cpp_quote("") 509[object, pointer_default (unique), uuid (9c2cad80-3424-11cf-B670-00aa004cd6d8)] 510interface IOleInPlaceSiteEx : IOleInPlaceSite { 511 typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX; 512cpp_quote("") 513 typedef [v1_enum] enum tagACTIVATEFLAGS { 514 ACTIVATE_WINDOWLESS = 1, 515 } ACTIVATEFLAGS; 516cpp_quote("") 517 HRESULT OnInPlaceActivateEx ([out] BOOL *pfNoRedraw,[in] DWORD dwFlags); 518 HRESULT OnInPlaceDeactivateEx ([in] BOOL fNoRedraw); 519 HRESULT RequestUIActivate (void); 520} 521 522cpp_quote("") 523[object, pointer_default (unique), uuid (922eada0-3424-11cf-B670-00aa004cd6d8)] 524interface IOleInPlaceSiteWindowless : IOleInPlaceSiteEx { 525 typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS; 526cpp_quote("") 527 typedef [v1_enum] enum tagOLEDCFLAGS { 528 OLEDC_NODRAW = 0x01, 529 OLEDC_PAINTBKGND = 0x02, 530 OLEDC_OFFSCREEN = 0x04 531 } OLEDCFLAGS; 532cpp_quote("") 533 HRESULT CanWindowlessActivate (void); 534 HRESULT GetCapture (void); 535 HRESULT SetCapture ([in] BOOL fCapture); 536 HRESULT GetFocus (void); 537 HRESULT SetFocus ([in] BOOL fFocus); 538 HRESULT GetDC ([in, unique] LPCRECT pRect,[in] DWORD grfFlags,[out] HDC *phDC); 539 HRESULT ReleaseDC ([in] HDC hDC); 540 HRESULT InvalidateRect ([in, unique] LPCRECT pRect,[in] BOOL fErase); 541 HRESULT InvalidateRgn ([in] HRGN hRGN,[in] BOOL fErase); 542 HRESULT ScrollRect ([in] INT dx,[in] INT dy,[in] LPCRECT pRectScroll,[in] LPCRECT pRectClip); 543 HRESULT AdjustRect ([in, out] LPRECT prc); 544 HRESULT OnDefWindowMessage ([in] UINT msg,[in] WPARAM wParam,[in] LPARAM lParam,[out] LRESULT *plResult); 545} 546 547cpp_quote("") 548[object, pointer_default (unique), uuid (3af24292-0c96-11ce-A0CF-00aa00600ab8)] 549interface IViewObjectEx : IViewObject2 { 550 typedef IViewObjectEx *LPVIEWOBJECTEX; 551cpp_quote("") 552 typedef [v1_enum] enum tagVIEWSTATUS { 553 VIEWSTATUS_OPAQUE = 1, 554 VIEWSTATUS_SOLIDBKGND = 2, 555 VIEWSTATUS_DVASPECTOPAQUE = 4, 556 VIEWSTATUS_DVASPECTTRANSPARENT = 8, 557 VIEWSTATUS_SURFACE = 16, 558 VIEWSTATUS_3DSURFACE = 32 559 } VIEWSTATUS; 560cpp_quote("") 561 typedef [v1_enum] enum tagHITRESULT { 562 HITRESULT_OUTSIDE = 0, 563 HITRESULT_TRANSPARENT = 1, 564 HITRESULT_CLOSE = 2, 565 HITRESULT_HIT = 3 566 } HITRESULT; 567cpp_quote("") 568 typedef [v1_enum] enum tagDVASPECT2 { 569 DVASPECT_OPAQUE = 16, 570 DVASPECT_TRANSPARENT = 32, 571 } DVASPECT2; 572cpp_quote("") 573 typedef struct tagExtentInfo { 574 ULONG cb; 575 DWORD dwExtentMode; 576 SIZEL sizelProposed; 577 } DVEXTENTINFO; 578cpp_quote("") 579 typedef [v1_enum] enum tagExtentMode { 580 DVEXTENT_CONTENT, 581 DVEXTENT_INTEGRAL 582 } DVEXTENTMODE; 583cpp_quote("") 584 typedef [v1_enum] enum tagAspectInfoFlag { 585 DVASPECTINFOFLAG_CANOPTIMIZE = 1 586 } DVASPECTINFOFLAG; 587cpp_quote("") 588 typedef struct tagAspectInfo { 589 ULONG cb; 590 DWORD dwFlags; 591 } DVASPECTINFO; 592cpp_quote("") 593 HRESULT GetRect ([in] DWORD dwAspect,[out] LPRECTL pRect); 594 HRESULT GetViewStatus ([out] DWORD *pdwStatus); 595 HRESULT QueryHitPoint ([in] DWORD dwAspect,[in] LPCRECT pRectBounds,[in] POINT ptlLoc,[in] LONG lCloseHint,[out] DWORD *pHitResult); 596 HRESULT QueryHitRect ([in] DWORD dwAspect,[in] LPCRECT pRectBounds,[in] LPCRECT pRectLoc,[in] LONG lCloseHint,[out] DWORD *pHitResult); 597 HRESULT GetNaturalExtent ([in] DWORD dwAspect,[in] LONG lindex,[in] DVTARGETDEVICE *ptd,[in] HDC hicTargetDev,[in] DVEXTENTINFO *pExtentInfo,[out] LPSIZEL pSizel); 598} 599 600cpp_quote("") 601[object, pointer_default (unique), uuid (894ad3b0-EF97-11ce-9bc9-00aa00608e01)] 602interface IOleUndoUnit : IUnknown { 603 typedef IOleUndoUnit *LPOLEUNDOUNIT; 604cpp_quote("") 605 HRESULT Do ([in] IOleUndoManager *pUndoManager); 606 HRESULT GetDescription ([out] BSTR *pBstr); 607 HRESULT GetUnitType ([out] CLSID *pClsid,[out] LONG *plID); 608 HRESULT OnNextAdd (void); 609} 610 611cpp_quote("") 612[object, pointer_default (unique), uuid (A1FAF330-EF97-11ce-9bc9-00aa00608e01)] 613interface IOleParentUndoUnit : IOleUndoUnit { 614 typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT; 615cpp_quote("") 616 HRESULT Open ([in] IOleParentUndoUnit *pPUU); 617 HRESULT Close ([in] IOleParentUndoUnit *pPUU,[in] BOOL fCommit); 618 HRESULT Add ([in] IOleUndoUnit *pUU); 619 HRESULT FindUnit ([in] IOleUndoUnit *pUU); 620 HRESULT GetParentState ([out] DWORD *pdwState); 621} 622 623cpp_quote("") 624[object, pointer_default (unique), uuid (B3E7C340-EF97-11ce-9bc9-00aa00608e01)] 625interface IEnumOleUndoUnits : IUnknown { 626 typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS; 627cpp_quote("") 628 [local] HRESULT Next ([in] ULONG cElt,[out, size_is (cElt), length_is (*pcEltFetched)]IOleUndoUnit **rgElt,[out] ULONG *pcEltFetched); 629 [call_as (Next)] HRESULT RemoteNext ([in] ULONG cElt,[out, size_is (cElt), length_is (*pcEltFetched)]IOleUndoUnit **rgElt,[out] ULONG *pcEltFetched); 630 HRESULT Skip ([in] ULONG cElt); 631 HRESULT Reset (void); 632 HRESULT Clone ([out] IEnumOleUndoUnits **ppEnum); 633} 634 635cpp_quote("") 636[object, pointer_default (unique), uuid (D001F200-EF97-11ce-9bc9-00aa00608e01)] 637interface IOleUndoManager : IUnknown { 638cpp_quote("#define SID_SOleUndoManager IID_IOleUndoManager") 639cpp_quote("") 640 typedef IOleUndoManager *LPOLEUNDOMANAGER; 641cpp_quote("") 642 HRESULT Open ([in] IOleParentUndoUnit *pPUU); 643 HRESULT Close ([in] IOleParentUndoUnit *pPUU,[in] BOOL fCommit); 644 HRESULT Add ([in] IOleUndoUnit *pUU); 645 HRESULT GetOpenParentState ([out] DWORD *pdwState); 646 HRESULT DiscardFrom ([in] IOleUndoUnit *pUU); 647 HRESULT UndoTo ([in] IOleUndoUnit *pUU); 648 HRESULT RedoTo ([in] IOleUndoUnit *pUU); 649 HRESULT EnumUndoable ([out] IEnumOleUndoUnits **ppEnum); 650 HRESULT EnumRedoable ([out] IEnumOleUndoUnits **ppEnum); 651 HRESULT GetLastUndoDescription ([out] BSTR *pBstr); 652 HRESULT GetLastRedoDescription ([out] BSTR *pBstr); 653 HRESULT Enable ([in] BOOL fEnable); 654} 655 656cpp_quote("") 657[object, pointer_default (unique), uuid (55980ba0-35aa-11cf-B671-00aa004cd6d8)] 658interface IPointerInactive : IUnknown { 659 typedef IPointerInactive *LPPOINTERINACTIVE; 660cpp_quote("") 661 typedef [v1_enum] enum tagPOINTERINACTIVE { 662 POINTERINACTIVE_ACTIVATEONENTRY = 1, 663 POINTERINACTIVE_DEACTIVATEONLEAVE = 2, 664 POINTERINACTIVE_ACTIVATEONDRAG = 4 665 } POINTERINACTIVE; 666cpp_quote("") 667 HRESULT GetActivationPolicy ([out] DWORD *pdwPolicy); 668 HRESULT OnInactiveMouseMove ([in] LPCRECT pRectBounds,[in] LONG x,[in] LONG y,[in] DWORD grfKeyState); 669 HRESULT OnInactiveSetCursor ([in] LPCRECT pRectBounds,[in] LONG x,[in] LONG y,[in] DWORD dwMouseMsg,[in] BOOL fSetAlways); 670} 671 672cpp_quote("") 673[object, uuid (FC4801A3-2ba9-11cf-A229-00aa003d7352), pointer_default (unique)] 674interface IObjectWithSite : IUnknown { 675 typedef IObjectWithSite *LPOBJECTWITHSITE; 676cpp_quote("") 677 HRESULT SetSite ([in] IUnknown *pUnkSite); 678 HRESULT GetSite ([in] REFIID riid,[out, iid_is (riid)] void **ppvSite); 679} 680cpp_quote("#endif") 681#endif 682 683#if !defined (_DCOM_OC_REMOTING_) 684cpp_quote("") 685cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 686[object, uuid (376bd3aa-3845-101b-84ed-08002b2ec713), pointer_default (unique)] 687interface IPerPropertyBrowsing : IUnknown { 688 typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING; 689cpp_quote("") 690 typedef struct tagCALPOLESTR { 691 ULONG cElems; 692 [size_is (cElems)] LPOLESTR *pElems; 693 } CALPOLESTR; 694cpp_quote("") 695 typedef struct tagCALPOLESTR *LPCALPOLESTR; 696cpp_quote("") 697 typedef struct tagCADWORD { 698 ULONG cElems; 699 [size_is (cElems)] DWORD *pElems; 700 } CADWORD; 701cpp_quote("") 702 typedef struct tagCADWORD *LPCADWORD; 703cpp_quote("") 704 HRESULT GetDisplayString ([in] DISPID dispID,[out] BSTR *pBstr); 705 HRESULT MapPropertyToPage ([in] DISPID dispID,[out] CLSID *pClsid); 706 HRESULT GetPredefinedStrings ([in] DISPID dispID,[out] CALPOLESTR *pCaStringsOut,[out] CADWORD *pCaCookiesOut); 707 HRESULT GetPredefinedValue ([in] DISPID dispID,[in] DWORD dwCookie,[out] VARIANT *pVarOut); 708} 709cpp_quote("#endif") 710#endif 711 712#if !defined (_NON_DCOM_REMOTING_) && !defined (_DCOM_OC_REMOTING_) 713cpp_quote("") 714cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") 715[object, uuid (22f55882-280b-11d0-A8A9-00a0c90c2004), pointer_default (unique)] 716interface IPropertyBag2 : IUnknown { 717 typedef IPropertyBag2 *LPPROPERTYBAG2; 718cpp_quote("") 719 typedef [v1_enum] enum tagPROPBAG2_TYPE { 720 PROPBAG2_TYPE_UNDEFINED = 0, 721 PROPBAG2_TYPE_DATA = 1, 722 PROPBAG2_TYPE_URL = 2, 723 PROPBAG2_TYPE_OBJECT = 3, 724 PROPBAG2_TYPE_STREAM = 4, 725 PROPBAG2_TYPE_STORAGE = 5, 726 PROPBAG2_TYPE_MONIKER = 6 727 } PROPBAG2_TYPE; 728cpp_quote("") 729 typedef struct tagPROPBAG2 { 730 DWORD dwType; 731 VARTYPE vt; 732 CLIPFORMAT cfType; 733 DWORD dwHint; 734 LPOLESTR pstrName; 735 CLSID clsid; 736 } PROPBAG2; 737cpp_quote("") 738 HRESULT Read ([in] ULONG cProperties,[in, size_is (cProperties)] PROPBAG2 *pPropBag,[in, unique] IErrorLog *pErrLog,[out, size_is (cProperties)] VARIANT *pvarValue,[in, out, unique, size_is (cProperties)] HRESULT *phrError); 739 HRESULT Write ([in] ULONG cProperties,[in, size_is (cProperties)] PROPBAG2 *pPropBag,[in, size_is (cProperties)] VARIANT *pvarValue); 740 HRESULT CountProperties ([out] ULONG *pcProperties); 741 HRESULT GetPropertyInfo ([in] ULONG iProperty,[in] ULONG cProperties,[out, size_is (cProperties)] PROPBAG2 *pPropBag,[out] ULONG *pcProperties); 742 HRESULT LoadObject ([in] LPCOLESTR pstrName,[in] DWORD dwHint,[in] IUnknown *pUnkObject,[in, unique] IErrorLog *pErrLog); 743} 744cpp_quote("#endif") 745cpp_quote("") 746cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 747[object, uuid (22f55881-280b-11d0-A8A9-00a0c90c2004), pointer_default (unique)] 748interface IPersistPropertyBag2 : IPersist { 749 typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2; 750cpp_quote("") 751 HRESULT InitNew (void); 752 HRESULT Load ([in] IPropertyBag2 *pPropBag,[in, unique] IErrorLog *pErrLog); 753 HRESULT Save ([in] IPropertyBag2 *pPropBag,[in] BOOL fClearDirty,[in] BOOL fSaveAllProperties); 754 HRESULT IsDirty (void); 755} 756cpp_quote("#endif") 757#endif 758 759#if !defined (_NON_DCOM_REMOTING_) && !defined (_DCOM_OA_REMOTING_) 760#if !defined (_DCOM_OC_REMOTING_) 761cpp_quote("") 762cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 763[object, pointer_default (unique), uuid (3af24290-0c96-11ce-A0CF-00aa00600ab8)] 764interface IAdviseSinkEx : IAdviseSink { 765 typedef IAdviseSinkEx *LPADVISESINKEX; 766cpp_quote("") 767 [local] void OnViewStatusChange ([in] DWORD dwViewStatus); 768 [call_as (OnViewStatusChange)] HRESULT RemoteOnViewStatusChange ([in] DWORD dwViewStatus); 769} 770cpp_quote("#endif") 771#endif 772 773cpp_quote("") 774cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") 775[object, pointer_default (unique), uuid (CF51ED10-62fe-11cf-BF86-00a0c9034836)] 776interface IQuickActivate : IUnknown { 777 typedef IQuickActivate *LPQUICKACTIVATE; 778cpp_quote("") 779 typedef [v1_enum] enum tagQACONTAINERFLAGS { 780 QACONTAINER_SHOWHATCHING = 0x0001, 781 QACONTAINER_SHOWGRABHANDLES = 0x0002, 782 QACONTAINER_USERMODE = 0x0004, 783 QACONTAINER_DISPLAYASDEFAULT = 0x0008, 784 QACONTAINER_UIDEAD = 0x0010, 785 QACONTAINER_AUTOCLIP = 0x0020, 786 QACONTAINER_MESSAGEREFLECT = 0x0040, 787 QACONTAINER_SUPPORTSMNEMONICS = 0x0080 788 } QACONTAINERFLAGS; 789cpp_quote("") 790 typedef [uuid (66504301-BE0F-101a-8bbb-00aa00300cab), public] DWORD OLE_COLOR; 791cpp_quote("") 792 typedef struct tagQACONTAINER { 793 ULONG cbSize; 794 IOleClientSite *pClientSite; 795 IAdviseSinkEx *pAdviseSink; 796 IPropertyNotifySink *pPropertyNotifySink; 797 IUnknown *pUnkEventSink; 798 DWORD dwAmbientFlags; 799 OLE_COLOR colorFore; 800 OLE_COLOR colorBack; 801 IFont *pFont; 802 IOleUndoManager *pUndoMgr; 803 DWORD dwAppearance; 804 LONG lcid; 805 HPALETTE hpal; 806 IBindHost *pBindHost; 807 IOleControlSite *pOleControlSite; 808 IServiceProvider *pServiceProvider; 809 } QACONTAINER; 810cpp_quote("") 811 typedef struct tagQACONTROL { 812 ULONG cbSize; 813 DWORD dwMiscStatus; 814 DWORD dwViewStatus; 815 DWORD dwEventCookie; 816 DWORD dwPropNotifyCookie; 817 DWORD dwPointerActivationPolicy; 818 } QACONTROL; 819cpp_quote("") 820 [local] HRESULT QuickActivate ([in] QACONTAINER *pQaContainer,[in, out] QACONTROL *pQaControl); 821 [call_as (QuickActivate)] HRESULT RemoteQuickActivate ([in] QACONTAINER *pQaContainer,[out] QACONTROL *pQaControl); 822 HRESULT SetContentExtent ([in] LPSIZEL pSizel); 823 HRESULT GetContentExtent ([out] LPSIZEL pSizel); 824} 825cpp_quote("#endif") 826#endif 827