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