/****************************************************************************** caryIme.h: cary's Ime的DllMain。 (c) 許百勝Cary Hsu, 2000.7.10 ******************************************************************************/ #ifndef __CARYIME #define __CARYIME typedef void(*RESULTCALLBACK)(LPSTR); /* IME的初始化 parameter: hwnd: 所使用的HWND ResultCallback: 中文輸入法的結果回報 return: TRUE: 嚴重的錯誤,請結束程式,否則無法使用中文輸入法*/ BOOL InitIme(HWND hwnd,RESULTCALLBACK ResultCallback); /* IME結束*/ void EndIme(); /* 改變顯示的模式,window mode或fullscreen mode parameter: bWindowMode: 使用的視窗模式 */ void ChangeMode(BOOL bWindowMode); /* 處理IME的message parameter: Message: 視窗訊息 wParam,lParam:視窗訊息的參數 return: TRUE: 已經有處理IME的message FALSE: 還有其也的message需要處理 */ BOOL ImeMessage(UINT Message,WPARAM wParam,LPARAM lParam); /* clear IME buffer */ void ClearIme(); /* IME的ON,OFF狀態確認 return: ON: TRUE OFF:FALSE */ BOOL ImeOpenState(); /* 取得輸入法的字串,可能candiate或compsition return: NULL: 沒有字串,請自行處理 非NULL: 有輸入法的字串 */ LPSTR GetImeString(); /* 取得輸入法的描述字串 return: 輸入法的描述字串 */ LPSTR GetImeDescString(); /////////////////////////////////////////////////////////////////////////////// /* 取得lpstr的上一個字的位址 parameter: lpstrHead: 字串的頭 lpstr: 要取回上一個字的字串 return: 上一個字的位址 */ char *GetCharPrev(char *lpstrHead,char *lpstr); #endif