CIMESoftKbd.h
上传用户:hyb6888
上传日期:2016-01-24
资源大小:5186k
文件大小:2k
- /*
- * author : yuchifang(realfun)
- * email : renzhongfang@nju.org.cn
- */
- #ifndef _IME_SOFTKBD_H_
- #define _IME_SOFTKBD_H_
- #define ISC_SHOW_SOFTKBD 0x02000000
- typedef struct _tagUIPRIV { // IME private UI data
- HWND hCompWnd; // composition window
- int nShowCompCmd;
- HWND hCandWnd; // candidate window for composition
- int nShowCandCmd;
- HWND hSoftKbdWnd; // soft keyboard window
- int nShowSoftKbdCmd;
- HWND hStatusWnd; // status window
- int nShowStatusCmd;
- DWORD fdwSetContext; // the actions to take at set context time
- HIMC hIMC; // the recent selected hIMC
- HWND hCMenuWnd; // a window owner for context menu
- HWND hSoftkeyMenuWnd; // a window owner for softkeyboard menu
- } UIPRIV;
- typedef UIPRIV *PUIPRIV;
- typedef UIPRIV NEAR *NPUIPRIV;
- typedef UIPRIV FAR *LPUIPRIV;
- #define NumsSK 14
- typedef struct _tagPRIVCONTEXT {// IME private data for each context
- int iImeState; // the composition state - input, choose, or
- BOOL fdwImeMsg; // what messages should be generated
- DWORD dwCompChar; // wParam of WM_IME_COMPOSITION
- DWORD fdwGcsFlag; // lParam for WM_IME_COMPOSITION
- // SK data
- // Symbol pair Flag
- UINT uSYHFlg;
- UINT uDYHFlg;
- UINT uDSMHCount;
- UINT uDSMHFlg;
- // input data
- BYTE bSeq[13]; // sequence code of input char
- DWORD fdwGB;
- HIMCC hRevCandList; // memory for reconsion result
- } PRIVCONTEXT;
- typedef PRIVCONTEXT FAR *LPPRIVCONTEXT;
- //该类封装了软键盘操作
- class CIMESoftKbd
- {
- void SetSoftKbdData( int NUM);
- HWND CreateSoftKbd(HWND hUIWnd);
- public:
- DWORD savhimc,Curhimc;
- HWND initalize(DWORD himc);
- int showflage;
- HWND CIMEhSoftKbdWnd;
- int CurentKbdNum;
- CIMESoftKbd();
- ~CIMESoftKbd();
- void ShowNextSoftKbd();
- void ShowSoftKbd();
- long SelID();
- long Popup();
- long mSelID;
- };
- #endif//_IME_SOFTKBD_H_