26cpp_quote(
"#define TF_E_ALREADY_EXISTS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0506)")
27cpp_quote("
#define TF_E_COMPOSITION_REJECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0508)")
28cpp_quote("#define TF_E_DISCONNECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0504)")
29cpp_quote("#define TF_E_EMPTYCONTEXT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0509)")
30cpp_quote("#define TF_E_FORMAT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x020A)")
31cpp_quote("#define TF_E_INVALIDPOINT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0207)")
32cpp_quote("#define TF_E_INVALIDPOS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200)")
33cpp_quote("#define TF_E_INVALIDVIEW MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0505)")
34cpp_quote("#define TF_E_LOCKED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0500)")
35cpp_quote("#define TF_E_NOINTERFACE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0204)")
36cpp_quote("#define TF_E_NOLAYOUT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0206)")
37cpp_quote("#define TF_E_NOLOCK MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201)")
38cpp_quote("#define TF_E_NOOBJECT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202)")
39cpp_quote("#define TF_E_NOPROVIDER MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0503)")
40cpp_quote("#define TF_E_NOSELECTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0205)")
41cpp_quote("#define TF_E_NOSERVICE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0203)")
42cpp_quote("#define TF_E_NOTOWNEDRANGE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0502)")
43cpp_quote("#define TF_E_RANGE_NOT_COVERED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0507)")
44cpp_quote("#define TF_E_READONLY MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0209)")
45cpp_quote("#define TF_E_STACKFULL MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0501)")
46cpp_quote("#define TF_E_SYNCHRONOUS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0208)")
47cpp_quote("#define TF_S_ASYNC MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0x0300)")
49cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateThreadMgr(_Out_ ITfThreadMgr **pptim);")
50cpp_quote("EXTERN_C HRESULT WINAPI TF_GetThreadMgr(_Out_ ITfThreadMgr **pptim);")
51cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateInputProcessorProfiles(_Out_ ITfInputProcessorProfiles **ppipr);")
52cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateLangBarMgr(_Out_ ITfLangBarMgr **pppbm);")
53cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateLangBarItemMgr(_Out_ ITfLangBarItemMgr **pplbim);")
54cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateCategoryMgr(_Out_ ITfCategoryMgr **ppcat);")
55cpp_quote("EXTERN_C HRESULT WINAPI TF_CreateDisplayAttributeMgr(_Out_ ITfDisplayAttributeMgr **ppdam);")
57cpp_quote("EXTERN_C const GUID GUID_PROP_TEXTOWNER;")
58cpp_quote("EXTERN_C const GUID GUID_PROP_ATTRIBUTE;")
59cpp_quote("EXTERN_C const GUID GUID_PROP_LANGID;")
60cpp_quote("EXTERN_C const GUID GUID_PROP_READING;")
61cpp_quote("EXTERN_C const GUID GUID_PROP_COMPOSING;")
63cpp_quote("EXTERN_C const CLSID CLSID_TF_ThreadMgr;")
64cpp_quote("EXTERN_C const CLSID CLSID_TF_InputProcessorProfiles;")
65cpp_quote("EXTERN_C const CLSID CLSID_TF_LangBarMgr;")
66cpp_quote("EXTERN_C const CLSID CLSID_TF_CategoryMgr;")
67cpp_quote("EXTERN_C const CLSID CLSID_TF_DisplayAttributeMgr;")
69/* GUIDs for Compartments */
70cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_KEYBOARD_DISABLED;")
71cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_KEYBOARD_OPENCLOSE;")
72cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_HANDWRITING_OPENCLOSE;")
73cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_SPEECH_DISABLED;")
74cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_SPEECH_OPENCLOSE;")
75cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_SPEECH_GLOBALSTATE;")
76cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_PERSISTMENUENABLED;")
77cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_EMPTYCONTEXT;")
78cpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_TIPUISTATUS;")
80/* GUIDs for Categories */
81cpp_quote("EXTERN_C const GUID GUID_TFCAT_TIP_KEYBOARD;")
82cpp_quote("EXTERN_C const GUID GUID_TFCAT_TIP_SPEECH;")
83cpp_quote("EXTERN_C const GUID GUID_TFCAT_TIP_HANDWRITING;")
84cpp_quote("EXTERN_C const GUID GUID_TFCAT_DISPLAYATTRIBUTEPROVIDER;")
86typedef [uuid(7213778c-7bb0-4270-b050-6189ee594e97)] DWORD TfEditCookie;
87typedef [uuid(de403c21-89fd-4f85-8b87-64584d063fbc)] DWORD TfClientId;
88typedef [uuid(88a9c478-f3ec-4763-8345-cd9250443f8d)] DWORD TfGuidAtom;
90cpp_quote("#define TF_MOD_ALT 0x0001")
91cpp_quote("#define TF_MOD_CONTROL 0x0002")
92cpp_quote("#define TF_MOD_SHIFT 0x0004")
93cpp_quote("#define TF_MOD_RALT 0x0008")
94cpp_quote("#define TF_MOD_RCONTROL 0x0010")
95cpp_quote("#define TF_MOD_RSHIFT 0x0020")
96cpp_quote("#define TF_MOD_LALT 0x0040")
97cpp_quote("#define TF_MOD_LCONTROL 0x0080")
98cpp_quote("#define TF_MOD_LSHIFT 0x0100")
99cpp_quote("#define TF_MOD_ON_KEYUP 0x0200")
100cpp_quote("#define TF_MOD_IGNORE_ALL_MODIFIER 0x0400")
102cpp_quote("#define TF_PROFILETYPE_INPUTPROCESSOR 0x0001")
103cpp_quote("#define TF_PROFILETYPE_KEYBOARDLAYOUT 0x0002")
105cpp_quote("#define TF_IPSINK_FLAG_ACTIVE 0x0001")
107interface ITfDocumentMgr;
109interface IEnumTfDocumentMgrs;
110interface IEnumTfContexts;
111interface ITfCompartmentMgr;
112interface ITfEditSession;
114interface ITfProperty;
115interface ITfReadOnlyProperty;
116interface IEnumTfLanguageProfiles;
117interface ITfCompositionView;
118interface ITfKeyEventSink;
119interface ITfPersistentPropertyLoaderACP;
120interface ITfRangeACP;
121interface ITfCleanupContextSink;
122interface ITfTextLayoutSink;
125typedef [uuid(4f5d560f-5ab5-4dde-8c4d-404592857ab0)] UINT_PTR HKL;
128typedef [uuid(e26d9e1d-691e-4f29-90d7-338dcf1f8cef)] struct TF_PERSISTENT_PROPERTY_HEADER_ACP
136} TF_PERSISTENT_PROPERTY_HEADER_ACP;
138typedef [uuid(e1b5808d-1e46-4c19-84dc-68c5f5978cc8)] struct TF_LANGUAGEPROFILE
147typedef [uuid(77c12f95-b783-450d-879f-1cd2362c6521)] struct TF_PRESERVEDKEY
153typedef [uuid(5a886226-ae9a-489b-b991-2b1e25ee59a9)] enum { TF_ANCHOR_START = 0, TF_ANCHOR_END = 1 } TfAnchor;
157 uuid(101d6610-0990-11d3-8df0-00105a2799b5),
158 pointer_default(unique)
160interface ITfFunctionProvider : IUnknown
165 HRESULT GetDescription(
171 [out, iid_is(riid)] IUnknown **func);
176 uuid(e4b24db0-0990-11d3-8df0-00105a2799b5),
177 pointer_default(unique)
179interface IEnumTfFunctionProviders : IUnknown
182 [out] IEnumTfFunctionProviders **ret);
186 [out, size_is(count), length_is(*fetched)] ITfFunctionProvider **prov,
187 [out] ULONG *fetched);
197 uuid(aa80e801-2021-11d2-93e0-0060b067b86e),
198 pointer_default(unique)
200interface ITfThreadMgr: IUnknown
203 [out] TfClientId *ptid);
205 HRESULT Deactivate();
207 HRESULT CreateDocumentMgr(
208 [out] ITfDocumentMgr **ppdim);
210 HRESULT EnumDocumentMgrs(
211 [out] IEnumTfDocumentMgrs **ppEnum);
214 [out] ITfDocumentMgr **ppdimFocus);
217 [in] ITfDocumentMgr *pdimFocus);
219 HRESULT AssociateFocus(
221 [in, unique] ITfDocumentMgr *pdimNew,
222 [out] ITfDocumentMgr **ppdimPrev);
224 HRESULT IsThreadFocus(
225 [out] BOOL *pfThreadFocus);
227 HRESULT GetFunctionProvider(
229 [out] ITfFunctionProvider **ppFuncProv);
231 HRESULT EnumFunctionProviders(
232 [out] IEnumTfFunctionProviders **ppEnum);
234 HRESULT GetGlobalCompartment(
235 [out] ITfCompartmentMgr **ppCompMgr);
240 uuid(3e90ade3-7594-4cb0-bb58-69628f5f458c),
241 pointer_default(unique)
243interface ITfThreadMgrEx : ITfThreadMgr
246 [out] TfClientId *id,
248 HRESULT GetActiveFlags(
254 uuid(d7540241-f9a1-4364-befc-dbcd2c4395b7),
255 pointer_default(unique)
257interface ITfCompositionView : IUnknown
259 HRESULT GetOwnerClsid([out] CLSID *pclsid);
261 HRESULT GetRange([out] ITfRange **ppRange);
266 uuid(aa80e7f4-2021-11d2-93e0-0060b067b86e),
267 pointer_default(unique)
269interface ITfDocumentMgr: IUnknown
271 HRESULT CreateContext(
272 [in] TfClientId tidOwner,
274 [in, unique] IUnknown *punk,
275 [out] ITfContext **ppic,
276 [out] TfEditCookie *pecTextStore);
279 [in] ITfContext *pic);
281 const DWORD TF_POPF_ALL = 0x0001;
287 [out] ITfContext **ppic);
290 [out] ITfContext **ppic);
292 HRESULT EnumContexts(
293 [out] IEnumTfContexts **ppEnum);
298 uuid(2433bf8e-0f9b-435c-ba2c-180611978c30),
299 pointer_default(unique)
301interface ITfContextView : IUnknown
303 HRESULT GetRangeFromPoint(
304 [in] TfEditCookie cookie,
305 [in] const POINT *pt,
307 [out] ITfRange **range);
310 [in] TfEditCookie cookie,
311 [in] ITfRange *range,
313 [out] BOOL *clipped);
315 HRESULT GetScreenExt(
324 uuid(f0c0f8dd-cf38-44e1-bb0f-68cf0d551c78),
325 pointer_default(unique)
327interface IEnumTfContextViews : IUnknown
330 [out] IEnumTfContextViews **ret);
334 [out, size_is(count), length_is(*fetched)] ITfContextView **views,
335 [out] ULONG *fetched);
345 uuid(19188cb0-aca9-11d2-afc5-00105a2799b5),
346 pointer_default(unique)
348interface IEnumTfProperties : IUnknown
351 [out] IEnumTfProperties **ret);
355 [out, size_is(count), length_is(*fetched)] ITfProperty **props,
356 [out] ULONG *fetched);
366 uuid(463a506d-6992-49d2-9b88-93d55e70bb16),
367 pointer_default(unique)
369interface ITfRangeBackup : IUnknown
372 [in] TfEditCookie cookie,
373 [in] ITfRange *range);
378 uuid(aa80e901-2021-11d2-93e0-0060b067b86e),
379 pointer_default(unique)
381interface ITextStoreACPServices : IUnknown
384 [in] ITfProperty *prop,
385 [in] ITfRange *range,
386 [out] TF_PERSISTENT_PROPERTY_HEADER_ACP *header,
387 [in] IStream *stream);
390 [in] ITfProperty *prop,
391 [in] const TF_PERSISTENT_PROPERTY_HEADER_ACP *header,
392 [in] IStream *stream,
393 [in] ITfPersistentPropertyLoaderACP *loader);
395 HRESULT ForceLoadProperty(
396 [in] ITfProperty *prop);
401 [out] ITfRangeACP **range);
406 uuid(aa80e7fd-2021-11d2-93e0-0060b067b86e),
407 pointer_default(unique)
409interface ITfContext : IUnknown
411 const DWORD TF_ES_ASYNCDONTCARE = 0x0;
412 const DWORD TF_ES_SYNC = 0x1;
413 const DWORD TF_ES_READ = 0x2;
414 const DWORD TF_ES_READWRITE = 0x6;
415 const DWORD TF_ES_ASYNC = 0x8;
417 HRESULT RequestEditSession(
419 [in] ITfEditSession *pes,
421 [out] HRESULT *phrSession);
423 HRESULT InWriteSession(
425 [out] BOOL *pfWriteSession);
427 typedef [uuid(1690be9b-d3e9-49f6-8d8b-51b905af4c43)] enum { TF_AE_NONE, TF_AE_START, TF_AE_END } TfActiveSelEnd;
429 typedef [uuid(36ae42a4-6989-4bdc-b48a-6137b7bf2e42)] struct TF_SELECTIONSTYLE
435 typedef [uuid(75eb22f2-b0bf-46a8-8006-975a3b6efcf1)] struct TF_SELECTION
438 TF_SELECTIONSTYLE style;
441 const ULONG TF_DEFAULT_SELECTION = TS_DEFAULT_SELECTION;
443 HRESULT GetSelection(
444 [in] TfEditCookie ec,
447 [out, size_is(ulCount), length_is(*pcFetched)] TF_SELECTION *pSelection,
448 [out] ULONG *pcFetched);
450 HRESULT SetSelection(
451 [in] TfEditCookie ec,
453 [in, size_is(ulCount)] const TF_SELECTION *pSelection);
456 [in] TfEditCookie ec,
457 [out] ITfRange **ppStart);
460 [in] TfEditCookie ec,
461 [out] ITfRange **ppEnd);
463 typedef [uuid(bc7d979a-846a-444d-afef-0a9bfa82b961)] TS_STATUS TF_STATUS;
464 const DWORD TF_SD_READONLY = TS_SD_READONLY;
465 const DWORD TF_SD_LOADING = TS_SD_LOADING;
466 const DWORD TF_SS_DISJOINTSEL = TS_SS_DISJOINTSEL;
467 const DWORD TF_SS_REGIONS = TS_SS_REGIONS;
468 const DWORD TF_SS_TRANSITORY = TS_SS_TRANSITORY;
471 HRESULT GetActiveView(
472 [out] ITfContextView **ppView);
475 [out] IEnumTfContextViews **ppEnum);
478 [out] TF_STATUS *pdcs);
481 [in] REFGUID guidProp,
482 [out] ITfProperty **ppProp);
484 HRESULT GetAppProperty(
485 [in] REFGUID guidProp,
486 [out] ITfReadOnlyProperty **ppProp);
488 HRESULT TrackProperties(
489 [in, size_is(cProp)] const GUID **prgProp,
491 [in, size_is(cAppProp)] const GUID **prgAppProp,
493 [out] ITfReadOnlyProperty **ppProperty);
495 HRESULT EnumProperties(
496 [out] IEnumTfProperties **ppEnum);
498 HRESULT GetDocumentMgr(
499 [out] ITfDocumentMgr **ppDm);
501 HRESULT CreateRangeBackup(
502 [in] TfEditCookie ec,
503 [in] ITfRange *pRange,
504 [out] ITfRangeBackup **ppBackup);
507const DWORD TF_INVALID_COOKIE = 0xffffffff;
511 uuid(4ea48a35-60ae-446f-8fd6-e6a8d82459f7),
512 pointer_default(unique)
514interface ITfSource : IUnknown
518 [in, iid_is(riid)] IUnknown *punk,
519 [out] DWORD *pdwCookie);
521 HRESULT UnadviseSink(
522 [in] DWORD dwCookie);
528 uuid(1F02B6C5-7842-4EE6-8A0B-9A24183A95CA),
529 pointer_default(unique)
531interface ITfInputProcessorProfiles : IUnknown
534 [in] REFCLSID rclsid);
537 [in] REFCLSID rclsid);
539 HRESULT AddLanguageProfile(
540 [in] REFCLSID rclsid,
542 [in] REFGUID guidProfile,
543 [in, size_is(cchDesc)] const WCHAR *pchDesc,
545 [in, size_is(cchFile)] const WCHAR *pchIconFile,
547 [in] ULONG uIconIndex);
549 HRESULT RemoveLanguageProfile(
550 [in] REFCLSID rclsid,
552 [in] REFGUID guidProfile);
554 HRESULT EnumInputProcessorInfo(
555 [out] IEnumGUID **ppEnum);
557 HRESULT GetDefaultLanguageProfile(
561 [out] GUID *pguidProfile);
563 HRESULT SetDefaultLanguageProfile(
565 [in] REFCLSID rclsid,
566 [in] REFGUID guidProfiles);
568 HRESULT ActivateLanguageProfile(
569 [in] REFCLSID rclsid,
571 [in] REFGUID guidProfiles);
573 HRESULT GetActiveLanguageProfile(
574 [in] REFCLSID rclsid,
575 [out] LANGID *plangid,
576 [out] GUID *pguidProfile);
578 HRESULT GetLanguageProfileDescription(
579 [in] REFCLSID rclsid,
581 [in] REFGUID guidProfile,
582 [out] BSTR *pbstrProfile);
584 HRESULT GetCurrentLanguage(
585 [out] LANGID *plangid);
587 HRESULT ChangeCurrentLanguage(
590 HRESULT GetLanguageList(
591 [out] LANGID **ppLangId,
592 [out] ULONG *pulCount);
594 HRESULT EnumLanguageProfiles(
596 [out] IEnumTfLanguageProfiles **ppEnum);
598 HRESULT EnableLanguageProfile(
599 [in] REFCLSID rclsid,
601 [in] REFGUID guidProfile,
604 HRESULT IsEnabledLanguageProfile(
605 [in] REFCLSID rclsid,
607 [in] REFGUID guidProfile,
608 [out] BOOL *pfEnable);
610 HRESULT EnableLanguageProfileByDefault(
611 [in] REFCLSID rclsid,
613 [in] REFGUID guidProfile,
616 HRESULT SubstituteKeyboardLayout(
617 [in] REFCLSID rclsid,
619 [in] REFGUID guidProfile,
623typedef [uuid(44d2825a-10e5-43b2-877f-6cb2f43b7e7e)]
624struct TF_INPUTPROCESSORPROFILE {
634} TF_INPUTPROCESSORPROFILE;
638 uuid(71c6e74d-0f28-11d8-a82a-00065b84435c),
639 pointer_default(unique)
641interface IEnumTfInputProcessorProfiles : IUnknown
644 [out] IEnumTfInputProcessorProfiles **ppEnum);
648 [out, size_is(ulCount), length_is(*pcFetch)] TF_INPUTPROCESSORPROFILE *pProfile,
649 [out] ULONG *pcFetch);
659 uuid(71c6e74c-0f28-11d8-a82a-00065b84435c),
660 pointer_default(unique)
662interface ITfInputProcessorProfileMgr : IUnknown
664 HRESULT ActivateProfile(
665 [in] DWORD dwProfileType,
668 [in] REFGUID guidProfile,
672 HRESULT DeactivateProfile(
673 [in] DWORD dwProfileType,
676 [in] REFGUID guidProfile,
681 [in] DWORD dwProfileType,
684 [in] REFGUID guidProfile,
686 [out] TF_INPUTPROCESSORPROFILE *pProfile);
689 HRESULT EnumProfiles(
691 [out] IEnumTfInputProcessorProfiles **ppEnum);
693 HRESULT ReleaseInputProcessor(
694 [in] REFCLSID rclsid,
697 HRESULT RegisterProfile(
698 [in] REFCLSID rclsid,
700 [in] REFGUID guidProfile,
701 [in, size_is(cchDesc)] const WCHAR *pchDesc,
703 [in, size_is(cchFile)] const WCHAR *pchIconFile,
705 [in] ULONG uIconIndex,
706 [in] HKL hklsubstitute,
707 [in] DWORD dwPreferredLayout,
708 [in] BOOL bEnabledByDefault,
711 HRESULT UnregisterProfile(
712 [in] REFCLSID rclsid,
714 [in] REFGUID guidProfile,
717 HRESULT GetActiveProfile(
719 [out] TF_INPUTPROCESSORPROFILE *pProfile);
722typedef [uuid(c4cc07f1-80cc-4a7b-bc54-98512782cbe3)]
731typedef [uuid(d9b92e21-084a-401b-9c64-1e6dad91a1ab)]
738typedef [uuid(90d0cb5e-6520-4a0f-b47c-c39bd955f0d6)]
740 TF_DA_COLORTYPE type;
741 [switch_type(TF_DA_COLORTYPE), switch_is(type)]
743 [case(TF_CT_SYSCOLOR)] int nIndex;
744 [case(TF_CT_COLORREF)] COLORREF cr;
748typedef [uuid(33d2fe4b-6c24-4f67-8d75-3bc1819e4126)]
751 TF_ATTR_TARGET_CONVERTED = 1,
752 TF_ATTR_CONVERTED = 2,
753 TF_ATTR_TARGET_NOTCONVERTED = 3,
754 TF_ATTR_INPUT_ERROR = 4,
755 TF_ATTR_FIXEDCONVERTED = 5,
759typedef [uuid(1bf1c305-419b-4182-a4d2-9bfadc3f021f)]
760struct TF_DISPLAYATTRIBUTE {
763 TF_DA_LINESTYLE lsStyle;
766 TF_DA_ATTR_INFO bAttr;
767} TF_DISPLAYATTRIBUTE;
771 uuid(70528852-2f26-4aea-8c96-215150578932),
772 pointer_default(unique)
774interface ITfDisplayAttributeInfo : IUnknown
776 HRESULT GetGUID([out] GUID *pguid);
778 HRESULT GetDescription([out] BSTR *pbstrDesc);
780 HRESULT GetAttributeInfo([out] TF_DISPLAYATTRIBUTE *pda);
782 HRESULT SetAttributeInfo([in] const TF_DISPLAYATTRIBUTE *pda);
789 uuid(7cef04d7-cb75-4e80-a7ab-5f5bc7d332de),
790 pointer_default(unique)
792interface IEnumTfDisplayAttributeInfo : IUnknown
794 HRESULT Clone([out] IEnumTfDisplayAttributeInfo **ppEnum);
798 [out, size_is(ulCount), length_is(*pcFetched)] ITfDisplayAttributeInfo **rgInfo,
799 [out] ULONG *pcFetched);
803 HRESULT Skip([in] ULONG ulCount);
809 uuid(8ded7393-5db1-475c-9e71-a39111b0ff67),
810 pointer_default(unique)
812interface ITfDisplayAttributeMgr : IUnknown
814 HRESULT OnUpdateInfo();
816 HRESULT EnumDisplayAttributeInfo([out] IEnumTfDisplayAttributeInfo **ppEnum);
818 HRESULT GetDisplayAttributeInfo(
820 [out] ITfDisplayAttributeInfo **ppInfo,
821 [out] CLSID *pclsidOwner);
828 uuid(c3acefb5-f69d-4905-938f-fcadcf4be830),
829 pointer_default(unique)
831interface ITfCategoryMgr : IUnknown
833 HRESULT RegisterCategory([in] REFCLSID rclsid,
837 HRESULT UnregisterCategory([in] REFCLSID rclsid,
841 HRESULT EnumCategoriesInItem([in] REFGUID rguid,
842 [out] IEnumGUID **ppEnum);
844 HRESULT EnumItemsInCategory([in] REFGUID rcatid,
845 [out] IEnumGUID **ppEnum);
847 HRESULT FindClosestCategory([in] REFGUID rguid,
849 [in, size_is(ulCount)] const GUID **ppcatidList,
852 HRESULT RegisterGUIDDescription([in] REFCLSID rclsid,
854 [in, size_is(cch)] const WCHAR *pchDesc,
857 HRESULT UnregisterGUIDDescription([in] REFCLSID rclsid,
860 HRESULT GetGUIDDescription([in] REFGUID rguid,
861 [out] BSTR *pbstrDesc);
863 HRESULT RegisterGUIDDWORD([in] REFCLSID rclsid,
867 HRESULT UnregisterGUIDDWORD([in] REFCLSID rclsid,
870 HRESULT GetGUIDDWORD([in] REFGUID rguid,
873 HRESULT RegisterGUID([in] REFGUID rguid,
874 [out] TfGuidAtom *pguidatom);
876 HRESULT GetGUID([in] TfGuidAtom guidatom,
879 HRESULT IsEqualTfGuidAtom([in] TfGuidAtom guidatom,
881 [out] BOOL *pfEqual);
886 uuid(f99d3f40-8e32-11d2-bf46-00105a2799b5),
887 pointer_default(unique)
889interface IEnumTfRanges : IUnknown
891 HRESULT Clone([out] IEnumTfRanges **ppEnum);
895 [out, size_is(ulCount), length_is(*pcFetched)] ITfRange **ppRange,
896 [out] ULONG *pcFetched);
900 HRESULT Skip(ULONG ulCount);
905 uuid(42d4d099-7c1a-4a89-b836-6c6f22160df0),
906 pointer_default(unique)
908interface ITfEditRecord : IUnknown
910 const DWORD TF_GTP_INCL_TEXT = 0x1;
912 HRESULT GetSelectionStatus(
913 [out] BOOL *changed);
915 HRESULT GetTextAndPropertyUpdates(
917 [in, size_is(count)] const GUID **props,
919 [out] IEnumTfRanges **ret);
924 uuid(8127d409-ccd3-4683-967a-b43d5b482bf7),
925 pointer_default(unique)
927interface ITfTextEditSink : IUnknown
930 [in] ITfContext *pic,
931 [in] TfEditCookie ecReadOnly,
932 [in] ITfEditRecord *pEditRecord);
937 uuid(AA80E80C-2021-11D2-93E0-0060B067B86E),
938 pointer_default(unique)
940interface ITfContextOwner : IUnknown
942 HRESULT GetACPFromPoint(
943 [in] const POINT *ptScreen,
951 [out] BOOL *pfClipped);
953 HRESULT GetScreenExt(
957 [out] TF_STATUS *pdcs);
962 HRESULT GetAttribute(
963 [in] REFGUID rguidAttribute,
964 [out] VARIANT *pvarValue);
969 uuid(5F20AA40-B57A-4F34-96AB-3576F377CC79),
970 pointer_default(unique)
972interface ITfContextOwnerCompositionSink : IUnknown
974 HRESULT OnStartComposition(
975 [in] ITfCompositionView *pComposition,
978 HRESULT OnUpdateComposition(
979 [in] ITfCompositionView *pComposition,
980 [in] ITfRange *pRangeNew);
982 HRESULT OnEndComposition(
983 [in] ITfCompositionView *pComposition);
988 uuid(b246cb75-a93e-4652-bf8c-b3fe0cfd7e57),
989 pointer_default(unique)
991interface ITfActiveLanguageProfileNotifySink : IUnknown
995 [in] REFGUID guidProfile,
996 [in] BOOL fActivated);
1001 uuid(3d61bf11-ac5f-42c8-a4cb-931bcc28c744),
1002 pointer_default(unique)
1004interface IEnumTfLanguageProfiles : IUnknown
1007 [out] IEnumTfLanguageProfiles **ppEnum);
1011 [out, size_is(ulCount), length_is(*pcFetch)] TF_LANGUAGEPROFILE *pProfile,
1012 [out] ULONG *pcFetch);
1017 [in] ULONG ulCount);
1023 uuid(aa80e7f7-2021-11d2-93e0-0060b067b86e),
1024 pointer_default(unique)
1026interface ITfTextInputProcessor : IUnknown
1029 [in] ITfThreadMgr *ptim,
1030 [in] TfClientId tid);
1032 HRESULT Deactivate();
1037 uuid(aa80e80e-2021-11d2-93e0-0060b067b86e),
1038 pointer_default(unique)
1040interface ITfThreadMgrEventSink : IUnknown
1042 HRESULT OnInitDocumentMgr(
1043 [in] ITfDocumentMgr *pdim);
1045 HRESULT OnUninitDocumentMgr(
1046 [in] ITfDocumentMgr *pdim);
1049 [in] ITfDocumentMgr *pdimFocus,
1050 [in] ITfDocumentMgr *pdimPrevFocus);
1052 HRESULT OnPushContext(
1053 [in] ITfContext *pic);
1055 HRESULT OnPopContext(
1056 [in] ITfContext *pic);
1062 uuid(aa80e7f0-2021-11d2-93e0-0060b067b86e),
1063 pointer_default(unique)
1065interface ITfKeystrokeMgr : IUnknown
1067 HRESULT AdviseKeyEventSink(
1068 [in] TfClientId tid,
1069 [in] ITfKeyEventSink *pSink,
1070 [in] BOOL fForeground);
1072 HRESULT UnadviseKeyEventSink(
1073 [in] TfClientId tid);
1075 HRESULT GetForeground(
1076 [out] CLSID *pclsid);
1078 HRESULT TestKeyDown(
1081 [out] BOOL *pfEaten);
1086 [out] BOOL *pfEaten);
1091 [out] BOOL *pfEaten);
1096 [out] BOOL *pfEaten);
1098 HRESULT GetPreservedKey(
1099 [in] ITfContext *pic,
1100 [in] const TF_PRESERVEDKEY *pprekey,
1103 HRESULT IsPreservedKey(
1105 [in] const TF_PRESERVEDKEY *pprekey,
1106 [out] BOOL *pfRegistered);
1108 HRESULT PreserveKey(
1109 [in] TfClientId tid,
1111 [in] const TF_PRESERVEDKEY *prekey,
1112 [in, size_is(cchDesc)] const WCHAR *pchDesc,
1113 [in] ULONG cchDesc);
1115 HRESULT UnpreserveKey(
1117 [in] const TF_PRESERVEDKEY *pprekey);
1119 HRESULT SetPreservedKeyDescription(
1121 [in, size_is(cchDesc)] const WCHAR *pchDesc,
1122 [in] ULONG cchDesc);
1124 HRESULT GetPreservedKeyDescription(
1126 [out] BSTR *pbstrDesc);
1128 HRESULT SimulatePreservedKey(
1129 [in] ITfContext *pic,
1131 [out] BOOL *pfEaten);
1137 uuid(aa80e7f5-2021-11d2-93e0-0060b067b86e),
1138 pointer_default(unique)
1140interface ITfKeyEventSink : IUnknown
1143 [in] BOOL fForeground);
1145 HRESULT OnTestKeyDown(
1146 [in] ITfContext *pic,
1149 [out] BOOL *pfEaten);
1151 HRESULT OnTestKeyUp(
1152 [in] ITfContext *pic,
1155 [out] BOOL *pfEaten);
1158 [in] ITfContext *pic,
1161 [out] BOOL *pfEaten);
1164 [in] ITfContext *pic,
1167 [out] BOOL *pfEaten);
1169 HRESULT OnPreservedKey(
1170 [in] ITfContext *pic,
1172 [out] BOOL *pfEaten);
1178 uuid(1cd4c13b-1c36-4191-a70a-7f3e611f367d),
1179 pointer_default(unique)
1181interface ITfKeyTraceEventSink : IUnknown
1183 HRESULT OnKeyTraceDown(
1185 [in] LPARAM lParam);
1187 HRESULT OnKeyTraceUp(
1189 [in] LPARAM lParam);
1195 uuid(ea1ea136-19df-11d7-a6d2-00065b84435c),
1196 pointer_default(unique)
1198interface ITfUIElementSink : IUnknown
1200 HRESULT BeginUIElement(
1202 [in, out] BOOL *show);
1204 HRESULT UpdateUIElement(
1207 HRESULT EndUIElement(
1214 uuid(8f1b8ad8-0b6b-4874-90c5-bd76011e8f7c),
1215 pointer_default(unique)
1217interface ITfMessagePump : IUnknown
1219 HRESULT PeekMessageA(
1222 [in] UINT wMsgFilterMin,
1223 [in] UINT wMsgFilterMax,
1224 [in] UINT wRemoveMsg,
1225 [out] BOOL *pfResult);
1227 HRESULT GetMessageA(
1230 [in] UINT wMsgFilterMin,
1231 [in] UINT wMsgFilterMax,
1232 [out] BOOL *pfResult);
1234 HRESULT PeekMessageW(
1237 [in] UINT wMsgFilterMin,
1238 [in] UINT wMsgFilterMax,
1239 [in] UINT wRemoveMsg,
1240 [out] BOOL *pfResult);
1242 HRESULT GetMessageW(
1245 [in] UINT wMsgFilterMin,
1246 [in] UINT wMsgFilterMax,
1247 [out] BOOL *pfResult);
1253 uuid(d60a7b49-1b9f-4be2-b702-47e9dc05dec3),
1254 pointer_default(unique)
1256interface ITfClientId : IUnknown
1258 HRESULT GetClientId(
1259 [in] REFCLSID rclsid,
1260 [out] TfClientId *ptid);
1265 uuid(43c9fe15-f494-4c17-9de2-b8a4ac350aa8),
1266 pointer_default(unique)
1268interface ITfLanguageProfileNotifySink : IUnknown
1270 HRESULT OnLanguageChange(
1272 [out] BOOL *pfAccept);
1274 HRESULT OnLanguageChanged();
1279 uuid(aa80e803-2021-11d2-93e0-0060b067b86e),
1280 pointer_default(unique)
1282interface ITfEditSession : IUnknown
1284 HRESULT DoEditSession(
1285 [in] TfEditCookie ec);
1290 uuid(aa80e7ff-2021-11d2-93e0-0060b067b86e),
1291 pointer_default(unique)
1293interface ITfRange : IUnknown
1295 const WCHAR TF_CHAR_EMBEDDED = TS_CHAR_EMBEDDED;
1297 typedef [uuid(cf610f06-2882-46f6-abe5-298568b664c4)] enum { TF_GRAVITY_BACKWARD = 0, TF_GRAVITY_FORWARD = 1 } TfGravity;
1299 typedef [uuid(1e512533-bbdc-4530-9a8e-a1dc0af67468)] enum { TF_SD_BACKWARD = 0, TF_SD_FORWARD = 1 } TfShiftDir;
1301 const DWORD TF_HF_OBJECT = 1;
1302 const DWORD TF_TF_MOVESTART = 1;
1303 const DWORD TF_TF_IGNOREEND = 2;
1304 const DWORD TF_ST_CORRECTION = 1;
1305 const DWORD TF_IE_CORRECTION = 1;
1307 typedef [uuid(49930d51-7d93-448c-a48c-fea5dac192b1)] struct TF_HALTCOND
1309 ITfRange *pHaltRange;
1315 [in] TfEditCookie ec,
1317 [out, size_is(cchMax), length_is(*pcch)] WCHAR *pchText,
1322 [in] TfEditCookie ec,
1324 [in, size_is(cch), unique] const WCHAR *pchText,
1327 HRESULT GetFormattedText(
1328 [in] TfEditCookie ec,
1329 [out] IDataObject **ppDataObject);
1331 HRESULT GetEmbedded(
1332 [in] TfEditCookie ec,
1333 [in] REFGUID rguidService,
1335 [out, iid_is(riid)] IUnknown **ppunk);
1337 HRESULT InsertEmbedded(
1338 [in] TfEditCookie ec,
1340 [in] IDataObject *pDataObject);
1343 [in] TfEditCookie ec,
1346 [in, unique] const TF_HALTCOND *pHalt);
1349 [in] TfEditCookie ec,
1352 [in, unique] const TF_HALTCOND *pHalt);
1354 HRESULT ShiftStartToRange(
1355 [in] TfEditCookie ec,
1356 [in] ITfRange *pRange,
1357 [in] TfAnchor aPos);
1359 HRESULT ShiftEndToRange(
1360 [in] TfEditCookie ec,
1361 [in] ITfRange *pRange,
1362 [in] TfAnchor aPos);
1364 HRESULT ShiftStartRegion(
1365 [in] TfEditCookie ec,
1366 [in] TfShiftDir dir,
1367 [out] BOOL *pfNoRegion);
1369 HRESULT ShiftEndRegion(
1370 [in] TfEditCookie ec,
1371 [in] TfShiftDir dir,
1372 [out] BOOL *pfNoRegion);
1375 [in] TfEditCookie ec,
1376 [out] BOOL *pfEmpty);
1379 [in] TfEditCookie ec,
1380 [in] TfAnchor aPos);
1382 HRESULT IsEqualStart(
1383 [in] TfEditCookie ec,
1384 [in] ITfRange *pWith,
1386 [out] BOOL *pfEqual);
1389 [in] TfEditCookie ec,
1390 [in] ITfRange *pWith,
1392 [out] BOOL *pfEqual);
1394 HRESULT CompareStart(
1395 [in] TfEditCookie ec,
1396 [in] ITfRange *pWith,
1398 [out] LONG *plResult);
1401 [in] TfEditCookie ec,
1402 [in] ITfRange *pWith,
1404 [out] LONG *plResult);
1406 HRESULT AdjustForInsert(
1407 [in] TfEditCookie ec,
1408 [in] ULONG cchInsert,
1409 [out] BOOL *pfInsertOk);
1412 [out] TfGravity *pgStart,
1413 [out] TfGravity *pgEnd);
1416 [in] TfEditCookie ec,
1417 [in] TfGravity gStart,
1418 [in] TfGravity gEnd);
1421 [out] ITfRange **ppClone);
1424 [out] ITfContext **ppContext);
1429 uuid(057a6296-029b-4154-b79a-0d461d4ea94c),
1430 pointer_default(unique)
1432interface ITfRangeACP : ITfRange
1434 HRESULT GetExtent([out] LONG *pacpAnchor,
1437 HRESULT SetExtent([in] LONG acpAnchor,
1443 uuid(55ce16ba-3014-41c1-9ceb-fade1446ac6c),
1444 pointer_default(unique)
1446interface ITfInsertAtSelection : IUnknown
1448 const DWORD TF_IAS_NOQUERY = 0x1;
1449 const DWORD TF_IAS_QUERYONLY = 0x2;
1450 const DWORD TF_IAS_NO_DEFAULT_COMPOSITION = 0x80000000;
1452 HRESULT InsertTextAtSelection(
1453 [in] TfEditCookie ec,
1455 [in, size_is(cch)] const WCHAR *pchText,
1457 [out] ITfRange **ppRange);
1459 HRESULT InsertEmbeddedAtSelection(
1460 [in] TfEditCookie ec,
1462 [in] IDataObject *pDataObject,
1463 [out] ITfRange **ppRange);
1468 uuid(6834b120-88cb-11d2-bf45-00105a2799b5),
1469 pointer_default(unique)
1471interface ITfPropertyStore : IUnknown
1473 const DWORD TF_TU_CORRECTION = 0x1;
1475 HRESULT GetType([out] GUID *pguid);
1477 HRESULT GetDataType([out] DWORD *pdwReserved);
1479 HRESULT GetData([out] VARIANT *pvarValue);
1481 HRESULT OnTextUpdated(
1483 [in] ITfRange *pRangeNew,
1484 [out] BOOL *pfAccept);
1487 [in] ITfRange *pRangeNew,
1488 [out] BOOL *pfFree);
1491 [in] ITfRange *pRangeThis,
1492 [in] ITfRange *pRangeNew,
1493 [out] ITfPropertyStore **ppPropStore);
1496 [out] ITfPropertyStore **pPropStore);
1498 HRESULT GetPropertyRangeCreator(
1499 [out] CLSID *pclsid);
1502 [in] IStream *pStream,
1508 uuid(5efd22Ba-7838-46cb-88e2-cadb14124f8f),
1509 pointer_default(unique)
1511interface IEnumITfCompositionView : IUnknown
1513 HRESULT Clone([out] IEnumITfCompositionView **ppEnum);
1517 [out, size_is(ulCount), length_is(*pcFetched)] ITfCompositionView **rgCompositionView,
1518 [out] ULONG *pcFetched);
1522 HRESULT Skip([in] ULONG ulCount);
1527 uuid(20168d64-5a8f-4a5a-b7bd-cfa29f4D0fd9),
1528 pointer_default(unique)
1530interface ITfComposition : IUnknown
1532 HRESULT GetRange([out] ITfRange **ppRange);
1535 [in] TfEditCookie ecWrite,
1536 [in] ITfRange *pNewStart);
1539 [in] TfEditCookie ecWrite,
1540 [in] ITfRange *pNewEnd);
1542 HRESULT EndComposition([in] TfEditCookie ecWrite);
1547 uuid(a781718c-579a-4b15-a280-32b8577acc5e),
1548 pointer_default(unique)
1550interface ITfCompositionSink : IUnknown
1552 HRESULT OnCompositionTerminated(
1553 [in] TfEditCookie ecWrite,
1554 [in] ITfComposition *pComposition);
1559 uuid(01689689-7acb-4e9b-ab7c-7ea46b12b522),
1560 pointer_default(unique)
1562interface ITfCleanupContextSink : IUnknown
1564 HRESULT OnCleanupContext(
1565 [in] TfEditCookie ecWrite,
1566 [in] ITfContext *pic);
1571 uuid(d40C8aae-aC92-4fc7-9a11-0ee0e23aa39b),
1572 pointer_default(unique)
1574interface ITfContextComposition : IUnknown
1576 HRESULT StartComposition(
1577 [in] TfEditCookie ecWrite,
1578 [in] ITfRange *pCompositionRange,
1579 [in] ITfCompositionSink *pSink,
1580 [out] ITfComposition **ppComposition);
1582 HRESULT EnumCompositions([out] IEnumITfCompositionView **ppEnum);
1584 HRESULT FindComposition(
1585 [in] TfEditCookie ecRead,
1586 [in] ITfRange *pTestRange,
1587 [out] IEnumITfCompositionView **ppEnum);
1589 HRESULT TakeOwnership(
1590 [in] TfEditCookie ecWrite,
1591 [in] ITfCompositionView *pComposition,
1592 [in] ITfCompositionSink *pSink,
1593 [out] ITfComposition **ppComposition);
1598 uuid(86462810-593b-4916-9764-19c08e9ce110),
1599 pointer_default(unique)
1601interface ITfContextOwnerCompositionServices : ITfContextComposition
1603 HRESULT TerminateComposition([in] ITfCompositionView *pComposition);
1608 uuid(4ef89150-0807-11d3-8df0-00105a2799b5),
1609 pointer_default(unique)
1611interface ITfPersistentPropertyLoaderACP : IUnknown
1613 HRESULT LoadProperty(
1614 [in] const TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr,
1615 [out] IStream **ppStream);
1620 uuid(b23eb630-3e1c-11d3-a745-0050040ab407),
1621 pointer_default(unique)
1623interface ITfContextOwnerServices : IUnknown
1625 HRESULT OnLayoutChange();
1627 HRESULT OnStatusChange([in] DWORD dwFlags);
1629 HRESULT OnAttributeChange([in] REFGUID rguidAttribute);
1632 [in] ITfProperty *pProp,
1633 [in] ITfRange *pRange,
1634 [out] TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr,
1635 [in] IStream *pStream);
1637 HRESULT Unserialize(
1638 [in] ITfProperty *pProp,
1639 [in] const TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr,
1640 [in] IStream *pStream,
1641 [in] ITfPersistentPropertyLoaderACP *pLoader);
1643 HRESULT ForceLoadProperty([in] ITfProperty *pProp);
1645 HRESULT CreateRange(
1648 [out] ITfRangeACP **ppRange);
1653 uuid(17d49a3d-f8b8-4b2f-b254-52319dd64c53),
1654 pointer_default(unique)
1656interface ITfReadOnlyProperty : IUnknown
1658 HRESULT GetType([out] GUID *pguid);
1661 [in] TfEditCookie ec,
1662 [out] IEnumTfRanges **ppEnum,
1663 [in] ITfRange *pTargetRange);
1666 [in] TfEditCookie ec,
1667 [in] ITfRange *pRange,
1668 [out] VARIANT *pvarValue);
1670 HRESULT GetContext([out] ITfContext **ppContext);
1675 uuid(e2449660-9542-11d2-bf46-00105a2799b5),
1676 pointer_default(unique)
1678interface ITfProperty : ITfReadOnlyProperty
1681 [in] TfEditCookie ec,
1682 [in] ITfRange *pRange,
1683 [out] ITfRange **ppRange,
1684 [in] TfAnchor aPos);
1686 HRESULT SetValueStore(
1687 [in] TfEditCookie ec,
1688 [in] ITfRange *pRange,
1689 [in] ITfPropertyStore *pPropStore);
1692 [in] TfEditCookie ec,
1693 [in] ITfRange *pRange,
1694 [in] const VARIANT *pvarValue);
1697 [in] TfEditCookie ec,
1698 [in] ITfRange *pRange);
1703 uuid(bb08f7a9-607a-4384-8623-056892b64371),
1704 pointer_default(unique)
1706interface ITfCompartment : IUnknown
1709 [in] TfClientId tid,
1710 [in] const VARIANT *pvarValue);
1713 [out] VARIANT *pvarValue);
1718 uuid(7dcf57ac-18ad-438b-824d-979bffb74b7c),
1719 pointer_default(unique)
1721interface ITfCompartmentMgr : IUnknown
1723 HRESULT GetCompartment(
1725 [out] ITfCompartment **ppcomp);
1727 HRESULT ClearCompartment(
1728 [in] TfClientId tid,
1729 [in] REFGUID rguid);
1731 HRESULT EnumCompartments(
1732 [out] IEnumGUID **ppEnum);
1737 uuid(743abd5f-f26d-48df-8cc5-238492419b64),
1738 pointer_default(unique)
1740interface ITfCompartmentEventSink : IUnknown
1743 [in] REFGUID rguid);
1748 uuid(8f1a7ea6-1654-4502-a86e-b2902344d507),
1749 pointer_default(unique)
1751interface IEnumTfContexts : IUnknown
1754 [out] IEnumTfContexts **ppEnum);
1758 [out, size_is(ulCount), length_is(*pcFetched)] ITfContext **rgContext,
1759 [out] ULONG *pcFetched);
1764 [in] ULONG ulCount);
1769 uuid(aa80e808-2021-11d2-93e0-0060b067b86e),
1770 pointer_default(unique)
1772interface IEnumTfDocumentMgrs : IUnknown
1775 [out] IEnumTfDocumentMgrs **ppEnum);
1779 [out, size_is(ulCount), length_is(*pcFetched)] ITfDocumentMgr **rgDocumentMgr,
1780 [out] ULONG *pcFetched);
1785 [in] ULONG ulCount);
1791 uuid(ea1ea137-19df-11d7-a6d2-00065b84435c),
1792 pointer_default(unique)
1794interface ITfUIElement : IUnknown
1796 HRESULT GetDescription(
1797 [out] BSTR *description);
1812 uuid(887aa91e-acba-4931-84da-3c5208cf543f),
1813 pointer_default(unique)
1815interface IEnumTfUIElements : IUnknown
1818 [out] IEnumTfUIElements **enum_elements);
1822 [out, size_is(count), length_is(fetched)] ITfUIElement **element,
1823 [out] ULONG fetched);
1834 uuid(ea1ea135-19df-11d7-a6d2-00065b84435c),
1835 pointer_default(unique)
1837interface ITfUIElementMgr : IUnknown
1839 HRESULT BeginUIElement(
1840 [in] ITfUIElement *element,
1841 [in, out] BOOL *show,
1844 HRESULT UpdateUIElement(
1847 HRESULT EndUIElement(
1850 HRESULT GetUIElement(
1852 [out] ITfUIElement **element);
1854 HRESULT EnumUIElements(
1855 [out] IEnumTfUIElements **enum_elements);
1860 uuid(73131f9c-56a9-49dd-b0ee-d046633f7528),
1861 pointer_default(unique)
1863interface ITfSourceSingle : IUnknown
1865 HRESULT AdviseSingleSink(
1866 [in] TfClientId tid,
1868 [in, iid_is(riid)] IUnknown *punk);
1870 HRESULT UnadviseSingleSink(
1871 [in] TfClientId tid,
1878 uuid(c0f1db0c-3a20-405c-a303-96b6010a885f),
1879 pointer_default(unique)
1881interface ITfThreadFocusSink : IUnknown
1883 HRESULT OnSetThreadFocus();
1885 HRESULT OnKillThreadFocus();
1890 uuid(71c6e74e-0f28-11d8-a82a-00065b84435c),
1891 pointer_default(unique)
1893interface ITfInputProcessorProfileActivationSink : IUnknown
1895 HRESULT OnActivated(
1896 [in] DWORD dwProfileType,
1898 [in] REFCLSID clsid,
1900 [in] REFGUID guidProfile,
1902 [in] DWORD dwFlags);
1908 uuid(a1adaaa2-3a24-449d-ac96-5183e7f5c217),
1909 pointer_default(unique)
1911interface ITfMouseSink : IUnknown
1913 HRESULT OnMouseEvent(
1915 [in] ULONG uQuadrant,
1916 [in] DWORD dwBtnStatus,
1917 [out] BOOL *pfEaten);
1922 uuid(09d146cd-a544-4132-925b-7afa8ef322d0),
1923 pointer_default(unique)
1925interface ITfMouseTracker : IUnknown
1927 HRESULT AdviseMouseSink(
1928 [in] ITfRange *range,
1929 [in] ITfMouseSink *pSink,
1930 [out] DWORD *pdwCookie);
1932 HRESULT UnadviseMouseSink([in] DWORD dwCookie);
1937 uuid(3bdd78e2-c16e-47fd-b883-ce6facc1a208),
1938 pointer_default(unique)
1940interface ITfMouseTrackerACP : IUnknown
1942 HRESULT AdviseMouseSink(
1943 [in] ITfRangeACP *range,
1944 [in] ITfMouseSink *pSink,
1945 [out] DWORD *pdwCookie);
1947 HRESULT UnadviseMouseSink([in] DWORD dwCookie);
1953 uuid(a615096f-1c57-4813-8a15-55ee6e5a839c),
1954 pointer_default(unique)
1956interface ITfTransitoryExtensionSink : IUnknown
1958 HRESULT OnTransitoryExtensionUpdated(
1959 [in] ITfContext *pic,
1960 [in] TfEditCookie ecReadOnly,
1961 [in] ITfRange *pResultRange,
1962 [in] ITfRange *pCompositionRange,
1963 [out] BOOL *pfDeleteResultRange);
1968 uuid(2af2d06a-dd5b-4927-a0b4-54f19c91fade),
1969 pointer_default(unique)
1971interface ITfTextLayoutSink : IUnknown
1973 typedef [uuid(603553cf-9edd-4cc1-9ecc-069e4a427734)] enum
1980 HRESULT OnLayoutChange(
1981 [in] ITfContext *pic,
1982 [in] TfLayoutCode lcode,
1983 [in] ITfContextView *pView);
CD3D10_BUFFER_DESC D3D10_BUFFER_DESC cpp_quote(" ~CD3D10_BUFFER_DESC() {}") operator const D3D10_BUFFER_DESC &() const