master
   1/*** Autogenerated by WIDL 10.4 from include/docobj.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 __docobj_h__
  17#define __docobj_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IOleDocument_FWD_DEFINED__
  22#define __IOleDocument_FWD_DEFINED__
  23typedef interface IOleDocument IOleDocument;
  24#ifdef __cplusplus
  25interface IOleDocument;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __IOleDocumentSite_FWD_DEFINED__
  30#define __IOleDocumentSite_FWD_DEFINED__
  31typedef interface IOleDocumentSite IOleDocumentSite;
  32#ifdef __cplusplus
  33interface IOleDocumentSite;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __IOleDocumentView_FWD_DEFINED__
  38#define __IOleDocumentView_FWD_DEFINED__
  39typedef interface IOleDocumentView IOleDocumentView;
  40#ifdef __cplusplus
  41interface IOleDocumentView;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __IEnumOleDocumentViews_FWD_DEFINED__
  46#define __IEnumOleDocumentViews_FWD_DEFINED__
  47typedef interface IEnumOleDocumentViews IEnumOleDocumentViews;
  48#ifdef __cplusplus
  49interface IEnumOleDocumentViews;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __IContinueCallback_FWD_DEFINED__
  54#define __IContinueCallback_FWD_DEFINED__
  55typedef interface IContinueCallback IContinueCallback;
  56#ifdef __cplusplus
  57interface IContinueCallback;
  58#endif /* __cplusplus */
  59#endif
  60
  61#ifndef __IPrint_FWD_DEFINED__
  62#define __IPrint_FWD_DEFINED__
  63typedef interface IPrint IPrint;
  64#ifdef __cplusplus
  65interface IPrint;
  66#endif /* __cplusplus */
  67#endif
  68
  69#ifndef __IOleCommandTarget_FWD_DEFINED__
  70#define __IOleCommandTarget_FWD_DEFINED__
  71typedef interface IOleCommandTarget IOleCommandTarget;
  72#ifdef __cplusplus
  73interface IOleCommandTarget;
  74#endif /* __cplusplus */
  75#endif
  76
  77#ifndef __IZoomEvents_FWD_DEFINED__
  78#define __IZoomEvents_FWD_DEFINED__
  79typedef interface IZoomEvents IZoomEvents;
  80#ifdef __cplusplus
  81interface IZoomEvents;
  82#endif /* __cplusplus */
  83#endif
  84
  85#ifndef __IProtectFocus_FWD_DEFINED__
  86#define __IProtectFocus_FWD_DEFINED__
  87typedef interface IProtectFocus IProtectFocus;
  88#ifdef __cplusplus
  89interface IProtectFocus;
  90#endif /* __cplusplus */
  91#endif
  92
  93#ifndef __IProtectedModeMenuServices_FWD_DEFINED__
  94#define __IProtectedModeMenuServices_FWD_DEFINED__
  95typedef interface IProtectedModeMenuServices IProtectedModeMenuServices;
  96#ifdef __cplusplus
  97interface IProtectedModeMenuServices;
  98#endif /* __cplusplus */
  99#endif
 100
 101/* Headers for imported files */
 102
 103#include <ocidl.h>
 104#include <objidl.h>
 105#include <oleidl.h>
 106#include <oaidl.h>
 107#include <servprov.h>
 108
 109#ifdef __cplusplus
 110extern "C" {
 111#endif
 112
 113/**
 114 * This file is part of the mingw-w64 runtime package.
 115 * No warranty is given; refer to the file DISCLAIMER within this package.
 116 */
 117
 118#include <winapifamily.h>
 119
 120#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 121
 122
 123#ifndef __IOleDocument_FWD_DEFINED__
 124#define __IOleDocument_FWD_DEFINED__
 125typedef interface IOleDocument IOleDocument;
 126#ifdef __cplusplus
 127interface IOleDocument;
 128#endif /* __cplusplus */
 129#endif
 130
 131#ifndef __IOleDocumentSite_FWD_DEFINED__
 132#define __IOleDocumentSite_FWD_DEFINED__
 133typedef interface IOleDocumentSite IOleDocumentSite;
 134#ifdef __cplusplus
 135interface IOleDocumentSite;
 136#endif /* __cplusplus */
 137#endif
 138
 139#ifndef __IOleDocumentView_FWD_DEFINED__
 140#define __IOleDocumentView_FWD_DEFINED__
 141typedef interface IOleDocumentView IOleDocumentView;
 142#ifdef __cplusplus
 143interface IOleDocumentView;
 144#endif /* __cplusplus */
 145#endif
 146
 147#ifndef __IEnumOleDocumentViews_FWD_DEFINED__
 148#define __IEnumOleDocumentViews_FWD_DEFINED__
 149typedef interface IEnumOleDocumentViews IEnumOleDocumentViews;
 150#ifdef __cplusplus
 151interface IEnumOleDocumentViews;
 152#endif /* __cplusplus */
 153#endif
 154
 155#ifndef __IContinueCallback_FWD_DEFINED__
 156#define __IContinueCallback_FWD_DEFINED__
 157typedef interface IContinueCallback IContinueCallback;
 158#ifdef __cplusplus
 159interface IContinueCallback;
 160#endif /* __cplusplus */
 161#endif
 162
 163#ifndef __IPrint_FWD_DEFINED__
 164#define __IPrint_FWD_DEFINED__
 165typedef interface IPrint IPrint;
 166#ifdef __cplusplus
 167interface IPrint;
 168#endif /* __cplusplus */
 169#endif
 170
 171#ifndef __IOleCommandTarget_FWD_DEFINED__
 172#define __IOleCommandTarget_FWD_DEFINED__
 173typedef interface IOleCommandTarget IOleCommandTarget;
 174#ifdef __cplusplus
 175interface IOleCommandTarget;
 176#endif /* __cplusplus */
 177#endif
 178
 179#ifndef __IProtectedModeMenuServices_FWD_DEFINED__
 180#define __IProtectedModeMenuServices_FWD_DEFINED__
 181typedef interface IProtectedModeMenuServices IProtectedModeMenuServices;
 182#ifdef __cplusplus
 183interface IProtectedModeMenuServices;
 184#endif /* __cplusplus */
 185#endif
 186
 187
 188#ifndef _LPOLEDOCUMENT_DEFINED
 189#define _LPOLEDOCUMENT_DEFINED
 190/*****************************************************************************
 191 * IOleDocument interface
 192 */
 193#ifndef __IOleDocument_INTERFACE_DEFINED__
 194#define __IOleDocument_INTERFACE_DEFINED__
 195
 196typedef IOleDocument *LPOLEDOCUMENT;
 197
 198typedef enum __WIDL_docobj_generated_name_00000020 {
 199    DOCMISC_CANCREATEMULTIPLEVIEWS = 1,
 200    DOCMISC_SUPPORTCOMPLEXRECTANGLES = 2,
 201    DOCMISC_CANTOPENEDIT = 4,
 202    DOCMISC_NOFILESUPPORT = 8
 203} DOCMISC;
 204
 205DEFINE_GUID(IID_IOleDocument, 0xb722bcc5, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
 206#if defined(__cplusplus) && !defined(CINTERFACE)
 207MIDL_INTERFACE("b722bcc5-4e68-101b-a2bc-00aa00404770")
 208IOleDocument : public IUnknown
 209{
 210    virtual HRESULT STDMETHODCALLTYPE CreateView(
 211        IOleInPlaceSite *pIPSite,
 212        IStream *pstm,
 213        DWORD dwReserved,
 214        IOleDocumentView **ppView) = 0;
 215
 216    virtual HRESULT STDMETHODCALLTYPE GetDocMiscStatus(
 217        DWORD *pdwStatus) = 0;
 218
 219    virtual HRESULT STDMETHODCALLTYPE EnumViews(
 220        IEnumOleDocumentViews **ppEnum,
 221        IOleDocumentView **ppView) = 0;
 222
 223};
 224#ifdef __CRT_UUID_DECL
 225__CRT_UUID_DECL(IOleDocument, 0xb722bcc5, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
 226#endif
 227#else
 228typedef struct IOleDocumentVtbl {
 229    BEGIN_INTERFACE
 230
 231    /*** IUnknown methods ***/
 232    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 233        IOleDocument *This,
 234        REFIID riid,
 235        void **ppvObject);
 236
 237    ULONG (STDMETHODCALLTYPE *AddRef)(
 238        IOleDocument *This);
 239
 240    ULONG (STDMETHODCALLTYPE *Release)(
 241        IOleDocument *This);
 242
 243    /*** IOleDocument methods ***/
 244    HRESULT (STDMETHODCALLTYPE *CreateView)(
 245        IOleDocument *This,
 246        IOleInPlaceSite *pIPSite,
 247        IStream *pstm,
 248        DWORD dwReserved,
 249        IOleDocumentView **ppView);
 250
 251    HRESULT (STDMETHODCALLTYPE *GetDocMiscStatus)(
 252        IOleDocument *This,
 253        DWORD *pdwStatus);
 254
 255    HRESULT (STDMETHODCALLTYPE *EnumViews)(
 256        IOleDocument *This,
 257        IEnumOleDocumentViews **ppEnum,
 258        IOleDocumentView **ppView);
 259
 260    END_INTERFACE
 261} IOleDocumentVtbl;
 262
 263interface IOleDocument {
 264    CONST_VTBL IOleDocumentVtbl* lpVtbl;
 265};
 266
 267#ifdef COBJMACROS
 268#ifndef WIDL_C_INLINE_WRAPPERS
 269/*** IUnknown methods ***/
 270#define IOleDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 271#define IOleDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
 272#define IOleDocument_Release(This) (This)->lpVtbl->Release(This)
 273/*** IOleDocument methods ***/
 274#define IOleDocument_CreateView(This,pIPSite,pstm,dwReserved,ppView) (This)->lpVtbl->CreateView(This,pIPSite,pstm,dwReserved,ppView)
 275#define IOleDocument_GetDocMiscStatus(This,pdwStatus) (This)->lpVtbl->GetDocMiscStatus(This,pdwStatus)
 276#define IOleDocument_EnumViews(This,ppEnum,ppView) (This)->lpVtbl->EnumViews(This,ppEnum,ppView)
 277#else
 278/*** IUnknown methods ***/
 279static inline HRESULT IOleDocument_QueryInterface(IOleDocument* This,REFIID riid,void **ppvObject) {
 280    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 281}
 282static inline ULONG IOleDocument_AddRef(IOleDocument* This) {
 283    return This->lpVtbl->AddRef(This);
 284}
 285static inline ULONG IOleDocument_Release(IOleDocument* This) {
 286    return This->lpVtbl->Release(This);
 287}
 288/*** IOleDocument methods ***/
 289static inline HRESULT IOleDocument_CreateView(IOleDocument* This,IOleInPlaceSite *pIPSite,IStream *pstm,DWORD dwReserved,IOleDocumentView **ppView) {
 290    return This->lpVtbl->CreateView(This,pIPSite,pstm,dwReserved,ppView);
 291}
 292static inline HRESULT IOleDocument_GetDocMiscStatus(IOleDocument* This,DWORD *pdwStatus) {
 293    return This->lpVtbl->GetDocMiscStatus(This,pdwStatus);
 294}
 295static inline HRESULT IOleDocument_EnumViews(IOleDocument* This,IEnumOleDocumentViews **ppEnum,IOleDocumentView **ppView) {
 296    return This->lpVtbl->EnumViews(This,ppEnum,ppView);
 297}
 298#endif
 299#endif
 300
 301#endif
 302
 303
 304#endif  /* __IOleDocument_INTERFACE_DEFINED__ */
 305
 306#endif
 307
 308#ifndef _LPOLEDOCUMENTSITE_DEFINED
 309#define _LPOLEDOCUMENTSITE_DEFINED
 310/*****************************************************************************
 311 * IOleDocumentSite interface
 312 */
 313#ifndef __IOleDocumentSite_INTERFACE_DEFINED__
 314#define __IOleDocumentSite_INTERFACE_DEFINED__
 315
 316typedef IOleDocumentSite *LPOLEDOCUMENTSITE;
 317
 318DEFINE_GUID(IID_IOleDocumentSite, 0xb722bcc7, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
 319#if defined(__cplusplus) && !defined(CINTERFACE)
 320MIDL_INTERFACE("b722bcc7-4e68-101b-a2bc-00aa00404770")
 321IOleDocumentSite : public IUnknown
 322{
 323    virtual HRESULT STDMETHODCALLTYPE ActivateMe(
 324        IOleDocumentView *pViewToActivate) = 0;
 325
 326};
 327#ifdef __CRT_UUID_DECL
 328__CRT_UUID_DECL(IOleDocumentSite, 0xb722bcc7, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
 329#endif
 330#else
 331typedef struct IOleDocumentSiteVtbl {
 332    BEGIN_INTERFACE
 333
 334    /*** IUnknown methods ***/
 335    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 336        IOleDocumentSite *This,
 337        REFIID riid,
 338        void **ppvObject);
 339
 340    ULONG (STDMETHODCALLTYPE *AddRef)(
 341        IOleDocumentSite *This);
 342
 343    ULONG (STDMETHODCALLTYPE *Release)(
 344        IOleDocumentSite *This);
 345
 346    /*** IOleDocumentSite methods ***/
 347    HRESULT (STDMETHODCALLTYPE *ActivateMe)(
 348        IOleDocumentSite *This,
 349        IOleDocumentView *pViewToActivate);
 350
 351    END_INTERFACE
 352} IOleDocumentSiteVtbl;
 353
 354interface IOleDocumentSite {
 355    CONST_VTBL IOleDocumentSiteVtbl* lpVtbl;
 356};
 357
 358#ifdef COBJMACROS
 359#ifndef WIDL_C_INLINE_WRAPPERS
 360/*** IUnknown methods ***/
 361#define IOleDocumentSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 362#define IOleDocumentSite_AddRef(This) (This)->lpVtbl->AddRef(This)
 363#define IOleDocumentSite_Release(This) (This)->lpVtbl->Release(This)
 364/*** IOleDocumentSite methods ***/
 365#define IOleDocumentSite_ActivateMe(This,pViewToActivate) (This)->lpVtbl->ActivateMe(This,pViewToActivate)
 366#else
 367/*** IUnknown methods ***/
 368static inline HRESULT IOleDocumentSite_QueryInterface(IOleDocumentSite* This,REFIID riid,void **ppvObject) {
 369    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 370}
 371static inline ULONG IOleDocumentSite_AddRef(IOleDocumentSite* This) {
 372    return This->lpVtbl->AddRef(This);
 373}
 374static inline ULONG IOleDocumentSite_Release(IOleDocumentSite* This) {
 375    return This->lpVtbl->Release(This);
 376}
 377/*** IOleDocumentSite methods ***/
 378static inline HRESULT IOleDocumentSite_ActivateMe(IOleDocumentSite* This,IOleDocumentView *pViewToActivate) {
 379    return This->lpVtbl->ActivateMe(This,pViewToActivate);
 380}
 381#endif
 382#endif
 383
 384#endif
 385
 386
 387#endif  /* __IOleDocumentSite_INTERFACE_DEFINED__ */
 388
 389#endif
 390
 391#ifndef _LPOLEDOCUMENTVIEW_DEFINED
 392#define _LPOLEDOCUMENTVIEW_DEFINED
 393/*****************************************************************************
 394 * IOleDocumentView interface
 395 */
 396#ifndef __IOleDocumentView_INTERFACE_DEFINED__
 397#define __IOleDocumentView_INTERFACE_DEFINED__
 398
 399typedef IOleDocumentView *LPOLEDOCUMENTVIEW;
 400
 401DEFINE_GUID(IID_IOleDocumentView, 0xb722bcc6, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
 402#if defined(__cplusplus) && !defined(CINTERFACE)
 403MIDL_INTERFACE("b722bcc6-4e68-101b-a2bc-00aa00404770")
 404IOleDocumentView : public IUnknown
 405{
 406    virtual HRESULT STDMETHODCALLTYPE SetInPlaceSite(
 407        IOleInPlaceSite *pIPSite) = 0;
 408
 409    virtual HRESULT STDMETHODCALLTYPE GetInPlaceSite(
 410        IOleInPlaceSite **ppIPSite) = 0;
 411
 412    virtual HRESULT STDMETHODCALLTYPE GetDocument(
 413        IUnknown **ppunk) = 0;
 414
 415    virtual HRESULT STDMETHODCALLTYPE SetRect(
 416        LPRECT prcView) = 0;
 417
 418    virtual HRESULT STDMETHODCALLTYPE GetRect(
 419        LPRECT prcView) = 0;
 420
 421    virtual HRESULT STDMETHODCALLTYPE SetRectComplex(
 422        LPRECT prcView,
 423        LPRECT prcHScroll,
 424        LPRECT prcVScroll,
 425        LPRECT prcSizeBox) = 0;
 426
 427    virtual HRESULT STDMETHODCALLTYPE Show(
 428        WINBOOL fShow) = 0;
 429
 430    virtual HRESULT STDMETHODCALLTYPE UIActivate(
 431        WINBOOL fUIActivate) = 0;
 432
 433    virtual HRESULT STDMETHODCALLTYPE Open(
 434        ) = 0;
 435
 436    virtual HRESULT STDMETHODCALLTYPE CloseView(
 437        DWORD dwReserved) = 0;
 438
 439    virtual HRESULT STDMETHODCALLTYPE SaveViewState(
 440        LPSTREAM pstm) = 0;
 441
 442    virtual HRESULT STDMETHODCALLTYPE ApplyViewState(
 443        LPSTREAM pstm) = 0;
 444
 445    virtual HRESULT STDMETHODCALLTYPE Clone(
 446        IOleInPlaceSite *pIPSiteNew,
 447        IOleDocumentView **ppViewNew) = 0;
 448
 449};
 450#ifdef __CRT_UUID_DECL
 451__CRT_UUID_DECL(IOleDocumentView, 0xb722bcc6, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
 452#endif
 453#else
 454typedef struct IOleDocumentViewVtbl {
 455    BEGIN_INTERFACE
 456
 457    /*** IUnknown methods ***/
 458    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 459        IOleDocumentView *This,
 460        REFIID riid,
 461        void **ppvObject);
 462
 463    ULONG (STDMETHODCALLTYPE *AddRef)(
 464        IOleDocumentView *This);
 465
 466    ULONG (STDMETHODCALLTYPE *Release)(
 467        IOleDocumentView *This);
 468
 469    /*** IOleDocumentView methods ***/
 470    HRESULT (STDMETHODCALLTYPE *SetInPlaceSite)(
 471        IOleDocumentView *This,
 472        IOleInPlaceSite *pIPSite);
 473
 474    HRESULT (STDMETHODCALLTYPE *GetInPlaceSite)(
 475        IOleDocumentView *This,
 476        IOleInPlaceSite **ppIPSite);
 477
 478    HRESULT (STDMETHODCALLTYPE *GetDocument)(
 479        IOleDocumentView *This,
 480        IUnknown **ppunk);
 481
 482    HRESULT (STDMETHODCALLTYPE *SetRect)(
 483        IOleDocumentView *This,
 484        LPRECT prcView);
 485
 486    HRESULT (STDMETHODCALLTYPE *GetRect)(
 487        IOleDocumentView *This,
 488        LPRECT prcView);
 489
 490    HRESULT (STDMETHODCALLTYPE *SetRectComplex)(
 491        IOleDocumentView *This,
 492        LPRECT prcView,
 493        LPRECT prcHScroll,
 494        LPRECT prcVScroll,
 495        LPRECT prcSizeBox);
 496
 497    HRESULT (STDMETHODCALLTYPE *Show)(
 498        IOleDocumentView *This,
 499        WINBOOL fShow);
 500
 501    HRESULT (STDMETHODCALLTYPE *UIActivate)(
 502        IOleDocumentView *This,
 503        WINBOOL fUIActivate);
 504
 505    HRESULT (STDMETHODCALLTYPE *Open)(
 506        IOleDocumentView *This);
 507
 508    HRESULT (STDMETHODCALLTYPE *CloseView)(
 509        IOleDocumentView *This,
 510        DWORD dwReserved);
 511
 512    HRESULT (STDMETHODCALLTYPE *SaveViewState)(
 513        IOleDocumentView *This,
 514        LPSTREAM pstm);
 515
 516    HRESULT (STDMETHODCALLTYPE *ApplyViewState)(
 517        IOleDocumentView *This,
 518        LPSTREAM pstm);
 519
 520    HRESULT (STDMETHODCALLTYPE *Clone)(
 521        IOleDocumentView *This,
 522        IOleInPlaceSite *pIPSiteNew,
 523        IOleDocumentView **ppViewNew);
 524
 525    END_INTERFACE
 526} IOleDocumentViewVtbl;
 527
 528interface IOleDocumentView {
 529    CONST_VTBL IOleDocumentViewVtbl* lpVtbl;
 530};
 531
 532#ifdef COBJMACROS
 533#ifndef WIDL_C_INLINE_WRAPPERS
 534/*** IUnknown methods ***/
 535#define IOleDocumentView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 536#define IOleDocumentView_AddRef(This) (This)->lpVtbl->AddRef(This)
 537#define IOleDocumentView_Release(This) (This)->lpVtbl->Release(This)
 538/*** IOleDocumentView methods ***/
 539#define IOleDocumentView_SetInPlaceSite(This,pIPSite) (This)->lpVtbl->SetInPlaceSite(This,pIPSite)
 540#define IOleDocumentView_GetInPlaceSite(This,ppIPSite) (This)->lpVtbl->GetInPlaceSite(This,ppIPSite)
 541#define IOleDocumentView_GetDocument(This,ppunk) (This)->lpVtbl->GetDocument(This,ppunk)
 542#define IOleDocumentView_SetRect(This,prcView) (This)->lpVtbl->SetRect(This,prcView)
 543#define IOleDocumentView_GetRect(This,prcView) (This)->lpVtbl->GetRect(This,prcView)
 544#define IOleDocumentView_SetRectComplex(This,prcView,prcHScroll,prcVScroll,prcSizeBox) (This)->lpVtbl->SetRectComplex(This,prcView,prcHScroll,prcVScroll,prcSizeBox)
 545#define IOleDocumentView_Show(This,fShow) (This)->lpVtbl->Show(This,fShow)
 546#define IOleDocumentView_UIActivate(This,fUIActivate) (This)->lpVtbl->UIActivate(This,fUIActivate)
 547#define IOleDocumentView_Open(This) (This)->lpVtbl->Open(This)
 548#define IOleDocumentView_CloseView(This,dwReserved) (This)->lpVtbl->CloseView(This,dwReserved)
 549#define IOleDocumentView_SaveViewState(This,pstm) (This)->lpVtbl->SaveViewState(This,pstm)
 550#define IOleDocumentView_ApplyViewState(This,pstm) (This)->lpVtbl->ApplyViewState(This,pstm)
 551#define IOleDocumentView_Clone(This,pIPSiteNew,ppViewNew) (This)->lpVtbl->Clone(This,pIPSiteNew,ppViewNew)
 552#else
 553/*** IUnknown methods ***/
 554static inline HRESULT IOleDocumentView_QueryInterface(IOleDocumentView* This,REFIID riid,void **ppvObject) {
 555    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 556}
 557static inline ULONG IOleDocumentView_AddRef(IOleDocumentView* This) {
 558    return This->lpVtbl->AddRef(This);
 559}
 560static inline ULONG IOleDocumentView_Release(IOleDocumentView* This) {
 561    return This->lpVtbl->Release(This);
 562}
 563/*** IOleDocumentView methods ***/
 564static inline HRESULT IOleDocumentView_SetInPlaceSite(IOleDocumentView* This,IOleInPlaceSite *pIPSite) {
 565    return This->lpVtbl->SetInPlaceSite(This,pIPSite);
 566}
 567static inline HRESULT IOleDocumentView_GetInPlaceSite(IOleDocumentView* This,IOleInPlaceSite **ppIPSite) {
 568    return This->lpVtbl->GetInPlaceSite(This,ppIPSite);
 569}
 570static inline HRESULT IOleDocumentView_GetDocument(IOleDocumentView* This,IUnknown **ppunk) {
 571    return This->lpVtbl->GetDocument(This,ppunk);
 572}
 573static inline HRESULT IOleDocumentView_SetRect(IOleDocumentView* This,LPRECT prcView) {
 574    return This->lpVtbl->SetRect(This,prcView);
 575}
 576static inline HRESULT IOleDocumentView_GetRect(IOleDocumentView* This,LPRECT prcView) {
 577    return This->lpVtbl->GetRect(This,prcView);
 578}
 579static inline HRESULT IOleDocumentView_SetRectComplex(IOleDocumentView* This,LPRECT prcView,LPRECT prcHScroll,LPRECT prcVScroll,LPRECT prcSizeBox) {
 580    return This->lpVtbl->SetRectComplex(This,prcView,prcHScroll,prcVScroll,prcSizeBox);
 581}
 582static inline HRESULT IOleDocumentView_Show(IOleDocumentView* This,WINBOOL fShow) {
 583    return This->lpVtbl->Show(This,fShow);
 584}
 585static inline HRESULT IOleDocumentView_UIActivate(IOleDocumentView* This,WINBOOL fUIActivate) {
 586    return This->lpVtbl->UIActivate(This,fUIActivate);
 587}
 588static inline HRESULT IOleDocumentView_Open(IOleDocumentView* This) {
 589    return This->lpVtbl->Open(This);
 590}
 591static inline HRESULT IOleDocumentView_CloseView(IOleDocumentView* This,DWORD dwReserved) {
 592    return This->lpVtbl->CloseView(This,dwReserved);
 593}
 594static inline HRESULT IOleDocumentView_SaveViewState(IOleDocumentView* This,LPSTREAM pstm) {
 595    return This->lpVtbl->SaveViewState(This,pstm);
 596}
 597static inline HRESULT IOleDocumentView_ApplyViewState(IOleDocumentView* This,LPSTREAM pstm) {
 598    return This->lpVtbl->ApplyViewState(This,pstm);
 599}
 600static inline HRESULT IOleDocumentView_Clone(IOleDocumentView* This,IOleInPlaceSite *pIPSiteNew,IOleDocumentView **ppViewNew) {
 601    return This->lpVtbl->Clone(This,pIPSiteNew,ppViewNew);
 602}
 603#endif
 604#endif
 605
 606#endif
 607
 608
 609#endif  /* __IOleDocumentView_INTERFACE_DEFINED__ */
 610
 611#endif
 612
 613#ifndef _LPENUMOLEDOCUMENTVIEWS_DEFINED
 614#define _LPENUMOLEDOCUMENTVIEWS_DEFINED
 615/*****************************************************************************
 616 * IEnumOleDocumentViews interface
 617 */
 618#ifndef __IEnumOleDocumentViews_INTERFACE_DEFINED__
 619#define __IEnumOleDocumentViews_INTERFACE_DEFINED__
 620
 621typedef IEnumOleDocumentViews *LPENUMOLEDOCUMENTVIEWS;
 622
 623DEFINE_GUID(IID_IEnumOleDocumentViews, 0xb722bcc8, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
 624#if defined(__cplusplus) && !defined(CINTERFACE)
 625MIDL_INTERFACE("b722bcc8-4e68-101b-a2bc-00aa00404770")
 626IEnumOleDocumentViews : public IUnknown
 627{
 628    virtual HRESULT __stdcall Next(
 629        ULONG cViews,
 630        IOleDocumentView **rgpView,
 631        ULONG *pcFetched) = 0;
 632
 633    virtual HRESULT STDMETHODCALLTYPE Skip(
 634        ULONG cViews) = 0;
 635
 636    virtual HRESULT STDMETHODCALLTYPE Reset(
 637        ) = 0;
 638
 639    virtual HRESULT STDMETHODCALLTYPE Clone(
 640        IEnumOleDocumentViews **ppEnum) = 0;
 641
 642};
 643#ifdef __CRT_UUID_DECL
 644__CRT_UUID_DECL(IEnumOleDocumentViews, 0xb722bcc8, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
 645#endif
 646#else
 647typedef struct IEnumOleDocumentViewsVtbl {
 648    BEGIN_INTERFACE
 649
 650    /*** IUnknown methods ***/
 651    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 652        IEnumOleDocumentViews *This,
 653        REFIID riid,
 654        void **ppvObject);
 655
 656    ULONG (STDMETHODCALLTYPE *AddRef)(
 657        IEnumOleDocumentViews *This);
 658
 659    ULONG (STDMETHODCALLTYPE *Release)(
 660        IEnumOleDocumentViews *This);
 661
 662    /*** IEnumOleDocumentViews methods ***/
 663    HRESULT (__stdcall *Next)(
 664        IEnumOleDocumentViews *This,
 665        ULONG cViews,
 666        IOleDocumentView **rgpView,
 667        ULONG *pcFetched);
 668
 669    HRESULT (STDMETHODCALLTYPE *Skip)(
 670        IEnumOleDocumentViews *This,
 671        ULONG cViews);
 672
 673    HRESULT (STDMETHODCALLTYPE *Reset)(
 674        IEnumOleDocumentViews *This);
 675
 676    HRESULT (STDMETHODCALLTYPE *Clone)(
 677        IEnumOleDocumentViews *This,
 678        IEnumOleDocumentViews **ppEnum);
 679
 680    END_INTERFACE
 681} IEnumOleDocumentViewsVtbl;
 682
 683interface IEnumOleDocumentViews {
 684    CONST_VTBL IEnumOleDocumentViewsVtbl* lpVtbl;
 685};
 686
 687#ifdef COBJMACROS
 688#ifndef WIDL_C_INLINE_WRAPPERS
 689/*** IUnknown methods ***/
 690#define IEnumOleDocumentViews_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 691#define IEnumOleDocumentViews_AddRef(This) (This)->lpVtbl->AddRef(This)
 692#define IEnumOleDocumentViews_Release(This) (This)->lpVtbl->Release(This)
 693/*** IEnumOleDocumentViews methods ***/
 694#define IEnumOleDocumentViews_Next(This,cViews,rgpView,pcFetched) (This)->lpVtbl->Next(This,cViews,rgpView,pcFetched)
 695#define IEnumOleDocumentViews_Skip(This,cViews) (This)->lpVtbl->Skip(This,cViews)
 696#define IEnumOleDocumentViews_Reset(This) (This)->lpVtbl->Reset(This)
 697#define IEnumOleDocumentViews_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
 698#else
 699/*** IUnknown methods ***/
 700static inline HRESULT IEnumOleDocumentViews_QueryInterface(IEnumOleDocumentViews* This,REFIID riid,void **ppvObject) {
 701    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 702}
 703static inline ULONG IEnumOleDocumentViews_AddRef(IEnumOleDocumentViews* This) {
 704    return This->lpVtbl->AddRef(This);
 705}
 706static inline ULONG IEnumOleDocumentViews_Release(IEnumOleDocumentViews* This) {
 707    return This->lpVtbl->Release(This);
 708}
 709/*** IEnumOleDocumentViews methods ***/
 710static inline HRESULT IEnumOleDocumentViews_Next(IEnumOleDocumentViews* This,ULONG cViews,IOleDocumentView **rgpView,ULONG *pcFetched) {
 711    return This->lpVtbl->Next(This,cViews,rgpView,pcFetched);
 712}
 713static inline HRESULT IEnumOleDocumentViews_Skip(IEnumOleDocumentViews* This,ULONG cViews) {
 714    return This->lpVtbl->Skip(This,cViews);
 715}
 716static inline HRESULT IEnumOleDocumentViews_Reset(IEnumOleDocumentViews* This) {
 717    return This->lpVtbl->Reset(This);
 718}
 719static inline HRESULT IEnumOleDocumentViews_Clone(IEnumOleDocumentViews* This,IEnumOleDocumentViews **ppEnum) {
 720    return This->lpVtbl->Clone(This,ppEnum);
 721}
 722#endif
 723#endif
 724
 725#endif
 726
 727HRESULT __stdcall IEnumOleDocumentViews_RemoteNext_Proxy(
 728    IEnumOleDocumentViews* This,
 729    ULONG cViews,
 730    IOleDocumentView **rgpView,
 731    ULONG *pcFetched);
 732void __RPC_STUB IEnumOleDocumentViews_RemoteNext_Stub(
 733    IRpcStubBuffer* This,
 734    IRpcChannelBuffer* pRpcChannelBuffer,
 735    PRPC_MESSAGE pRpcMessage,
 736    DWORD* pdwStubPhase);
 737HRESULT CALLBACK IEnumOleDocumentViews_Next_Proxy(
 738    IEnumOleDocumentViews* This,
 739    ULONG cViews,
 740    IOleDocumentView **rgpView,
 741    ULONG *pcFetched);
 742HRESULT __RPC_STUB IEnumOleDocumentViews_Next_Stub(
 743    IEnumOleDocumentViews* This,
 744    ULONG cViews,
 745    IOleDocumentView **rgpView,
 746    ULONG *pcFetched);
 747
 748#endif  /* __IEnumOleDocumentViews_INTERFACE_DEFINED__ */
 749
 750#endif
 751
 752#ifndef _LPCONTINUECALLBACK_DEFINED
 753#define _LPCONTINUECALLBACK_DEFINED
 754/*****************************************************************************
 755 * IContinueCallback interface
 756 */
 757#ifndef __IContinueCallback_INTERFACE_DEFINED__
 758#define __IContinueCallback_INTERFACE_DEFINED__
 759
 760typedef IContinueCallback *LPCONTINUECALLBACK;
 761
 762DEFINE_GUID(IID_IContinueCallback, 0xb722bcca, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
 763#if defined(__cplusplus) && !defined(CINTERFACE)
 764MIDL_INTERFACE("b722bcca-4e68-101b-a2bc-00aa00404770")
 765IContinueCallback : public IUnknown
 766{
 767    virtual HRESULT STDMETHODCALLTYPE FContinue(
 768        ) = 0;
 769
 770    virtual HRESULT STDMETHODCALLTYPE FContinuePrinting(
 771        LONG nCntPrinted,
 772        LONG nCurPage,
 773        wchar_t *pwszPrintStatus) = 0;
 774
 775};
 776#ifdef __CRT_UUID_DECL
 777__CRT_UUID_DECL(IContinueCallback, 0xb722bcca, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
 778#endif
 779#else
 780typedef struct IContinueCallbackVtbl {
 781    BEGIN_INTERFACE
 782
 783    /*** IUnknown methods ***/
 784    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 785        IContinueCallback *This,
 786        REFIID riid,
 787        void **ppvObject);
 788
 789    ULONG (STDMETHODCALLTYPE *AddRef)(
 790        IContinueCallback *This);
 791
 792    ULONG (STDMETHODCALLTYPE *Release)(
 793        IContinueCallback *This);
 794
 795    /*** IContinueCallback methods ***/
 796    HRESULT (STDMETHODCALLTYPE *FContinue)(
 797        IContinueCallback *This);
 798
 799    HRESULT (STDMETHODCALLTYPE *FContinuePrinting)(
 800        IContinueCallback *This,
 801        LONG nCntPrinted,
 802        LONG nCurPage,
 803        wchar_t *pwszPrintStatus);
 804
 805    END_INTERFACE
 806} IContinueCallbackVtbl;
 807
 808interface IContinueCallback {
 809    CONST_VTBL IContinueCallbackVtbl* lpVtbl;
 810};
 811
 812#ifdef COBJMACROS
 813#ifndef WIDL_C_INLINE_WRAPPERS
 814/*** IUnknown methods ***/
 815#define IContinueCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 816#define IContinueCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
 817#define IContinueCallback_Release(This) (This)->lpVtbl->Release(This)
 818/*** IContinueCallback methods ***/
 819#define IContinueCallback_FContinue(This) (This)->lpVtbl->FContinue(This)
 820#define IContinueCallback_FContinuePrinting(This,nCntPrinted,nCurPage,pwszPrintStatus) (This)->lpVtbl->FContinuePrinting(This,nCntPrinted,nCurPage,pwszPrintStatus)
 821#else
 822/*** IUnknown methods ***/
 823static inline HRESULT IContinueCallback_QueryInterface(IContinueCallback* This,REFIID riid,void **ppvObject) {
 824    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 825}
 826static inline ULONG IContinueCallback_AddRef(IContinueCallback* This) {
 827    return This->lpVtbl->AddRef(This);
 828}
 829static inline ULONG IContinueCallback_Release(IContinueCallback* This) {
 830    return This->lpVtbl->Release(This);
 831}
 832/*** IContinueCallback methods ***/
 833static inline HRESULT IContinueCallback_FContinue(IContinueCallback* This) {
 834    return This->lpVtbl->FContinue(This);
 835}
 836static inline HRESULT IContinueCallback_FContinuePrinting(IContinueCallback* This,LONG nCntPrinted,LONG nCurPage,wchar_t *pwszPrintStatus) {
 837    return This->lpVtbl->FContinuePrinting(This,nCntPrinted,nCurPage,pwszPrintStatus);
 838}
 839#endif
 840#endif
 841
 842#endif
 843
 844
 845#endif  /* __IContinueCallback_INTERFACE_DEFINED__ */
 846
 847#endif
 848
 849#ifndef _LPPRINT_DEFINED
 850#define _LPPRINT_DEFINED
 851/*****************************************************************************
 852 * IPrint interface
 853 */
 854#ifndef __IPrint_INTERFACE_DEFINED__
 855#define __IPrint_INTERFACE_DEFINED__
 856
 857typedef IPrint *LPPRINT;
 858
 859typedef enum __WIDL_docobj_generated_name_00000021 {
 860    PRINTFLAG_MAYBOTHERUSER = 1,
 861    PRINTFLAG_PROMPTUSER = 2,
 862    PRINTFLAG_USERMAYCHANGEPRINTER = 4,
 863    PRINTFLAG_RECOMPOSETODEVICE = 8,
 864    PRINTFLAG_DONTACTUALLYPRINT = 16,
 865    PRINTFLAG_FORCEPROPERTIES = 32,
 866    PRINTFLAG_PRINTTOFILE = 64
 867} PRINTFLAG;
 868
 869typedef struct tagPAGERANGE {
 870    LONG nFromPage;
 871    LONG nToPage;
 872} PAGERANGE;
 873
 874typedef struct tagPAGESET {
 875    ULONG cbStruct;
 876    WINBOOL fOddPages;
 877    WINBOOL fEvenPages;
 878    ULONG cPageRange;
 879    PAGERANGE rgPages[1];
 880} PAGESET;
 881
 882#define PAGESET_TOLASTPAGE   ((WORD)(-1L))
 883
 884DEFINE_GUID(IID_IPrint, 0xb722bcc9, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
 885#if defined(__cplusplus) && !defined(CINTERFACE)
 886MIDL_INTERFACE("b722bcc9-4e68-101b-a2bc-00aa00404770")
 887IPrint : public IUnknown
 888{
 889    virtual HRESULT STDMETHODCALLTYPE SetInitialPageNum(
 890        LONG nFirstPage) = 0;
 891
 892    virtual HRESULT STDMETHODCALLTYPE GetPageInfo(
 893        LONG *pnFirstPage,
 894        LONG *pcPages) = 0;
 895
 896    virtual HRESULT __stdcall Print(
 897        DWORD grfFlags,
 898        DVTARGETDEVICE **pptd,
 899        PAGESET **ppPageSet,
 900        STGMEDIUM *pstgmOptions,
 901        IContinueCallback *pcallback,
 902        LONG nFirstPage,
 903        LONG *pcPagesPrinted,
 904        LONG *pnLastPage) = 0;
 905
 906};
 907#ifdef __CRT_UUID_DECL
 908__CRT_UUID_DECL(IPrint, 0xb722bcc9, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
 909#endif
 910#else
 911typedef struct IPrintVtbl {
 912    BEGIN_INTERFACE
 913
 914    /*** IUnknown methods ***/
 915    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 916        IPrint *This,
 917        REFIID riid,
 918        void **ppvObject);
 919
 920    ULONG (STDMETHODCALLTYPE *AddRef)(
 921        IPrint *This);
 922
 923    ULONG (STDMETHODCALLTYPE *Release)(
 924        IPrint *This);
 925
 926    /*** IPrint methods ***/
 927    HRESULT (STDMETHODCALLTYPE *SetInitialPageNum)(
 928        IPrint *This,
 929        LONG nFirstPage);
 930
 931    HRESULT (STDMETHODCALLTYPE *GetPageInfo)(
 932        IPrint *This,
 933        LONG *pnFirstPage,
 934        LONG *pcPages);
 935
 936    HRESULT (__stdcall *Print)(
 937        IPrint *This,
 938        DWORD grfFlags,
 939        DVTARGETDEVICE **pptd,
 940        PAGESET **ppPageSet,
 941        STGMEDIUM *pstgmOptions,
 942        IContinueCallback *pcallback,
 943        LONG nFirstPage,
 944        LONG *pcPagesPrinted,
 945        LONG *pnLastPage);
 946
 947    END_INTERFACE
 948} IPrintVtbl;
 949
 950interface IPrint {
 951    CONST_VTBL IPrintVtbl* lpVtbl;
 952};
 953
 954#ifdef COBJMACROS
 955#ifndef WIDL_C_INLINE_WRAPPERS
 956/*** IUnknown methods ***/
 957#define IPrint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 958#define IPrint_AddRef(This) (This)->lpVtbl->AddRef(This)
 959#define IPrint_Release(This) (This)->lpVtbl->Release(This)
 960/*** IPrint methods ***/
 961#define IPrint_SetInitialPageNum(This,nFirstPage) (This)->lpVtbl->SetInitialPageNum(This,nFirstPage)
 962#define IPrint_GetPageInfo(This,pnFirstPage,pcPages) (This)->lpVtbl->GetPageInfo(This,pnFirstPage,pcPages)
 963#define IPrint_Print(This,grfFlags,pptd,ppPageSet,pstgmOptions,pcallback,nFirstPage,pcPagesPrinted,pnLastPage) (This)->lpVtbl->Print(This,grfFlags,pptd,ppPageSet,pstgmOptions,pcallback,nFirstPage,pcPagesPrinted,pnLastPage)
 964#else
 965/*** IUnknown methods ***/
 966static inline HRESULT IPrint_QueryInterface(IPrint* This,REFIID riid,void **ppvObject) {
 967    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 968}
 969static inline ULONG IPrint_AddRef(IPrint* This) {
 970    return This->lpVtbl->AddRef(This);
 971}
 972static inline ULONG IPrint_Release(IPrint* This) {
 973    return This->lpVtbl->Release(This);
 974}
 975/*** IPrint methods ***/
 976static inline HRESULT IPrint_SetInitialPageNum(IPrint* This,LONG nFirstPage) {
 977    return This->lpVtbl->SetInitialPageNum(This,nFirstPage);
 978}
 979static inline HRESULT IPrint_GetPageInfo(IPrint* This,LONG *pnFirstPage,LONG *pcPages) {
 980    return This->lpVtbl->GetPageInfo(This,pnFirstPage,pcPages);
 981}
 982static inline HRESULT IPrint_Print(IPrint* This,DWORD grfFlags,DVTARGETDEVICE **pptd,PAGESET **ppPageSet,STGMEDIUM *pstgmOptions,IContinueCallback *pcallback,LONG nFirstPage,LONG *pcPagesPrinted,LONG *pnLastPage) {
 983    return This->lpVtbl->Print(This,grfFlags,pptd,ppPageSet,pstgmOptions,pcallback,nFirstPage,pcPagesPrinted,pnLastPage);
 984}
 985#endif
 986#endif
 987
 988#endif
 989
 990HRESULT __stdcall IPrint_RemotePrint_Proxy(
 991    IPrint* This,
 992    DWORD grfFlags,
 993    DVTARGETDEVICE **pptd,
 994    PAGESET **pppageset,
 995    RemSTGMEDIUM *pstgmOptions,
 996    IContinueCallback *pcallback,
 997    LONG nFirstPage,
 998    LONG *pcPagesPrinted,
 999    LONG *pnLastPage);
1000void __RPC_STUB IPrint_RemotePrint_Stub(
1001    IRpcStubBuffer* This,
1002    IRpcChannelBuffer* pRpcChannelBuffer,
1003    PRPC_MESSAGE pRpcMessage,
1004    DWORD* pdwStubPhase);
1005HRESULT CALLBACK IPrint_Print_Proxy(
1006    IPrint* This,
1007    DWORD grfFlags,
1008    DVTARGETDEVICE **pptd,
1009    PAGESET **ppPageSet,
1010    STGMEDIUM *pstgmOptions,
1011    IContinueCallback *pcallback,
1012    LONG nFirstPage,
1013    LONG *pcPagesPrinted,
1014    LONG *pnLastPage);
1015HRESULT __RPC_STUB IPrint_Print_Stub(
1016    IPrint* This,
1017    DWORD grfFlags,
1018    DVTARGETDEVICE **pptd,
1019    PAGESET **pppageset,
1020    RemSTGMEDIUM *pstgmOptions,
1021    IContinueCallback *pcallback,
1022    LONG nFirstPage,
1023    LONG *pcPagesPrinted,
1024    LONG *pnLastPage);
1025
1026#endif  /* __IPrint_INTERFACE_DEFINED__ */
1027
1028#endif
1029
1030#ifndef _LPOLECOMMANDTARGET_DEFINED
1031#define _LPOLECOMMANDTARGET_DEFINED
1032/*****************************************************************************
1033 * IOleCommandTarget interface
1034 */
1035#ifndef __IOleCommandTarget_INTERFACE_DEFINED__
1036#define __IOleCommandTarget_INTERFACE_DEFINED__
1037
1038typedef IOleCommandTarget *LPOLECOMMANDTARGET;
1039
1040typedef enum OLECMDF {
1041    OLECMDF_SUPPORTED = 0x1,
1042    OLECMDF_ENABLED = 0x2,
1043    OLECMDF_LATCHED = 0x4,
1044    OLECMDF_NINCHED = 0x8,
1045    OLECMDF_INVISIBLE = 0x10,
1046    OLECMDF_DEFHIDEONCTXTMENU = 0x20
1047} OLECMDF;
1048
1049typedef struct _tagOLECMD {
1050    ULONG cmdID;
1051    DWORD cmdf;
1052} OLECMD;
1053
1054typedef struct _tagOLECMDTEXT {
1055    DWORD cmdtextf;
1056    ULONG cwActual;
1057    ULONG cwBuf;
1058    wchar_t rgwz[1];
1059} OLECMDTEXT;
1060
1061typedef enum OLECMDTEXTF {
1062    OLECMDTEXTF_NONE = 0,
1063    OLECMDTEXTF_NAME = 1,
1064    OLECMDTEXTF_STATUS = 2
1065} OLECMDTEXTF;
1066
1067typedef enum OLECMDEXECOPT {
1068    OLECMDEXECOPT_DODEFAULT = 0,
1069    OLECMDEXECOPT_PROMPTUSER = 1,
1070    OLECMDEXECOPT_DONTPROMPTUSER = 2,
1071    OLECMDEXECOPT_SHOWHELP = 3
1072} OLECMDEXECOPT;
1073
1074typedef enum OLECMDID {
1075    OLECMDID_OPEN = 1,
1076    OLECMDID_NEW = 2,
1077    OLECMDID_SAVE = 3,
1078    OLECMDID_SAVEAS = 4,
1079    OLECMDID_SAVECOPYAS = 5,
1080    OLECMDID_PRINT = 6,
1081    OLECMDID_PRINTPREVIEW = 7,
1082    OLECMDID_PAGESETUP = 8,
1083    OLECMDID_SPELL = 9,
1084    OLECMDID_PROPERTIES = 10,
1085    OLECMDID_CUT = 11,
1086    OLECMDID_COPY = 12,
1087    OLECMDID_PASTE = 13,
1088    OLECMDID_PASTESPECIAL = 14,
1089    OLECMDID_UNDO = 15,
1090    OLECMDID_REDO = 16,
1091    OLECMDID_SELECTALL = 17,
1092    OLECMDID_CLEARSELECTION = 18,
1093    OLECMDID_ZOOM = 19,
1094    OLECMDID_GETZOOMRANGE = 20,
1095    OLECMDID_UPDATECOMMANDS = 21,
1096    OLECMDID_REFRESH = 22,
1097    OLECMDID_STOP = 23,
1098    OLECMDID_HIDETOOLBARS = 24,
1099    OLECMDID_SETPROGRESSMAX = 25,
1100    OLECMDID_SETPROGRESSPOS = 26,
1101    OLECMDID_SETPROGRESSTEXT = 27,
1102    OLECMDID_SETTITLE = 28,
1103    OLECMDID_SETDOWNLOADSTATE = 29,
1104    OLECMDID_STOPDOWNLOAD = 30,
1105    OLECMDID_ONTOOLBARACTIVATED = 31,
1106    OLECMDID_FIND = 32,
1107    OLECMDID_DELETE = 33,
1108    OLECMDID_HTTPEQUIV = 34,
1109    OLECMDID_HTTPEQUIV_DONE = 35,
1110    OLECMDID_ENABLE_INTERACTION = 36,
1111    OLECMDID_ONUNLOAD = 37,
1112    OLECMDID_PROPERTYBAG2 = 38,
1113    OLECMDID_PREREFRESH = 39,
1114    OLECMDID_SHOWSCRIPTERROR = 40,
1115    OLECMDID_SHOWMESSAGE = 41,
1116    OLECMDID_SHOWFIND = 42,
1117    OLECMDID_SHOWPAGESETUP = 43,
1118    OLECMDID_SHOWPRINT = 44,
1119    OLECMDID_CLOSE = 45,
1120    OLECMDID_ALLOWUILESSSAVEAS = 46,
1121    OLECMDID_DONTDOWNLOADCSS = 47,
1122    OLECMDID_UPDATEPAGESTATUS = 48,
1123    OLECMDID_PRINT2 = 49,
1124    OLECMDID_PRINTPREVIEW2 = 50,
1125    OLECMDID_SETPRINTTEMPLATE = 51,
1126    OLECMDID_GETPRINTTEMPLATE = 52,
1127    OLECMDID_PAGEACTIONBLOCKED = 55,
1128    OLECMDID_PAGEACTIONUIQUERY = 56,
1129    OLECMDID_FOCUSVIEWCONTROLS = 57,
1130    OLECMDID_FOCUSVIEWCONTROLSQUERY = 58,
1131    OLECMDID_SHOWPAGEACTIONMENU = 59,
1132    OLECMDID_ADDTRAVELENTRY = 60,
1133    OLECMDID_UPDATETRAVELENTRY = 61,
1134    OLECMDID_UPDATEBACKFORWARDSTATE = 62,
1135    OLECMDID_OPTICAL_ZOOM = 63,
1136    OLECMDID_OPTICAL_GETZOOMRANGE = 64,
1137    OLECMDID_WINDOWSTATECHANGED = 65,
1138    OLECMDID_ACTIVEXINSTALLSCOPE = 66,
1139    OLECMDID_UPDATETRAVELENTRY_DATARECOVERY = 67,
1140    OLECMDID_SHOWTASKDLG = 68,
1141    OLECMDID_POPSTATEEVENT = 69,
1142    OLECMDID_VIEWPORT_MODE = 70,
1143    OLECMDID_LAYOUT_VIEWPORT_WIDTH = 71,
1144    OLECMDID_VISUAL_VIEWPORT_EXCLUDE_BOTTOM = 72,
1145    OLECMDID_USER_OPTICAL_ZOOM = 73,
1146    OLECMDID_PAGEAVAILABLE = 74,
1147    OLECMDID_GETUSERSCALABLE = 75,
1148    OLECMDID_UPDATE_CARET = 76,
1149    OLECMDID_ENABLE_VISIBILITY = 77,
1150    OLECMDID_MEDIA_PLAYBACK = 78
1151} OLECMDID;
1152
1153typedef enum MEDIAPLAYBACK_STATE {
1154    MEDIAPLAYBACK_RESUME = 0,
1155    MEDIAPLAYBACK_PAUSE = 1
1156} MEDIAPLAYBACK_STATE;
1157
1158#define OLECMDERR_E_FIRST (OLE_E_LAST + 1)
1159#define OLECMDERR_E_NOTSUPPORTED (OLECMDERR_E_FIRST)
1160#define OLECMDERR_E_DISABLED (OLECMDERR_E_FIRST + 1)
1161#define OLECMDERR_E_NOHELP (OLECMDERR_E_FIRST + 2)
1162#define OLECMDERR_E_CANCELED (OLECMDERR_E_FIRST + 3)
1163#define OLECMDERR_E_UNKNOWNGROUP (OLECMDERR_E_FIRST + 4)
1164
1165#define MSOCMDERR_E_FIRST OLECMDERR_E_FIRST
1166#define MSOCMDERR_E_NOTSUPPORTED OLECMDERR_E_NOTSUPPORTED
1167#define MSOCMDERR_E_DISABLED OLECMDERR_E_DISABLED
1168#define MSOCMDERR_E_NOHELP OLECMDERR_E_NOHELP
1169#define MSOCMDERR_E_CANCELED OLECMDERR_E_CANCELED
1170#define MSOCMDERR_E_UNKNOWNGROUP OLECMDERR_E_UNKNOWNGROUP
1171
1172#define OLECMD_TASKDLGID_ONBEFOREUNLOAD            1
1173
1174#if NTDDI_VERSION >= NTDDI_WINXPSP2
1175#define OLECMDARGINDEX_SHOWPAGEACTIONMENU_HWND 0
1176#define OLECMDARGINDEX_SHOWPAGEACTIONMENU_X 1
1177#define OLECMDARGINDEX_SHOWPAGEACTIONMENU_Y 2
1178#define OLECMDARGINDEX_ACTIVEXINSTALL_PUBLISHER 0
1179#define OLECMDARGINDEX_ACTIVEXINSTALL_DISPLAYNAME 1
1180#define OLECMDARGINDEX_ACTIVEXINSTALL_CLSID 2
1181#define OLECMDARGINDEX_ACTIVEXINSTALL_INSTALLSCOPE 3
1182#define OLECMDARGINDEX_ACTIVEXINSTALL_SOURCEURL 4
1183
1184#define INSTALL_SCOPE_INVALID 0
1185#define INSTALL_SCOPE_MACHINE 1
1186#define INSTALL_SCOPE_USER 2
1187
1188typedef enum IGNOREMIME {
1189    IGNOREMIME_PROMPT = 0x1,
1190    IGNOREMIME_TEXT = 0x2
1191} IGNOREMIME;
1192
1193typedef enum WPCSETTING {
1194    WPCSETTING_LOGGING_ENABLED = 0x1,
1195    WPCSETTING_FILEDOWNLOAD_BLOCKED = 0x2
1196} WPCSETTING;
1197#endif
1198
1199DEFINE_GUID(IID_IOleCommandTarget, 0xb722bccb, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
1200#if defined(__cplusplus) && !defined(CINTERFACE)
1201MIDL_INTERFACE("b722bccb-4e68-101b-a2bc-00aa00404770")
1202IOleCommandTarget : public IUnknown
1203{
1204    virtual HRESULT STDMETHODCALLTYPE QueryStatus(
1205        const GUID *pguidCmdGroup,
1206        ULONG cCmds,
1207        OLECMD prgCmds[],
1208        OLECMDTEXT *pCmdText) = 0;
1209
1210    virtual HRESULT STDMETHODCALLTYPE Exec(
1211        const GUID *pguidCmdGroup,
1212        DWORD nCmdID,
1213        DWORD nCmdexecopt,
1214        VARIANT *pvaIn,
1215        VARIANT *pvaOut) = 0;
1216
1217};
1218#ifdef __CRT_UUID_DECL
1219__CRT_UUID_DECL(IOleCommandTarget, 0xb722bccb, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70)
1220#endif
1221#else
1222typedef struct IOleCommandTargetVtbl {
1223    BEGIN_INTERFACE
1224
1225    /*** IUnknown methods ***/
1226    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1227        IOleCommandTarget *This,
1228        REFIID riid,
1229        void **ppvObject);
1230
1231    ULONG (STDMETHODCALLTYPE *AddRef)(
1232        IOleCommandTarget *This);
1233
1234    ULONG (STDMETHODCALLTYPE *Release)(
1235        IOleCommandTarget *This);
1236
1237    /*** IOleCommandTarget methods ***/
1238    HRESULT (STDMETHODCALLTYPE *QueryStatus)(
1239        IOleCommandTarget *This,
1240        const GUID *pguidCmdGroup,
1241        ULONG cCmds,
1242        OLECMD prgCmds[],
1243        OLECMDTEXT *pCmdText);
1244
1245    HRESULT (STDMETHODCALLTYPE *Exec)(
1246        IOleCommandTarget *This,
1247        const GUID *pguidCmdGroup,
1248        DWORD nCmdID,
1249        DWORD nCmdexecopt,
1250        VARIANT *pvaIn,
1251        VARIANT *pvaOut);
1252
1253    END_INTERFACE
1254} IOleCommandTargetVtbl;
1255
1256interface IOleCommandTarget {
1257    CONST_VTBL IOleCommandTargetVtbl* lpVtbl;
1258};
1259
1260#ifdef COBJMACROS
1261#ifndef WIDL_C_INLINE_WRAPPERS
1262/*** IUnknown methods ***/
1263#define IOleCommandTarget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1264#define IOleCommandTarget_AddRef(This) (This)->lpVtbl->AddRef(This)
1265#define IOleCommandTarget_Release(This) (This)->lpVtbl->Release(This)
1266/*** IOleCommandTarget methods ***/
1267#define IOleCommandTarget_QueryStatus(This,pguidCmdGroup,cCmds,prgCmds,pCmdText) (This)->lpVtbl->QueryStatus(This,pguidCmdGroup,cCmds,prgCmds,pCmdText)
1268#define IOleCommandTarget_Exec(This,pguidCmdGroup,nCmdID,nCmdexecopt,pvaIn,pvaOut) (This)->lpVtbl->Exec(This,pguidCmdGroup,nCmdID,nCmdexecopt,pvaIn,pvaOut)
1269#else
1270/*** IUnknown methods ***/
1271static inline HRESULT IOleCommandTarget_QueryInterface(IOleCommandTarget* This,REFIID riid,void **ppvObject) {
1272    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1273}
1274static inline ULONG IOleCommandTarget_AddRef(IOleCommandTarget* This) {
1275    return This->lpVtbl->AddRef(This);
1276}
1277static inline ULONG IOleCommandTarget_Release(IOleCommandTarget* This) {
1278    return This->lpVtbl->Release(This);
1279}
1280/*** IOleCommandTarget methods ***/
1281static inline HRESULT IOleCommandTarget_QueryStatus(IOleCommandTarget* This,const GUID *pguidCmdGroup,ULONG cCmds,OLECMD prgCmds[],OLECMDTEXT *pCmdText) {
1282    return This->lpVtbl->QueryStatus(This,pguidCmdGroup,cCmds,prgCmds,pCmdText);
1283}
1284static inline HRESULT IOleCommandTarget_Exec(IOleCommandTarget* This,const GUID *pguidCmdGroup,DWORD nCmdID,DWORD nCmdexecopt,VARIANT *pvaIn,VARIANT *pvaOut) {
1285    return This->lpVtbl->Exec(This,pguidCmdGroup,nCmdID,nCmdexecopt,pvaIn,pvaOut);
1286}
1287#endif
1288#endif
1289
1290#endif
1291
1292
1293#endif  /* __IOleCommandTarget_INTERFACE_DEFINED__ */
1294
1295#endif
1296typedef enum {
1297  OLECMDIDF_REFRESH_NORMAL = 0,
1298  OLECMDIDF_REFRESH_IFEXPIRED = 1,
1299  OLECMDIDF_REFRESH_CONTINUE = 2,
1300  OLECMDIDF_REFRESH_COMPLETELY = 3,
1301  OLECMDIDF_REFRESH_NO_CACHE = 4,
1302  OLECMDIDF_REFRESH_RELOAD = 5,
1303  OLECMDIDF_REFRESH_LEVELMASK = 0x00FF,
1304  OLECMDIDF_REFRESH_CLEARUSERINPUT = 0x1000,
1305#if NTDDI_VERSION >= NTDDI_WINXPSP2
1306  OLECMDIDF_REFRESH_PROMPTIFOFFLINE = 0x2000,
1307  OLECMDIDF_REFRESH_THROUGHSCRIPT = 0x4000,
1308  OLECMDIDF_REFRESH_SKIPBEFOREUNLOADEVENT = 0x8000,
1309  OLECMDIDF_REFRESH_PAGEACTION_ACTIVEXINSTALL = 0x00010000,
1310  OLECMDIDF_REFRESH_PAGEACTION_FILEDOWNLOAD = 0x00020000,
1311  OLECMDIDF_REFRESH_PAGEACTION_LOCALMACHINE = 0x00040000,
1312  OLECMDIDF_REFRESH_PAGEACTION_POPUPWINDOW = 0x00080000,
1313  OLECMDIDF_REFRESH_PAGEACTION_PROTLOCKDOWNLOCALMACHINE = 0x00100000,
1314  OLECMDIDF_REFRESH_PAGEACTION_PROTLOCKDOWNTRUSTED = 0x00200000,
1315  OLECMDIDF_REFRESH_PAGEACTION_PROTLOCKDOWNINTRANET = 0x00400000,
1316  OLECMDIDF_REFRESH_PAGEACTION_PROTLOCKDOWNINTERNET = 0x00800000,
1317  OLECMDIDF_REFRESH_PAGEACTION_PROTLOCKDOWNRESTRICTED = 0x01000000,
1318#else
1319OLECMDIDF_REFRESH_PROMPTIFOFFLINE = 0x2000,
1320OLECMDIDF_REFRESH_THROUGHSCRIPT = 0x4000,
1321#endif
1322  OLECMDIDF_REFRESH_PAGEACTION_MIXEDCONTENT = 0x02000000,
1323  OLECMDIDF_REFRESH_PAGEACTION_INVALID_CERT = 0x04000000
1324} OLECMDID_REFRESHFLAG;
1325
1326typedef enum {
1327  OLECMDIDF_PAGEACTION_FILEDOWNLOAD = 0x00000001,
1328  OLECMDIDF_PAGEACTION_ACTIVEXINSTALL = 0x00000002,
1329  OLECMDIDF_PAGEACTION_ACTIVEXTRUSTFAIL = 0x00000004,
1330  OLECMDIDF_PAGEACTION_ACTIVEXUSERDISABLE = 0x00000008,
1331  OLECMDIDF_PAGEACTION_ACTIVEXDISALLOW = 0x00000010,
1332  OLECMDIDF_PAGEACTION_ACTIVEXUNSAFE = 0x00000020,
1333  OLECMDIDF_PAGEACTION_POPUPWINDOW = 0x00000040,
1334  OLECMDIDF_PAGEACTION_LOCALMACHINE = 0x00000080,
1335  OLECMDIDF_PAGEACTION_MIMETEXTPLAIN = 0x00000100,
1336  OLECMDIDF_PAGEACTION_SCRIPTNAVIGATE = 0x00000200,
1337  OLECMDIDF_PAGEACTION_SCRIPTNAVIGATE_ACTIVEXINSTALL = 0x00000200,
1338  OLECMDIDF_PAGEACTION_PROTLOCKDOWNLOCALMACHINE = 0x00000400,
1339  OLECMDIDF_PAGEACTION_PROTLOCKDOWNTRUSTED = 0x00000800,
1340  OLECMDIDF_PAGEACTION_PROTLOCKDOWNINTRANET = 0x00001000,
1341  OLECMDIDF_PAGEACTION_PROTLOCKDOWNINTERNET = 0x00002000,
1342  OLECMDIDF_PAGEACTION_PROTLOCKDOWNRESTRICTED = 0x00004000,
1343  OLECMDIDF_PAGEACTION_PROTLOCKDOWNDENY = 0x00008000,
1344  OLECMDIDF_PAGEACTION_POPUPALLOWED = 0x00010000,
1345  OLECMDIDF_PAGEACTION_SCRIPTPROMPT = 0x00020000,
1346  OLECMDIDF_PAGEACTION_ACTIVEXUSERAPPROVAL = 0x00040000,
1347  OLECMDIDF_PAGEACTION_MIXEDCONTENT = 0x00080000,
1348  OLECMDIDF_PAGEACTION_INVALID_CERT = 0x00100000,
1349  OLECMDIDF_PAGEACTION_INTRANETZONEREQUEST = 0x00200000,
1350  OLECMDIDF_PAGEACTION_XSSFILTERED = 0x00400000,
1351  OLECMDIDF_PAGEACTION_SPOOFABLEIDNHOST = 0x00800000,
1352  OLECMDIDF_PAGEACTION_ACTIVEX_EPM_INCOMPATIBLE = 0x01000000,
1353  OLECMDIDF_PAGEACTION_SCRIPTNAVIGATE_ACTIVEXUSERAPPROVAL = 0x02000000,
1354  OLECMDIDF_PAGEACTION_WPCBLOCKED = 0x04000000,
1355  OLECMDIDF_PAGEACTION_WPCBLOCKED_ACTIVEX = 0x08000000,
1356  OLECMDIDF_PAGEACTION_EXTENSION_COMPAT_BLOCKED = 0x10000000,
1357  OLECMDIDF_PAGEACTION_NORESETACTIVEX = 0x20000000,
1358  OLECMDIDF_PAGEACTION_GENERIC_STATE = 0x40000000,
1359  OLECMDIDF_PAGEACTION_RESET = (int) 0x80000000
1360} OLECMDID_PAGEACTIONFLAG;
1361
1362typedef enum {
1363  OLECMDIDF_BROWSERSTATE_EXTENSIONSOFF = 0x00000001,
1364  OLECMDIDF_BROWSERSTATE_IESECURITY = 0x00000002,
1365  OLECMDIDF_BROWSERSTATE_PROTECTEDMODE_OFF = 0x00000004,
1366  OLECMDIDF_BROWSERSTATE_RESET = 0x00000008,
1367  OLECMDIDF_BROWSERSTATE_REQUIRESACTIVEX = 0x00000010,
1368} OLECMDID_BROWSERSTATEFLAG;
1369
1370typedef enum {
1371  OLECMDIDF_OPTICAL_ZOOM_NOPERSIST = 0x00000001,
1372  OLECMDIDF_OPTICAL_ZOOM_NOLAYOUT = 0x00000010
1373} OLECMDID_OPTICAL_ZOOMFLAG;
1374
1375typedef enum {
1376  PAGEACTION_UI_DEFAULT = 0,
1377  PAGEACTION_UI_MODAL = 1,
1378  PAGEACTION_UI_MODELESS = 2,
1379  PAGEACTION_UI_SILENT = 3
1380} PAGEACTION_UI;
1381
1382typedef enum {
1383  OLECMDIDF_WINDOWSTATE_USERVISIBLE = 0x00000001,
1384  OLECMDIDF_WINDOWSTATE_ENABLED = 0x00000002,
1385  OLECMDIDF_WINDOWSTATE_USERVISIBLE_VALID = 0x00010000,
1386  OLECMDIDF_WINDOWSTATE_ENABLED_VALID = 0x00020000
1387} OLECMDID_WINDOWSTATE_FLAG;
1388
1389typedef enum {
1390  OLECMDIDF_VIEWPORTMODE_FIXED_LAYOUT_WIDTH = 0x00000001,
1391  OLECMDIDF_VIEWPORTMODE_EXCLUDE_VISUAL_BOTTOM = 0x00000002,
1392  OLECMDIDF_VIEWPORTMODE_FIXED_LAYOUT_WIDTH_VALID = 0x00010000,
1393  OLECMDIDF_VIEWPORTMODE_EXCLUDE_VISUAL_BOTTOM_VALID = 0x00020000
1394} OLECMDID_VIEWPORT_MODE_FLAG;
1395
1396#define IMsoDocument IOleDocument
1397#define IMsoDocumentSite IOleDocumentSite
1398#define IMsoView IOleDocumentView
1399#define IEnumMsoView IEnumOleDocumentViews
1400#define IMsoCommandTarget IOleCommandTarget
1401#define LPMSODOCUMENT LPOLEDOCUMENT
1402#define LPMSODOCUMENTSITE LPOLEDOCUMENTSITE
1403#define LPMSOVIEW LPOLEDOCUMENTVIEW
1404#define LPENUMMSOVIEW LPENUMOLEDOCUMENTVIEWS
1405#define LPMSOCOMMANDTARGET LPOLECOMMANDTARGET
1406#define MSOCMD OLECMD
1407#define MSOCMDTEXT OLECMDTEXT
1408#define IID_IMsoDocument IID_IOleDocument
1409#define IID_IMsoDocumentSite IID_IOleDocumentSite
1410#define IID_IMsoView IID_IOleDocumentView
1411#define IID_IEnumMsoView IID_IEnumOleDocumentViews
1412#define IID_IMsoCommandTarget IID_IOleCommandTarget
1413#define MSOCMDF_SUPPORTED OLECMDF_SUPPORTED
1414#define MSOCMDF_ENABLED OLECMDF_ENABLED
1415#define MSOCMDF_LATCHED OLECMDF_LATCHED
1416#define MSOCMDF_NINCHED OLECMDF_NINCHED
1417#define MSOCMDTEXTF_NONE OLECMDTEXTF_NONE
1418#define MSOCMDTEXTF_NAME OLECMDTEXTF_NAME
1419#define MSOCMDTEXTF_STATUS OLECMDTEXTF_STATUS
1420#define MSOCMDEXECOPT_DODEFAULT OLECMDEXECOPT_DODEFAULT
1421#define MSOCMDEXECOPT_PROMPTUSER OLECMDEXECOPT_PROMPTUSER
1422#define MSOCMDEXECOPT_DONTPROMPTUSER OLECMDEXECOPT_DONTPROMPTUSER
1423#define MSOCMDEXECOPT_SHOWHELP OLECMDEXECOPT_SHOWHELP
1424#define MSOCMDID_OPEN OLECMDID_OPEN
1425#define MSOCMDID_NEW OLECMDID_NEW
1426#define MSOCMDID_SAVE OLECMDID_SAVE
1427#define MSOCMDID_SAVEAS OLECMDID_SAVEAS
1428#define MSOCMDID_SAVECOPYAS OLECMDID_SAVECOPYAS
1429#define MSOCMDID_PRINT OLECMDID_PRINT
1430#define MSOCMDID_PRINTPREVIEW OLECMDID_PRINTPREVIEW
1431#define MSOCMDID_PAGESETUP OLECMDID_PAGESETUP
1432#define MSOCMDID_SPELL OLECMDID_SPELL
1433#define MSOCMDID_PROPERTIES OLECMDID_PROPERTIES
1434#define MSOCMDID_CUT OLECMDID_CUT
1435#define MSOCMDID_COPY OLECMDID_COPY
1436#define MSOCMDID_PASTE OLECMDID_PASTE
1437#define MSOCMDID_PASTESPECIAL OLECMDID_PASTESPECIAL
1438#define MSOCMDID_UNDO OLECMDID_UNDO
1439#define MSOCMDID_REDO OLECMDID_REDO
1440#define MSOCMDID_SELECTALL OLECMDID_SELECTALL
1441#define MSOCMDID_CLEARSELECTION OLECMDID_CLEARSELECTION
1442#define MSOCMDID_ZOOM OLECMDID_ZOOM
1443#define MSOCMDID_GETZOOMRANGE OLECMDID_GETZOOMRANGE
1444
1445EXTERN_C const GUID SID_SContainerDispatch;
1446
1447/*****************************************************************************
1448 * IZoomEvents interface
1449 */
1450#ifndef __IZoomEvents_INTERFACE_DEFINED__
1451#define __IZoomEvents_INTERFACE_DEFINED__
1452
1453DEFINE_GUID(IID_IZoomEvents, 0x41b68150, 0x904c, 0x4e17, 0xa0,0xba, 0xa4,0x38,0x18,0x2e,0x35,0x9d);
1454#if defined(__cplusplus) && !defined(CINTERFACE)
1455MIDL_INTERFACE("41b68150-904c-4e17-a0ba-a438182e359d")
1456IZoomEvents : public IUnknown
1457{
1458    virtual HRESULT STDMETHODCALLTYPE OnZoomPercentChanged(
1459        ULONG ulZoomPercent) = 0;
1460
1461};
1462#ifdef __CRT_UUID_DECL
1463__CRT_UUID_DECL(IZoomEvents, 0x41b68150, 0x904c, 0x4e17, 0xa0,0xba, 0xa4,0x38,0x18,0x2e,0x35,0x9d)
1464#endif
1465#else
1466typedef struct IZoomEventsVtbl {
1467    BEGIN_INTERFACE
1468
1469    /*** IUnknown methods ***/
1470    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1471        IZoomEvents *This,
1472        REFIID riid,
1473        void **ppvObject);
1474
1475    ULONG (STDMETHODCALLTYPE *AddRef)(
1476        IZoomEvents *This);
1477
1478    ULONG (STDMETHODCALLTYPE *Release)(
1479        IZoomEvents *This);
1480
1481    /*** IZoomEvents methods ***/
1482    HRESULT (STDMETHODCALLTYPE *OnZoomPercentChanged)(
1483        IZoomEvents *This,
1484        ULONG ulZoomPercent);
1485
1486    END_INTERFACE
1487} IZoomEventsVtbl;
1488
1489interface IZoomEvents {
1490    CONST_VTBL IZoomEventsVtbl* lpVtbl;
1491};
1492
1493#ifdef COBJMACROS
1494#ifndef WIDL_C_INLINE_WRAPPERS
1495/*** IUnknown methods ***/
1496#define IZoomEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1497#define IZoomEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
1498#define IZoomEvents_Release(This) (This)->lpVtbl->Release(This)
1499/*** IZoomEvents methods ***/
1500#define IZoomEvents_OnZoomPercentChanged(This,ulZoomPercent) (This)->lpVtbl->OnZoomPercentChanged(This,ulZoomPercent)
1501#else
1502/*** IUnknown methods ***/
1503static inline HRESULT IZoomEvents_QueryInterface(IZoomEvents* This,REFIID riid,void **ppvObject) {
1504    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1505}
1506static inline ULONG IZoomEvents_AddRef(IZoomEvents* This) {
1507    return This->lpVtbl->AddRef(This);
1508}
1509static inline ULONG IZoomEvents_Release(IZoomEvents* This) {
1510    return This->lpVtbl->Release(This);
1511}
1512/*** IZoomEvents methods ***/
1513static inline HRESULT IZoomEvents_OnZoomPercentChanged(IZoomEvents* This,ULONG ulZoomPercent) {
1514    return This->lpVtbl->OnZoomPercentChanged(This,ulZoomPercent);
1515}
1516#endif
1517#endif
1518
1519#endif
1520
1521
1522#endif  /* __IZoomEvents_INTERFACE_DEFINED__ */
1523
1524
1525/*****************************************************************************
1526 * IProtectFocus interface
1527 */
1528#ifndef __IProtectFocus_INTERFACE_DEFINED__
1529#define __IProtectFocus_INTERFACE_DEFINED__
1530
1531DEFINE_GUID(IID_IProtectFocus, 0xd81f90a3, 0x8156, 0x44f7, 0xad,0x28, 0x5a,0xbb,0x87,0x00,0x32,0x74);
1532#if defined(__cplusplus) && !defined(CINTERFACE)
1533MIDL_INTERFACE("d81f90a3-8156-44f7-ad28-5abb87003274")
1534IProtectFocus : public IUnknown
1535{
1536    virtual HRESULT STDMETHODCALLTYPE AllowFocusChange(
1537        WINBOOL *pfAllow) = 0;
1538
1539};
1540#ifdef __CRT_UUID_DECL
1541__CRT_UUID_DECL(IProtectFocus, 0xd81f90a3, 0x8156, 0x44f7, 0xad,0x28, 0x5a,0xbb,0x87,0x00,0x32,0x74)
1542#endif
1543#else
1544typedef struct IProtectFocusVtbl {
1545    BEGIN_INTERFACE
1546
1547    /*** IUnknown methods ***/
1548    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1549        IProtectFocus *This,
1550        REFIID riid,
1551        void **ppvObject);
1552
1553    ULONG (STDMETHODCALLTYPE *AddRef)(
1554        IProtectFocus *This);
1555
1556    ULONG (STDMETHODCALLTYPE *Release)(
1557        IProtectFocus *This);
1558
1559    /*** IProtectFocus methods ***/
1560    HRESULT (STDMETHODCALLTYPE *AllowFocusChange)(
1561        IProtectFocus *This,
1562        WINBOOL *pfAllow);
1563
1564    END_INTERFACE
1565} IProtectFocusVtbl;
1566
1567interface IProtectFocus {
1568    CONST_VTBL IProtectFocusVtbl* lpVtbl;
1569};
1570
1571#ifdef COBJMACROS
1572#ifndef WIDL_C_INLINE_WRAPPERS
1573/*** IUnknown methods ***/
1574#define IProtectFocus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1575#define IProtectFocus_AddRef(This) (This)->lpVtbl->AddRef(This)
1576#define IProtectFocus_Release(This) (This)->lpVtbl->Release(This)
1577/*** IProtectFocus methods ***/
1578#define IProtectFocus_AllowFocusChange(This,pfAllow) (This)->lpVtbl->AllowFocusChange(This,pfAllow)
1579#else
1580/*** IUnknown methods ***/
1581static inline HRESULT IProtectFocus_QueryInterface(IProtectFocus* This,REFIID riid,void **ppvObject) {
1582    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1583}
1584static inline ULONG IProtectFocus_AddRef(IProtectFocus* This) {
1585    return This->lpVtbl->AddRef(This);
1586}
1587static inline ULONG IProtectFocus_Release(IProtectFocus* This) {
1588    return This->lpVtbl->Release(This);
1589}
1590/*** IProtectFocus methods ***/
1591static inline HRESULT IProtectFocus_AllowFocusChange(IProtectFocus* This,WINBOOL *pfAllow) {
1592    return This->lpVtbl->AllowFocusChange(This,pfAllow);
1593}
1594#endif
1595#endif
1596
1597#endif
1598
1599
1600#endif  /* __IProtectFocus_INTERFACE_DEFINED__ */
1601
1602
1603#define SID_SProtectFocus  IID_IProtectFocus
1604
1605#ifndef _LPPROTECTEDMODEMENUSERVICES_DEFINED
1606#define _LPPROTECTEDMODEMENUSERVICES_DEFINED
1607/*****************************************************************************
1608 * IProtectedModeMenuServices interface
1609 */
1610#ifndef __IProtectedModeMenuServices_INTERFACE_DEFINED__
1611#define __IProtectedModeMenuServices_INTERFACE_DEFINED__
1612
1613DEFINE_GUID(IID_IProtectedModeMenuServices, 0x73c105ee, 0x9dff, 0x4a07, 0xb8,0x3c, 0x7e,0xff,0x29,0x0c,0x26,0x6e);
1614#if defined(__cplusplus) && !defined(CINTERFACE)
1615MIDL_INTERFACE("73c105ee-9dff-4a07-b83c-7eff290c266e")
1616IProtectedModeMenuServices : public IUnknown
1617{
1618    virtual HRESULT STDMETHODCALLTYPE CreateMenu(
1619        HMENU *phMenu) = 0;
1620
1621    virtual HRESULT STDMETHODCALLTYPE LoadMenu(
1622        LPCWSTR pszModuleName,
1623        LPCWSTR pszMenuName,
1624        HMENU *phMenu) = 0;
1625
1626    virtual HRESULT STDMETHODCALLTYPE LoadMenuID(
1627        LPCWSTR pszModuleName,
1628        WORD wResourceID,
1629        HMENU *phMenu) = 0;
1630
1631};
1632#ifdef __CRT_UUID_DECL
1633__CRT_UUID_DECL(IProtectedModeMenuServices, 0x73c105ee, 0x9dff, 0x4a07, 0xb8,0x3c, 0x7e,0xff,0x29,0x0c,0x26,0x6e)
1634#endif
1635#else
1636typedef struct IProtectedModeMenuServicesVtbl {
1637    BEGIN_INTERFACE
1638
1639    /*** IUnknown methods ***/
1640    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1641        IProtectedModeMenuServices *This,
1642        REFIID riid,
1643        void **ppvObject);
1644
1645    ULONG (STDMETHODCALLTYPE *AddRef)(
1646        IProtectedModeMenuServices *This);
1647
1648    ULONG (STDMETHODCALLTYPE *Release)(
1649        IProtectedModeMenuServices *This);
1650
1651    /*** IProtectedModeMenuServices methods ***/
1652    HRESULT (STDMETHODCALLTYPE *CreateMenu)(
1653        IProtectedModeMenuServices *This,
1654        HMENU *phMenu);
1655
1656    HRESULT (STDMETHODCALLTYPE *LoadMenu)(
1657        IProtectedModeMenuServices *This,
1658        LPCWSTR pszModuleName,
1659        LPCWSTR pszMenuName,
1660        HMENU *phMenu);
1661
1662    HRESULT (STDMETHODCALLTYPE *LoadMenuID)(
1663        IProtectedModeMenuServices *This,
1664        LPCWSTR pszModuleName,
1665        WORD wResourceID,
1666        HMENU *phMenu);
1667
1668    END_INTERFACE
1669} IProtectedModeMenuServicesVtbl;
1670
1671interface IProtectedModeMenuServices {
1672    CONST_VTBL IProtectedModeMenuServicesVtbl* lpVtbl;
1673};
1674
1675#ifdef COBJMACROS
1676#ifndef WIDL_C_INLINE_WRAPPERS
1677/*** IUnknown methods ***/
1678#define IProtectedModeMenuServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1679#define IProtectedModeMenuServices_AddRef(This) (This)->lpVtbl->AddRef(This)
1680#define IProtectedModeMenuServices_Release(This) (This)->lpVtbl->Release(This)
1681/*** IProtectedModeMenuServices methods ***/
1682#define IProtectedModeMenuServices_CreateMenu(This,phMenu) (This)->lpVtbl->CreateMenu(This,phMenu)
1683#define IProtectedModeMenuServices_LoadMenu(This,pszModuleName,pszMenuName,phMenu) (This)->lpVtbl->LoadMenu(This,pszModuleName,pszMenuName,phMenu)
1684#define IProtectedModeMenuServices_LoadMenuID(This,pszModuleName,wResourceID,phMenu) (This)->lpVtbl->LoadMenuID(This,pszModuleName,wResourceID,phMenu)
1685#else
1686/*** IUnknown methods ***/
1687static inline HRESULT IProtectedModeMenuServices_QueryInterface(IProtectedModeMenuServices* This,REFIID riid,void **ppvObject) {
1688    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1689}
1690static inline ULONG IProtectedModeMenuServices_AddRef(IProtectedModeMenuServices* This) {
1691    return This->lpVtbl->AddRef(This);
1692}
1693static inline ULONG IProtectedModeMenuServices_Release(IProtectedModeMenuServices* This) {
1694    return This->lpVtbl->Release(This);
1695}
1696/*** IProtectedModeMenuServices methods ***/
1697static inline HRESULT IProtectedModeMenuServices_CreateMenu(IProtectedModeMenuServices* This,HMENU *phMenu) {
1698    return This->lpVtbl->CreateMenu(This,phMenu);
1699}
1700static inline HRESULT IProtectedModeMenuServices_LoadMenu(IProtectedModeMenuServices* This,LPCWSTR pszModuleName,LPCWSTR pszMenuName,HMENU *phMenu) {
1701    return This->lpVtbl->LoadMenu(This,pszModuleName,pszMenuName,phMenu);
1702}
1703static inline HRESULT IProtectedModeMenuServices_LoadMenuID(IProtectedModeMenuServices* This,LPCWSTR pszModuleName,WORD wResourceID,HMENU *phMenu) {
1704    return This->lpVtbl->LoadMenuID(This,pszModuleName,wResourceID,phMenu);
1705}
1706#endif
1707#endif
1708
1709#endif
1710
1711
1712#endif  /* __IProtectedModeMenuServices_INTERFACE_DEFINED__ */
1713
1714#endif
1715#endif
1716#if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY_DESKTOP_APP, WINAPI_PARTITION_APP)
1717typedef struct tagPAGESET { } PAGESET;
1718#endif
1719/* Begin additional prototypes for all interfaces */
1720
1721ULONG           __RPC_USER STGMEDIUM_UserSize     (ULONG *, ULONG, STGMEDIUM *);
1722unsigned char * __RPC_USER STGMEDIUM_UserMarshal  (ULONG *, unsigned char *, STGMEDIUM *);
1723unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
1724void            __RPC_USER STGMEDIUM_UserFree     (ULONG *, STGMEDIUM *);
1725ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
1726unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
1727unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
1728void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
1729ULONG           __RPC_USER HMENU_UserSize     (ULONG *, ULONG, HMENU *);
1730unsigned char * __RPC_USER HMENU_UserMarshal  (ULONG *, unsigned char *, HMENU *);
1731unsigned char * __RPC_USER HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *);
1732void            __RPC_USER HMENU_UserFree     (ULONG *, HMENU *);
1733
1734/* End additional prototypes */
1735
1736#ifdef __cplusplus
1737}
1738#endif
1739
1740#endif /* __docobj_h__ */