zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

docobj.h (57826B) - Raw


      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__
     23 typedef interface IOleDocument IOleDocument;
     24 #ifdef __cplusplus
     25 interface IOleDocument;
     26 #endif /* __cplusplus */
     27 #endif
     28 
     29 #ifndef __IOleDocumentSite_FWD_DEFINED__
     30 #define __IOleDocumentSite_FWD_DEFINED__
     31 typedef interface IOleDocumentSite IOleDocumentSite;
     32 #ifdef __cplusplus
     33 interface IOleDocumentSite;
     34 #endif /* __cplusplus */
     35 #endif
     36 
     37 #ifndef __IOleDocumentView_FWD_DEFINED__
     38 #define __IOleDocumentView_FWD_DEFINED__
     39 typedef interface IOleDocumentView IOleDocumentView;
     40 #ifdef __cplusplus
     41 interface IOleDocumentView;
     42 #endif /* __cplusplus */
     43 #endif
     44 
     45 #ifndef __IEnumOleDocumentViews_FWD_DEFINED__
     46 #define __IEnumOleDocumentViews_FWD_DEFINED__
     47 typedef interface IEnumOleDocumentViews IEnumOleDocumentViews;
     48 #ifdef __cplusplus
     49 interface IEnumOleDocumentViews;
     50 #endif /* __cplusplus */
     51 #endif
     52 
     53 #ifndef __IContinueCallback_FWD_DEFINED__
     54 #define __IContinueCallback_FWD_DEFINED__
     55 typedef interface IContinueCallback IContinueCallback;
     56 #ifdef __cplusplus
     57 interface IContinueCallback;
     58 #endif /* __cplusplus */
     59 #endif
     60 
     61 #ifndef __IPrint_FWD_DEFINED__
     62 #define __IPrint_FWD_DEFINED__
     63 typedef interface IPrint IPrint;
     64 #ifdef __cplusplus
     65 interface IPrint;
     66 #endif /* __cplusplus */
     67 #endif
     68 
     69 #ifndef __IOleCommandTarget_FWD_DEFINED__
     70 #define __IOleCommandTarget_FWD_DEFINED__
     71 typedef interface IOleCommandTarget IOleCommandTarget;
     72 #ifdef __cplusplus
     73 interface IOleCommandTarget;
     74 #endif /* __cplusplus */
     75 #endif
     76 
     77 #ifndef __IZoomEvents_FWD_DEFINED__
     78 #define __IZoomEvents_FWD_DEFINED__
     79 typedef interface IZoomEvents IZoomEvents;
     80 #ifdef __cplusplus
     81 interface IZoomEvents;
     82 #endif /* __cplusplus */
     83 #endif
     84 
     85 #ifndef __IProtectFocus_FWD_DEFINED__
     86 #define __IProtectFocus_FWD_DEFINED__
     87 typedef interface IProtectFocus IProtectFocus;
     88 #ifdef __cplusplus
     89 interface IProtectFocus;
     90 #endif /* __cplusplus */
     91 #endif
     92 
     93 #ifndef __IProtectedModeMenuServices_FWD_DEFINED__
     94 #define __IProtectedModeMenuServices_FWD_DEFINED__
     95 typedef interface IProtectedModeMenuServices IProtectedModeMenuServices;
     96 #ifdef __cplusplus
     97 interface 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
    110 extern "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__
    125 typedef interface IOleDocument IOleDocument;
    126 #ifdef __cplusplus
    127 interface IOleDocument;
    128 #endif /* __cplusplus */
    129 #endif
    130 
    131 #ifndef __IOleDocumentSite_FWD_DEFINED__
    132 #define __IOleDocumentSite_FWD_DEFINED__
    133 typedef interface IOleDocumentSite IOleDocumentSite;
    134 #ifdef __cplusplus
    135 interface IOleDocumentSite;
    136 #endif /* __cplusplus */
    137 #endif
    138 
    139 #ifndef __IOleDocumentView_FWD_DEFINED__
    140 #define __IOleDocumentView_FWD_DEFINED__
    141 typedef interface IOleDocumentView IOleDocumentView;
    142 #ifdef __cplusplus
    143 interface IOleDocumentView;
    144 #endif /* __cplusplus */
    145 #endif
    146 
    147 #ifndef __IEnumOleDocumentViews_FWD_DEFINED__
    148 #define __IEnumOleDocumentViews_FWD_DEFINED__
    149 typedef interface IEnumOleDocumentViews IEnumOleDocumentViews;
    150 #ifdef __cplusplus
    151 interface IEnumOleDocumentViews;
    152 #endif /* __cplusplus */
    153 #endif
    154 
    155 #ifndef __IContinueCallback_FWD_DEFINED__
    156 #define __IContinueCallback_FWD_DEFINED__
    157 typedef interface IContinueCallback IContinueCallback;
    158 #ifdef __cplusplus
    159 interface IContinueCallback;
    160 #endif /* __cplusplus */
    161 #endif
    162 
    163 #ifndef __IPrint_FWD_DEFINED__
    164 #define __IPrint_FWD_DEFINED__
    165 typedef interface IPrint IPrint;
    166 #ifdef __cplusplus
    167 interface IPrint;
    168 #endif /* __cplusplus */
    169 #endif
    170 
    171 #ifndef __IOleCommandTarget_FWD_DEFINED__
    172 #define __IOleCommandTarget_FWD_DEFINED__
    173 typedef interface IOleCommandTarget IOleCommandTarget;
    174 #ifdef __cplusplus
    175 interface IOleCommandTarget;
    176 #endif /* __cplusplus */
    177 #endif
    178 
    179 #ifndef __IProtectedModeMenuServices_FWD_DEFINED__
    180 #define __IProtectedModeMenuServices_FWD_DEFINED__
    181 typedef interface IProtectedModeMenuServices IProtectedModeMenuServices;
    182 #ifdef __cplusplus
    183 interface 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 
    196 typedef IOleDocument *LPOLEDOCUMENT;
    197 
    198 typedef 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 
    205 DEFINE_GUID(IID_IOleDocument, 0xb722bcc5, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
    206 #if defined(__cplusplus) && !defined(CINTERFACE)
    207 MIDL_INTERFACE("b722bcc5-4e68-101b-a2bc-00aa00404770")
    208 IOleDocument : 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
    228 typedef 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 
    263 interface 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 ***/
    279 static inline HRESULT IOleDocument_QueryInterface(IOleDocument* This,REFIID riid,void **ppvObject) {
    280     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    281 }
    282 static inline ULONG IOleDocument_AddRef(IOleDocument* This) {
    283     return This->lpVtbl->AddRef(This);
    284 }
    285 static inline ULONG IOleDocument_Release(IOleDocument* This) {
    286     return This->lpVtbl->Release(This);
    287 }
    288 /*** IOleDocument methods ***/
    289 static 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 }
    292 static inline HRESULT IOleDocument_GetDocMiscStatus(IOleDocument* This,DWORD *pdwStatus) {
    293     return This->lpVtbl->GetDocMiscStatus(This,pdwStatus);
    294 }
    295 static 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 
    316 typedef IOleDocumentSite *LPOLEDOCUMENTSITE;
    317 
    318 DEFINE_GUID(IID_IOleDocumentSite, 0xb722bcc7, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
    319 #if defined(__cplusplus) && !defined(CINTERFACE)
    320 MIDL_INTERFACE("b722bcc7-4e68-101b-a2bc-00aa00404770")
    321 IOleDocumentSite : 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
    331 typedef 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 
    354 interface 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 ***/
    368 static inline HRESULT IOleDocumentSite_QueryInterface(IOleDocumentSite* This,REFIID riid,void **ppvObject) {
    369     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    370 }
    371 static inline ULONG IOleDocumentSite_AddRef(IOleDocumentSite* This) {
    372     return This->lpVtbl->AddRef(This);
    373 }
    374 static inline ULONG IOleDocumentSite_Release(IOleDocumentSite* This) {
    375     return This->lpVtbl->Release(This);
    376 }
    377 /*** IOleDocumentSite methods ***/
    378 static 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 
    399 typedef IOleDocumentView *LPOLEDOCUMENTVIEW;
    400 
    401 DEFINE_GUID(IID_IOleDocumentView, 0xb722bcc6, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
    402 #if defined(__cplusplus) && !defined(CINTERFACE)
    403 MIDL_INTERFACE("b722bcc6-4e68-101b-a2bc-00aa00404770")
    404 IOleDocumentView : 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
    454 typedef 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 
    528 interface 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 ***/
    554 static inline HRESULT IOleDocumentView_QueryInterface(IOleDocumentView* This,REFIID riid,void **ppvObject) {
    555     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    556 }
    557 static inline ULONG IOleDocumentView_AddRef(IOleDocumentView* This) {
    558     return This->lpVtbl->AddRef(This);
    559 }
    560 static inline ULONG IOleDocumentView_Release(IOleDocumentView* This) {
    561     return This->lpVtbl->Release(This);
    562 }
    563 /*** IOleDocumentView methods ***/
    564 static inline HRESULT IOleDocumentView_SetInPlaceSite(IOleDocumentView* This,IOleInPlaceSite *pIPSite) {
    565     return This->lpVtbl->SetInPlaceSite(This,pIPSite);
    566 }
    567 static inline HRESULT IOleDocumentView_GetInPlaceSite(IOleDocumentView* This,IOleInPlaceSite **ppIPSite) {
    568     return This->lpVtbl->GetInPlaceSite(This,ppIPSite);
    569 }
    570 static inline HRESULT IOleDocumentView_GetDocument(IOleDocumentView* This,IUnknown **ppunk) {
    571     return This->lpVtbl->GetDocument(This,ppunk);
    572 }
    573 static inline HRESULT IOleDocumentView_SetRect(IOleDocumentView* This,LPRECT prcView) {
    574     return This->lpVtbl->SetRect(This,prcView);
    575 }
    576 static inline HRESULT IOleDocumentView_GetRect(IOleDocumentView* This,LPRECT prcView) {
    577     return This->lpVtbl->GetRect(This,prcView);
    578 }
    579 static 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 }
    582 static inline HRESULT IOleDocumentView_Show(IOleDocumentView* This,WINBOOL fShow) {
    583     return This->lpVtbl->Show(This,fShow);
    584 }
    585 static inline HRESULT IOleDocumentView_UIActivate(IOleDocumentView* This,WINBOOL fUIActivate) {
    586     return This->lpVtbl->UIActivate(This,fUIActivate);
    587 }
    588 static inline HRESULT IOleDocumentView_Open(IOleDocumentView* This) {
    589     return This->lpVtbl->Open(This);
    590 }
    591 static inline HRESULT IOleDocumentView_CloseView(IOleDocumentView* This,DWORD dwReserved) {
    592     return This->lpVtbl->CloseView(This,dwReserved);
    593 }
    594 static inline HRESULT IOleDocumentView_SaveViewState(IOleDocumentView* This,LPSTREAM pstm) {
    595     return This->lpVtbl->SaveViewState(This,pstm);
    596 }
    597 static inline HRESULT IOleDocumentView_ApplyViewState(IOleDocumentView* This,LPSTREAM pstm) {
    598     return This->lpVtbl->ApplyViewState(This,pstm);
    599 }
    600 static 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 
    621 typedef IEnumOleDocumentViews *LPENUMOLEDOCUMENTVIEWS;
    622 
    623 DEFINE_GUID(IID_IEnumOleDocumentViews, 0xb722bcc8, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
    624 #if defined(__cplusplus) && !defined(CINTERFACE)
    625 MIDL_INTERFACE("b722bcc8-4e68-101b-a2bc-00aa00404770")
    626 IEnumOleDocumentViews : 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
    647 typedef 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 
    683 interface 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 ***/
    700 static inline HRESULT IEnumOleDocumentViews_QueryInterface(IEnumOleDocumentViews* This,REFIID riid,void **ppvObject) {
    701     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    702 }
    703 static inline ULONG IEnumOleDocumentViews_AddRef(IEnumOleDocumentViews* This) {
    704     return This->lpVtbl->AddRef(This);
    705 }
    706 static inline ULONG IEnumOleDocumentViews_Release(IEnumOleDocumentViews* This) {
    707     return This->lpVtbl->Release(This);
    708 }
    709 /*** IEnumOleDocumentViews methods ***/
    710 static inline HRESULT IEnumOleDocumentViews_Next(IEnumOleDocumentViews* This,ULONG cViews,IOleDocumentView **rgpView,ULONG *pcFetched) {
    711     return This->lpVtbl->Next(This,cViews,rgpView,pcFetched);
    712 }
    713 static inline HRESULT IEnumOleDocumentViews_Skip(IEnumOleDocumentViews* This,ULONG cViews) {
    714     return This->lpVtbl->Skip(This,cViews);
    715 }
    716 static inline HRESULT IEnumOleDocumentViews_Reset(IEnumOleDocumentViews* This) {
    717     return This->lpVtbl->Reset(This);
    718 }
    719 static inline HRESULT IEnumOleDocumentViews_Clone(IEnumOleDocumentViews* This,IEnumOleDocumentViews **ppEnum) {
    720     return This->lpVtbl->Clone(This,ppEnum);
    721 }
    722 #endif
    723 #endif
    724 
    725 #endif
    726 
    727 HRESULT __stdcall IEnumOleDocumentViews_RemoteNext_Proxy(
    728     IEnumOleDocumentViews* This,
    729     ULONG cViews,
    730     IOleDocumentView **rgpView,
    731     ULONG *pcFetched);
    732 void __RPC_STUB IEnumOleDocumentViews_RemoteNext_Stub(
    733     IRpcStubBuffer* This,
    734     IRpcChannelBuffer* pRpcChannelBuffer,
    735     PRPC_MESSAGE pRpcMessage,
    736     DWORD* pdwStubPhase);
    737 HRESULT CALLBACK IEnumOleDocumentViews_Next_Proxy(
    738     IEnumOleDocumentViews* This,
    739     ULONG cViews,
    740     IOleDocumentView **rgpView,
    741     ULONG *pcFetched);
    742 HRESULT __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 
    760 typedef IContinueCallback *LPCONTINUECALLBACK;
    761 
    762 DEFINE_GUID(IID_IContinueCallback, 0xb722bcca, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
    763 #if defined(__cplusplus) && !defined(CINTERFACE)
    764 MIDL_INTERFACE("b722bcca-4e68-101b-a2bc-00aa00404770")
    765 IContinueCallback : 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
    780 typedef 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 
    808 interface 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 ***/
    823 static inline HRESULT IContinueCallback_QueryInterface(IContinueCallback* This,REFIID riid,void **ppvObject) {
    824     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    825 }
    826 static inline ULONG IContinueCallback_AddRef(IContinueCallback* This) {
    827     return This->lpVtbl->AddRef(This);
    828 }
    829 static inline ULONG IContinueCallback_Release(IContinueCallback* This) {
    830     return This->lpVtbl->Release(This);
    831 }
    832 /*** IContinueCallback methods ***/
    833 static inline HRESULT IContinueCallback_FContinue(IContinueCallback* This) {
    834     return This->lpVtbl->FContinue(This);
    835 }
    836 static 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 
    857 typedef IPrint *LPPRINT;
    858 
    859 typedef 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 
    869 typedef struct tagPAGERANGE {
    870     LONG nFromPage;
    871     LONG nToPage;
    872 } PAGERANGE;
    873 
    874 typedef 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 
    884 DEFINE_GUID(IID_IPrint, 0xb722bcc9, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
    885 #if defined(__cplusplus) && !defined(CINTERFACE)
    886 MIDL_INTERFACE("b722bcc9-4e68-101b-a2bc-00aa00404770")
    887 IPrint : 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
    911 typedef 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 
    950 interface 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 ***/
    966 static inline HRESULT IPrint_QueryInterface(IPrint* This,REFIID riid,void **ppvObject) {
    967     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    968 }
    969 static inline ULONG IPrint_AddRef(IPrint* This) {
    970     return This->lpVtbl->AddRef(This);
    971 }
    972 static inline ULONG IPrint_Release(IPrint* This) {
    973     return This->lpVtbl->Release(This);
    974 }
    975 /*** IPrint methods ***/
    976 static inline HRESULT IPrint_SetInitialPageNum(IPrint* This,LONG nFirstPage) {
    977     return This->lpVtbl->SetInitialPageNum(This,nFirstPage);
    978 }
    979 static inline HRESULT IPrint_GetPageInfo(IPrint* This,LONG *pnFirstPage,LONG *pcPages) {
    980     return This->lpVtbl->GetPageInfo(This,pnFirstPage,pcPages);
    981 }
    982 static 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 
    990 HRESULT __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);
   1000 void __RPC_STUB IPrint_RemotePrint_Stub(
   1001     IRpcStubBuffer* This,
   1002     IRpcChannelBuffer* pRpcChannelBuffer,
   1003     PRPC_MESSAGE pRpcMessage,
   1004     DWORD* pdwStubPhase);
   1005 HRESULT 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);
   1015 HRESULT __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 
   1038 typedef IOleCommandTarget *LPOLECOMMANDTARGET;
   1039 
   1040 typedef 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 
   1049 typedef struct _tagOLECMD {
   1050     ULONG cmdID;
   1051     DWORD cmdf;
   1052 } OLECMD;
   1053 
   1054 typedef struct _tagOLECMDTEXT {
   1055     DWORD cmdtextf;
   1056     ULONG cwActual;
   1057     ULONG cwBuf;
   1058     wchar_t rgwz[1];
   1059 } OLECMDTEXT;
   1060 
   1061 typedef enum OLECMDTEXTF {
   1062     OLECMDTEXTF_NONE = 0,
   1063     OLECMDTEXTF_NAME = 1,
   1064     OLECMDTEXTF_STATUS = 2
   1065 } OLECMDTEXTF;
   1066 
   1067 typedef enum OLECMDEXECOPT {
   1068     OLECMDEXECOPT_DODEFAULT = 0,
   1069     OLECMDEXECOPT_PROMPTUSER = 1,
   1070     OLECMDEXECOPT_DONTPROMPTUSER = 2,
   1071     OLECMDEXECOPT_SHOWHELP = 3
   1072 } OLECMDEXECOPT;
   1073 
   1074 typedef 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 
   1153 typedef 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 
   1188 typedef enum IGNOREMIME {
   1189     IGNOREMIME_PROMPT = 0x1,
   1190     IGNOREMIME_TEXT = 0x2
   1191 } IGNOREMIME;
   1192 
   1193 typedef enum WPCSETTING {
   1194     WPCSETTING_LOGGING_ENABLED = 0x1,
   1195     WPCSETTING_FILEDOWNLOAD_BLOCKED = 0x2
   1196 } WPCSETTING;
   1197 #endif
   1198 
   1199 DEFINE_GUID(IID_IOleCommandTarget, 0xb722bccb, 0x4e68, 0x101b, 0xa2,0xbc, 0x00,0xaa,0x00,0x40,0x47,0x70);
   1200 #if defined(__cplusplus) && !defined(CINTERFACE)
   1201 MIDL_INTERFACE("b722bccb-4e68-101b-a2bc-00aa00404770")
   1202 IOleCommandTarget : 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
   1222 typedef 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 
   1256 interface 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 ***/
   1271 static inline HRESULT IOleCommandTarget_QueryInterface(IOleCommandTarget* This,REFIID riid,void **ppvObject) {
   1272     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1273 }
   1274 static inline ULONG IOleCommandTarget_AddRef(IOleCommandTarget* This) {
   1275     return This->lpVtbl->AddRef(This);
   1276 }
   1277 static inline ULONG IOleCommandTarget_Release(IOleCommandTarget* This) {
   1278     return This->lpVtbl->Release(This);
   1279 }
   1280 /*** IOleCommandTarget methods ***/
   1281 static 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 }
   1284 static 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
   1296 typedef 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
   1319 OLECMDIDF_REFRESH_PROMPTIFOFFLINE = 0x2000,
   1320 OLECMDIDF_REFRESH_THROUGHSCRIPT = 0x4000,
   1321 #endif
   1322   OLECMDIDF_REFRESH_PAGEACTION_MIXEDCONTENT = 0x02000000,
   1323   OLECMDIDF_REFRESH_PAGEACTION_INVALID_CERT = 0x04000000
   1324 } OLECMDID_REFRESHFLAG;
   1325 
   1326 typedef 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 
   1362 typedef 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 
   1370 typedef enum {
   1371   OLECMDIDF_OPTICAL_ZOOM_NOPERSIST = 0x00000001,
   1372   OLECMDIDF_OPTICAL_ZOOM_NOLAYOUT = 0x00000010
   1373 } OLECMDID_OPTICAL_ZOOMFLAG;
   1374 
   1375 typedef 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 
   1382 typedef 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 
   1389 typedef 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 
   1445 EXTERN_C const GUID SID_SContainerDispatch;
   1446 
   1447 /*****************************************************************************
   1448  * IZoomEvents interface
   1449  */
   1450 #ifndef __IZoomEvents_INTERFACE_DEFINED__
   1451 #define __IZoomEvents_INTERFACE_DEFINED__
   1452 
   1453 DEFINE_GUID(IID_IZoomEvents, 0x41b68150, 0x904c, 0x4e17, 0xa0,0xba, 0xa4,0x38,0x18,0x2e,0x35,0x9d);
   1454 #if defined(__cplusplus) && !defined(CINTERFACE)
   1455 MIDL_INTERFACE("41b68150-904c-4e17-a0ba-a438182e359d")
   1456 IZoomEvents : 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
   1466 typedef 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 
   1489 interface 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 ***/
   1503 static inline HRESULT IZoomEvents_QueryInterface(IZoomEvents* This,REFIID riid,void **ppvObject) {
   1504     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1505 }
   1506 static inline ULONG IZoomEvents_AddRef(IZoomEvents* This) {
   1507     return This->lpVtbl->AddRef(This);
   1508 }
   1509 static inline ULONG IZoomEvents_Release(IZoomEvents* This) {
   1510     return This->lpVtbl->Release(This);
   1511 }
   1512 /*** IZoomEvents methods ***/
   1513 static 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 
   1531 DEFINE_GUID(IID_IProtectFocus, 0xd81f90a3, 0x8156, 0x44f7, 0xad,0x28, 0x5a,0xbb,0x87,0x00,0x32,0x74);
   1532 #if defined(__cplusplus) && !defined(CINTERFACE)
   1533 MIDL_INTERFACE("d81f90a3-8156-44f7-ad28-5abb87003274")
   1534 IProtectFocus : 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
   1544 typedef 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 
   1567 interface 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 ***/
   1581 static inline HRESULT IProtectFocus_QueryInterface(IProtectFocus* This,REFIID riid,void **ppvObject) {
   1582     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1583 }
   1584 static inline ULONG IProtectFocus_AddRef(IProtectFocus* This) {
   1585     return This->lpVtbl->AddRef(This);
   1586 }
   1587 static inline ULONG IProtectFocus_Release(IProtectFocus* This) {
   1588     return This->lpVtbl->Release(This);
   1589 }
   1590 /*** IProtectFocus methods ***/
   1591 static 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 
   1613 DEFINE_GUID(IID_IProtectedModeMenuServices, 0x73c105ee, 0x9dff, 0x4a07, 0xb8,0x3c, 0x7e,0xff,0x29,0x0c,0x26,0x6e);
   1614 #if defined(__cplusplus) && !defined(CINTERFACE)
   1615 MIDL_INTERFACE("73c105ee-9dff-4a07-b83c-7eff290c266e")
   1616 IProtectedModeMenuServices : 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
   1636 typedef 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 
   1671 interface 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 ***/
   1687 static inline HRESULT IProtectedModeMenuServices_QueryInterface(IProtectedModeMenuServices* This,REFIID riid,void **ppvObject) {
   1688     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1689 }
   1690 static inline ULONG IProtectedModeMenuServices_AddRef(IProtectedModeMenuServices* This) {
   1691     return This->lpVtbl->AddRef(This);
   1692 }
   1693 static inline ULONG IProtectedModeMenuServices_Release(IProtectedModeMenuServices* This) {
   1694     return This->lpVtbl->Release(This);
   1695 }
   1696 /*** IProtectedModeMenuServices methods ***/
   1697 static inline HRESULT IProtectedModeMenuServices_CreateMenu(IProtectedModeMenuServices* This,HMENU *phMenu) {
   1698     return This->lpVtbl->CreateMenu(This,phMenu);
   1699 }
   1700 static inline HRESULT IProtectedModeMenuServices_LoadMenu(IProtectedModeMenuServices* This,LPCWSTR pszModuleName,LPCWSTR pszMenuName,HMENU *phMenu) {
   1701     return This->lpVtbl->LoadMenu(This,pszModuleName,pszMenuName,phMenu);
   1702 }
   1703 static 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)
   1717 typedef struct tagPAGESET { } PAGESET;
   1718 #endif
   1719 /* Begin additional prototypes for all interfaces */
   1720 
   1721 ULONG           __RPC_USER STGMEDIUM_UserSize     (ULONG *, ULONG, STGMEDIUM *);
   1722 unsigned char * __RPC_USER STGMEDIUM_UserMarshal  (ULONG *, unsigned char *, STGMEDIUM *);
   1723 unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
   1724 void            __RPC_USER STGMEDIUM_UserFree     (ULONG *, STGMEDIUM *);
   1725 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
   1726 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
   1727 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
   1728 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
   1729 ULONG           __RPC_USER HMENU_UserSize     (ULONG *, ULONG, HMENU *);
   1730 unsigned char * __RPC_USER HMENU_UserMarshal  (ULONG *, unsigned char *, HMENU *);
   1731 unsigned char * __RPC_USER HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *);
   1732 void            __RPC_USER HMENU_UserFree     (ULONG *, HMENU *);
   1733 
   1734 /* End additional prototypes */
   1735 
   1736 #ifdef __cplusplus
   1737 }
   1738 #endif
   1739 
   1740 #endif /* __docobj_h__ */