44 lines
943 B
C++
44 lines
943 B
C++
#ifndef TSF_HPP
|
|
#define TSF_HPP
|
|
|
|
#include <msctf.h>
|
|
|
|
class TSF
|
|
{
|
|
public:
|
|
|
|
protected:
|
|
class UI_Sink : public ITfUIElementSink, public ITfInputProcessorProfileActivationSink
|
|
{
|
|
public:
|
|
UI_Sink();
|
|
~UI_Sink();
|
|
|
|
// IUnknown
|
|
STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
|
|
STDMETHODIMP_(ULONG) AddRef(void);
|
|
STDMETHODIMP_(ULONG) Release(void);
|
|
|
|
// ITfUIElementSink
|
|
STDMETHODIMP BeginUIElement(DWORD dwUIElementId, BOOL *pbShow);
|
|
STDMETHODIMP UpdateUIElement(DWORD dwUIElementId);
|
|
STDMETHODIMP EndUIElement(DWORD dwUIElementId);
|
|
|
|
// ITfInputProcessorProfileActivationSink
|
|
STDMETHODIMP OnActivated(DWORD dwProfileType, LANGID langid,
|
|
REFCLSID clsid, REFGUID catid,
|
|
REFGUID guidProfile, HKL hkl,
|
|
DWORD dwFlags);
|
|
|
|
// ITfCompartmentEventSink
|
|
STDMETHODIMP OnChange(REFGUID rguid);
|
|
|
|
private:
|
|
LONG my_Reference_Count;
|
|
};
|
|
|
|
private:
|
|
|
|
};
|
|
|
|
#endif
|