3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright 2008 Aric Stewart, CodeWeavers
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is free software; you can redistribute it and/or
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * modify it under the terms of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License as published by the Free Software Foundation; either
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * version 2.1 of the License, or (at your option) any later version.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is distributed in the hope that it will be useful,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lesser General Public License for more details.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * You should have received a copy of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License along with this library; if not, write to the Free Software
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * a choice of LGPL license versions is made available with the language indicating
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * of the LGPL is applied is otherwise unspecified.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "oaidl.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "comcat.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "textstor.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "ctfutb.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_E_STACKFULL MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0501)")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_E_DISCONNECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0504)")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_E_ALREADY_EXISTS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0506)")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_E_NOLOCK MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201)")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("HRESULT WINAPI TF_CreateThreadMgr(ITfThreadMgr **pptim);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("HRESULT WINAPI TF_GetThreadMgr(ITfThreadMgr **pptim);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("HRESULT WINAPI TF_CreateInputProcessorProfiles(ITfInputProcessorProfiles **ppipr);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("HRESULT WINAPI TF_CreateLangBarMgr(ITfLangBarMgr **pppbm);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("HRESULT WINAPI TF_CreateLangBarItemMgr(ITfLangBarItemMgr **pplbim);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("HRESULT WINAPI TF_InvalidAssemblyListCacheIfExist(void);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_PROP_TEXTOWNER;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("DEFINE_GUID(GUID_PROP_ATTRIBUTE,0x34b45670,0x7526,0x11d2,0xa1,0x47,0x00,0x10,0x5a,0x27,0x99,0xb5);")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_PROP_COMPOSING;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const CLSID CLSID_TF_ThreadMgr;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const CLSID CLSID_TF_InputProcessorProfiles;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const CLSID CLSID_TF_LangBarMgr;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const CLSID CLSID_TF_CategoryMgr;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const CLSID CLSID_TF_DisplayAttributeMgr;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* GUIDs for Compartments */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_KEYBOARD_DISABLED;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_KEYBOARD_OPENCLOSE;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_HANDWRITING_OPENCLOSE;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_SPEECH_DISABLED;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_SPEECH_OPENCLOSE;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_SPEECH_GLOBALSTATE;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_PERSISTMENUENABLED;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_EMPTYCONTEXT;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_COMPARTMENT_TIPUISTATUS;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* GUIDs for Categories */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_TFCAT_TIP_KEYBOARD;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_TFCAT_TIP_SPEECH;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_TFCAT_TIP_HANDWRITING;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("EXTERN_C const GUID GUID_TFCAT_DISPLAYATTRIBUTEPROVIDER;")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(7213778c-7bb0-4270-b050-6189ee594e97)] DWORD TfEditCookie;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(de403c21-89fd-4f85-8b87-64584d063fbc)] DWORD TfClientId;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(88a9c478-f3ec-4763-8345-cd9250443f8d)] DWORD TfGuidAtom;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_MOD_IGNORE_ALL_MODIFIER 0x0400")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_PROFILETYPE_INPUTPROCESSOR 0x0001")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynccpp_quote("#define TF_PROFILETYPE_KEYBOARDLAYOUT 0x0002")
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(4f5d560f-5ab5-4dde-8c4d-404592857ab0)] UINT_PTR HKL;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(e26d9e1d-691e-4f29-90d7-338dcf1f8cef)] struct TF_PERSISTENT_PROPERTY_HEADER_ACP
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(e1b5808d-1e46-4c19-84dc-68c5f5978cc8)] struct TF_LANGUAGEPROFILE
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(77c12f95-b783-450d-879f-1cd2362c6521)] struct TF_PRESERVEDKEY
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(5a886226-ae9a-489b-b991-2b1e25ee59a9)] enum { TF_ANCHOR_START = 0, TF_ANCHOR_END = 1 } TfAnchor;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(1690be9b-d3e9-49f6-8d8b-51b905af4c43)] enum { TF_AE_NONE, TF_AE_START, TF_AE_END } TfActiveSelEnd;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(36ae42a4-6989-4bdc-b48a-6137b7bf2e42)] struct TF_SELECTIONSTYLE
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(75eb22f2-b0bf-46a8-8006-975a3b6efcf1)] struct TF_SELECTION
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync const ULONG TF_DEFAULT_SELECTION = TS_DEFAULT_SELECTION;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetched)] TF_SELECTION *pSelection,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [in, size_is(ulCount)] const TF_SELECTION *pSelection);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(bc7d979a-846a-444d-afef-0a9bfa82b961)] TS_STATUS TF_STATUS;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(44d2825a-10e5-43b2-877f-6cb2f43b7e7e)]
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetch)] TF_INPUTPROCESSORPROFILE *pProfile,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(c4cc07f1-80cc-4a7b-bc54-98512782cbe3)]
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(d9b92e21-084a-401b-9c64-1e6dad91a1ab)]
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(90d0cb5e-6520-4a0f-b47c-c39bd955f0d6)]
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(33d2fe4b-6c24-4f67-8d75-3bc1819e4126)]
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef [uuid(1bf1c305-419b-4182-a4d2-9bfadc3f021f)]
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetAttributeInfo([out] TF_DISPLAYATTRIBUTE *pda);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetAttributeInfo([in] const TF_DISPLAYATTRIBUTE *pda);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Clone([out] IEnumTfDisplayAttributeInfo **ppEnum);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetched)] ITfDisplayAttributeInfo **rgInfo,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT EnumDisplayAttributeInfo([out] IEnumTfDisplayAttributeInfo **ppEnum);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT RegisterGUIDDescription([in] REFCLSID rclsid,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT UnregisterGUIDDescription([in] REFCLSID rclsid,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT IsEqualTfGuidAtom([in] TfGuidAtom guidatom,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetch)] TF_LANGUAGEPROFILE *pProfile,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(cf610f06-2882-46f6-abe5-298568b664c4)] enum { TF_GRAVITY_BACKWARD = 0, TF_GRAVITY_FORWARD = 1 } TfGravity;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(1e512533-bbdc-4530-9a8e-a1dc0af67468)] enum { TF_SD_BACKWARD = 0, TF_SD_FORWARD = 1 } TfShiftDir;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync typedef [uuid(49930d51-7d93-448c-a48c-fea5dac192b1)] struct TF_HALTCOND
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(cchMax), length_is(*pcch)] WCHAR *pchText,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync const DWORD TF_IAS_NO_DEFAULT_COMPOSITION = 0x80000000;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetched)] ITfRange **ppRange,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Clone([out] IEnumITfCompositionView **ppEnum);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetched)] ITfCompositionView **rgCompositionView,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT EnumCompositions([out] IEnumITfCompositionView **ppEnum);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncinterface ITfContextOwnerCompositionServices : ITfContextComposition
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT TerminateComposition([in] ITfCompositionView *pComposition);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [in] const TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT OnAttributeChange([in] REFGUID rguidAttribute);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [in] const TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT ForceLoadProperty([in] ITfProperty *pProp);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(ulCount), length_is(*pcFetched)] ITfContext **rgContext,