reactos/sdk/include/psdk/ctffunc.idl

481 lines
9.8 KiB
Plaintext
Raw Normal View History

#ifndef DO_NO_IMPORTS
import "oaidl.idl";
import "msctf.idl";
import "ctfutb.idl";
#endif
typedef enum
{
STYLE_ACTIVE_SELECTION = 0,
STYLE_IMPLIED_SELECTION = 0x1
} TfIntegratableCandidateListSelectionStyle;
typedef enum
{
GETIF_RESMGR = 0,
GETIF_RECOCONTEXT = 0x1,
GETIF_RECOGNIZER = 0x2,
GETIF_VOICE = 0x3,
GETIF_DICTGRAM = 0x4,
GETIF_RECOGNIZERNOINIT = 0x5
} TfSapiObject;
typedef struct TF_LMLATTELEMENT
{
DWORD dwFrameStart;
DWORD dwFrameLen;
DWORD dwFlags;
union {
INT iCost;
};
BSTR bstrText;
} TF_LMLATTELEMENT;
cpp_quote("EXTERN_C const CLSID CLSID_SapiLayr;")
interface IEnumTfCandidates;
interface IEnumTfLatticeElements;
interface ITfCandidateList;
interface ITfCandidateString;
interface ITfFnAdviseText;
interface ITfFnBalloon;
interface ITfFnConfigure;
interface ITfFnConfigureRegisterEudc;
interface ITfFnConfigureRegisterWord;
interface ITfFnGetLinguisticAlternates;
interface ITfFnGetPreferredTouchKeyboardLayout;
interface ITfFnGetSAPIObject;
interface ITfFnLMInternal;
interface ITfFnLMProcessor;
interface ITfFnLangProfileUtil;
interface ITfFnPlayBack;
interface ITfFnPropertyUIStatus;
interface ITfFnReconversion;
interface ITfFnSearchCandidateProvider;
interface ITfFnShowHelp;
interface ITfFunction;
interface ITfIntegratableCandidateListUIElement;
interface ITfLMLattice;
interface IUIManagerEventSink;
[
object,
uuid(defb1926-6c80-4ce8-87d4-d6b72b812bde),
pointer_default(unique)
]
interface IEnumTfCandidates : IUnknown
{
HRESULT Clone(
[out] IEnumTfCandidates **ppEnum);
HRESULT Next(
[in] ULONG ulCount,
[out] ITfCandidateString **ppCand,
[out] ULONG *pcFetched);
HRESULT Reset(void);
HRESULT Skip(
[in] ULONG ulCount);
}
[
object,
uuid(56988052-47da-4a05-911a-e3d941f17145),
pointer_default(unique)
]
interface IEnumTfLatticeElements : IUnknown
{
HRESULT Clone(
[out] IEnumTfLatticeElements **ppEnum);
HRESULT Next(
[in] ULONG ulCount,
[out] TF_LMLATTELEMENT *rgsElements,
[out] ULONG *pcFetched);
HRESULT Reset(void);
HRESULT Skip(
[in] ULONG ulCount);
}
[
object,
uuid(a3ad50fb-9bdb-49e3-a843-6c76520fbf5d),
pointer_default(unique)
]
interface ITfCandidateList : IUnknown
{
typedef enum
{
CAND_FINALIZED = 0,
CAND_SELECTED = 0x1,
CAND_CANCELED = 0x2
} TfCandidateResult;
HRESULT EnumCandidates(
[out] IEnumTfCandidates **ppEnum);
HRESULT GetCandidate(
[in] ULONG nIndex,
[out] ITfCandidateString **ppCand);
HRESULT GetCandidateNum(
[out] ULONG *pnCnt);
HRESULT SetResult(
[in] ULONG nIndex,
[in] TfCandidateResult imcr);
}
[
object,
uuid(581f317e-fd9d-443f-b972-ed00467c5d40),
pointer_default(unique)
]
interface ITfCandidateString : IUnknown
{
HRESULT GetString(
[out] BSTR *pbstr);
HRESULT GetIndex(
[out] ULONG *pnIndex);
}
[
object,
uuid(3527268b-7d53-4dd9-92b7-7296ae461249),
pointer_default(unique)
]
interface ITfFnAdviseText : IUnknown
{
HRESULT OnTextUpdate(
[in] ITfRange *pRange,
[in] const WCHAR *pchText,
[in] LONG cch);
HRESULT OnLatticeUpdate(
[in] ITfRange *pRange,
[in] ITfLMLattice *pLattice);
}
[
object,
uuid(3bab89e4-5fbe-45f4-a5bc-dca36ad225a8),
pointer_default(unique)
]
interface ITfFnBalloon : IUnknown
{
HRESULT UpdateBalloon(
[in] TfLBBalloonStyle style,
[in] const WCHAR *pch,
[in] ULONG cch);
}
[
object,
uuid(88f567c6-1757-49f8-a1b2-89234c1eeff9),
pointer_default(unique)
]
interface ITfFnConfigure : IUnknown
{
HRESULT Show(
[in] HWND hwndParent,
[in] LANGID langid,
[in] REFGUID rguidProfile);
}
[
object,
uuid(b5e26ff5-d7ad-4304-913f-21a2ed95a1b0),
pointer_default(unique)
]
interface ITfFnConfigureRegisterEudc : IUnknown
{
HRESULT Show(
[in] HWND hwndParent,
[in] LANGID langid,
[in] REFGUID rguidProfile,
BSTR bstrRegistered);
}
[
object,
uuid(bb95808a-6d8f-4bca-8400-5390b586aedf),
pointer_default(unique)
]
interface ITfFnConfigureRegisterWord : IUnknown
{
HRESULT Show(
[in] HWND hwndParent,
[in] LANGID langid,
[in] REFGUID rguidProfile,
[in] BSTR bstrRegistered);
}
[
object,
uuid(db593490-098f-11d3-8df0-00105a2799b5),
pointer_default(unique)
]
interface ITfFunction : IUnknown
{
HRESULT GetDisplayName(
[out] BSTR *pbstrName);
}
[
object,
uuid(ea163ce2-7a65-4506-82a3-c528215da64e),
pointer_default(unique)
]
interface ITfFnGetLinguisticAlternates : ITfFunction
{
HRESULT GetAlternates(
[in] ITfRange *pRange,
[out] ITfCandidateList **ppCandidateList);
}
[
object,
uuid(5f309a41-590a-4acc-a97f-d8efff13fdfc),
pointer_default(unique)
]
interface ITfFnGetPreferredTouchKeyboardLayout : ITfFunction
{
typedef enum
{
TKBLT_UNDEFINED = 0,
TKBLT_CLASSIC = 1,
TKBLT_OPTIMIZED = 2
} TKBLayoutType;
HRESULT GetLayout(
[out] TKBLayoutType *pTKBLayoutType,
[out] WORD *pwPreferredLayoutId);
}
[
object,
uuid(5c0ab7ea-167d-4f59-bfb5-4693755e90ca),
pointer_default(unique)
]
interface ITfFnGetSAPIObject : IUnknown
{
HRESULT Get(
[in] TfSapiObject sObj,
[out] IUnknown **ppunk);
}
[
object,
uuid(04b825b1-ac9a-4f7b-b5ad-c7168f1ee445),
pointer_default(unique)
]
interface ITfFnLMInternal : IUnknown
{
HRESULT ProcessLattice(
[in] ITfRange *pRange);
}
[
object,
uuid(7afbf8e7-ac4b-4082-b058-890899d3a010),
pointer_default(unique)
]
interface ITfFnLMProcessor : IUnknown
{
HRESULT QueryRange(
[in] ITfRange *pRange,
[out] ITfRange **ppNewRange,
[out] BOOL *pfAccepted);
HRESULT QueryLangID(
[in] LANGID langid,
[out] BOOL *pfAccepted);
HRESULT GetReconversion(
[in] ITfRange *pRange,
[out] ITfCandidateList **ppCandList);
HRESULT Reconvert(
[in] ITfRange *pRange);
HRESULT QueryKey(
[in] BOOL fUp,
[in] WPARAM vKey,
[in] LPARAM lparamKeydata,
[out] BOOL *pfInterested);
HRESULT InvokeKey(
[in] BOOL fUp,
[in] WPARAM vKey,
[in] LPARAM lparamKeyData);
HRESULT InvokeFunc(
[in] ITfContext *pic,
[in] REFGUID refguidFunc);
}
[
object,
uuid(a87a8574-a6c1-4e15-99f0-3d3965f548eb),
pointer_default(unique)
]
interface ITfFnLangProfileUtil : IUnknown
{
HRESULT RegisterActiveProfiles(void);
HRESULT IsProfileAvailableForLang(
[in] LANGID langid,
[out] BOOL *pfAvailable);
}
[
object,
uuid(a3a416a4-0f64-11d3-b5b7-00c04fc324a1),
pointer_default(unique)
]
interface ITfFnPlayBack : IUnknown
{
HRESULT QueryRange(
[in] ITfRange *pRange,
[out] ITfRange **ppNewRange,
[out] BOOL *pfPlayable);
HRESULT Play(
[in] ITfRange *pRange);
}
[
object,
uuid(2338ac6e-2b9d-44c0-a75e-ee64f256b3bd),
pointer_default(unique)
]
interface ITfFnPropertyUIStatus : IUnknown
{
HRESULT GetStatus(
[in] REFGUID refguidProp,
[out] DWORD *pdw);
HRESULT SetStatus(
[in] REFGUID refguidProp,
[in] DWORD dw);
}
[
object,
uuid(4cea93c0-0a58-11d3-8df0-00105a2799b5),
pointer_default(unique)
]
interface ITfFnReconversion : IUnknown
{
HRESULT QueryRange(
[in] ITfRange *pRange,
ITfRange **ppNewRange,
[out] BOOL *pfConvertable);
HRESULT GetReconversion(
[in] ITfRange *pRange,
[out] ITfCandidateList **ppCandList
);
HRESULT Reconvert(
[in] ITfRange *pRange);
}
[
object,
uuid(87a2ad8f-f27b-4920-8501-67602280175d),
pointer_default(unique)
]
interface ITfFnSearchCandidateProvider : IUnknown
{
HRESULT GetSearchCandidates(
[in] BSTR bstrQuery,
[in] BSTR bstrApplicationId,
[out] ITfCandidateList **pplist);
HRESULT SetResult(
[in] BSTR bstrQuery,
[in] BSTR bstrApplicationID,
[in] BSTR bstrResult);
}
[
object,
uuid(5ab1d30c-094d-4c29-8ea5-0bf59be87bf3),
pointer_default(unique)
]
interface ITfFnShowHelp : IUnknown
{
HRESULT Show(
[in] HWND hwndParent);
}
[
object,
uuid(5ab1d30c-094d-4c29-8ea5-0bf59be87bf3),
pointer_default(unique)
]
interface ITfIntegratableCandidateListUIElement : IUnknown
{
HRESULT SetIntegrationStyle(
[in] GUID guidIntegrationStyle);
HRESULT GetSelectionStyle(
[out] TfIntegratableCandidateListSelectionStyle *ptfSelectionStyle);
HRESULT OnKeyDown(
[in] WPARAM wParam,
[in] LPARAM lParam,
[out] BOOL *pfEaten);
HRESULT ShowCandidateNumbers(
[out] BOOL *pfShow);
HRESULT FinalizeExactCompositionString(void);
}
[
object,
uuid(d4236675-a5bf-4570-9d42-5d6d7b02d59b),
pointer_default(unique)
]
interface ITfLMLattice : IUnknown
{
HRESULT QueryType(
[in] REFGUID rguidType,
[out] BOOL *pfSupported);
HRESULT EnumLatticeElements(
[in] DWORD dwFrameStart,
[in] REFGUID rguidType,
[out] IEnumTfLatticeElements **ppEnum);
}
[
object,
uuid(cd91d690-a7e8-4265-9b38-8bb3bbaba7de),
pointer_default(unique)
]
interface IUIManagerEventSink : IUnknown
{
HRESULT OnWindowOpening(
[in] RECT *prcBounds);
HRESULT OnWindowOpened(
[in] RECT *prcBounds);
HRESULT OnWindowUpdating(
[in] RECT *prcUpdatedBounds);
HRESULT OnWindowUpdated(
[in] RECT *prcUpdatedBounds);
HRESULT OnWindowClosing(void);
HRESULT OnWindowClosed(void);
}