ocidl.idl 30 KB

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