MsHtmHst.Idl 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. //+------------------------------------------------------------------------
  2. //
  3. // Microsoft Forms
  4. // Copyright (C) Microsoft Corporation, 1996-1998.
  5. //
  6. // File: mshtmhst.h
  7. //
  8. // Contents: MSHTML advanced host interfaces
  9. //
  10. //-------------------------------------------------------------------------
  11. cpp_quote("//=--------------------------------------------------------------------------=")
  12. cpp_quote("// mshtmhst.h")
  13. cpp_quote("//=--------------------------------------------------------------------------=")
  14. cpp_quote("// (C) Copyright 1995-1998 Microsoft Corporation. All Rights Reserved.")
  15. cpp_quote("//")
  16. cpp_quote("// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF")
  17. cpp_quote("// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO")
  18. cpp_quote("// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A")
  19. cpp_quote("// PARTICULAR PURPOSE.")
  20. cpp_quote("//=--------------------------------------------------------------------------=")
  21. cpp_quote("")
  22. cpp_quote("#pragma comment(lib,\"uuid.lib\")")
  23. cpp_quote("")
  24. cpp_quote("//--------------------------------------------------------------------------")
  25. cpp_quote("// MSTHML Advanced Host Interfaces.")
  26. cpp_quote("")
  27. cpp_quote("#ifndef MSHTMHST_H")
  28. cpp_quote("#define MSHTMHST_H")
  29. cpp_quote("#define CONTEXT_MENU_DEFAULT 0")
  30. cpp_quote("#define CONTEXT_MENU_IMAGE 1")
  31. cpp_quote("#define CONTEXT_MENU_CONTROL 2")
  32. cpp_quote("#define CONTEXT_MENU_TABLE 3")
  33. cpp_quote("// in browse mode")
  34. cpp_quote("#define CONTEXT_MENU_TEXTSELECT 4")
  35. cpp_quote("#define CONTEXT_MENU_ANCHOR 5")
  36. cpp_quote("#define CONTEXT_MENU_UNKNOWN 6")
  37. cpp_quote("//;begin_internal")
  38. cpp_quote("// These 2 are mapped to IMAGE for the public")
  39. cpp_quote("#define CONTEXT_MENU_IMGDYNSRC 7")
  40. cpp_quote("#define CONTEXT_MENU_IMGART 8")
  41. cpp_quote("#define CONTEXT_MENU_DEBUG 9")
  42. cpp_quote("//;end_internal")
  43. cpp_quote("#define CONTEXT_MENU_VSCROLL 10")
  44. cpp_quote("#define CONTEXT_MENU_HSCROLL 11")
  45. cpp_quote("#define MENUEXT_SHOWDIALOG 0x1")
  46. cpp_quote("#define DOCHOSTUIFLAG_BROWSER DOCHOSTUIFLAG_DISABLE_HELP_MENU | DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE ")
  47. cpp_quote("#define HTMLDLG_NOUI 0x10")
  48. cpp_quote("#define HTMLDLG_MODAL 0x20")
  49. cpp_quote("#define HTMLDLG_MODELESS 0x40")
  50. cpp_quote("#define HTMLDLG_PRINT_TEMPLATE 0x80")
  51. cpp_quote("#define HTMLDLG_VERIFY 0x100")
  52. cpp_quote("#define HTMLDLG_LMZLUNLOCK 0x200")
  53. cpp_quote("#define HTMLDLG_ALLOWNEXTWINDOW 0x400")
  54. cpp_quote("#define PRINT_DONTBOTHERUSER 0x01")
  55. cpp_quote("#define PRINT_WAITFORCOMPLETION 0x02")
  56. import "ocidl.idl";
  57. import "objidl.idl";
  58. import "oleidl.idl";
  59. import "oaidl.idl";
  60. import "docobj.idl";
  61. cpp_quote("EXTERN_C const GUID CGID_MSHTML;")
  62. cpp_quote("#define CMDSETID_Forms3 CGID_MSHTML")
  63. cpp_quote("#define SZ_HTML_CLIENTSITE_OBJECTPARAM L\"{d4db6850-5385-11d0-89e9-00a0c90a90ac}\"")
  64. cpp_quote("#ifndef __IHTMLWindow2_FWD_DEFINED__")
  65. cpp_quote("#define __IHTMLWindow2_FWD_DEFINED__")
  66. cpp_quote("typedef interface IHTMLWindow2 IHTMLWindow2;")
  67. cpp_quote("#endif")
  68. #pragma midl_echo("typedef HRESULT STDAPICALLTYPE SHOWHTMLDIALOGFN (HWND hwndParent, IMoniker *pmk, VARIANT *pvarArgIn, WCHAR* pchOptions, VARIANT *pvArgOut);")
  69. #pragma midl_echo("typedef HRESULT STDAPICALLTYPE SHOWHTMLDIALOGEXFN (HWND hwndParent, IMoniker *pmk, DWORD dwDialogFlags, VARIANT *pvarArgIn, WCHAR* pchOptions, VARIANT *pvArgOut);")
  70. #pragma midl_echo("typedef HRESULT STDAPICALLTYPE SHOWMODELESSHTMLDIALOGFN (HWND hwndParent, IMoniker *pmk, VARIANT *pvarArgIn, VARIANT* pvarOptions, IHTMLWindow2 ** ppWindow);")
  71. cpp_quote("//;begin_internal")
  72. #pragma midl_echo("STDAPI ShowHTMLDialog( ")
  73. #pragma midl_echo(" HWND hwndParent, ")
  74. #pragma midl_echo(" IMoniker * pMk, ")
  75. #pragma midl_echo(" VARIANT * pvarArgIn, ")
  76. #pragma midl_echo(" WCHAR * pchOptions, ")
  77. #pragma midl_echo(" VARIANT * pvarArgOut ")
  78. #pragma midl_echo(" ); ")
  79. #pragma midl_echo("STDAPI ShowHTMLDialogEx( ")
  80. #pragma midl_echo(" HWND hwndParent, ")
  81. #pragma midl_echo(" IMoniker * pMk, ")
  82. #pragma midl_echo(" DWORD dwDialogFlags, ")
  83. #pragma midl_echo(" VARIANT * pvarArgIn, ")
  84. #pragma midl_echo(" WCHAR * pchOptions, ")
  85. #pragma midl_echo(" VARIANT * pvarArgOut ")
  86. #pragma midl_echo(" ); ")
  87. #pragma midl_echo("STDAPI ShowModelessHTMLDialog( ")
  88. #pragma midl_echo(" HWND hwndParent, ")
  89. #pragma midl_echo(" IMoniker * pMk, ")
  90. #pragma midl_echo(" VARIANT * pvarArgIn, ")
  91. #pragma midl_echo(" VARIANT * pvarOptions, ")
  92. #pragma midl_echo(" IHTMLWindow2 ** ppWindow); ")
  93. cpp_quote("//;end_internal")
  94. cpp_quote("//;begin_internal")
  95. #pragma midl_echo("STDAPI RunHTMLApplication( ")
  96. #pragma midl_echo(" HINSTANCE hinst, ")
  97. #pragma midl_echo(" HINSTANCE hPrevInst, ")
  98. #pragma midl_echo(" LPSTR szCmdLine, ")
  99. #pragma midl_echo(" int nCmdShow ")
  100. #pragma midl_echo(" ); ")
  101. cpp_quote("//;end_internal")
  102. cpp_quote("//;begin_internal")
  103. #pragma midl_echo("STDAPI CreateHTMLPropertyPage( ")
  104. #pragma midl_echo(" IMoniker * pmk, ")
  105. #pragma midl_echo(" IPropertyPage ** ppPP ")
  106. #pragma midl_echo(" ); ")
  107. cpp_quote("//;end_internal")
  108. //-------------------------------------------------------------------------
  109. // IHostDialogHelper
  110. //
  111. //-------------------------------------------------------------------------
  112. [
  113. object,
  114. uuid(53DEC138-A51E-11d2-861E-00C04FA35C89),
  115. pointer_default(unique),
  116. local
  117. ]
  118. interface IHostDialogHelper : IUnknown
  119. {
  120. HRESULT ShowHTMLDialog(
  121. HWND hwndParent,
  122. IMoniker *pMk,
  123. VARIANT *pvarArgIn,
  124. WCHAR *pchOptions,
  125. VARIANT *pvarArgOut,
  126. IUnknown *punkHost
  127. );
  128. };
  129. [
  130. uuid(429AF92C-A51F-11d2-861E-00C04FA35C89)
  131. ]
  132. coclass HostDialogHelper
  133. {
  134. [default] interface IHostDialogHelper;
  135. };
  136. cpp_quote("EXTERN_C const GUID CLSID_HostDialogHelper;")
  137. //-------------------------------------------------------------------------
  138. // IDocHostUIHandler
  139. //
  140. //-------------------------------------------------------------------------
  141. cpp_quote("//;begin_internal")
  142. typedef
  143. enum tagDOCHOSTUITYPE {
  144. DOCHOSTUITYPE_BROWSE = 0,
  145. DOCHOSTUITYPE_AUTHOR = 1,
  146. } DOCHOSTUITYPE;
  147. cpp_quote("//;end_internal")
  148. typedef enum tagDOCHOSTUIDBLCLK {
  149. DOCHOSTUIDBLCLK_DEFAULT = 0,
  150. DOCHOSTUIDBLCLK_SHOWPROPERTIES = 1,
  151. DOCHOSTUIDBLCLK_SHOWCODE = 2,
  152. } DOCHOSTUIDBLCLK ;
  153. typedef enum tagDOCHOSTUIFLAG {
  154. DOCHOSTUIFLAG_DIALOG = 0x00000001,
  155. DOCHOSTUIFLAG_DISABLE_HELP_MENU = 0x00000002,
  156. DOCHOSTUIFLAG_NO3DBORDER = 0x00000004,
  157. DOCHOSTUIFLAG_SCROLL_NO = 0x00000008,
  158. DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE = 0x00000010,
  159. DOCHOSTUIFLAG_OPENNEWWIN = 0x00000020,
  160. DOCHOSTUIFLAG_DISABLE_OFFSCREEN = 0x00000040,
  161. DOCHOSTUIFLAG_FLAT_SCROLLBAR = 0x00000080,
  162. DOCHOSTUIFLAG_DIV_BLOCKDEFAULT = 0x00000100,
  163. DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY = 0x00000200,
  164. DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY = 0x00000400,
  165. DOCHOSTUIFLAG_CODEPAGELINKEDFONTS = 0x00000800,
  166. DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8 = 0x00001000,
  167. DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8 = 0x00002000,
  168. DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE = 0x00004000,
  169. DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION = 0x00010000,
  170. DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION = 0x00020000,
  171. DOCHOSTUIFLAG_THEME = 0x00040000,
  172. DOCHOSTUIFLAG_NOTHEME = 0x00080000,
  173. DOCHOSTUIFLAG_NOPICS = 0x00100000,
  174. DOCHOSTUIFLAG_NO3DOUTERBORDER = 0x00200000,
  175. DOCHOSTUIFLAG_DISABLE_EDIT_NS_FIXUP = 0x00400000,
  176. DOCHOSTUIFLAG_LOCAL_MACHINE_ACCESS_CHECK= 0x00800000,
  177. DOCHOSTUIFLAG_DISABLE_UNTRUSTEDPROTOCOL = 0x01000000,
  178. } DOCHOSTUIFLAG ;
  179. cpp_quote("#define DOCHOSTUIATOM_ENABLE_HIRES _T(\"TridentEnableHiRes\")")
  180. [
  181. object,
  182. uuid(bd3f23c0-d43e-11cf-893b-00aa00bdce1a),
  183. pointer_default(unique),
  184. local
  185. ]
  186. interface IDocHostUIHandler : IUnknown
  187. {
  188. typedef struct _DOCHOSTUIINFO
  189. {
  190. ULONG cbSize;
  191. DWORD dwFlags;
  192. DWORD dwDoubleClick;
  193. OLECHAR * pchHostCss;
  194. OLECHAR * pchHostNS;
  195. } DOCHOSTUIINFO;
  196. HRESULT ShowContextMenu(
  197. [in] DWORD dwID,
  198. [in] POINT* ppt,
  199. [in] IUnknown* pcmdtReserved,
  200. [in] IDispatch* pdispReserved);
  201. HRESULT GetHostInfo([in, out] DOCHOSTUIINFO * pInfo);
  202. HRESULT ShowUI(
  203. [in] DWORD dwID,
  204. [in] IOleInPlaceActiveObject * pActiveObject,
  205. [in] IOleCommandTarget * pCommandTarget,
  206. [in] IOleInPlaceFrame * pFrame,
  207. [in] IOleInPlaceUIWindow * pDoc);
  208. HRESULT HideUI();
  209. HRESULT UpdateUI();
  210. HRESULT EnableModeless([in] BOOL fEnable);
  211. HRESULT OnDocWindowActivate([in] BOOL fActivate);
  212. HRESULT OnFrameWindowActivate([in] BOOL fActivate);
  213. HRESULT ResizeBorder(
  214. [in] LPCRECT prcBorder,
  215. [in] IOleInPlaceUIWindow * pUIWindow,
  216. [in] BOOL fRameWindow);
  217. HRESULT TranslateAccelerator(
  218. [in] LPMSG lpMsg,
  219. [in] const GUID * pguidCmdGroup,
  220. [in] DWORD nCmdID);
  221. HRESULT GetOptionKeyPath([out] LPOLESTR * pchKey, [in] DWORD dw);
  222. HRESULT GetDropTarget(
  223. [in] IDropTarget * pDropTarget,
  224. [out] IDropTarget ** ppDropTarget);
  225. HRESULT GetExternal([out] IDispatch **ppDispatch);
  226. HRESULT TranslateUrl([in]DWORD dwTranslate, [in]OLECHAR *pchURLIn, [out]OLECHAR **ppchURLOut);
  227. HRESULT FilterDataObject([in]IDataObject *pDO, [out]IDataObject **ppDORet);
  228. }
  229. [
  230. object,
  231. uuid(3050f6d0-98b5-11cf-bb82-00aa00bdce0b),
  232. pointer_default(unique),
  233. local
  234. ]
  235. interface IDocHostUIHandler2 : IDocHostUIHandler
  236. {
  237. HRESULT GetOverrideKeyPath([out] LPOLESTR * pchKey, [in] DWORD dw);
  238. }
  239. cpp_quote("DEFINE_GUID(CGID_DocHostCommandHandler,0xf38bc242,0xb950,0x11d1,0x89,0x18,0x00,0xc0,0x4f,0xc2,0xc8,0x36);")
  240. //-------------------------------------------------------------------------
  241. // ICustomDoc
  242. //
  243. //-------------------------------------------------------------------------
  244. [
  245. object,
  246. uuid(3050f3f0-98b5-11cf-bb82-00aa00bdce0b),
  247. pointer_default(unique),
  248. local
  249. ]
  250. interface ICustomDoc : IUnknown
  251. {
  252. HRESULT SetUIHandler(
  253. [in] IDocHostUIHandler * pUIHandler);
  254. }
  255. //-------------------------------------------------------------------------
  256. // IDocHostShowUI
  257. //
  258. //-------------------------------------------------------------------------
  259. [
  260. object,
  261. uuid(c4d244b0-d43e-11cf-893b-00aa00bdce1a),
  262. pointer_default(unique),
  263. local
  264. ]
  265. interface IDocHostShowUI : IUnknown
  266. {
  267. HRESULT ShowMessage(
  268. [in] HWND hwnd,
  269. [in] LPOLESTR lpstrText,
  270. [in] LPOLESTR lpstrCaption,
  271. [in] DWORD dwType,
  272. [in] LPOLESTR lpstrHelpFile,
  273. [in] DWORD dwHelpContext,
  274. [out] LRESULT * plResult);
  275. HRESULT ShowHelp(
  276. [in] HWND hwnd,
  277. [in] LPOLESTR pszHelpFile,
  278. [in] UINT uCommand,
  279. [in] DWORD dwData,
  280. [in] POINT ptMouse,
  281. [out] IDispatch * pDispatchObjectHit);
  282. }
  283. cpp_quote("#define IClassFactory3 IClassFactoryEx")
  284. cpp_quote("#define IID_IClassFactory3 IID_IClassFactoryEx")
  285. //-------------------------------------------------------------------------
  286. //
  287. // IClassFactoryEx
  288. //
  289. //-------------------------------------------------------------------------
  290. [
  291. object,
  292. uuid(342D1EA0-AE25-11D1-89C5-006008C3FBFC),
  293. pointer_default(unique),
  294. local
  295. ]
  296. interface IClassFactoryEx : IClassFactory
  297. {
  298. HRESULT CreateInstanceWithContext(IUnknown *punkContext,
  299. IUnknown *punkOuter, REFIID riid, [out] void **ppv);
  300. };
  301. //-------------------------------------------------------------------------
  302. //
  303. // IHTMLOMWindowServices
  304. //
  305. //-------------------------------------------------------------------------
  306. [
  307. object,
  308. pointer_default(unique),
  309. uuid(3050f5fc-98b5-11cf-bb82-00aa00bdce0b)
  310. ]
  311. interface IHTMLOMWindowServices : IUnknown
  312. {
  313. HRESULT moveTo([in] LONG x,[in] LONG y);
  314. HRESULT moveBy([in] LONG x,[in] LONG y);
  315. HRESULT resizeTo([in] LONG x,[in] LONG y);
  316. HRESULT resizeBy([in] LONG x,[in] LONG y);
  317. };
  318. cpp_quote("#define SID_SHTMLOMWindowServices IID_IHTMLOMWindowServices")
  319. cpp_quote("#endif")