Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

208 lines
8.3 KiB

  1. // TaskUI.idl : IDL source for TaskUI.dll
  2. //
  3. // This file will be processed by the MIDL tool to
  4. // produce the type library (TaskUI.tlb) and marshalling code.
  5. import "oaidl.idl";
  6. import "ocidl.idl";
  7. #include "olectl.h"
  8. [
  9. uuid(D526AD60-3E72-4F6E-BE54-81E6F6A93ADA),
  10. version(1.0),
  11. helpstring("TaskUI 1.0 Type Library")
  12. ]
  13. library TASKUILib
  14. {
  15. importlib("stdole2.tlb");
  16. [
  17. object,
  18. uuid(01D5D917-A57E-4472-9B28-41F35AEEAEFB),
  19. helpstring("ITaskFrame Interface"),
  20. pointer_default(unique)
  21. ]
  22. interface ITaskFrame : IUnknown
  23. {
  24. [helpstring("method GetPropertyBag")] HRESULT GetPropertyBag([in] REFIID riid, [out, iid_is(riid), retval] void **ppv);
  25. [helpstring("method ShowPage")] HRESULT ShowPage([in] REFCLSID rclsidPage, [in] BOOL bTrimHistory);
  26. [helpstring("method Back")] HRESULT Back([in] UINT cPages);
  27. [helpstring("method Forward")] HRESULT Forward();
  28. [helpstring("method Home")] HRESULT Home();
  29. [helpstring("method Close")] HRESULT Close();
  30. [helpstring("method SetStatusText")] HRESULT SetStatusText([in, optional] LPCWSTR pszText);
  31. };
  32. [
  33. object,
  34. uuid(00AD7D5E-78FA-4A43-9C30-5C589E67AF32),
  35. helpstring("ITaskPageFactory Interface"),
  36. pointer_default(unique)
  37. ]
  38. interface ITaskPageFactory : IUnknown
  39. {
  40. [helpstring("method CreatePage")] HRESULT CreatePage([in] REFCLSID rclsidPage, [in] REFIID riid, [out, retval] void **ppv);
  41. };
  42. [
  43. object,
  44. uuid(66F3137E-2915-442C-9D49-277A7901B091),
  45. helpstring("ITaskPage Interface"),
  46. pointer_default(unique)
  47. ]
  48. interface ITaskPage : IUnknown
  49. {
  50. [helpstring("method SetFrame")] HRESULT SetFrame([in] ITaskFrame* pFrame);
  51. [helpstring("method GetObjectCount")] HRESULT GetObjectCount([in] UINT nArea, [out, retval] UINT *pVal);
  52. [helpstring("method CreateObject")] HRESULT CreateObject([in] UINT nArea, [in] UINT nIndex, [in] REFIID riid, [out, iid_is(riid), retval] void **ppv);
  53. [helpstring("method Reinitialize")] HRESULT Reinitialize([in] ULONG reserved);
  54. //[helpstring("method Notify")] HRESULT Notify([in] UINT uMsg, [in] WPARAM wParam, [in] LPARAM lParam);
  55. };
  56. [
  57. object,
  58. uuid(5ACDE375-B874-405D-B59F-7B9932787841),
  59. helpstring("ITaskSheet Interface"),
  60. pointer_default(unique)
  61. ]
  62. interface ITaskSheet : IUnknown
  63. {
  64. [helpstring("method GetPropertyBag")] HRESULT GetPropertyBag([in] REFIID riid, [out, iid_is(riid), retval] void **ppv);
  65. [helpstring("method Run")] HRESULT Run([in] ITaskPageFactory *pPageFact, [in] REFCLSID rclsidStartPage, [in] HWND hwndOwner);
  66. [helpstring("method Close")] HRESULT Close();
  67. };
  68. //
  69. // Handle to a property group. This is returned from CreatePropertyGroup
  70. // and used to reference a group in various methods.
  71. //
  72. typedef int HPROPGROUP;
  73. interface ITaskSheetPropertyBag; // fwd decl.
  74. [
  75. object,
  76. uuid(9437CEB1-4BC7-4668-8A44-81BBD5B89DDD),
  77. helpstring("ITaskSheetPropertyNotifySink interface"),
  78. pointer_default(unique)
  79. ]
  80. interface ITaskSheetPropertyNotifySink : IUnknown
  81. {
  82. [helpstring("method OnPropChanged")] HRESULT OnPropChanged([in] ITaskSheetPropertyBag *pBag, [in] HPROPGROUP hGroup, [in] LPCWSTR pszPropName);
  83. }
  84. [
  85. object,
  86. uuid(EFC6FCE9-FF4B-4111-A9E8-1C2C1183E236),
  87. helpstring("ITaskSheetPropertyBag interface"),
  88. pointer_default(unique)
  89. ]
  90. interface ITaskSheetPropertyBag : IUnknown
  91. {
  92. [helpstring("method CreatePropertyGroup")] HRESULT CreatePropertyGroup([in] REFGUID idGroup, [out, retval] HPROPGROUP *phGroup);
  93. [helpstring("method RemovePropertyGroup")] HRESULT RemovePropertyGroup([in] HPROPGROUP hGroup);
  94. [helpstring("method PropertyGroupIdToHandle")] HRESULT PropertyGroupIdToHandle([in] REFGUID idGroup, [out, retval] HPROPGROUP *phGroup);
  95. [helpstring("method PropertyGroupHandleToId")] HRESULT PropertyGroupHandleToId([in] HPROPGROUP hGroup, [out, retval] GUID *pidGroup);
  96. [helpstring("method Get")] HRESULT Get([in] HPROPGROUP hGroup, [in] LPCWSTR pszPropName, [out, retval] VARIANT *pVarOut);
  97. [helpstring("method Set")] HRESULT Set([in] HPROPGROUP hGroup, [in] LPCWSTR pszPropName, [in] VARIANT *pVar);
  98. [helpstring("method SetConst")] HRESULT SetConst([in] HPROPGROUP hGroup, [in] LPCWSTR pszPropName, [in] VARIANT *pVar);
  99. [helpstring("method RegisterNotify")] HRESULT RegisterNotify([in] ITaskSheetPropertyNotifySink *pSink, [out, retval] DWORD *pdwCookie);
  100. [helpstring("method UnregisterNotify")] HRESULT UnregisterNotify([in] DWORD dwCookie);
  101. [helpstring("method Advise")] HRESULT Advise([in] DWORD dwCookie, [in] HPROPGROUP hGroup, [in] LPCWSTR pszPropName);
  102. }
  103. [
  104. object,
  105. uuid(AF4ABA62-51ED-415A-B23A-4F9D9D787B52),
  106. dual,
  107. helpstring("ITaskUI_HTMLControl Interface"),
  108. pointer_default(unique)
  109. ]
  110. interface ITaskUI_HTMLControl : IDispatch
  111. {
  112. [id(1), helpstring("method Initialize")] HRESULT Initialize([in] BSTR strURL, [in] IDispatch* pExternalDispatch);
  113. };
  114. [
  115. uuid(40BEC2FB-F286-453C-B2EB-F9E7429D1A98),
  116. helpstring("TaskSheet Class")
  117. ]
  118. coclass TaskSheet
  119. {
  120. [default] interface ITaskSheet;
  121. };
  122. [
  123. uuid(C4BC7F4C-939A-45F6-B5D2-4C1B6D5A75EA),
  124. helpstring("TaskUI_HTMLControl Class")
  125. ]
  126. coclass TaskUI_HTMLControl
  127. {
  128. [default] interface ITaskUI_HTMLControl;
  129. };
  130. };
  131. cpp_quote("")
  132. cpp_quote("// Well-known properties")
  133. cpp_quote("#define TS_PROP_TITLE L\"TaskUI_Title\"")
  134. cpp_quote("#define TS_PROP_MODELESS L\"TaskUI_Modeless\"")
  135. cpp_quote("#define TS_PROP_WIDTH L\"TaskUI_Width\"")
  136. cpp_quote("#define TS_PROP_HEIGHT L\"TaskUI_Height\"")
  137. cpp_quote("#define TS_PROP_MINWIDTH L\"TaskUI_MinWidth\"")
  138. cpp_quote("#define TS_PROP_MINHEIGHT L\"TaskUI_MinHeight\"")
  139. cpp_quote("#define TS_PROP_RESIZABLE L\"TaskUI_Resizable\"")
  140. cpp_quote("#define TS_PROP_STATUSBAR L\"TaskUI_StatusBar\"")
  141. cpp_quote("#define TS_PROP_NAVBAR L\"TaskUI_NavBar\"")
  142. cpp_quote("#define TS_PROP_ICON L\"TaskUI_Icon\"")
  143. cpp_quote("#define TS_PROP_LOGO L\"TaskUI_Logo\"")
  144. cpp_quote("#define TS_PROP_WATERMARK L\"TaskUI_Watermark\"")
  145. cpp_quote("")
  146. cpp_quote("//")
  147. cpp_quote("// Some well-known property group handles.")
  148. cpp_quote("//")
  149. cpp_quote("#define PROPGROUP_INVALID (HPROPGROUP) -1")
  150. cpp_quote("#define PROPGROUP_ANY (HPROPGROUP)65535")
  151. cpp_quote("#define PROPGROUP_GLOBAL (HPROPGROUP) 0")
  152. cpp_quote("//")
  153. cpp_quote("// Group ID for the 'global' property group.")
  154. cpp_quote("//")
  155. cpp_quote("#define PGID_GLOBAL GUID_NULL")
  156. cpp_quote("//")
  157. cpp_quote("// Macros for creating and examining property IDs.")
  158. cpp_quote("//")
  159. cpp_quote("#define MAKEPROPID(i) MAKEINTRESOURCE(i)")
  160. cpp_quote("#define IS_PROPID(i) IS_INTRESOURCE(i)")
  161. cpp_quote("//")
  162. cpp_quote("// Interface-specific HRESULTs for ITaskSheetPropertyBag")
  163. cpp_quote("//")
  164. cpp_quote("//")
  165. cpp_quote("// TSPB == \"Task Sheet Property Bag\"")
  166. cpp_quote("//")
  167. cpp_quote("// Property name not found in property bag.")
  168. cpp_quote("//")
  169. cpp_quote("#define TSPB_E_PROPNOTFOUND MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x00000200)")
  170. cpp_quote("//")
  171. cpp_quote("// Group handle specified is not present in property bag.")
  172. cpp_quote("//")
  173. cpp_quote("#define TSPB_E_GROUPNOTFOUND MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x00000201)")
  174. cpp_quote("//")
  175. cpp_quote("// Invalid notify client cookie.")
  176. cpp_quote("//")
  177. cpp_quote("#define TSPB_E_NOTIFYCOOKIE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x00000202)")
  178. cpp_quote("//")
  179. cpp_quote("// Attempt to modify a constant property.")
  180. cpp_quote("//")
  181. cpp_quote("#define TSPB_E_MODIFYCONST MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x00000203)")
  182. cpp_quote("//")
  183. cpp_quote("// Maxiumum number of notification connections have been established.")
  184. cpp_quote("//")
  185. cpp_quote("#define TSPB_E_MAXNOTIFYCNX MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x00000204)")
  186. cpp_quote("//")
  187. cpp_quote("// Property group already exists.")
  188. cpp_quote("//")
  189. cpp_quote("#define TSPB_E_GROUPEXISTS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x00000205)")
  190. cpp_quote("")