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