master
   1/*** Autogenerated by WIDL 10.4 from include/mshtmhst.idl - Do not edit ***/
   2
   3#ifdef _WIN32
   4#ifndef __REQUIRED_RPCNDR_H_VERSION__
   5#define __REQUIRED_RPCNDR_H_VERSION__ 475
   6#endif
   7#include <rpc.h>
   8#include <rpcndr.h>
   9#endif
  10
  11#ifndef COM_NO_WINDOWS_H
  12#include <windows.h>
  13#include <ole2.h>
  14#endif
  15
  16#ifndef __mshtmhst_h__
  17#define __mshtmhst_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IHostDialogHelper_FWD_DEFINED__
  22#define __IHostDialogHelper_FWD_DEFINED__
  23typedef interface IHostDialogHelper IHostDialogHelper;
  24#ifdef __cplusplus
  25interface IHostDialogHelper;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __HostDialogHelper_FWD_DEFINED__
  30#define __HostDialogHelper_FWD_DEFINED__
  31#ifdef __cplusplus
  32typedef class HostDialogHelper HostDialogHelper;
  33#else
  34typedef struct HostDialogHelper HostDialogHelper;
  35#endif /* defined __cplusplus */
  36#endif /* defined __HostDialogHelper_FWD_DEFINED__ */
  37
  38#ifndef __IDocHostUIHandler_FWD_DEFINED__
  39#define __IDocHostUIHandler_FWD_DEFINED__
  40typedef interface IDocHostUIHandler IDocHostUIHandler;
  41#ifdef __cplusplus
  42interface IDocHostUIHandler;
  43#endif /* __cplusplus */
  44#endif
  45
  46#ifndef __IDocHostUIHandler2_FWD_DEFINED__
  47#define __IDocHostUIHandler2_FWD_DEFINED__
  48typedef interface IDocHostUIHandler2 IDocHostUIHandler2;
  49#ifdef __cplusplus
  50interface IDocHostUIHandler2;
  51#endif /* __cplusplus */
  52#endif
  53
  54#ifndef __ICustomDoc_FWD_DEFINED__
  55#define __ICustomDoc_FWD_DEFINED__
  56typedef interface ICustomDoc ICustomDoc;
  57#ifdef __cplusplus
  58interface ICustomDoc;
  59#endif /* __cplusplus */
  60#endif
  61
  62#ifndef __IDocHostShowUI_FWD_DEFINED__
  63#define __IDocHostShowUI_FWD_DEFINED__
  64typedef interface IDocHostShowUI IDocHostShowUI;
  65#ifdef __cplusplus
  66interface IDocHostShowUI;
  67#endif /* __cplusplus */
  68#endif
  69
  70#ifndef __IClassFactoryEx_FWD_DEFINED__
  71#define __IClassFactoryEx_FWD_DEFINED__
  72typedef interface IClassFactoryEx IClassFactoryEx;
  73#ifdef __cplusplus
  74interface IClassFactoryEx;
  75#endif /* __cplusplus */
  76#endif
  77
  78#ifndef __IHTMLOMWindowServices_FWD_DEFINED__
  79#define __IHTMLOMWindowServices_FWD_DEFINED__
  80typedef interface IHTMLOMWindowServices IHTMLOMWindowServices;
  81#ifdef __cplusplus
  82interface IHTMLOMWindowServices;
  83#endif /* __cplusplus */
  84#endif
  85
  86/* Headers for imported files */
  87
  88#include <ocidl.h>
  89#include <objidl.h>
  90#include <oleidl.h>
  91#include <oaidl.h>
  92#include <docobj.h>
  93
  94#ifdef __cplusplus
  95extern "C" {
  96#endif
  97
  98/**
  99 * This file is part of the mingw-w64 runtime package.
 100 * No warranty is given; refer to the file DISCLAIMER within this package.
 101 */
 102
 103#include <winapifamily.h>
 104
 105#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 106#ifndef MSHTMHST_H
 107#define MSHTMHST_H
 108#define CONTEXT_MENU_DEFAULT 0
 109#define CONTEXT_MENU_IMAGE 1
 110#define CONTEXT_MENU_CONTROL 2
 111#define CONTEXT_MENU_TABLE 3
 112#define CONTEXT_MENU_TEXTSELECT 4
 113#define CONTEXT_MENU_ANCHOR 5
 114#define CONTEXT_MENU_UNKNOWN 6
 115#define CONTEXT_MENU_IMGDYNSRC 7
 116#define CONTEXT_MENU_DEBUG 8
 117#define CONTEXT_MENU_VSCROLL 9
 118#define CONTEXT_MENU_HSCROLL 10
 119#define CONTEXT_MENU_MEDIA 11
 120
 121#define MENUEXT_SHOWDIALOG 0x1
 122
 123#define CMDID_SCRIPTSITE_URL 0
 124#define CMDID_SCRIPTSITE_HTMLDLGTRUST 1
 125#define CMDID_SCRIPTSITE_SECSTATE 2
 126#define CMDID_SCRIPTSITE_SID 3
 127#define CMDID_SCRIPTSITE_TRUSTEDDOC 4
 128#define CMDID_SCRIPTSITE_SECURITY_WINDOW 5
 129#define CMDID_SCRIPTSITE_NAMESPACE 6
 130#define CMDID_SCRIPTSITE_IURI 7
 131#define CMDID_HOSTCONTEXT_URL 8
 132#define CMDID_SCRIPTSITE_ALLOWRECOVERY 9
 133
 134#define HTMLDLG_NOUI 0x10
 135#define HTMLDLG_MODAL 0x20
 136#define HTMLDLG_MODELESS 0x40
 137#define HTMLDLG_PRINT_TEMPLATE 0x80
 138#define HTMLDLG_VERIFY 0x100
 139#define HTMLDLG_ALLOW_UNKNOWN_THREAD 0x200
 140
 141#define PRINT_DONTBOTHERUSER 0x1
 142#define PRINT_WAITFORCOMPLETION 0x2
 143#define CMDSETID_Forms3 CGID_MSHTML
 144#define SZ_HTML_CLIENTSITE_OBJECTPARAM L"{d4db6850-5385-11d0-89e9-00a0c90a90ac}"
 145EXTERN_C const GUID CGID_ScriptSite;
 146EXTERN_C const GUID CGID_MSHTML;
 147EXTERN_C const GUID CLSID_HostDialogHelper;
 148DEFINE_GUID(CGID_DocHostCommandHandler,0xf38bc242,0xb950,0x11d1,0x89,0x18,0x00,0xc0,0x4f,0xc2,0xc8,0x36);
 149#ifndef __IHTMLWindow2_FWD_DEFINED__
 150#define __IHTMLWindow2_FWD_DEFINED__
 151typedef interface IHTMLWindow2 IHTMLWindow2;
 152#endif
 153
 154typedef HRESULT STDAPICALLTYPE SHOWHTMLDIALOGFN (HWND hwndParent, IMoniker *pmk, VARIANT *pvarArgIn, WCHAR *pchOptions, VARIANT *pvArgOut);
 155typedef HRESULT STDAPICALLTYPE SHOWHTMLDIALOGEXFN (HWND hwndParent, IMoniker *pmk, DWORD dwDialogFlags, VARIANT *pvarArgIn, WCHAR *pchOptions, VARIANT *pvArgOut);
 156typedef HRESULT STDAPICALLTYPE SHOWMODELESSHTMLDIALOGFN (HWND hwndParent, IMoniker *pmk, VARIANT *pvarArgIn, VARIANT *pvarOptions, IHTMLWindow2 **ppWindow);
 157typedef HRESULT STDAPICALLTYPE IEREGISTERXMLNSFN (LPCWSTR lpszURI, GUID clsid, BOOL fMachine);
 158typedef HRESULT STDAPICALLTYPE IEISXMLNSREGISTEREDFN (LPCWSTR lpszURI, GUID *pCLSID);
 159
 160STDAPI ShowHTMLDialog (HWND hwndParent, IMoniker *pMk, VARIANT *pvarArgIn, LPWSTR pchOptions, VARIANT *pvarArgOut);
 161STDAPI ShowHTMLDialogEx (HWND hwndParent, IMoniker *pMk, DWORD dwDialogFlags, VARIANT *pvarArgIn, LPWSTR pchOptions, VARIANT *pvarArgOut);
 162STDAPI ShowModelessHTMLDialog (HWND hwndParent, IMoniker *pMk, VARIANT *pvarArgIn, VARIANT *pvarOptions, IHTMLWindow2 **ppWindow);
 163#if !defined (_ARM_) && !defined (__arm__)
 164STDAPI RunHTMLApplication (HINSTANCE hinst, HINSTANCE hPrevInst, LPSTR szCmdLine, int nCmdShow);
 165#endif
 166STDAPI CreateHTMLPropertyPage (IMoniker *pmk, IPropertyPage **ppPP);
 167STDAPI EarlyStartDisplaySystem (void);
 168STDAPI IERegisterXMLNS (LPCWSTR lpszURI, GUID clsid, BOOL fMachine);
 169STDAPI IEIsXMLNSRegistered (LPCWSTR lpszURI, GUID *pCLSID);
 170STDAPI GetColorValueFromString (LPCWSTR lpszColor, BOOL fStrictCSS1, BOOL fIsStandardsCSS, COLORREF *pColor);
 171typedef enum tagDOCHOSTUIDBLCLK {
 172    DOCHOSTUIDBLCLK_DEFAULT = 0,
 173    DOCHOSTUIDBLCLK_SHOWPROPERTIES = 1,
 174    DOCHOSTUIDBLCLK_SHOWCODE = 2
 175} DOCHOSTUIDBLCLK;
 176typedef enum tagDOCHOSTUIFLAG {
 177    DOCHOSTUIFLAG_DIALOG = 0x1,
 178    DOCHOSTUIFLAG_DISABLE_HELP_MENU = 0x2,
 179    DOCHOSTUIFLAG_NO3DBORDER = 0x4,
 180    DOCHOSTUIFLAG_SCROLL_NO = 0x8,
 181    DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE = 0x10,
 182    DOCHOSTUIFLAG_OPENNEWWIN = 0x20,
 183    DOCHOSTUIFLAG_DISABLE_OFFSCREEN = 0x40,
 184    DOCHOSTUIFLAG_FLAT_SCROLLBAR = 0x80,
 185    DOCHOSTUIFLAG_DIV_BLOCKDEFAULT = 0x100,
 186    DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY = 0x200,
 187    DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY = 0x400,
 188    DOCHOSTUIFLAG_CODEPAGELINKEDFONTS = 0x800,
 189    DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8 = 0x1000,
 190    DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8 = 0x2000,
 191    DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE = 0x4000,
 192    DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION = 0x10000,
 193    DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION = 0x20000,
 194    DOCHOSTUIFLAG_THEME = 0x40000,
 195    DOCHOSTUIFLAG_NOTHEME = 0x80000,
 196    DOCHOSTUIFLAG_NOPICS = 0x100000,
 197    DOCHOSTUIFLAG_NO3DOUTERBORDER = 0x200000,
 198    DOCHOSTUIFLAG_DISABLE_EDIT_NS_FIXUP = 0x400000,
 199    DOCHOSTUIFLAG_LOCAL_MACHINE_ACCESS_CHECK = 0x800000,
 200    DOCHOSTUIFLAG_DISABLE_UNTRUSTEDPROTOCOL = 0x1000000,
 201    DOCHOSTUIFLAG_HOST_NAVIGATES = 0x2000000,
 202    DOCHOSTUIFLAG_ENABLE_REDIRECT_NOTIFICATION = 0x4000000,
 203    DOCHOSTUIFLAG_USE_WINDOWLESS_SELECTCONTROL = 0x8000000,
 204    DOCHOSTUIFLAG_USE_WINDOWED_SELECTCONTROL = 0x10000000,
 205    DOCHOSTUIFLAG_ENABLE_ACTIVEX_INACTIVATE_MODE = 0x20000000,
 206    DOCHOSTUIFLAG_DPI_AWARE = 0x40000000
 207} DOCHOSTUIFLAG;
 208#define DOCHOSTUIFLAG_BROWSER (DOCHOSTUIFLAG_DISABLE_HELP_MENU | DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE)
 209typedef enum tagDOCHOSTUITYPE {
 210    DOCHOSTUITYPE_BROWSE = 0,
 211    DOCHOSTUITYPE_AUTHOR = 1
 212} DOCHOSTUITYPE;
 213typedef struct _DOCHOSTUIINFO {
 214    ULONG cbSize;
 215    DWORD dwFlags;
 216    DWORD dwDoubleClick;
 217    OLECHAR *pchHostCss;
 218    OLECHAR *pchHostNS;
 219} DOCHOSTUIINFO;
 220/*****************************************************************************
 221 * IHostDialogHelper interface
 222 */
 223#ifndef __IHostDialogHelper_INTERFACE_DEFINED__
 224#define __IHostDialogHelper_INTERFACE_DEFINED__
 225
 226DEFINE_GUID(IID_IHostDialogHelper, 0x53dec138, 0xa51e, 0x11d2, 0x86,0x1e, 0x00,0xc0,0x4f,0xa3,0x5c,0x89);
 227#if defined(__cplusplus) && !defined(CINTERFACE)
 228MIDL_INTERFACE("53dec138-a51e-11d2-861e-00c04fa35c89")
 229IHostDialogHelper : public IUnknown
 230{
 231    virtual HRESULT STDMETHODCALLTYPE ShowHTMLDialog(
 232        HWND hwndParent,
 233        IMoniker *pMk,
 234        VARIANT *pvarArgIn,
 235        WCHAR *pchOptions,
 236        VARIANT *pvarArgOut,
 237        IUnknown *punkHost) = 0;
 238
 239};
 240#ifdef __CRT_UUID_DECL
 241__CRT_UUID_DECL(IHostDialogHelper, 0x53dec138, 0xa51e, 0x11d2, 0x86,0x1e, 0x00,0xc0,0x4f,0xa3,0x5c,0x89)
 242#endif
 243#else
 244typedef struct IHostDialogHelperVtbl {
 245    BEGIN_INTERFACE
 246
 247    /*** IUnknown methods ***/
 248    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 249        IHostDialogHelper *This,
 250        REFIID riid,
 251        void **ppvObject);
 252
 253    ULONG (STDMETHODCALLTYPE *AddRef)(
 254        IHostDialogHelper *This);
 255
 256    ULONG (STDMETHODCALLTYPE *Release)(
 257        IHostDialogHelper *This);
 258
 259    /*** IHostDialogHelper methods ***/
 260    HRESULT (STDMETHODCALLTYPE *ShowHTMLDialog)(
 261        IHostDialogHelper *This,
 262        HWND hwndParent,
 263        IMoniker *pMk,
 264        VARIANT *pvarArgIn,
 265        WCHAR *pchOptions,
 266        VARIANT *pvarArgOut,
 267        IUnknown *punkHost);
 268
 269    END_INTERFACE
 270} IHostDialogHelperVtbl;
 271
 272interface IHostDialogHelper {
 273    CONST_VTBL IHostDialogHelperVtbl* lpVtbl;
 274};
 275
 276#ifdef COBJMACROS
 277#ifndef WIDL_C_INLINE_WRAPPERS
 278/*** IUnknown methods ***/
 279#define IHostDialogHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 280#define IHostDialogHelper_AddRef(This) (This)->lpVtbl->AddRef(This)
 281#define IHostDialogHelper_Release(This) (This)->lpVtbl->Release(This)
 282/*** IHostDialogHelper methods ***/
 283#define IHostDialogHelper_ShowHTMLDialog(This,hwndParent,pMk,pvarArgIn,pchOptions,pvarArgOut,punkHost) (This)->lpVtbl->ShowHTMLDialog(This,hwndParent,pMk,pvarArgIn,pchOptions,pvarArgOut,punkHost)
 284#else
 285/*** IUnknown methods ***/
 286static inline HRESULT IHostDialogHelper_QueryInterface(IHostDialogHelper* This,REFIID riid,void **ppvObject) {
 287    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 288}
 289static inline ULONG IHostDialogHelper_AddRef(IHostDialogHelper* This) {
 290    return This->lpVtbl->AddRef(This);
 291}
 292static inline ULONG IHostDialogHelper_Release(IHostDialogHelper* This) {
 293    return This->lpVtbl->Release(This);
 294}
 295/*** IHostDialogHelper methods ***/
 296static inline HRESULT IHostDialogHelper_ShowHTMLDialog(IHostDialogHelper* This,HWND hwndParent,IMoniker *pMk,VARIANT *pvarArgIn,WCHAR *pchOptions,VARIANT *pvarArgOut,IUnknown *punkHost) {
 297    return This->lpVtbl->ShowHTMLDialog(This,hwndParent,pMk,pvarArgIn,pchOptions,pvarArgOut,punkHost);
 298}
 299#endif
 300#endif
 301
 302#endif
 303
 304
 305#endif  /* __IHostDialogHelper_INTERFACE_DEFINED__ */
 306
 307/*****************************************************************************
 308 * HostDialogHelper coclass
 309 */
 310
 311DEFINE_GUID(CLSID_HostDialogHelper, 0x429af92c, 0xa51f, 0x11d2, 0x86,0x1e, 0x00,0xc0,0x4f,0xa3,0x5c,0x89);
 312
 313#ifdef __cplusplus
 314class DECLSPEC_UUID("429af92c-a51f-11d2-861e-00c04fa35c89") HostDialogHelper;
 315#ifdef __CRT_UUID_DECL
 316__CRT_UUID_DECL(HostDialogHelper, 0x429af92c, 0xa51f, 0x11d2, 0x86,0x1e, 0x00,0xc0,0x4f,0xa3,0x5c,0x89)
 317#endif
 318#endif
 319
 320/*****************************************************************************
 321 * IDocHostUIHandler interface
 322 */
 323#ifndef __IDocHostUIHandler_INTERFACE_DEFINED__
 324#define __IDocHostUIHandler_INTERFACE_DEFINED__
 325
 326DEFINE_GUID(IID_IDocHostUIHandler, 0xbd3f23c0, 0xd43e, 0x11cf, 0x89,0x3b, 0x00,0xaa,0x00,0xbd,0xce,0x1a);
 327#if defined(__cplusplus) && !defined(CINTERFACE)
 328MIDL_INTERFACE("bd3f23c0-d43e-11cf-893b-00aa00bdce1a")
 329IDocHostUIHandler : public IUnknown
 330{
 331    virtual HRESULT STDMETHODCALLTYPE ShowContextMenu(
 332        DWORD dwID,
 333        POINT *ppt,
 334        IUnknown *pcmdtReserved,
 335        IDispatch *pdispReserved) = 0;
 336
 337    virtual HRESULT STDMETHODCALLTYPE GetHostInfo(
 338        DOCHOSTUIINFO *pInfo) = 0;
 339
 340    virtual HRESULT STDMETHODCALLTYPE ShowUI(
 341        DWORD dwID,
 342        IOleInPlaceActiveObject *pActiveObject,
 343        IOleCommandTarget *pCommandTarget,
 344        IOleInPlaceFrame *pFrame,
 345        IOleInPlaceUIWindow *pDoc) = 0;
 346
 347    virtual HRESULT STDMETHODCALLTYPE HideUI(
 348        ) = 0;
 349
 350    virtual HRESULT STDMETHODCALLTYPE UpdateUI(
 351        ) = 0;
 352
 353    virtual HRESULT STDMETHODCALLTYPE EnableModeless(
 354        WINBOOL fEnable) = 0;
 355
 356    virtual HRESULT STDMETHODCALLTYPE OnDocWindowActivate(
 357        WINBOOL fActivate) = 0;
 358
 359    virtual HRESULT STDMETHODCALLTYPE OnFrameWindowActivate(
 360        WINBOOL fActivate) = 0;
 361
 362    virtual HRESULT STDMETHODCALLTYPE ResizeBorder(
 363        LPCRECT prcBorder,
 364        IOleInPlaceUIWindow *pUIWindow,
 365        WINBOOL fRameWindow) = 0;
 366
 367    virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(
 368        LPMSG lpMsg,
 369        const GUID *pguidCmdGroup,
 370        DWORD nCmdID) = 0;
 371
 372    virtual HRESULT STDMETHODCALLTYPE GetOptionKeyPath(
 373        LPOLESTR *pchKey,
 374        DWORD dw) = 0;
 375
 376    virtual HRESULT STDMETHODCALLTYPE GetDropTarget(
 377        IDropTarget *pDropTarget,
 378        IDropTarget **ppDropTarget) = 0;
 379
 380    virtual HRESULT STDMETHODCALLTYPE GetExternal(
 381        IDispatch **ppDispatch) = 0;
 382
 383    virtual HRESULT STDMETHODCALLTYPE TranslateUrl(
 384        DWORD dwTranslate,
 385        LPWSTR pchURLIn,
 386        LPWSTR *ppchURLOut) = 0;
 387
 388    virtual HRESULT STDMETHODCALLTYPE FilterDataObject(
 389        IDataObject *pDO,
 390        IDataObject **ppDORet) = 0;
 391
 392};
 393#ifdef __CRT_UUID_DECL
 394__CRT_UUID_DECL(IDocHostUIHandler, 0xbd3f23c0, 0xd43e, 0x11cf, 0x89,0x3b, 0x00,0xaa,0x00,0xbd,0xce,0x1a)
 395#endif
 396#else
 397typedef struct IDocHostUIHandlerVtbl {
 398    BEGIN_INTERFACE
 399
 400    /*** IUnknown methods ***/
 401    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 402        IDocHostUIHandler *This,
 403        REFIID riid,
 404        void **ppvObject);
 405
 406    ULONG (STDMETHODCALLTYPE *AddRef)(
 407        IDocHostUIHandler *This);
 408
 409    ULONG (STDMETHODCALLTYPE *Release)(
 410        IDocHostUIHandler *This);
 411
 412    /*** IDocHostUIHandler methods ***/
 413    HRESULT (STDMETHODCALLTYPE *ShowContextMenu)(
 414        IDocHostUIHandler *This,
 415        DWORD dwID,
 416        POINT *ppt,
 417        IUnknown *pcmdtReserved,
 418        IDispatch *pdispReserved);
 419
 420    HRESULT (STDMETHODCALLTYPE *GetHostInfo)(
 421        IDocHostUIHandler *This,
 422        DOCHOSTUIINFO *pInfo);
 423
 424    HRESULT (STDMETHODCALLTYPE *ShowUI)(
 425        IDocHostUIHandler *This,
 426        DWORD dwID,
 427        IOleInPlaceActiveObject *pActiveObject,
 428        IOleCommandTarget *pCommandTarget,
 429        IOleInPlaceFrame *pFrame,
 430        IOleInPlaceUIWindow *pDoc);
 431
 432    HRESULT (STDMETHODCALLTYPE *HideUI)(
 433        IDocHostUIHandler *This);
 434
 435    HRESULT (STDMETHODCALLTYPE *UpdateUI)(
 436        IDocHostUIHandler *This);
 437
 438    HRESULT (STDMETHODCALLTYPE *EnableModeless)(
 439        IDocHostUIHandler *This,
 440        WINBOOL fEnable);
 441
 442    HRESULT (STDMETHODCALLTYPE *OnDocWindowActivate)(
 443        IDocHostUIHandler *This,
 444        WINBOOL fActivate);
 445
 446    HRESULT (STDMETHODCALLTYPE *OnFrameWindowActivate)(
 447        IDocHostUIHandler *This,
 448        WINBOOL fActivate);
 449
 450    HRESULT (STDMETHODCALLTYPE *ResizeBorder)(
 451        IDocHostUIHandler *This,
 452        LPCRECT prcBorder,
 453        IOleInPlaceUIWindow *pUIWindow,
 454        WINBOOL fRameWindow);
 455
 456    HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
 457        IDocHostUIHandler *This,
 458        LPMSG lpMsg,
 459        const GUID *pguidCmdGroup,
 460        DWORD nCmdID);
 461
 462    HRESULT (STDMETHODCALLTYPE *GetOptionKeyPath)(
 463        IDocHostUIHandler *This,
 464        LPOLESTR *pchKey,
 465        DWORD dw);
 466
 467    HRESULT (STDMETHODCALLTYPE *GetDropTarget)(
 468        IDocHostUIHandler *This,
 469        IDropTarget *pDropTarget,
 470        IDropTarget **ppDropTarget);
 471
 472    HRESULT (STDMETHODCALLTYPE *GetExternal)(
 473        IDocHostUIHandler *This,
 474        IDispatch **ppDispatch);
 475
 476    HRESULT (STDMETHODCALLTYPE *TranslateUrl)(
 477        IDocHostUIHandler *This,
 478        DWORD dwTranslate,
 479        LPWSTR pchURLIn,
 480        LPWSTR *ppchURLOut);
 481
 482    HRESULT (STDMETHODCALLTYPE *FilterDataObject)(
 483        IDocHostUIHandler *This,
 484        IDataObject *pDO,
 485        IDataObject **ppDORet);
 486
 487    END_INTERFACE
 488} IDocHostUIHandlerVtbl;
 489
 490interface IDocHostUIHandler {
 491    CONST_VTBL IDocHostUIHandlerVtbl* lpVtbl;
 492};
 493
 494#ifdef COBJMACROS
 495#ifndef WIDL_C_INLINE_WRAPPERS
 496/*** IUnknown methods ***/
 497#define IDocHostUIHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 498#define IDocHostUIHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
 499#define IDocHostUIHandler_Release(This) (This)->lpVtbl->Release(This)
 500/*** IDocHostUIHandler methods ***/
 501#define IDocHostUIHandler_ShowContextMenu(This,dwID,ppt,pcmdtReserved,pdispReserved) (This)->lpVtbl->ShowContextMenu(This,dwID,ppt,pcmdtReserved,pdispReserved)
 502#define IDocHostUIHandler_GetHostInfo(This,pInfo) (This)->lpVtbl->GetHostInfo(This,pInfo)
 503#define IDocHostUIHandler_ShowUI(This,dwID,pActiveObject,pCommandTarget,pFrame,pDoc) (This)->lpVtbl->ShowUI(This,dwID,pActiveObject,pCommandTarget,pFrame,pDoc)
 504#define IDocHostUIHandler_HideUI(This) (This)->lpVtbl->HideUI(This)
 505#define IDocHostUIHandler_UpdateUI(This) (This)->lpVtbl->UpdateUI(This)
 506#define IDocHostUIHandler_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable)
 507#define IDocHostUIHandler_OnDocWindowActivate(This,fActivate) (This)->lpVtbl->OnDocWindowActivate(This,fActivate)
 508#define IDocHostUIHandler_OnFrameWindowActivate(This,fActivate) (This)->lpVtbl->OnFrameWindowActivate(This,fActivate)
 509#define IDocHostUIHandler_ResizeBorder(This,prcBorder,pUIWindow,fRameWindow) (This)->lpVtbl->ResizeBorder(This,prcBorder,pUIWindow,fRameWindow)
 510#define IDocHostUIHandler_TranslateAccelerator(This,lpMsg,pguidCmdGroup,nCmdID) (This)->lpVtbl->TranslateAccelerator(This,lpMsg,pguidCmdGroup,nCmdID)
 511#define IDocHostUIHandler_GetOptionKeyPath(This,pchKey,dw) (This)->lpVtbl->GetOptionKeyPath(This,pchKey,dw)
 512#define IDocHostUIHandler_GetDropTarget(This,pDropTarget,ppDropTarget) (This)->lpVtbl->GetDropTarget(This,pDropTarget,ppDropTarget)
 513#define IDocHostUIHandler_GetExternal(This,ppDispatch) (This)->lpVtbl->GetExternal(This,ppDispatch)
 514#define IDocHostUIHandler_TranslateUrl(This,dwTranslate,pchURLIn,ppchURLOut) (This)->lpVtbl->TranslateUrl(This,dwTranslate,pchURLIn,ppchURLOut)
 515#define IDocHostUIHandler_FilterDataObject(This,pDO,ppDORet) (This)->lpVtbl->FilterDataObject(This,pDO,ppDORet)
 516#else
 517/*** IUnknown methods ***/
 518static inline HRESULT IDocHostUIHandler_QueryInterface(IDocHostUIHandler* This,REFIID riid,void **ppvObject) {
 519    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 520}
 521static inline ULONG IDocHostUIHandler_AddRef(IDocHostUIHandler* This) {
 522    return This->lpVtbl->AddRef(This);
 523}
 524static inline ULONG IDocHostUIHandler_Release(IDocHostUIHandler* This) {
 525    return This->lpVtbl->Release(This);
 526}
 527/*** IDocHostUIHandler methods ***/
 528static inline HRESULT IDocHostUIHandler_ShowContextMenu(IDocHostUIHandler* This,DWORD dwID,POINT *ppt,IUnknown *pcmdtReserved,IDispatch *pdispReserved) {
 529    return This->lpVtbl->ShowContextMenu(This,dwID,ppt,pcmdtReserved,pdispReserved);
 530}
 531static inline HRESULT IDocHostUIHandler_GetHostInfo(IDocHostUIHandler* This,DOCHOSTUIINFO *pInfo) {
 532    return This->lpVtbl->GetHostInfo(This,pInfo);
 533}
 534static inline HRESULT IDocHostUIHandler_ShowUI(IDocHostUIHandler* This,DWORD dwID,IOleInPlaceActiveObject *pActiveObject,IOleCommandTarget *pCommandTarget,IOleInPlaceFrame *pFrame,IOleInPlaceUIWindow *pDoc) {
 535    return This->lpVtbl->ShowUI(This,dwID,pActiveObject,pCommandTarget,pFrame,pDoc);
 536}
 537static inline HRESULT IDocHostUIHandler_HideUI(IDocHostUIHandler* This) {
 538    return This->lpVtbl->HideUI(This);
 539}
 540static inline HRESULT IDocHostUIHandler_UpdateUI(IDocHostUIHandler* This) {
 541    return This->lpVtbl->UpdateUI(This);
 542}
 543static inline HRESULT IDocHostUIHandler_EnableModeless(IDocHostUIHandler* This,WINBOOL fEnable) {
 544    return This->lpVtbl->EnableModeless(This,fEnable);
 545}
 546static inline HRESULT IDocHostUIHandler_OnDocWindowActivate(IDocHostUIHandler* This,WINBOOL fActivate) {
 547    return This->lpVtbl->OnDocWindowActivate(This,fActivate);
 548}
 549static inline HRESULT IDocHostUIHandler_OnFrameWindowActivate(IDocHostUIHandler* This,WINBOOL fActivate) {
 550    return This->lpVtbl->OnFrameWindowActivate(This,fActivate);
 551}
 552static inline HRESULT IDocHostUIHandler_ResizeBorder(IDocHostUIHandler* This,LPCRECT prcBorder,IOleInPlaceUIWindow *pUIWindow,WINBOOL fRameWindow) {
 553    return This->lpVtbl->ResizeBorder(This,prcBorder,pUIWindow,fRameWindow);
 554}
 555static inline HRESULT IDocHostUIHandler_TranslateAccelerator(IDocHostUIHandler* This,LPMSG lpMsg,const GUID *pguidCmdGroup,DWORD nCmdID) {
 556    return This->lpVtbl->TranslateAccelerator(This,lpMsg,pguidCmdGroup,nCmdID);
 557}
 558static inline HRESULT IDocHostUIHandler_GetOptionKeyPath(IDocHostUIHandler* This,LPOLESTR *pchKey,DWORD dw) {
 559    return This->lpVtbl->GetOptionKeyPath(This,pchKey,dw);
 560}
 561static inline HRESULT IDocHostUIHandler_GetDropTarget(IDocHostUIHandler* This,IDropTarget *pDropTarget,IDropTarget **ppDropTarget) {
 562    return This->lpVtbl->GetDropTarget(This,pDropTarget,ppDropTarget);
 563}
 564static inline HRESULT IDocHostUIHandler_GetExternal(IDocHostUIHandler* This,IDispatch **ppDispatch) {
 565    return This->lpVtbl->GetExternal(This,ppDispatch);
 566}
 567static inline HRESULT IDocHostUIHandler_TranslateUrl(IDocHostUIHandler* This,DWORD dwTranslate,LPWSTR pchURLIn,LPWSTR *ppchURLOut) {
 568    return This->lpVtbl->TranslateUrl(This,dwTranslate,pchURLIn,ppchURLOut);
 569}
 570static inline HRESULT IDocHostUIHandler_FilterDataObject(IDocHostUIHandler* This,IDataObject *pDO,IDataObject **ppDORet) {
 571    return This->lpVtbl->FilterDataObject(This,pDO,ppDORet);
 572}
 573#endif
 574#endif
 575
 576#endif
 577
 578
 579#endif  /* __IDocHostUIHandler_INTERFACE_DEFINED__ */
 580
 581/*****************************************************************************
 582 * IDocHostUIHandler2 interface
 583 */
 584#ifndef __IDocHostUIHandler2_INTERFACE_DEFINED__
 585#define __IDocHostUIHandler2_INTERFACE_DEFINED__
 586
 587DEFINE_GUID(IID_IDocHostUIHandler2, 0x3050f6d0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
 588#if defined(__cplusplus) && !defined(CINTERFACE)
 589MIDL_INTERFACE("3050f6d0-98b5-11cf-bb82-00aa00bdce0b")
 590IDocHostUIHandler2 : public IDocHostUIHandler
 591{
 592    virtual HRESULT STDMETHODCALLTYPE GetOverrideKeyPath(
 593        LPOLESTR *pchKey,
 594        DWORD dw) = 0;
 595
 596};
 597#ifdef __CRT_UUID_DECL
 598__CRT_UUID_DECL(IDocHostUIHandler2, 0x3050f6d0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b)
 599#endif
 600#else
 601typedef struct IDocHostUIHandler2Vtbl {
 602    BEGIN_INTERFACE
 603
 604    /*** IUnknown methods ***/
 605    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 606        IDocHostUIHandler2 *This,
 607        REFIID riid,
 608        void **ppvObject);
 609
 610    ULONG (STDMETHODCALLTYPE *AddRef)(
 611        IDocHostUIHandler2 *This);
 612
 613    ULONG (STDMETHODCALLTYPE *Release)(
 614        IDocHostUIHandler2 *This);
 615
 616    /*** IDocHostUIHandler methods ***/
 617    HRESULT (STDMETHODCALLTYPE *ShowContextMenu)(
 618        IDocHostUIHandler2 *This,
 619        DWORD dwID,
 620        POINT *ppt,
 621        IUnknown *pcmdtReserved,
 622        IDispatch *pdispReserved);
 623
 624    HRESULT (STDMETHODCALLTYPE *GetHostInfo)(
 625        IDocHostUIHandler2 *This,
 626        DOCHOSTUIINFO *pInfo);
 627
 628    HRESULT (STDMETHODCALLTYPE *ShowUI)(
 629        IDocHostUIHandler2 *This,
 630        DWORD dwID,
 631        IOleInPlaceActiveObject *pActiveObject,
 632        IOleCommandTarget *pCommandTarget,
 633        IOleInPlaceFrame *pFrame,
 634        IOleInPlaceUIWindow *pDoc);
 635
 636    HRESULT (STDMETHODCALLTYPE *HideUI)(
 637        IDocHostUIHandler2 *This);
 638
 639    HRESULT (STDMETHODCALLTYPE *UpdateUI)(
 640        IDocHostUIHandler2 *This);
 641
 642    HRESULT (STDMETHODCALLTYPE *EnableModeless)(
 643        IDocHostUIHandler2 *This,
 644        WINBOOL fEnable);
 645
 646    HRESULT (STDMETHODCALLTYPE *OnDocWindowActivate)(
 647        IDocHostUIHandler2 *This,
 648        WINBOOL fActivate);
 649
 650    HRESULT (STDMETHODCALLTYPE *OnFrameWindowActivate)(
 651        IDocHostUIHandler2 *This,
 652        WINBOOL fActivate);
 653
 654    HRESULT (STDMETHODCALLTYPE *ResizeBorder)(
 655        IDocHostUIHandler2 *This,
 656        LPCRECT prcBorder,
 657        IOleInPlaceUIWindow *pUIWindow,
 658        WINBOOL fRameWindow);
 659
 660    HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
 661        IDocHostUIHandler2 *This,
 662        LPMSG lpMsg,
 663        const GUID *pguidCmdGroup,
 664        DWORD nCmdID);
 665
 666    HRESULT (STDMETHODCALLTYPE *GetOptionKeyPath)(
 667        IDocHostUIHandler2 *This,
 668        LPOLESTR *pchKey,
 669        DWORD dw);
 670
 671    HRESULT (STDMETHODCALLTYPE *GetDropTarget)(
 672        IDocHostUIHandler2 *This,
 673        IDropTarget *pDropTarget,
 674        IDropTarget **ppDropTarget);
 675
 676    HRESULT (STDMETHODCALLTYPE *GetExternal)(
 677        IDocHostUIHandler2 *This,
 678        IDispatch **ppDispatch);
 679
 680    HRESULT (STDMETHODCALLTYPE *TranslateUrl)(
 681        IDocHostUIHandler2 *This,
 682        DWORD dwTranslate,
 683        LPWSTR pchURLIn,
 684        LPWSTR *ppchURLOut);
 685
 686    HRESULT (STDMETHODCALLTYPE *FilterDataObject)(
 687        IDocHostUIHandler2 *This,
 688        IDataObject *pDO,
 689        IDataObject **ppDORet);
 690
 691    /*** IDocHostUIHandler2 methods ***/
 692    HRESULT (STDMETHODCALLTYPE *GetOverrideKeyPath)(
 693        IDocHostUIHandler2 *This,
 694        LPOLESTR *pchKey,
 695        DWORD dw);
 696
 697    END_INTERFACE
 698} IDocHostUIHandler2Vtbl;
 699
 700interface IDocHostUIHandler2 {
 701    CONST_VTBL IDocHostUIHandler2Vtbl* lpVtbl;
 702};
 703
 704#ifdef COBJMACROS
 705#ifndef WIDL_C_INLINE_WRAPPERS
 706/*** IUnknown methods ***/
 707#define IDocHostUIHandler2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 708#define IDocHostUIHandler2_AddRef(This) (This)->lpVtbl->AddRef(This)
 709#define IDocHostUIHandler2_Release(This) (This)->lpVtbl->Release(This)
 710/*** IDocHostUIHandler methods ***/
 711#define IDocHostUIHandler2_ShowContextMenu(This,dwID,ppt,pcmdtReserved,pdispReserved) (This)->lpVtbl->ShowContextMenu(This,dwID,ppt,pcmdtReserved,pdispReserved)
 712#define IDocHostUIHandler2_GetHostInfo(This,pInfo) (This)->lpVtbl->GetHostInfo(This,pInfo)
 713#define IDocHostUIHandler2_ShowUI(This,dwID,pActiveObject,pCommandTarget,pFrame,pDoc) (This)->lpVtbl->ShowUI(This,dwID,pActiveObject,pCommandTarget,pFrame,pDoc)
 714#define IDocHostUIHandler2_HideUI(This) (This)->lpVtbl->HideUI(This)
 715#define IDocHostUIHandler2_UpdateUI(This) (This)->lpVtbl->UpdateUI(This)
 716#define IDocHostUIHandler2_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable)
 717#define IDocHostUIHandler2_OnDocWindowActivate(This,fActivate) (This)->lpVtbl->OnDocWindowActivate(This,fActivate)
 718#define IDocHostUIHandler2_OnFrameWindowActivate(This,fActivate) (This)->lpVtbl->OnFrameWindowActivate(This,fActivate)
 719#define IDocHostUIHandler2_ResizeBorder(This,prcBorder,pUIWindow,fRameWindow) (This)->lpVtbl->ResizeBorder(This,prcBorder,pUIWindow,fRameWindow)
 720#define IDocHostUIHandler2_TranslateAccelerator(This,lpMsg,pguidCmdGroup,nCmdID) (This)->lpVtbl->TranslateAccelerator(This,lpMsg,pguidCmdGroup,nCmdID)
 721#define IDocHostUIHandler2_GetOptionKeyPath(This,pchKey,dw) (This)->lpVtbl->GetOptionKeyPath(This,pchKey,dw)
 722#define IDocHostUIHandler2_GetDropTarget(This,pDropTarget,ppDropTarget) (This)->lpVtbl->GetDropTarget(This,pDropTarget,ppDropTarget)
 723#define IDocHostUIHandler2_GetExternal(This,ppDispatch) (This)->lpVtbl->GetExternal(This,ppDispatch)
 724#define IDocHostUIHandler2_TranslateUrl(This,dwTranslate,pchURLIn,ppchURLOut) (This)->lpVtbl->TranslateUrl(This,dwTranslate,pchURLIn,ppchURLOut)
 725#define IDocHostUIHandler2_FilterDataObject(This,pDO,ppDORet) (This)->lpVtbl->FilterDataObject(This,pDO,ppDORet)
 726/*** IDocHostUIHandler2 methods ***/
 727#define IDocHostUIHandler2_GetOverrideKeyPath(This,pchKey,dw) (This)->lpVtbl->GetOverrideKeyPath(This,pchKey,dw)
 728#else
 729/*** IUnknown methods ***/
 730static inline HRESULT IDocHostUIHandler2_QueryInterface(IDocHostUIHandler2* This,REFIID riid,void **ppvObject) {
 731    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 732}
 733static inline ULONG IDocHostUIHandler2_AddRef(IDocHostUIHandler2* This) {
 734    return This->lpVtbl->AddRef(This);
 735}
 736static inline ULONG IDocHostUIHandler2_Release(IDocHostUIHandler2* This) {
 737    return This->lpVtbl->Release(This);
 738}
 739/*** IDocHostUIHandler methods ***/
 740static inline HRESULT IDocHostUIHandler2_ShowContextMenu(IDocHostUIHandler2* This,DWORD dwID,POINT *ppt,IUnknown *pcmdtReserved,IDispatch *pdispReserved) {
 741    return This->lpVtbl->ShowContextMenu(This,dwID,ppt,pcmdtReserved,pdispReserved);
 742}
 743static inline HRESULT IDocHostUIHandler2_GetHostInfo(IDocHostUIHandler2* This,DOCHOSTUIINFO *pInfo) {
 744    return This->lpVtbl->GetHostInfo(This,pInfo);
 745}
 746static inline HRESULT IDocHostUIHandler2_ShowUI(IDocHostUIHandler2* This,DWORD dwID,IOleInPlaceActiveObject *pActiveObject,IOleCommandTarget *pCommandTarget,IOleInPlaceFrame *pFrame,IOleInPlaceUIWindow *pDoc) {
 747    return This->lpVtbl->ShowUI(This,dwID,pActiveObject,pCommandTarget,pFrame,pDoc);
 748}
 749static inline HRESULT IDocHostUIHandler2_HideUI(IDocHostUIHandler2* This) {
 750    return This->lpVtbl->HideUI(This);
 751}
 752static inline HRESULT IDocHostUIHandler2_UpdateUI(IDocHostUIHandler2* This) {
 753    return This->lpVtbl->UpdateUI(This);
 754}
 755static inline HRESULT IDocHostUIHandler2_EnableModeless(IDocHostUIHandler2* This,WINBOOL fEnable) {
 756    return This->lpVtbl->EnableModeless(This,fEnable);
 757}
 758static inline HRESULT IDocHostUIHandler2_OnDocWindowActivate(IDocHostUIHandler2* This,WINBOOL fActivate) {
 759    return This->lpVtbl->OnDocWindowActivate(This,fActivate);
 760}
 761static inline HRESULT IDocHostUIHandler2_OnFrameWindowActivate(IDocHostUIHandler2* This,WINBOOL fActivate) {
 762    return This->lpVtbl->OnFrameWindowActivate(This,fActivate);
 763}
 764static inline HRESULT IDocHostUIHandler2_ResizeBorder(IDocHostUIHandler2* This,LPCRECT prcBorder,IOleInPlaceUIWindow *pUIWindow,WINBOOL fRameWindow) {
 765    return This->lpVtbl->ResizeBorder(This,prcBorder,pUIWindow,fRameWindow);
 766}
 767static inline HRESULT IDocHostUIHandler2_TranslateAccelerator(IDocHostUIHandler2* This,LPMSG lpMsg,const GUID *pguidCmdGroup,DWORD nCmdID) {
 768    return This->lpVtbl->TranslateAccelerator(This,lpMsg,pguidCmdGroup,nCmdID);
 769}
 770static inline HRESULT IDocHostUIHandler2_GetOptionKeyPath(IDocHostUIHandler2* This,LPOLESTR *pchKey,DWORD dw) {
 771    return This->lpVtbl->GetOptionKeyPath(This,pchKey,dw);
 772}
 773static inline HRESULT IDocHostUIHandler2_GetDropTarget(IDocHostUIHandler2* This,IDropTarget *pDropTarget,IDropTarget **ppDropTarget) {
 774    return This->lpVtbl->GetDropTarget(This,pDropTarget,ppDropTarget);
 775}
 776static inline HRESULT IDocHostUIHandler2_GetExternal(IDocHostUIHandler2* This,IDispatch **ppDispatch) {
 777    return This->lpVtbl->GetExternal(This,ppDispatch);
 778}
 779static inline HRESULT IDocHostUIHandler2_TranslateUrl(IDocHostUIHandler2* This,DWORD dwTranslate,LPWSTR pchURLIn,LPWSTR *ppchURLOut) {
 780    return This->lpVtbl->TranslateUrl(This,dwTranslate,pchURLIn,ppchURLOut);
 781}
 782static inline HRESULT IDocHostUIHandler2_FilterDataObject(IDocHostUIHandler2* This,IDataObject *pDO,IDataObject **ppDORet) {
 783    return This->lpVtbl->FilterDataObject(This,pDO,ppDORet);
 784}
 785/*** IDocHostUIHandler2 methods ***/
 786static inline HRESULT IDocHostUIHandler2_GetOverrideKeyPath(IDocHostUIHandler2* This,LPOLESTR *pchKey,DWORD dw) {
 787    return This->lpVtbl->GetOverrideKeyPath(This,pchKey,dw);
 788}
 789#endif
 790#endif
 791
 792#endif
 793
 794
 795#endif  /* __IDocHostUIHandler2_INTERFACE_DEFINED__ */
 796
 797/*****************************************************************************
 798 * ICustomDoc interface
 799 */
 800#ifndef __ICustomDoc_INTERFACE_DEFINED__
 801#define __ICustomDoc_INTERFACE_DEFINED__
 802
 803DEFINE_GUID(IID_ICustomDoc, 0x3050f3f0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
 804#if defined(__cplusplus) && !defined(CINTERFACE)
 805MIDL_INTERFACE("3050f3f0-98b5-11cf-bb82-00aa00bdce0b")
 806ICustomDoc : public IUnknown
 807{
 808    virtual HRESULT STDMETHODCALLTYPE SetUIHandler(
 809        IDocHostUIHandler *pUIHandler) = 0;
 810
 811};
 812#ifdef __CRT_UUID_DECL
 813__CRT_UUID_DECL(ICustomDoc, 0x3050f3f0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b)
 814#endif
 815#else
 816typedef struct ICustomDocVtbl {
 817    BEGIN_INTERFACE
 818
 819    /*** IUnknown methods ***/
 820    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 821        ICustomDoc *This,
 822        REFIID riid,
 823        void **ppvObject);
 824
 825    ULONG (STDMETHODCALLTYPE *AddRef)(
 826        ICustomDoc *This);
 827
 828    ULONG (STDMETHODCALLTYPE *Release)(
 829        ICustomDoc *This);
 830
 831    /*** ICustomDoc methods ***/
 832    HRESULT (STDMETHODCALLTYPE *SetUIHandler)(
 833        ICustomDoc *This,
 834        IDocHostUIHandler *pUIHandler);
 835
 836    END_INTERFACE
 837} ICustomDocVtbl;
 838
 839interface ICustomDoc {
 840    CONST_VTBL ICustomDocVtbl* lpVtbl;
 841};
 842
 843#ifdef COBJMACROS
 844#ifndef WIDL_C_INLINE_WRAPPERS
 845/*** IUnknown methods ***/
 846#define ICustomDoc_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 847#define ICustomDoc_AddRef(This) (This)->lpVtbl->AddRef(This)
 848#define ICustomDoc_Release(This) (This)->lpVtbl->Release(This)
 849/*** ICustomDoc methods ***/
 850#define ICustomDoc_SetUIHandler(This,pUIHandler) (This)->lpVtbl->SetUIHandler(This,pUIHandler)
 851#else
 852/*** IUnknown methods ***/
 853static inline HRESULT ICustomDoc_QueryInterface(ICustomDoc* This,REFIID riid,void **ppvObject) {
 854    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 855}
 856static inline ULONG ICustomDoc_AddRef(ICustomDoc* This) {
 857    return This->lpVtbl->AddRef(This);
 858}
 859static inline ULONG ICustomDoc_Release(ICustomDoc* This) {
 860    return This->lpVtbl->Release(This);
 861}
 862/*** ICustomDoc methods ***/
 863static inline HRESULT ICustomDoc_SetUIHandler(ICustomDoc* This,IDocHostUIHandler *pUIHandler) {
 864    return This->lpVtbl->SetUIHandler(This,pUIHandler);
 865}
 866#endif
 867#endif
 868
 869#endif
 870
 871
 872#endif  /* __ICustomDoc_INTERFACE_DEFINED__ */
 873
 874/*****************************************************************************
 875 * IDocHostShowUI interface
 876 */
 877#ifndef __IDocHostShowUI_INTERFACE_DEFINED__
 878#define __IDocHostShowUI_INTERFACE_DEFINED__
 879
 880DEFINE_GUID(IID_IDocHostShowUI, 0xc4d244b0, 0xd43e, 0x11cf, 0x89,0x3b, 0x00,0xaa,0x00,0xbd,0xce,0x1a);
 881#if defined(__cplusplus) && !defined(CINTERFACE)
 882MIDL_INTERFACE("c4d244b0-d43e-11cf-893b-00aa00bdce1a")
 883IDocHostShowUI : public IUnknown
 884{
 885    virtual HRESULT STDMETHODCALLTYPE ShowMessage(
 886        HWND hwnd,
 887        LPOLESTR lpstrText,
 888        LPOLESTR lpstrCaption,
 889        DWORD dwType,
 890        LPOLESTR lpstrHelpFile,
 891        DWORD dwHelpContext,
 892        LRESULT *plResult) = 0;
 893
 894    virtual HRESULT STDMETHODCALLTYPE ShowHelp(
 895        HWND hwnd,
 896        LPOLESTR pszHelpFile,
 897        UINT uCommand,
 898        DWORD dwData,
 899        POINT ptMouse,
 900        IDispatch *pDispatchObjectHit) = 0;
 901
 902};
 903#ifdef __CRT_UUID_DECL
 904__CRT_UUID_DECL(IDocHostShowUI, 0xc4d244b0, 0xd43e, 0x11cf, 0x89,0x3b, 0x00,0xaa,0x00,0xbd,0xce,0x1a)
 905#endif
 906#else
 907typedef struct IDocHostShowUIVtbl {
 908    BEGIN_INTERFACE
 909
 910    /*** IUnknown methods ***/
 911    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 912        IDocHostShowUI *This,
 913        REFIID riid,
 914        void **ppvObject);
 915
 916    ULONG (STDMETHODCALLTYPE *AddRef)(
 917        IDocHostShowUI *This);
 918
 919    ULONG (STDMETHODCALLTYPE *Release)(
 920        IDocHostShowUI *This);
 921
 922    /*** IDocHostShowUI methods ***/
 923    HRESULT (STDMETHODCALLTYPE *ShowMessage)(
 924        IDocHostShowUI *This,
 925        HWND hwnd,
 926        LPOLESTR lpstrText,
 927        LPOLESTR lpstrCaption,
 928        DWORD dwType,
 929        LPOLESTR lpstrHelpFile,
 930        DWORD dwHelpContext,
 931        LRESULT *plResult);
 932
 933    HRESULT (STDMETHODCALLTYPE *ShowHelp)(
 934        IDocHostShowUI *This,
 935        HWND hwnd,
 936        LPOLESTR pszHelpFile,
 937        UINT uCommand,
 938        DWORD dwData,
 939        POINT ptMouse,
 940        IDispatch *pDispatchObjectHit);
 941
 942    END_INTERFACE
 943} IDocHostShowUIVtbl;
 944
 945interface IDocHostShowUI {
 946    CONST_VTBL IDocHostShowUIVtbl* lpVtbl;
 947};
 948
 949#ifdef COBJMACROS
 950#ifndef WIDL_C_INLINE_WRAPPERS
 951/*** IUnknown methods ***/
 952#define IDocHostShowUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 953#define IDocHostShowUI_AddRef(This) (This)->lpVtbl->AddRef(This)
 954#define IDocHostShowUI_Release(This) (This)->lpVtbl->Release(This)
 955/*** IDocHostShowUI methods ***/
 956#define IDocHostShowUI_ShowMessage(This,hwnd,lpstrText,lpstrCaption,dwType,lpstrHelpFile,dwHelpContext,plResult) (This)->lpVtbl->ShowMessage(This,hwnd,lpstrText,lpstrCaption,dwType,lpstrHelpFile,dwHelpContext,plResult)
 957#define IDocHostShowUI_ShowHelp(This,hwnd,pszHelpFile,uCommand,dwData,ptMouse,pDispatchObjectHit) (This)->lpVtbl->ShowHelp(This,hwnd,pszHelpFile,uCommand,dwData,ptMouse,pDispatchObjectHit)
 958#else
 959/*** IUnknown methods ***/
 960static inline HRESULT IDocHostShowUI_QueryInterface(IDocHostShowUI* This,REFIID riid,void **ppvObject) {
 961    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 962}
 963static inline ULONG IDocHostShowUI_AddRef(IDocHostShowUI* This) {
 964    return This->lpVtbl->AddRef(This);
 965}
 966static inline ULONG IDocHostShowUI_Release(IDocHostShowUI* This) {
 967    return This->lpVtbl->Release(This);
 968}
 969/*** IDocHostShowUI methods ***/
 970static inline HRESULT IDocHostShowUI_ShowMessage(IDocHostShowUI* This,HWND hwnd,LPOLESTR lpstrText,LPOLESTR lpstrCaption,DWORD dwType,LPOLESTR lpstrHelpFile,DWORD dwHelpContext,LRESULT *plResult) {
 971    return This->lpVtbl->ShowMessage(This,hwnd,lpstrText,lpstrCaption,dwType,lpstrHelpFile,dwHelpContext,plResult);
 972}
 973static inline HRESULT IDocHostShowUI_ShowHelp(IDocHostShowUI* This,HWND hwnd,LPOLESTR pszHelpFile,UINT uCommand,DWORD dwData,POINT ptMouse,IDispatch *pDispatchObjectHit) {
 974    return This->lpVtbl->ShowHelp(This,hwnd,pszHelpFile,uCommand,dwData,ptMouse,pDispatchObjectHit);
 975}
 976#endif
 977#endif
 978
 979#endif
 980
 981
 982#endif  /* __IDocHostShowUI_INTERFACE_DEFINED__ */
 983
 984#define IClassFactory3 IClassFactoryEx
 985#define IID_IClassFactory3 IID_IClassFactoryEx
 986#define SID_SHTMLOMWindowServices IID_IHTMLOMWindowServices
 987/*****************************************************************************
 988 * IClassFactoryEx interface
 989 */
 990#ifndef __IClassFactoryEx_INTERFACE_DEFINED__
 991#define __IClassFactoryEx_INTERFACE_DEFINED__
 992
 993DEFINE_GUID(IID_IClassFactoryEx, 0x342d1ea0, 0xae25, 0x11d1, 0x89,0xc5, 0x00,0x60,0x08,0xc3,0xfb,0xfc);
 994#if defined(__cplusplus) && !defined(CINTERFACE)
 995MIDL_INTERFACE("342d1ea0-ae25-11d1-89c5-006008c3fbfc")
 996IClassFactoryEx : public IClassFactory
 997{
 998    virtual HRESULT STDMETHODCALLTYPE CreateInstanceWithContext(
 999        IUnknown *punkContext,
1000        IUnknown *punkOuter,
1001        REFIID riid,
1002        void **ppv) = 0;
1003
1004};
1005#ifdef __CRT_UUID_DECL
1006__CRT_UUID_DECL(IClassFactoryEx, 0x342d1ea0, 0xae25, 0x11d1, 0x89,0xc5, 0x00,0x60,0x08,0xc3,0xfb,0xfc)
1007#endif
1008#else
1009typedef struct IClassFactoryExVtbl {
1010    BEGIN_INTERFACE
1011
1012    /*** IUnknown methods ***/
1013    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1014        IClassFactoryEx *This,
1015        REFIID riid,
1016        void **ppvObject);
1017
1018    ULONG (STDMETHODCALLTYPE *AddRef)(
1019        IClassFactoryEx *This);
1020
1021    ULONG (STDMETHODCALLTYPE *Release)(
1022        IClassFactoryEx *This);
1023
1024    /*** IClassFactory methods ***/
1025    HRESULT (STDMETHODCALLTYPE *CreateInstance)(
1026        IClassFactoryEx *This,
1027        IUnknown *pUnkOuter,
1028        REFIID riid,
1029        void **ppvObject);
1030
1031    HRESULT (STDMETHODCALLTYPE *LockServer)(
1032        IClassFactoryEx *This,
1033        WINBOOL fLock);
1034
1035    /*** IClassFactoryEx methods ***/
1036    HRESULT (STDMETHODCALLTYPE *CreateInstanceWithContext)(
1037        IClassFactoryEx *This,
1038        IUnknown *punkContext,
1039        IUnknown *punkOuter,
1040        REFIID riid,
1041        void **ppv);
1042
1043    END_INTERFACE
1044} IClassFactoryExVtbl;
1045
1046interface IClassFactoryEx {
1047    CONST_VTBL IClassFactoryExVtbl* lpVtbl;
1048};
1049
1050#ifdef COBJMACROS
1051#ifndef WIDL_C_INLINE_WRAPPERS
1052/*** IUnknown methods ***/
1053#define IClassFactoryEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1054#define IClassFactoryEx_AddRef(This) (This)->lpVtbl->AddRef(This)
1055#define IClassFactoryEx_Release(This) (This)->lpVtbl->Release(This)
1056/*** IClassFactory methods ***/
1057#define IClassFactoryEx_CreateInstance(This,pUnkOuter,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObject)
1058#define IClassFactoryEx_LockServer(This,fLock) (This)->lpVtbl->LockServer(This,fLock)
1059/*** IClassFactoryEx methods ***/
1060#define IClassFactoryEx_CreateInstanceWithContext(This,punkContext,punkOuter,riid,ppv) (This)->lpVtbl->CreateInstanceWithContext(This,punkContext,punkOuter,riid,ppv)
1061#else
1062/*** IUnknown methods ***/
1063static inline HRESULT IClassFactoryEx_QueryInterface(IClassFactoryEx* This,REFIID riid,void **ppvObject) {
1064    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1065}
1066static inline ULONG IClassFactoryEx_AddRef(IClassFactoryEx* This) {
1067    return This->lpVtbl->AddRef(This);
1068}
1069static inline ULONG IClassFactoryEx_Release(IClassFactoryEx* This) {
1070    return This->lpVtbl->Release(This);
1071}
1072/*** IClassFactory methods ***/
1073static inline HRESULT IClassFactoryEx_CreateInstance(IClassFactoryEx* This,IUnknown *pUnkOuter,REFIID riid,void **ppvObject) {
1074    return This->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObject);
1075}
1076static inline HRESULT IClassFactoryEx_LockServer(IClassFactoryEx* This,WINBOOL fLock) {
1077    return This->lpVtbl->LockServer(This,fLock);
1078}
1079/*** IClassFactoryEx methods ***/
1080static inline HRESULT IClassFactoryEx_CreateInstanceWithContext(IClassFactoryEx* This,IUnknown *punkContext,IUnknown *punkOuter,REFIID riid,void **ppv) {
1081    return This->lpVtbl->CreateInstanceWithContext(This,punkContext,punkOuter,riid,ppv);
1082}
1083#endif
1084#endif
1085
1086#endif
1087
1088
1089#endif  /* __IClassFactoryEx_INTERFACE_DEFINED__ */
1090
1091/*****************************************************************************
1092 * IHTMLOMWindowServices interface
1093 */
1094#ifndef __IHTMLOMWindowServices_INTERFACE_DEFINED__
1095#define __IHTMLOMWindowServices_INTERFACE_DEFINED__
1096
1097DEFINE_GUID(IID_IHTMLOMWindowServices, 0x3050f5fc, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
1098#if defined(__cplusplus) && !defined(CINTERFACE)
1099MIDL_INTERFACE("3050f5fc-98b5-11cf-bb82-00aa00bdce0b")
1100IHTMLOMWindowServices : public IUnknown
1101{
1102    virtual HRESULT STDMETHODCALLTYPE moveTo(
1103        LONG x,
1104        LONG y) = 0;
1105
1106    virtual HRESULT STDMETHODCALLTYPE moveBy(
1107        LONG x,
1108        LONG y) = 0;
1109
1110    virtual HRESULT STDMETHODCALLTYPE resizeTo(
1111        LONG x,
1112        LONG y) = 0;
1113
1114    virtual HRESULT STDMETHODCALLTYPE resizeBy(
1115        LONG x,
1116        LONG y) = 0;
1117
1118};
1119#ifdef __CRT_UUID_DECL
1120__CRT_UUID_DECL(IHTMLOMWindowServices, 0x3050f5fc, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b)
1121#endif
1122#else
1123typedef struct IHTMLOMWindowServicesVtbl {
1124    BEGIN_INTERFACE
1125
1126    /*** IUnknown methods ***/
1127    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1128        IHTMLOMWindowServices *This,
1129        REFIID riid,
1130        void **ppvObject);
1131
1132    ULONG (STDMETHODCALLTYPE *AddRef)(
1133        IHTMLOMWindowServices *This);
1134
1135    ULONG (STDMETHODCALLTYPE *Release)(
1136        IHTMLOMWindowServices *This);
1137
1138    /*** IHTMLOMWindowServices methods ***/
1139    HRESULT (STDMETHODCALLTYPE *moveTo)(
1140        IHTMLOMWindowServices *This,
1141        LONG x,
1142        LONG y);
1143
1144    HRESULT (STDMETHODCALLTYPE *moveBy)(
1145        IHTMLOMWindowServices *This,
1146        LONG x,
1147        LONG y);
1148
1149    HRESULT (STDMETHODCALLTYPE *resizeTo)(
1150        IHTMLOMWindowServices *This,
1151        LONG x,
1152        LONG y);
1153
1154    HRESULT (STDMETHODCALLTYPE *resizeBy)(
1155        IHTMLOMWindowServices *This,
1156        LONG x,
1157        LONG y);
1158
1159    END_INTERFACE
1160} IHTMLOMWindowServicesVtbl;
1161
1162interface IHTMLOMWindowServices {
1163    CONST_VTBL IHTMLOMWindowServicesVtbl* lpVtbl;
1164};
1165
1166#ifdef COBJMACROS
1167#ifndef WIDL_C_INLINE_WRAPPERS
1168/*** IUnknown methods ***/
1169#define IHTMLOMWindowServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1170#define IHTMLOMWindowServices_AddRef(This) (This)->lpVtbl->AddRef(This)
1171#define IHTMLOMWindowServices_Release(This) (This)->lpVtbl->Release(This)
1172/*** IHTMLOMWindowServices methods ***/
1173#define IHTMLOMWindowServices_moveTo(This,x,y) (This)->lpVtbl->moveTo(This,x,y)
1174#define IHTMLOMWindowServices_moveBy(This,x,y) (This)->lpVtbl->moveBy(This,x,y)
1175#define IHTMLOMWindowServices_resizeTo(This,x,y) (This)->lpVtbl->resizeTo(This,x,y)
1176#define IHTMLOMWindowServices_resizeBy(This,x,y) (This)->lpVtbl->resizeBy(This,x,y)
1177#else
1178/*** IUnknown methods ***/
1179static inline HRESULT IHTMLOMWindowServices_QueryInterface(IHTMLOMWindowServices* This,REFIID riid,void **ppvObject) {
1180    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1181}
1182static inline ULONG IHTMLOMWindowServices_AddRef(IHTMLOMWindowServices* This) {
1183    return This->lpVtbl->AddRef(This);
1184}
1185static inline ULONG IHTMLOMWindowServices_Release(IHTMLOMWindowServices* This) {
1186    return This->lpVtbl->Release(This);
1187}
1188/*** IHTMLOMWindowServices methods ***/
1189static inline HRESULT IHTMLOMWindowServices_moveTo(IHTMLOMWindowServices* This,LONG x,LONG y) {
1190    return This->lpVtbl->moveTo(This,x,y);
1191}
1192static inline HRESULT IHTMLOMWindowServices_moveBy(IHTMLOMWindowServices* This,LONG x,LONG y) {
1193    return This->lpVtbl->moveBy(This,x,y);
1194}
1195static inline HRESULT IHTMLOMWindowServices_resizeTo(IHTMLOMWindowServices* This,LONG x,LONG y) {
1196    return This->lpVtbl->resizeTo(This,x,y);
1197}
1198static inline HRESULT IHTMLOMWindowServices_resizeBy(IHTMLOMWindowServices* This,LONG x,LONG y) {
1199    return This->lpVtbl->resizeBy(This,x,y);
1200}
1201#endif
1202#endif
1203
1204#endif
1205
1206
1207#endif  /* __IHTMLOMWindowServices_INTERFACE_DEFINED__ */
1208
1209#endif
1210#endif
1211/* Begin additional prototypes for all interfaces */
1212
1213
1214/* End additional prototypes */
1215
1216#ifdef __cplusplus
1217}
1218#endif
1219
1220#endif /* __mshtmhst_h__ */