Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.6 from include/textstor.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __textstor_h__
     16 #define __textstor_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __ITextStoreACPSink_FWD_DEFINED__
     21 #define __ITextStoreACPSink_FWD_DEFINED__
     22 typedef interface ITextStoreACPSink ITextStoreACPSink;
     23 #endif
     24 
     25 #ifndef __ITextStoreACP_FWD_DEFINED__
     26 #define __ITextStoreACP_FWD_DEFINED__
     27 typedef interface ITextStoreACP ITextStoreACP;
     28 #endif
     29 
     30 /* Headers for imported files */
     31 
     32 #include <oaidl.h>
     33 
     34 #ifdef __cplusplus
     35 extern "C" {
     36 #endif
     37 
     38 #define TS_E_INVALIDPOS      MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200)
     39 #define TS_E_NOLOCK          MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201)
     40 #define TS_E_NOOBJECT        MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202)
     41 #define TS_E_NOSERVICE       MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0203)
     42 #define TS_E_NOINTERFACE     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0204)
     43 #define TS_E_NOSELECTION     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0205)
     44 #define TS_E_NOLAYOUT        MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0206)
     45 #define TS_E_INVALIDPOINT    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0207)
     46 #define TS_E_SYNCHRONOUS     MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0208)
     47 #define TS_E_READONLY        MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0209)
     48 #define TS_E_FORMAT          MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x020a)
     49 #define TS_S_ASYNC           MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0x0300)
     50 #define TS_DEFAULT_SELECTION (~0)
     51 
     52 #define TS_SD_READONLY (0x1)
     53 
     54 #define TS_SD_LOADING (0x2)
     55 
     56 #define TS_SS_DISJOINTSEL (0x1)
     57 
     58 #define TS_SS_REGIONS (0x2)
     59 
     60 #define TS_SS_TRANSITORY (0x4)
     61 
     62 #define TS_SS_NOHIDDENTEXT (0x8)
     63 
     64 #define TS_AS_TEXT_CHANGE (0x1)
     65 
     66 #define TS_AS_SEL_CHANGE (0x2)
     67 
     68 #define TS_AS_LAYOUT_CHANGE (0x4)
     69 
     70 #define TS_AS_ATTR_CHANGE (0x8)
     71 
     72 #define TS_AS_STATUS_CHANGE (0x10)
     73 
     74 #define TS_AS_ALL_SINKS ((((TS_AS_TEXT_CHANGE | TS_AS_SEL_CHANGE) | TS_AS_LAYOUT_CHANGE) | TS_AS_ATTR_CHANGE) | TS_AS_STATUS_CHANGE)
     75 
     76 #define TS_LF_SYNC (0x1)
     77 
     78 #define TS_LF_READ (0x2)
     79 
     80 #define TS_LF_READWRITE (0x6)
     81 
     82 #define TS_CHAR_EMBEDDED (0xfffc)
     83 
     84 #define TS_CHAR_REGION (0x0)
     85 
     86 #define TS_CHAR_REPLACEMENT (0xfffd)
     87 
     88 #define TS_IAS_NOQUERY (0x1)
     89 
     90 #define TS_IAS_QUERYONLY (0x2)
     91 
     92 #define TS_ST_CORRECTION (0x1)
     93 
     94 #define GXFPF_ROUND_NEAREST (0x1)
     95 
     96 #define GXFPF_NEAREST (0x2)
     97 
     98 typedef enum __WIDL_textstor_generated_name_00000002 {
     99     TS_AE_NONE = 0,
    100     TS_AE_START = 1,
    101     TS_AE_END = 2
    102 } TsActiveSelEnd;
    103 typedef enum __WIDL_textstor_generated_name_00000003 {
    104     TS_RT_PLAIN = 0,
    105     TS_RT_HIDDEN = 1,
    106     TS_RT_OPAQUE = 2
    107 } TsRunType;
    108 typedef GUID TS_ATTRID;
    109 typedef struct TS_STATUS {
    110     DWORD dwDynamicFlags;
    111     DWORD dwStaticFlags;
    112 } TS_STATUS;
    113 typedef struct TS_TEXTCHANGE {
    114     LONG acpStart;
    115     LONG acpOldEnd;
    116     LONG acpNewEnd;
    117 } TS_TEXTCHANGE;
    118 typedef struct TS_SELECTIONSTYLE {
    119     TsActiveSelEnd ase;
    120     WINBOOL fInterimChar;
    121 } TS_SELECTIONSTYLE;
    122 typedef struct TS_SELECTION_ACP {
    123     LONG acpStart;
    124     LONG acpEnd;
    125     TS_SELECTIONSTYLE style;
    126 } TS_SELECTION_ACP;
    127 typedef struct TS_RUNINFO {
    128     ULONG uCount;
    129     TsRunType type;
    130 } TS_RUNINFO;
    131 typedef struct TS_ATTRVAL {
    132     TS_ATTRID idAttr;
    133     DWORD dwOverlapId;
    134     VARIANT varValue;
    135 } TS_ATTRVAL;
    136 #define TS_ATTR_FIND_BACKWARDS (0x1)
    137 
    138 #define TS_ATTR_FIND_WANT_OFFSET (0x2)
    139 
    140 #define TS_ATTR_FIND_UPDATESTART (0x4)
    141 
    142 #define TS_ATTR_FIND_WANT_VALUE (0x8)
    143 
    144 #define TS_ATTR_FIND_WANT_END (0x10)
    145 
    146 #define TS_ATTR_FIND_HIDDEN (0x20)
    147 
    148 typedef enum __WIDL_textstor_generated_name_00000004 {
    149     TS_LC_CREATE = 0,
    150     TS_LC_CHANGE = 1,
    151     TS_LC_DESTROY = 2
    152 } TsLayoutCode;
    153 typedef DWORD TsViewCookie;
    154 /*****************************************************************************
    155  * ITextStoreACPSink interface
    156  */
    157 #ifndef __ITextStoreACPSink_INTERFACE_DEFINED__
    158 #define __ITextStoreACPSink_INTERFACE_DEFINED__
    159 
    160 DEFINE_GUID(IID_ITextStoreACPSink, 0x22d44c94, 0xa419, 0x4542, 0xa2,0x72, 0xae,0x26,0x09,0x3e,0xce,0xcf);
    161 #if defined(__cplusplus) && !defined(CINTERFACE)
    162 MIDL_INTERFACE("22d44c94-a419-4542-a272-ae26093ececf")
    163 ITextStoreACPSink : public IUnknown
    164 {
    165     virtual HRESULT STDMETHODCALLTYPE OnTextChange(
    166         DWORD dwFlags,
    167         const TS_TEXTCHANGE *pChange) = 0;
    168 
    169     virtual HRESULT STDMETHODCALLTYPE OnSelectionChange(
    170         ) = 0;
    171 
    172     virtual HRESULT STDMETHODCALLTYPE OnLayoutChange(
    173         TsLayoutCode lcode,
    174         TsViewCookie vcView) = 0;
    175 
    176     virtual HRESULT STDMETHODCALLTYPE OnStatusChange(
    177         DWORD dwFlags) = 0;
    178 
    179     virtual HRESULT STDMETHODCALLTYPE OnAttrsChange(
    180         LONG acpStart,
    181         LONG acpEnd,
    182         ULONG cAttrs,
    183         const TS_ATTRID *paAttrs) = 0;
    184 
    185     virtual HRESULT STDMETHODCALLTYPE OnLockGranted(
    186         DWORD dwLockFlags) = 0;
    187 
    188     virtual HRESULT STDMETHODCALLTYPE OnStartEditTransaction(
    189         ) = 0;
    190 
    191     virtual HRESULT STDMETHODCALLTYPE OnEndEditTransaction(
    192         ) = 0;
    193 
    194 };
    195 #ifdef __CRT_UUID_DECL
    196 __CRT_UUID_DECL(ITextStoreACPSink, 0x22d44c94, 0xa419, 0x4542, 0xa2,0x72, 0xae,0x26,0x09,0x3e,0xce,0xcf)
    197 #endif
    198 #else
    199 typedef struct ITextStoreACPSinkVtbl {
    200     BEGIN_INTERFACE
    201 
    202     /*** IUnknown methods ***/
    203     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    204         ITextStoreACPSink* This,
    205         REFIID riid,
    206         void **ppvObject);
    207 
    208     ULONG (STDMETHODCALLTYPE *AddRef)(
    209         ITextStoreACPSink* This);
    210 
    211     ULONG (STDMETHODCALLTYPE *Release)(
    212         ITextStoreACPSink* This);
    213 
    214     /*** ITextStoreACPSink methods ***/
    215     HRESULT (STDMETHODCALLTYPE *OnTextChange)(
    216         ITextStoreACPSink* This,
    217         DWORD dwFlags,
    218         const TS_TEXTCHANGE *pChange);
    219 
    220     HRESULT (STDMETHODCALLTYPE *OnSelectionChange)(
    221         ITextStoreACPSink* This);
    222 
    223     HRESULT (STDMETHODCALLTYPE *OnLayoutChange)(
    224         ITextStoreACPSink* This,
    225         TsLayoutCode lcode,
    226         TsViewCookie vcView);
    227 
    228     HRESULT (STDMETHODCALLTYPE *OnStatusChange)(
    229         ITextStoreACPSink* This,
    230         DWORD dwFlags);
    231 
    232     HRESULT (STDMETHODCALLTYPE *OnAttrsChange)(
    233         ITextStoreACPSink* This,
    234         LONG acpStart,
    235         LONG acpEnd,
    236         ULONG cAttrs,
    237         const TS_ATTRID *paAttrs);
    238 
    239     HRESULT (STDMETHODCALLTYPE *OnLockGranted)(
    240         ITextStoreACPSink* This,
    241         DWORD dwLockFlags);
    242 
    243     HRESULT (STDMETHODCALLTYPE *OnStartEditTransaction)(
    244         ITextStoreACPSink* This);
    245 
    246     HRESULT (STDMETHODCALLTYPE *OnEndEditTransaction)(
    247         ITextStoreACPSink* This);
    248 
    249     END_INTERFACE
    250 } ITextStoreACPSinkVtbl;
    251 interface ITextStoreACPSink {
    252     CONST_VTBL ITextStoreACPSinkVtbl* lpVtbl;
    253 };
    254 
    255 #ifdef COBJMACROS
    256 #ifndef WIDL_C_INLINE_WRAPPERS
    257 /*** IUnknown methods ***/
    258 #define ITextStoreACPSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    259 #define ITextStoreACPSink_AddRef(This) (This)->lpVtbl->AddRef(This)
    260 #define ITextStoreACPSink_Release(This) (This)->lpVtbl->Release(This)
    261 /*** ITextStoreACPSink methods ***/
    262 #define ITextStoreACPSink_OnTextChange(This,dwFlags,pChange) (This)->lpVtbl->OnTextChange(This,dwFlags,pChange)
    263 #define ITextStoreACPSink_OnSelectionChange(This) (This)->lpVtbl->OnSelectionChange(This)
    264 #define ITextStoreACPSink_OnLayoutChange(This,lcode,vcView) (This)->lpVtbl->OnLayoutChange(This,lcode,vcView)
    265 #define ITextStoreACPSink_OnStatusChange(This,dwFlags) (This)->lpVtbl->OnStatusChange(This,dwFlags)
    266 #define ITextStoreACPSink_OnAttrsChange(This,acpStart,acpEnd,cAttrs,paAttrs) (This)->lpVtbl->OnAttrsChange(This,acpStart,acpEnd,cAttrs,paAttrs)
    267 #define ITextStoreACPSink_OnLockGranted(This,dwLockFlags) (This)->lpVtbl->OnLockGranted(This,dwLockFlags)
    268 #define ITextStoreACPSink_OnStartEditTransaction(This) (This)->lpVtbl->OnStartEditTransaction(This)
    269 #define ITextStoreACPSink_OnEndEditTransaction(This) (This)->lpVtbl->OnEndEditTransaction(This)
    270 #else
    271 /*** IUnknown methods ***/
    272 static FORCEINLINE HRESULT ITextStoreACPSink_QueryInterface(ITextStoreACPSink* This,REFIID riid,void **ppvObject) {
    273     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    274 }
    275 static FORCEINLINE ULONG ITextStoreACPSink_AddRef(ITextStoreACPSink* This) {
    276     return This->lpVtbl->AddRef(This);
    277 }
    278 static FORCEINLINE ULONG ITextStoreACPSink_Release(ITextStoreACPSink* This) {
    279     return This->lpVtbl->Release(This);
    280 }
    281 /*** ITextStoreACPSink methods ***/
    282 static FORCEINLINE HRESULT ITextStoreACPSink_OnTextChange(ITextStoreACPSink* This,DWORD dwFlags,const TS_TEXTCHANGE *pChange) {
    283     return This->lpVtbl->OnTextChange(This,dwFlags,pChange);
    284 }
    285 static FORCEINLINE HRESULT ITextStoreACPSink_OnSelectionChange(ITextStoreACPSink* This) {
    286     return This->lpVtbl->OnSelectionChange(This);
    287 }
    288 static FORCEINLINE HRESULT ITextStoreACPSink_OnLayoutChange(ITextStoreACPSink* This,TsLayoutCode lcode,TsViewCookie vcView) {
    289     return This->lpVtbl->OnLayoutChange(This,lcode,vcView);
    290 }
    291 static FORCEINLINE HRESULT ITextStoreACPSink_OnStatusChange(ITextStoreACPSink* This,DWORD dwFlags) {
    292     return This->lpVtbl->OnStatusChange(This,dwFlags);
    293 }
    294 static FORCEINLINE HRESULT ITextStoreACPSink_OnAttrsChange(ITextStoreACPSink* This,LONG acpStart,LONG acpEnd,ULONG cAttrs,const TS_ATTRID *paAttrs) {
    295     return This->lpVtbl->OnAttrsChange(This,acpStart,acpEnd,cAttrs,paAttrs);
    296 }
    297 static FORCEINLINE HRESULT ITextStoreACPSink_OnLockGranted(ITextStoreACPSink* This,DWORD dwLockFlags) {
    298     return This->lpVtbl->OnLockGranted(This,dwLockFlags);
    299 }
    300 static FORCEINLINE HRESULT ITextStoreACPSink_OnStartEditTransaction(ITextStoreACPSink* This) {
    301     return This->lpVtbl->OnStartEditTransaction(This);
    302 }
    303 static FORCEINLINE HRESULT ITextStoreACPSink_OnEndEditTransaction(ITextStoreACPSink* This) {
    304     return This->lpVtbl->OnEndEditTransaction(This);
    305 }
    306 #endif
    307 #endif
    308 
    309 #endif
    310 
    311 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnTextChange_Proxy(
    312     ITextStoreACPSink* This,
    313     DWORD dwFlags,
    314     const TS_TEXTCHANGE *pChange);
    315 void __RPC_STUB ITextStoreACPSink_OnTextChange_Stub(
    316     IRpcStubBuffer* This,
    317     IRpcChannelBuffer* pRpcChannelBuffer,
    318     PRPC_MESSAGE pRpcMessage,
    319     DWORD* pdwStubPhase);
    320 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnSelectionChange_Proxy(
    321     ITextStoreACPSink* This);
    322 void __RPC_STUB ITextStoreACPSink_OnSelectionChange_Stub(
    323     IRpcStubBuffer* This,
    324     IRpcChannelBuffer* pRpcChannelBuffer,
    325     PRPC_MESSAGE pRpcMessage,
    326     DWORD* pdwStubPhase);
    327 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnLayoutChange_Proxy(
    328     ITextStoreACPSink* This,
    329     TsLayoutCode lcode,
    330     TsViewCookie vcView);
    331 void __RPC_STUB ITextStoreACPSink_OnLayoutChange_Stub(
    332     IRpcStubBuffer* This,
    333     IRpcChannelBuffer* pRpcChannelBuffer,
    334     PRPC_MESSAGE pRpcMessage,
    335     DWORD* pdwStubPhase);
    336 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnStatusChange_Proxy(
    337     ITextStoreACPSink* This,
    338     DWORD dwFlags);
    339 void __RPC_STUB ITextStoreACPSink_OnStatusChange_Stub(
    340     IRpcStubBuffer* This,
    341     IRpcChannelBuffer* pRpcChannelBuffer,
    342     PRPC_MESSAGE pRpcMessage,
    343     DWORD* pdwStubPhase);
    344 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnAttrsChange_Proxy(
    345     ITextStoreACPSink* This,
    346     LONG acpStart,
    347     LONG acpEnd,
    348     ULONG cAttrs,
    349     const TS_ATTRID *paAttrs);
    350 void __RPC_STUB ITextStoreACPSink_OnAttrsChange_Stub(
    351     IRpcStubBuffer* This,
    352     IRpcChannelBuffer* pRpcChannelBuffer,
    353     PRPC_MESSAGE pRpcMessage,
    354     DWORD* pdwStubPhase);
    355 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnLockGranted_Proxy(
    356     ITextStoreACPSink* This,
    357     DWORD dwLockFlags);
    358 void __RPC_STUB ITextStoreACPSink_OnLockGranted_Stub(
    359     IRpcStubBuffer* This,
    360     IRpcChannelBuffer* pRpcChannelBuffer,
    361     PRPC_MESSAGE pRpcMessage,
    362     DWORD* pdwStubPhase);
    363 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnStartEditTransaction_Proxy(
    364     ITextStoreACPSink* This);
    365 void __RPC_STUB ITextStoreACPSink_OnStartEditTransaction_Stub(
    366     IRpcStubBuffer* This,
    367     IRpcChannelBuffer* pRpcChannelBuffer,
    368     PRPC_MESSAGE pRpcMessage,
    369     DWORD* pdwStubPhase);
    370 HRESULT STDMETHODCALLTYPE ITextStoreACPSink_OnEndEditTransaction_Proxy(
    371     ITextStoreACPSink* This);
    372 void __RPC_STUB ITextStoreACPSink_OnEndEditTransaction_Stub(
    373     IRpcStubBuffer* This,
    374     IRpcChannelBuffer* pRpcChannelBuffer,
    375     PRPC_MESSAGE pRpcMessage,
    376     DWORD* pdwStubPhase);
    377 
    378 #endif  /* __ITextStoreACPSink_INTERFACE_DEFINED__ */
    379 
    380 /*****************************************************************************
    381  * ITextStoreACP interface
    382  */
    383 #ifndef __ITextStoreACP_INTERFACE_DEFINED__
    384 #define __ITextStoreACP_INTERFACE_DEFINED__
    385 
    386 DEFINE_GUID(IID_ITextStoreACP, 0x28888fe3, 0xc2a0, 0x483a, 0xa3,0xea, 0x8c,0xb1,0xce,0x51,0xff,0x3d);
    387 #if defined(__cplusplus) && !defined(CINTERFACE)
    388 MIDL_INTERFACE("28888fe3-c2a0-483a-a3ea-8cb1ce51ff3d")
    389 ITextStoreACP : public IUnknown
    390 {
    391     virtual HRESULT STDMETHODCALLTYPE AdviseSink(
    392         REFIID riid,
    393         IUnknown *punk,
    394         DWORD dwMask) = 0;
    395 
    396     virtual HRESULT STDMETHODCALLTYPE UnadviseSink(
    397         IUnknown *punk) = 0;
    398 
    399     virtual HRESULT STDMETHODCALLTYPE RequestLock(
    400         DWORD dwLockFlags,
    401         HRESULT *phrSession) = 0;
    402 
    403     virtual HRESULT STDMETHODCALLTYPE GetStatus(
    404         TS_STATUS *pdcs) = 0;
    405 
    406     virtual HRESULT STDMETHODCALLTYPE QueryInsert(
    407         LONG acpTestStart,
    408         LONG acpTestEnd,
    409         ULONG cch,
    410         LONG *pacpResultStart,
    411         LONG *pacpResultEnd) = 0;
    412 
    413     virtual HRESULT STDMETHODCALLTYPE GetSelection(
    414         ULONG ulIndex,
    415         ULONG ulCount,
    416         TS_SELECTION_ACP *pSelection,
    417         ULONG *pcFetched) = 0;
    418 
    419     virtual HRESULT STDMETHODCALLTYPE SetSelection(
    420         ULONG ulCount,
    421         const TS_SELECTION_ACP *pSelection) = 0;
    422 
    423     virtual HRESULT STDMETHODCALLTYPE GetText(
    424         LONG acpStart,
    425         LONG acpEnd,
    426         WCHAR *pchPlain,
    427         ULONG cchPlainReq,
    428         ULONG *pcchPlainRet,
    429         TS_RUNINFO *prgRunInfo,
    430         ULONG cRunInfoReq,
    431         ULONG *pcRunInfoRet,
    432         LONG *pacpNext) = 0;
    433 
    434     virtual HRESULT STDMETHODCALLTYPE SetText(
    435         DWORD dwFlags,
    436         LONG acpStart,
    437         LONG acpEnd,
    438         const WCHAR *pchText,
    439         ULONG cch,
    440         TS_TEXTCHANGE *pChange) = 0;
    441 
    442     virtual HRESULT STDMETHODCALLTYPE GetFormattedText(
    443         LONG acpStart,
    444         LONG acpEnd,
    445         IDataObject **ppDataObject) = 0;
    446 
    447     virtual HRESULT STDMETHODCALLTYPE GetEmbedded(
    448         LONG acpPos,
    449         REFGUID rguidService,
    450         REFIID riid,
    451         IUnknown **ppunk) = 0;
    452 
    453     virtual HRESULT STDMETHODCALLTYPE QueryInsertEmbedded(
    454         const GUID *pguidService,
    455         const FORMATETC *pFormatEtc,
    456         WINBOOL *pfInsertable) = 0;
    457 
    458     virtual HRESULT STDMETHODCALLTYPE InsertEmbedded(
    459         DWORD dwFlags,
    460         LONG acpStart,
    461         LONG acpEnd,
    462         IDataObject *pDataObject,
    463         TS_TEXTCHANGE *pChange) = 0;
    464 
    465     virtual HRESULT STDMETHODCALLTYPE InsertTextAtSelection(
    466         DWORD dwFlags,
    467         const WCHAR *pchText,
    468         ULONG cch,
    469         LONG *pacpStart,
    470         LONG *pacpEnd,
    471         TS_TEXTCHANGE *pChange) = 0;
    472 
    473     virtual HRESULT STDMETHODCALLTYPE InsertEmbeddedAtSelection(
    474         DWORD dwFlags,
    475         IDataObject *pDataObject,
    476         LONG *pacpStart,
    477         LONG *pacpEnd,
    478         TS_TEXTCHANGE *pChange) = 0;
    479 
    480     virtual HRESULT STDMETHODCALLTYPE RequestSupportedAttrs(
    481         DWORD dwFlags,
    482         ULONG cFilterAttrs,
    483         const TS_ATTRID *paFilterAttrs) = 0;
    484 
    485     virtual HRESULT STDMETHODCALLTYPE RequestAttrsAtPosition(
    486         LONG acpPos,
    487         ULONG cFilterAttrs,
    488         const TS_ATTRID *paFilterAttrs,
    489         DWORD dwFlags) = 0;
    490 
    491     virtual HRESULT STDMETHODCALLTYPE RequestAttrsTransitioningAtPosition(
    492         LONG acpPos,
    493         ULONG cFilterAttrs,
    494         const TS_ATTRID *paFilterAttrs,
    495         DWORD dwFlags) = 0;
    496 
    497     virtual HRESULT STDMETHODCALLTYPE FindNextAttrTransition(
    498         LONG acpStart,
    499         LONG acpHalt,
    500         ULONG cFilterAttrs,
    501         const TS_ATTRID *paFilterAttrs,
    502         DWORD dwFlags,
    503         LONG *pacpNext,
    504         WINBOOL *pfFound,
    505         LONG *plFoundOffset) = 0;
    506 
    507     virtual HRESULT STDMETHODCALLTYPE RetrieveRequestedAttrs(
    508         ULONG ulCount,
    509         TS_ATTRVAL *paAttrVals,
    510         ULONG *pcFetched) = 0;
    511 
    512     virtual HRESULT STDMETHODCALLTYPE GetEndACP(
    513         LONG *pacp) = 0;
    514 
    515     virtual HRESULT STDMETHODCALLTYPE GetActiveView(
    516         TsViewCookie *pvcView) = 0;
    517 
    518     virtual HRESULT STDMETHODCALLTYPE GetACPFromPoint(
    519         TsViewCookie vcView,
    520         const POINT *ptScreen,
    521         DWORD dwFlags,
    522         LONG *pacp) = 0;
    523 
    524     virtual HRESULT STDMETHODCALLTYPE GetTextExt(
    525         TsViewCookie vcView,
    526         LONG acpStart,
    527         LONG acpEnd,
    528         RECT *prc,
    529         WINBOOL *pfClipped) = 0;
    530 
    531     virtual HRESULT STDMETHODCALLTYPE GetScreenExt(
    532         TsViewCookie vcView,
    533         RECT *prc) = 0;
    534 
    535     virtual HRESULT STDMETHODCALLTYPE GetWnd(
    536         TsViewCookie vcView,
    537         HWND *phwnd) = 0;
    538 
    539 };
    540 #ifdef __CRT_UUID_DECL
    541 __CRT_UUID_DECL(ITextStoreACP, 0x28888fe3, 0xc2a0, 0x483a, 0xa3,0xea, 0x8c,0xb1,0xce,0x51,0xff,0x3d)
    542 #endif
    543 #else
    544 typedef struct ITextStoreACPVtbl {
    545     BEGIN_INTERFACE
    546 
    547     /*** IUnknown methods ***/
    548     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    549         ITextStoreACP* This,
    550         REFIID riid,
    551         void **ppvObject);
    552 
    553     ULONG (STDMETHODCALLTYPE *AddRef)(
    554         ITextStoreACP* This);
    555 
    556     ULONG (STDMETHODCALLTYPE *Release)(
    557         ITextStoreACP* This);
    558 
    559     /*** ITextStoreACP methods ***/
    560     HRESULT (STDMETHODCALLTYPE *AdviseSink)(
    561         ITextStoreACP* This,
    562         REFIID riid,
    563         IUnknown *punk,
    564         DWORD dwMask);
    565 
    566     HRESULT (STDMETHODCALLTYPE *UnadviseSink)(
    567         ITextStoreACP* This,
    568         IUnknown *punk);
    569 
    570     HRESULT (STDMETHODCALLTYPE *RequestLock)(
    571         ITextStoreACP* This,
    572         DWORD dwLockFlags,
    573         HRESULT *phrSession);
    574 
    575     HRESULT (STDMETHODCALLTYPE *GetStatus)(
    576         ITextStoreACP* This,
    577         TS_STATUS *pdcs);
    578 
    579     HRESULT (STDMETHODCALLTYPE *QueryInsert)(
    580         ITextStoreACP* This,
    581         LONG acpTestStart,
    582         LONG acpTestEnd,
    583         ULONG cch,
    584         LONG *pacpResultStart,
    585         LONG *pacpResultEnd);
    586 
    587     HRESULT (STDMETHODCALLTYPE *GetSelection)(
    588         ITextStoreACP* This,
    589         ULONG ulIndex,
    590         ULONG ulCount,
    591         TS_SELECTION_ACP *pSelection,
    592         ULONG *pcFetched);
    593 
    594     HRESULT (STDMETHODCALLTYPE *SetSelection)(
    595         ITextStoreACP* This,
    596         ULONG ulCount,
    597         const TS_SELECTION_ACP *pSelection);
    598 
    599     HRESULT (STDMETHODCALLTYPE *GetText)(
    600         ITextStoreACP* This,
    601         LONG acpStart,
    602         LONG acpEnd,
    603         WCHAR *pchPlain,
    604         ULONG cchPlainReq,
    605         ULONG *pcchPlainRet,
    606         TS_RUNINFO *prgRunInfo,
    607         ULONG cRunInfoReq,
    608         ULONG *pcRunInfoRet,
    609         LONG *pacpNext);
    610 
    611     HRESULT (STDMETHODCALLTYPE *SetText)(
    612         ITextStoreACP* This,
    613         DWORD dwFlags,
    614         LONG acpStart,
    615         LONG acpEnd,
    616         const WCHAR *pchText,
    617         ULONG cch,
    618         TS_TEXTCHANGE *pChange);
    619 
    620     HRESULT (STDMETHODCALLTYPE *GetFormattedText)(
    621         ITextStoreACP* This,
    622         LONG acpStart,
    623         LONG acpEnd,
    624         IDataObject **ppDataObject);
    625 
    626     HRESULT (STDMETHODCALLTYPE *GetEmbedded)(
    627         ITextStoreACP* This,
    628         LONG acpPos,
    629         REFGUID rguidService,
    630         REFIID riid,
    631         IUnknown **ppunk);
    632 
    633     HRESULT (STDMETHODCALLTYPE *QueryInsertEmbedded)(
    634         ITextStoreACP* This,
    635         const GUID *pguidService,
    636         const FORMATETC *pFormatEtc,
    637         WINBOOL *pfInsertable);
    638 
    639     HRESULT (STDMETHODCALLTYPE *InsertEmbedded)(
    640         ITextStoreACP* This,
    641         DWORD dwFlags,
    642         LONG acpStart,
    643         LONG acpEnd,
    644         IDataObject *pDataObject,
    645         TS_TEXTCHANGE *pChange);
    646 
    647     HRESULT (STDMETHODCALLTYPE *InsertTextAtSelection)(
    648         ITextStoreACP* This,
    649         DWORD dwFlags,
    650         const WCHAR *pchText,
    651         ULONG cch,
    652         LONG *pacpStart,
    653         LONG *pacpEnd,
    654         TS_TEXTCHANGE *pChange);
    655 
    656     HRESULT (STDMETHODCALLTYPE *InsertEmbeddedAtSelection)(
    657         ITextStoreACP* This,
    658         DWORD dwFlags,
    659         IDataObject *pDataObject,
    660         LONG *pacpStart,
    661         LONG *pacpEnd,
    662         TS_TEXTCHANGE *pChange);
    663 
    664     HRESULT (STDMETHODCALLTYPE *RequestSupportedAttrs)(
    665         ITextStoreACP* This,
    666         DWORD dwFlags,
    667         ULONG cFilterAttrs,
    668         const TS_ATTRID *paFilterAttrs);
    669 
    670     HRESULT (STDMETHODCALLTYPE *RequestAttrsAtPosition)(
    671         ITextStoreACP* This,
    672         LONG acpPos,
    673         ULONG cFilterAttrs,
    674         const TS_ATTRID *paFilterAttrs,
    675         DWORD dwFlags);
    676 
    677     HRESULT (STDMETHODCALLTYPE *RequestAttrsTransitioningAtPosition)(
    678         ITextStoreACP* This,
    679         LONG acpPos,
    680         ULONG cFilterAttrs,
    681         const TS_ATTRID *paFilterAttrs,
    682         DWORD dwFlags);
    683 
    684     HRESULT (STDMETHODCALLTYPE *FindNextAttrTransition)(
    685         ITextStoreACP* This,
    686         LONG acpStart,
    687         LONG acpHalt,
    688         ULONG cFilterAttrs,
    689         const TS_ATTRID *paFilterAttrs,
    690         DWORD dwFlags,
    691         LONG *pacpNext,
    692         WINBOOL *pfFound,
    693         LONG *plFoundOffset);
    694 
    695     HRESULT (STDMETHODCALLTYPE *RetrieveRequestedAttrs)(
    696         ITextStoreACP* This,
    697         ULONG ulCount,
    698         TS_ATTRVAL *paAttrVals,
    699         ULONG *pcFetched);
    700 
    701     HRESULT (STDMETHODCALLTYPE *GetEndACP)(
    702         ITextStoreACP* This,
    703         LONG *pacp);
    704 
    705     HRESULT (STDMETHODCALLTYPE *GetActiveView)(
    706         ITextStoreACP* This,
    707         TsViewCookie *pvcView);
    708 
    709     HRESULT (STDMETHODCALLTYPE *GetACPFromPoint)(
    710         ITextStoreACP* This,
    711         TsViewCookie vcView,
    712         const POINT *ptScreen,
    713         DWORD dwFlags,
    714         LONG *pacp);
    715 
    716     HRESULT (STDMETHODCALLTYPE *GetTextExt)(
    717         ITextStoreACP* This,
    718         TsViewCookie vcView,
    719         LONG acpStart,
    720         LONG acpEnd,
    721         RECT *prc,
    722         WINBOOL *pfClipped);
    723 
    724     HRESULT (STDMETHODCALLTYPE *GetScreenExt)(
    725         ITextStoreACP* This,
    726         TsViewCookie vcView,
    727         RECT *prc);
    728 
    729     HRESULT (STDMETHODCALLTYPE *GetWnd)(
    730         ITextStoreACP* This,
    731         TsViewCookie vcView,
    732         HWND *phwnd);
    733 
    734     END_INTERFACE
    735 } ITextStoreACPVtbl;
    736 interface ITextStoreACP {
    737     CONST_VTBL ITextStoreACPVtbl* lpVtbl;
    738 };
    739 
    740 #ifdef COBJMACROS
    741 #ifndef WIDL_C_INLINE_WRAPPERS
    742 /*** IUnknown methods ***/
    743 #define ITextStoreACP_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    744 #define ITextStoreACP_AddRef(This) (This)->lpVtbl->AddRef(This)
    745 #define ITextStoreACP_Release(This) (This)->lpVtbl->Release(This)
    746 /*** ITextStoreACP methods ***/
    747 #define ITextStoreACP_AdviseSink(This,riid,punk,dwMask) (This)->lpVtbl->AdviseSink(This,riid,punk,dwMask)
    748 #define ITextStoreACP_UnadviseSink(This,punk) (This)->lpVtbl->UnadviseSink(This,punk)
    749 #define ITextStoreACP_RequestLock(This,dwLockFlags,phrSession) (This)->lpVtbl->RequestLock(This,dwLockFlags,phrSession)
    750 #define ITextStoreACP_GetStatus(This,pdcs) (This)->lpVtbl->GetStatus(This,pdcs)
    751 #define ITextStoreACP_QueryInsert(This,acpTestStart,acpTestEnd,cch,pacpResultStart,pacpResultEnd) (This)->lpVtbl->QueryInsert(This,acpTestStart,acpTestEnd,cch,pacpResultStart,pacpResultEnd)
    752 #define ITextStoreACP_GetSelection(This,ulIndex,ulCount,pSelection,pcFetched) (This)->lpVtbl->GetSelection(This,ulIndex,ulCount,pSelection,pcFetched)
    753 #define ITextStoreACP_SetSelection(This,ulCount,pSelection) (This)->lpVtbl->SetSelection(This,ulCount,pSelection)
    754 #define ITextStoreACP_GetText(This,acpStart,acpEnd,pchPlain,cchPlainReq,pcchPlainRet,prgRunInfo,cRunInfoReq,pcRunInfoRet,pacpNext) (This)->lpVtbl->GetText(This,acpStart,acpEnd,pchPlain,cchPlainReq,pcchPlainRet,prgRunInfo,cRunInfoReq,pcRunInfoRet,pacpNext)
    755 #define ITextStoreACP_SetText(This,dwFlags,acpStart,acpEnd,pchText,cch,pChange) (This)->lpVtbl->SetText(This,dwFlags,acpStart,acpEnd,pchText,cch,pChange)
    756 #define ITextStoreACP_GetFormattedText(This,acpStart,acpEnd,ppDataObject) (This)->lpVtbl->GetFormattedText(This,acpStart,acpEnd,ppDataObject)
    757 #define ITextStoreACP_GetEmbedded(This,acpPos,rguidService,riid,ppunk) (This)->lpVtbl->GetEmbedded(This,acpPos,rguidService,riid,ppunk)
    758 #define ITextStoreACP_QueryInsertEmbedded(This,pguidService,pFormatEtc,pfInsertable) (This)->lpVtbl->QueryInsertEmbedded(This,pguidService,pFormatEtc,pfInsertable)
    759 #define ITextStoreACP_InsertEmbedded(This,dwFlags,acpStart,acpEnd,pDataObject,pChange) (This)->lpVtbl->InsertEmbedded(This,dwFlags,acpStart,acpEnd,pDataObject,pChange)
    760 #define ITextStoreACP_InsertTextAtSelection(This,dwFlags,pchText,cch,pacpStart,pacpEnd,pChange) (This)->lpVtbl->InsertTextAtSelection(This,dwFlags,pchText,cch,pacpStart,pacpEnd,pChange)
    761 #define ITextStoreACP_InsertEmbeddedAtSelection(This,dwFlags,pDataObject,pacpStart,pacpEnd,pChange) (This)->lpVtbl->InsertEmbeddedAtSelection(This,dwFlags,pDataObject,pacpStart,pacpEnd,pChange)
    762 #define ITextStoreACP_RequestSupportedAttrs(This,dwFlags,cFilterAttrs,paFilterAttrs) (This)->lpVtbl->RequestSupportedAttrs(This,dwFlags,cFilterAttrs,paFilterAttrs)
    763 #define ITextStoreACP_RequestAttrsAtPosition(This,acpPos,cFilterAttrs,paFilterAttrs,dwFlags) (This)->lpVtbl->RequestAttrsAtPosition(This,acpPos,cFilterAttrs,paFilterAttrs,dwFlags)
    764 #define ITextStoreACP_RequestAttrsTransitioningAtPosition(This,acpPos,cFilterAttrs,paFilterAttrs,dwFlags) (This)->lpVtbl->RequestAttrsTransitioningAtPosition(This,acpPos,cFilterAttrs,paFilterAttrs,dwFlags)
    765 #define ITextStoreACP_FindNextAttrTransition(This,acpStart,acpHalt,cFilterAttrs,paFilterAttrs,dwFlags,pacpNext,pfFound,plFoundOffset) (This)->lpVtbl->FindNextAttrTransition(This,acpStart,acpHalt,cFilterAttrs,paFilterAttrs,dwFlags,pacpNext,pfFound,plFoundOffset)
    766 #define ITextStoreACP_RetrieveRequestedAttrs(This,ulCount,paAttrVals,pcFetched) (This)->lpVtbl->RetrieveRequestedAttrs(This,ulCount,paAttrVals,pcFetched)
    767 #define ITextStoreACP_GetEndACP(This,pacp) (This)->lpVtbl->GetEndACP(This,pacp)
    768 #define ITextStoreACP_GetActiveView(This,pvcView) (This)->lpVtbl->GetActiveView(This,pvcView)
    769 #define ITextStoreACP_GetACPFromPoint(This,vcView,ptScreen,dwFlags,pacp) (This)->lpVtbl->GetACPFromPoint(This,vcView,ptScreen,dwFlags,pacp)
    770 #define ITextStoreACP_GetTextExt(This,vcView,acpStart,acpEnd,prc,pfClipped) (This)->lpVtbl->GetTextExt(This,vcView,acpStart,acpEnd,prc,pfClipped)
    771 #define ITextStoreACP_GetScreenExt(This,vcView,prc) (This)->lpVtbl->GetScreenExt(This,vcView,prc)
    772 #define ITextStoreACP_GetWnd(This,vcView,phwnd) (This)->lpVtbl->GetWnd(This,vcView,phwnd)
    773 #else
    774 /*** IUnknown methods ***/
    775 static FORCEINLINE HRESULT ITextStoreACP_QueryInterface(ITextStoreACP* This,REFIID riid,void **ppvObject) {
    776     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    777 }
    778 static FORCEINLINE ULONG ITextStoreACP_AddRef(ITextStoreACP* This) {
    779     return This->lpVtbl->AddRef(This);
    780 }
    781 static FORCEINLINE ULONG ITextStoreACP_Release(ITextStoreACP* This) {
    782     return This->lpVtbl->Release(This);
    783 }
    784 /*** ITextStoreACP methods ***/
    785 static FORCEINLINE HRESULT ITextStoreACP_AdviseSink(ITextStoreACP* This,REFIID riid,IUnknown *punk,DWORD dwMask) {
    786     return This->lpVtbl->AdviseSink(This,riid,punk,dwMask);
    787 }
    788 static FORCEINLINE HRESULT ITextStoreACP_UnadviseSink(ITextStoreACP* This,IUnknown *punk) {
    789     return This->lpVtbl->UnadviseSink(This,punk);
    790 }
    791 static FORCEINLINE HRESULT ITextStoreACP_RequestLock(ITextStoreACP* This,DWORD dwLockFlags,HRESULT *phrSession) {
    792     return This->lpVtbl->RequestLock(This,dwLockFlags,phrSession);
    793 }
    794 static FORCEINLINE HRESULT ITextStoreACP_GetStatus(ITextStoreACP* This,TS_STATUS *pdcs) {
    795     return This->lpVtbl->GetStatus(This,pdcs);
    796 }
    797 static FORCEINLINE HRESULT ITextStoreACP_QueryInsert(ITextStoreACP* This,LONG acpTestStart,LONG acpTestEnd,ULONG cch,LONG *pacpResultStart,LONG *pacpResultEnd) {
    798     return This->lpVtbl->QueryInsert(This,acpTestStart,acpTestEnd,cch,pacpResultStart,pacpResultEnd);
    799 }
    800 static FORCEINLINE HRESULT ITextStoreACP_GetSelection(ITextStoreACP* This,ULONG ulIndex,ULONG ulCount,TS_SELECTION_ACP *pSelection,ULONG *pcFetched) {
    801     return This->lpVtbl->GetSelection(This,ulIndex,ulCount,pSelection,pcFetched);
    802 }
    803 static FORCEINLINE HRESULT ITextStoreACP_SetSelection(ITextStoreACP* This,ULONG ulCount,const TS_SELECTION_ACP *pSelection) {
    804     return This->lpVtbl->SetSelection(This,ulCount,pSelection);
    805 }
    806 static FORCEINLINE HRESULT ITextStoreACP_GetText(ITextStoreACP* This,LONG acpStart,LONG acpEnd,WCHAR *pchPlain,ULONG cchPlainReq,ULONG *pcchPlainRet,TS_RUNINFO *prgRunInfo,ULONG cRunInfoReq,ULONG *pcRunInfoRet,LONG *pacpNext) {
    807     return This->lpVtbl->GetText(This,acpStart,acpEnd,pchPlain,cchPlainReq,pcchPlainRet,prgRunInfo,cRunInfoReq,pcRunInfoRet,pacpNext);
    808 }
    809 static FORCEINLINE HRESULT ITextStoreACP_SetText(ITextStoreACP* This,DWORD dwFlags,LONG acpStart,LONG acpEnd,const WCHAR *pchText,ULONG cch,TS_TEXTCHANGE *pChange) {
    810     return This->lpVtbl->SetText(This,dwFlags,acpStart,acpEnd,pchText,cch,pChange);
    811 }
    812 static FORCEINLINE HRESULT ITextStoreACP_GetFormattedText(ITextStoreACP* This,LONG acpStart,LONG acpEnd,IDataObject **ppDataObject) {
    813     return This->lpVtbl->GetFormattedText(This,acpStart,acpEnd,ppDataObject);
    814 }
    815 static FORCEINLINE HRESULT ITextStoreACP_GetEmbedded(ITextStoreACP* This,LONG acpPos,REFGUID rguidService,REFIID riid,IUnknown **ppunk) {
    816     return This->lpVtbl->GetEmbedded(This,acpPos,rguidService,riid,ppunk);
    817 }
    818 static FORCEINLINE HRESULT ITextStoreACP_QueryInsertEmbedded(ITextStoreACP* This,const GUID *pguidService,const FORMATETC *pFormatEtc,WINBOOL *pfInsertable) {
    819     return This->lpVtbl->QueryInsertEmbedded(This,pguidService,pFormatEtc,pfInsertable);
    820 }
    821 static FORCEINLINE HRESULT ITextStoreACP_InsertEmbedded(ITextStoreACP* This,DWORD dwFlags,LONG acpStart,LONG acpEnd,IDataObject *pDataObject,TS_TEXTCHANGE *pChange) {
    822     return This->lpVtbl->InsertEmbedded(This,dwFlags,acpStart,acpEnd,pDataObject,pChange);
    823 }
    824 static FORCEINLINE HRESULT ITextStoreACP_InsertTextAtSelection(ITextStoreACP* This,DWORD dwFlags,const WCHAR *pchText,ULONG cch,LONG *pacpStart,LONG *pacpEnd,TS_TEXTCHANGE *pChange) {
    825     return This->lpVtbl->InsertTextAtSelection(This,dwFlags,pchText,cch,pacpStart,pacpEnd,pChange);
    826 }
    827 static FORCEINLINE HRESULT ITextStoreACP_InsertEmbeddedAtSelection(ITextStoreACP* This,DWORD dwFlags,IDataObject *pDataObject,LONG *pacpStart,LONG *pacpEnd,TS_TEXTCHANGE *pChange) {
    828     return This->lpVtbl->InsertEmbeddedAtSelection(This,dwFlags,pDataObject,pacpStart,pacpEnd,pChange);
    829 }
    830 static FORCEINLINE HRESULT ITextStoreACP_RequestSupportedAttrs(ITextStoreACP* This,DWORD dwFlags,ULONG cFilterAttrs,const TS_ATTRID *paFilterAttrs) {
    831     return This->lpVtbl->RequestSupportedAttrs(This,dwFlags,cFilterAttrs,paFilterAttrs);
    832 }
    833 static FORCEINLINE HRESULT ITextStoreACP_RequestAttrsAtPosition(ITextStoreACP* This,LONG acpPos,ULONG cFilterAttrs,const TS_ATTRID *paFilterAttrs,DWORD dwFlags) {
    834     return This->lpVtbl->RequestAttrsAtPosition(This,acpPos,cFilterAttrs,paFilterAttrs,dwFlags);
    835 }
    836 static FORCEINLINE HRESULT ITextStoreACP_RequestAttrsTransitioningAtPosition(ITextStoreACP* This,LONG acpPos,ULONG cFilterAttrs,const TS_ATTRID *paFilterAttrs,DWORD dwFlags) {
    837     return This->lpVtbl->RequestAttrsTransitioningAtPosition(This,acpPos,cFilterAttrs,paFilterAttrs,dwFlags);
    838 }
    839 static FORCEINLINE HRESULT ITextStoreACP_FindNextAttrTransition(ITextStoreACP* This,LONG acpStart,LONG acpHalt,ULONG cFilterAttrs,const TS_ATTRID *paFilterAttrs,DWORD dwFlags,LONG *pacpNext,WINBOOL *pfFound,LONG *plFoundOffset) {
    840     return This->lpVtbl->FindNextAttrTransition(This,acpStart,acpHalt,cFilterAttrs,paFilterAttrs,dwFlags,pacpNext,pfFound,plFoundOffset);
    841 }
    842 static FORCEINLINE HRESULT ITextStoreACP_RetrieveRequestedAttrs(ITextStoreACP* This,ULONG ulCount,TS_ATTRVAL *paAttrVals,ULONG *pcFetched) {
    843     return This->lpVtbl->RetrieveRequestedAttrs(This,ulCount,paAttrVals,pcFetched);
    844 }
    845 static FORCEINLINE HRESULT ITextStoreACP_GetEndACP(ITextStoreACP* This,LONG *pacp) {
    846     return This->lpVtbl->GetEndACP(This,pacp);
    847 }
    848 static FORCEINLINE HRESULT ITextStoreACP_GetActiveView(ITextStoreACP* This,TsViewCookie *pvcView) {
    849     return This->lpVtbl->GetActiveView(This,pvcView);
    850 }
    851 static FORCEINLINE HRESULT ITextStoreACP_GetACPFromPoint(ITextStoreACP* This,TsViewCookie vcView,const POINT *ptScreen,DWORD dwFlags,LONG *pacp) {
    852     return This->lpVtbl->GetACPFromPoint(This,vcView,ptScreen,dwFlags,pacp);
    853 }
    854 static FORCEINLINE HRESULT ITextStoreACP_GetTextExt(ITextStoreACP* This,TsViewCookie vcView,LONG acpStart,LONG acpEnd,RECT *prc,WINBOOL *pfClipped) {
    855     return This->lpVtbl->GetTextExt(This,vcView,acpStart,acpEnd,prc,pfClipped);
    856 }
    857 static FORCEINLINE HRESULT ITextStoreACP_GetScreenExt(ITextStoreACP* This,TsViewCookie vcView,RECT *prc) {
    858     return This->lpVtbl->GetScreenExt(This,vcView,prc);
    859 }
    860 static FORCEINLINE HRESULT ITextStoreACP_GetWnd(ITextStoreACP* This,TsViewCookie vcView,HWND *phwnd) {
    861     return This->lpVtbl->GetWnd(This,vcView,phwnd);
    862 }
    863 #endif
    864 #endif
    865 
    866 #endif
    867 
    868 HRESULT STDMETHODCALLTYPE ITextStoreACP_AdviseSink_Proxy(
    869     ITextStoreACP* This,
    870     REFIID riid,
    871     IUnknown *punk,
    872     DWORD dwMask);
    873 void __RPC_STUB ITextStoreACP_AdviseSink_Stub(
    874     IRpcStubBuffer* This,
    875     IRpcChannelBuffer* pRpcChannelBuffer,
    876     PRPC_MESSAGE pRpcMessage,
    877     DWORD* pdwStubPhase);
    878 HRESULT STDMETHODCALLTYPE ITextStoreACP_UnadviseSink_Proxy(
    879     ITextStoreACP* This,
    880     IUnknown *punk);
    881 void __RPC_STUB ITextStoreACP_UnadviseSink_Stub(
    882     IRpcStubBuffer* This,
    883     IRpcChannelBuffer* pRpcChannelBuffer,
    884     PRPC_MESSAGE pRpcMessage,
    885     DWORD* pdwStubPhase);
    886 HRESULT STDMETHODCALLTYPE ITextStoreACP_RequestLock_Proxy(
    887     ITextStoreACP* This,
    888     DWORD dwLockFlags,
    889     HRESULT *phrSession);
    890 void __RPC_STUB ITextStoreACP_RequestLock_Stub(
    891     IRpcStubBuffer* This,
    892     IRpcChannelBuffer* pRpcChannelBuffer,
    893     PRPC_MESSAGE pRpcMessage,
    894     DWORD* pdwStubPhase);
    895 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetStatus_Proxy(
    896     ITextStoreACP* This,
    897     TS_STATUS *pdcs);
    898 void __RPC_STUB ITextStoreACP_GetStatus_Stub(
    899     IRpcStubBuffer* This,
    900     IRpcChannelBuffer* pRpcChannelBuffer,
    901     PRPC_MESSAGE pRpcMessage,
    902     DWORD* pdwStubPhase);
    903 HRESULT STDMETHODCALLTYPE ITextStoreACP_QueryInsert_Proxy(
    904     ITextStoreACP* This,
    905     LONG acpTestStart,
    906     LONG acpTestEnd,
    907     ULONG cch,
    908     LONG *pacpResultStart,
    909     LONG *pacpResultEnd);
    910 void __RPC_STUB ITextStoreACP_QueryInsert_Stub(
    911     IRpcStubBuffer* This,
    912     IRpcChannelBuffer* pRpcChannelBuffer,
    913     PRPC_MESSAGE pRpcMessage,
    914     DWORD* pdwStubPhase);
    915 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetSelection_Proxy(
    916     ITextStoreACP* This,
    917     ULONG ulIndex,
    918     ULONG ulCount,
    919     TS_SELECTION_ACP *pSelection,
    920     ULONG *pcFetched);
    921 void __RPC_STUB ITextStoreACP_GetSelection_Stub(
    922     IRpcStubBuffer* This,
    923     IRpcChannelBuffer* pRpcChannelBuffer,
    924     PRPC_MESSAGE pRpcMessage,
    925     DWORD* pdwStubPhase);
    926 HRESULT STDMETHODCALLTYPE ITextStoreACP_SetSelection_Proxy(
    927     ITextStoreACP* This,
    928     ULONG ulCount,
    929     const TS_SELECTION_ACP *pSelection);
    930 void __RPC_STUB ITextStoreACP_SetSelection_Stub(
    931     IRpcStubBuffer* This,
    932     IRpcChannelBuffer* pRpcChannelBuffer,
    933     PRPC_MESSAGE pRpcMessage,
    934     DWORD* pdwStubPhase);
    935 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetText_Proxy(
    936     ITextStoreACP* This,
    937     LONG acpStart,
    938     LONG acpEnd,
    939     WCHAR *pchPlain,
    940     ULONG cchPlainReq,
    941     ULONG *pcchPlainRet,
    942     TS_RUNINFO *prgRunInfo,
    943     ULONG cRunInfoReq,
    944     ULONG *pcRunInfoRet,
    945     LONG *pacpNext);
    946 void __RPC_STUB ITextStoreACP_GetText_Stub(
    947     IRpcStubBuffer* This,
    948     IRpcChannelBuffer* pRpcChannelBuffer,
    949     PRPC_MESSAGE pRpcMessage,
    950     DWORD* pdwStubPhase);
    951 HRESULT STDMETHODCALLTYPE ITextStoreACP_SetText_Proxy(
    952     ITextStoreACP* This,
    953     DWORD dwFlags,
    954     LONG acpStart,
    955     LONG acpEnd,
    956     const WCHAR *pchText,
    957     ULONG cch,
    958     TS_TEXTCHANGE *pChange);
    959 void __RPC_STUB ITextStoreACP_SetText_Stub(
    960     IRpcStubBuffer* This,
    961     IRpcChannelBuffer* pRpcChannelBuffer,
    962     PRPC_MESSAGE pRpcMessage,
    963     DWORD* pdwStubPhase);
    964 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetFormattedText_Proxy(
    965     ITextStoreACP* This,
    966     LONG acpStart,
    967     LONG acpEnd,
    968     IDataObject **ppDataObject);
    969 void __RPC_STUB ITextStoreACP_GetFormattedText_Stub(
    970     IRpcStubBuffer* This,
    971     IRpcChannelBuffer* pRpcChannelBuffer,
    972     PRPC_MESSAGE pRpcMessage,
    973     DWORD* pdwStubPhase);
    974 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetEmbedded_Proxy(
    975     ITextStoreACP* This,
    976     LONG acpPos,
    977     REFGUID rguidService,
    978     REFIID riid,
    979     IUnknown **ppunk);
    980 void __RPC_STUB ITextStoreACP_GetEmbedded_Stub(
    981     IRpcStubBuffer* This,
    982     IRpcChannelBuffer* pRpcChannelBuffer,
    983     PRPC_MESSAGE pRpcMessage,
    984     DWORD* pdwStubPhase);
    985 HRESULT STDMETHODCALLTYPE ITextStoreACP_QueryInsertEmbedded_Proxy(
    986     ITextStoreACP* This,
    987     const GUID *pguidService,
    988     const FORMATETC *pFormatEtc,
    989     WINBOOL *pfInsertable);
    990 void __RPC_STUB ITextStoreACP_QueryInsertEmbedded_Stub(
    991     IRpcStubBuffer* This,
    992     IRpcChannelBuffer* pRpcChannelBuffer,
    993     PRPC_MESSAGE pRpcMessage,
    994     DWORD* pdwStubPhase);
    995 HRESULT STDMETHODCALLTYPE ITextStoreACP_InsertEmbedded_Proxy(
    996     ITextStoreACP* This,
    997     DWORD dwFlags,
    998     LONG acpStart,
    999     LONG acpEnd,
   1000     IDataObject *pDataObject,
   1001     TS_TEXTCHANGE *pChange);
   1002 void __RPC_STUB ITextStoreACP_InsertEmbedded_Stub(
   1003     IRpcStubBuffer* This,
   1004     IRpcChannelBuffer* pRpcChannelBuffer,
   1005     PRPC_MESSAGE pRpcMessage,
   1006     DWORD* pdwStubPhase);
   1007 HRESULT STDMETHODCALLTYPE ITextStoreACP_InsertTextAtSelection_Proxy(
   1008     ITextStoreACP* This,
   1009     DWORD dwFlags,
   1010     const WCHAR *pchText,
   1011     ULONG cch,
   1012     LONG *pacpStart,
   1013     LONG *pacpEnd,
   1014     TS_TEXTCHANGE *pChange);
   1015 void __RPC_STUB ITextStoreACP_InsertTextAtSelection_Stub(
   1016     IRpcStubBuffer* This,
   1017     IRpcChannelBuffer* pRpcChannelBuffer,
   1018     PRPC_MESSAGE pRpcMessage,
   1019     DWORD* pdwStubPhase);
   1020 HRESULT STDMETHODCALLTYPE ITextStoreACP_InsertEmbeddedAtSelection_Proxy(
   1021     ITextStoreACP* This,
   1022     DWORD dwFlags,
   1023     IDataObject *pDataObject,
   1024     LONG *pacpStart,
   1025     LONG *pacpEnd,
   1026     TS_TEXTCHANGE *pChange);
   1027 void __RPC_STUB ITextStoreACP_InsertEmbeddedAtSelection_Stub(
   1028     IRpcStubBuffer* This,
   1029     IRpcChannelBuffer* pRpcChannelBuffer,
   1030     PRPC_MESSAGE pRpcMessage,
   1031     DWORD* pdwStubPhase);
   1032 HRESULT STDMETHODCALLTYPE ITextStoreACP_RequestSupportedAttrs_Proxy(
   1033     ITextStoreACP* This,
   1034     DWORD dwFlags,
   1035     ULONG cFilterAttrs,
   1036     const TS_ATTRID *paFilterAttrs);
   1037 void __RPC_STUB ITextStoreACP_RequestSupportedAttrs_Stub(
   1038     IRpcStubBuffer* This,
   1039     IRpcChannelBuffer* pRpcChannelBuffer,
   1040     PRPC_MESSAGE pRpcMessage,
   1041     DWORD* pdwStubPhase);
   1042 HRESULT STDMETHODCALLTYPE ITextStoreACP_RequestAttrsAtPosition_Proxy(
   1043     ITextStoreACP* This,
   1044     LONG acpPos,
   1045     ULONG cFilterAttrs,
   1046     const TS_ATTRID *paFilterAttrs,
   1047     DWORD dwFlags);
   1048 void __RPC_STUB ITextStoreACP_RequestAttrsAtPosition_Stub(
   1049     IRpcStubBuffer* This,
   1050     IRpcChannelBuffer* pRpcChannelBuffer,
   1051     PRPC_MESSAGE pRpcMessage,
   1052     DWORD* pdwStubPhase);
   1053 HRESULT STDMETHODCALLTYPE ITextStoreACP_RequestAttrsTransitioningAtPosition_Proxy(
   1054     ITextStoreACP* This,
   1055     LONG acpPos,
   1056     ULONG cFilterAttrs,
   1057     const TS_ATTRID *paFilterAttrs,
   1058     DWORD dwFlags);
   1059 void __RPC_STUB ITextStoreACP_RequestAttrsTransitioningAtPosition_Stub(
   1060     IRpcStubBuffer* This,
   1061     IRpcChannelBuffer* pRpcChannelBuffer,
   1062     PRPC_MESSAGE pRpcMessage,
   1063     DWORD* pdwStubPhase);
   1064 HRESULT STDMETHODCALLTYPE ITextStoreACP_FindNextAttrTransition_Proxy(
   1065     ITextStoreACP* This,
   1066     LONG acpStart,
   1067     LONG acpHalt,
   1068     ULONG cFilterAttrs,
   1069     const TS_ATTRID *paFilterAttrs,
   1070     DWORD dwFlags,
   1071     LONG *pacpNext,
   1072     WINBOOL *pfFound,
   1073     LONG *plFoundOffset);
   1074 void __RPC_STUB ITextStoreACP_FindNextAttrTransition_Stub(
   1075     IRpcStubBuffer* This,
   1076     IRpcChannelBuffer* pRpcChannelBuffer,
   1077     PRPC_MESSAGE pRpcMessage,
   1078     DWORD* pdwStubPhase);
   1079 HRESULT STDMETHODCALLTYPE ITextStoreACP_RetrieveRequestedAttrs_Proxy(
   1080     ITextStoreACP* This,
   1081     ULONG ulCount,
   1082     TS_ATTRVAL *paAttrVals,
   1083     ULONG *pcFetched);
   1084 void __RPC_STUB ITextStoreACP_RetrieveRequestedAttrs_Stub(
   1085     IRpcStubBuffer* This,
   1086     IRpcChannelBuffer* pRpcChannelBuffer,
   1087     PRPC_MESSAGE pRpcMessage,
   1088     DWORD* pdwStubPhase);
   1089 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetEndACP_Proxy(
   1090     ITextStoreACP* This,
   1091     LONG *pacp);
   1092 void __RPC_STUB ITextStoreACP_GetEndACP_Stub(
   1093     IRpcStubBuffer* This,
   1094     IRpcChannelBuffer* pRpcChannelBuffer,
   1095     PRPC_MESSAGE pRpcMessage,
   1096     DWORD* pdwStubPhase);
   1097 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetActiveView_Proxy(
   1098     ITextStoreACP* This,
   1099     TsViewCookie *pvcView);
   1100 void __RPC_STUB ITextStoreACP_GetActiveView_Stub(
   1101     IRpcStubBuffer* This,
   1102     IRpcChannelBuffer* pRpcChannelBuffer,
   1103     PRPC_MESSAGE pRpcMessage,
   1104     DWORD* pdwStubPhase);
   1105 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetACPFromPoint_Proxy(
   1106     ITextStoreACP* This,
   1107     TsViewCookie vcView,
   1108     const POINT *ptScreen,
   1109     DWORD dwFlags,
   1110     LONG *pacp);
   1111 void __RPC_STUB ITextStoreACP_GetACPFromPoint_Stub(
   1112     IRpcStubBuffer* This,
   1113     IRpcChannelBuffer* pRpcChannelBuffer,
   1114     PRPC_MESSAGE pRpcMessage,
   1115     DWORD* pdwStubPhase);
   1116 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetTextExt_Proxy(
   1117     ITextStoreACP* This,
   1118     TsViewCookie vcView,
   1119     LONG acpStart,
   1120     LONG acpEnd,
   1121     RECT *prc,
   1122     WINBOOL *pfClipped);
   1123 void __RPC_STUB ITextStoreACP_GetTextExt_Stub(
   1124     IRpcStubBuffer* This,
   1125     IRpcChannelBuffer* pRpcChannelBuffer,
   1126     PRPC_MESSAGE pRpcMessage,
   1127     DWORD* pdwStubPhase);
   1128 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetScreenExt_Proxy(
   1129     ITextStoreACP* This,
   1130     TsViewCookie vcView,
   1131     RECT *prc);
   1132 void __RPC_STUB ITextStoreACP_GetScreenExt_Stub(
   1133     IRpcStubBuffer* This,
   1134     IRpcChannelBuffer* pRpcChannelBuffer,
   1135     PRPC_MESSAGE pRpcMessage,
   1136     DWORD* pdwStubPhase);
   1137 HRESULT STDMETHODCALLTYPE ITextStoreACP_GetWnd_Proxy(
   1138     ITextStoreACP* This,
   1139     TsViewCookie vcView,
   1140     HWND *phwnd);
   1141 void __RPC_STUB ITextStoreACP_GetWnd_Stub(
   1142     IRpcStubBuffer* This,
   1143     IRpcChannelBuffer* pRpcChannelBuffer,
   1144     PRPC_MESSAGE pRpcMessage,
   1145     DWORD* pdwStubPhase);
   1146 
   1147 #endif  /* __ITextStoreACP_INTERFACE_DEFINED__ */
   1148 
   1149 /* Begin additional prototypes for all interfaces */
   1150 
   1151 ULONG           __RPC_USER CLIPFORMAT_UserSize     (ULONG *, ULONG, CLIPFORMAT *);
   1152 unsigned char * __RPC_USER CLIPFORMAT_UserMarshal  (ULONG *, unsigned char *, CLIPFORMAT *);
   1153 unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
   1154 void            __RPC_USER CLIPFORMAT_UserFree     (ULONG *, CLIPFORMAT *);
   1155 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
   1156 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
   1157 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
   1158 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
   1159 ULONG           __RPC_USER HWND_UserSize     (ULONG *, ULONG, HWND *);
   1160 unsigned char * __RPC_USER HWND_UserMarshal  (ULONG *, unsigned char *, HWND *);
   1161 unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
   1162 void            __RPC_USER HWND_UserFree     (ULONG *, HWND *);
   1163 
   1164 /* End additional prototypes */
   1165 
   1166 #ifdef __cplusplus
   1167 }
   1168 #endif
   1169 
   1170 #endif /* __textstor_h__ */
   1171