79 lines
1.7 KiB
C
79 lines
1.7 KiB
C
|
// SoftKbdES.h: interface for the SoftKeyboardEventSink class.
|
||
|
//
|
||
|
//////////////////////////////////////////////////////////////////////
|
||
|
#ifndef __SOFTKBDES_H__
|
||
|
#define __SOFTKBDES_H__
|
||
|
|
||
|
#if _MSC_VER > 1000
|
||
|
#pragma once
|
||
|
#endif // _MSC_VER > 1000
|
||
|
|
||
|
#include "softkbd.h"
|
||
|
|
||
|
class CKorIMX;
|
||
|
|
||
|
|
||
|
class CSoftKeyboardEventSink : public ISoftKeyboardEventSink
|
||
|
{
|
||
|
public:
|
||
|
CSoftKeyboardEventSink(CKorIMX *pKorIMX, DWORD dwSoftLayout);
|
||
|
~CSoftKeyboardEventSink();
|
||
|
|
||
|
//
|
||
|
// IUnknown methods
|
||
|
//
|
||
|
STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
|
||
|
STDMETHODIMP_(ULONG) AddRef(void);
|
||
|
STDMETHODIMP_(ULONG) Release(void);
|
||
|
|
||
|
//
|
||
|
// ISoftKeyboardEventSink
|
||
|
//
|
||
|
|
||
|
STDMETHODIMP OnKeySelection(KEYID KeySelected, WCHAR *lpszLabel);
|
||
|
|
||
|
// void SetTidDim(TfClientId tid, ITfDocumentMgr *dim);
|
||
|
// void ReleaseTidDim( );
|
||
|
|
||
|
private:
|
||
|
|
||
|
long _cRef;
|
||
|
DWORD _dwSoftLayout;
|
||
|
CKorIMX *m_pKorIMX;
|
||
|
BOOL _fCaps;
|
||
|
BOOL _fShift;
|
||
|
BOOL _fAlt;
|
||
|
BOOL _fCtrl;
|
||
|
TfClientId _tid;
|
||
|
ITfThreadMgr *_tim;
|
||
|
|
||
|
};
|
||
|
|
||
|
|
||
|
class CSoftKbdWindowEventSink : public ISoftKbdWindowEventSink
|
||
|
{
|
||
|
public:
|
||
|
CSoftKbdWindowEventSink(CKorIMX *pKorIMX);
|
||
|
~CSoftKbdWindowEventSink();
|
||
|
|
||
|
//
|
||
|
// IUnknown methods
|
||
|
//
|
||
|
STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
|
||
|
STDMETHODIMP_(ULONG) AddRef(void);
|
||
|
STDMETHODIMP_(ULONG) Release(void);
|
||
|
|
||
|
//
|
||
|
// ISoftKbdWindowEventSink
|
||
|
//
|
||
|
|
||
|
STDMETHODIMP OnWindowClose( );
|
||
|
STDMETHODIMP OnWindowMove( int xWnd,int yWnd, int width, int height);
|
||
|
|
||
|
private:
|
||
|
|
||
|
long _cRef;
|
||
|
CKorIMX *m_pKorIMX;
|
||
|
};
|
||
|
#endif //
|