⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pattree.h

📁 Symbian平台 数字键盘手机输入法源码
💻 H
📖 第 1 页 / 共 2 页
字号:

/***********************************************************************************************************************************************************************************************************/
// chs click
/***********************************************************************************************************************************************************************************************************/
// NEXTAP_GetSentenceBufferSize 
// 返回所需工作内存缓冲区的大小,调用者应当在外部分配指定大小的缓冲区后在下面调用其他函数时使用,缓冲区头结构见OUTBUFFER结构
// Return Value:
//		缓冲区字节数
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_GetSentenceBufferSize( void );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_ResetSentence 
// 清空当前这一句输入,OUTBUFFER中szResult以下的部分被清空,以上的部分(除szAllInput和nNextPredictCharNumber)填入参数表中指定的值。
// 第一次调用时OUTBUFFER中szAllInput设为_T(""), nNextPredictCharNumber设为0,以后调用时不用再设,除非想清空前面的已输入句子
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//		short nIMMethod 输入方式,PATTREE_CHS_PINYIN或PATTREE_CHS_STROKE
//		short nMaxCandCharNum 候选词中每行显示的最多字数,第一次调用时务必填入,以后可以用OUTBUFFER中的相应信息
//		short nMaxPredictCharNum 预测候选词中每行显示的最多字数,第一次调用时务必填入,以后可以用OUTBUFFER中的相应信息
// Return Value:
//		成功返回1,否则返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_ResetSentence( void *pBuffer, void *pDicBuffer, short nIMMethod, short nMaxCandCharNum, short nMaxPredictCharNum );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_AddDigi2Sentence 
// 加入一次按键, 输入 ' 时为强制断字,拚音方式下2~9有效,笔划方式下1~5有效
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//		char cDigi 加入的按键,ASCII编码
// Return Value:
//		成功加入,但预测内容无变化,返回0; 成功加入,预测内容有变化返回1;加入失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_AddDigi2Sentence( void *pBuffer, void *pDicBuffer, char cDigi );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_DelDigiFSentence 
// 删除最末位的按键
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
// Return Value:
//		成功删除末尾按键,返回1; 末尾没有按键,但删除了szAllInput中的字,返回0;删除失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_DelDigiFSentence( void *pBuffer, void *pDicBuffer );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_MoveState 
// 改动目前预测的句子时用左右方向控制要改的字(只能更改候选)
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//      int nMoveStateDirection 移动方向,PATTREE_MOVESTATE_LEFT或PATTREE_MOVESTATE_RIGHT
// Return Value:
//		成功,返回候选(candidates)个数; 失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_MoveState( void *pBuffer, void *pDicBuffer, int nMoveStateDirection );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_ChooseCandPredict 
// 选择候选
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//      int nNo 候选在候选列表中的位置(0~nCandNum或nPredictNum)
//		int nCand_Predict 候选(PATTREE_CAND)还是预测候选(PATTREE_PREDICT)
//		int bIsAdjustFreq 是否做用户自适应(1或0)
//		int bIsResetSentence 在输入状态为当前最后一个词时,选择当前词候选之后是否要ResetSentence
// Return Value:
//		成功,返回1; 失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_ChooseCandPredict( void *pBuffer, void *pDicBuffer, int nNo, int nCand_Predict, int bIsAdjustFreq, int bIsResetSentence );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_MoveCandPredict 
// 候选列表翻页
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//      int nLeft_Right 向左(PATTREE_MOVESTATE_LEFT)还是向右(PATTREE_MOVESTATE_RIGHT)
//		int nCand_Predict 候选(PATTREE_CAND)还是预测候选(PATTREE_PREDICT)
// Return Value:
//		成功,返回>=0; 失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_MoveCandPredict( void *pBuffer, void * pDicBuffer, int nLeft_Right, int nCand_Predict );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_GetActiveWordInfo 
// 取得当前词的信息
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//      int * pnCharBegin 指向当前词的起始字下标
//      int * pnCharEnd 指向当前词的结束字下标
//      int * pnCharBegin 指向当前词的起始数字序列下标
//      int * pnCharEnd 指向当前词的结束数字序列下标
//		int nCand_Predict 候选(PATTREE_CAND)还是预测候选(PATTREE_PREDICT)
// Return Value:
//		成功,返回1; 失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_GetActiveWordInfo( void *pBuffer, void * pDicBuffer, int *pnCharBegin, int *pnCharEnd, int *pnDigiBegin, int *pnDigiEnd );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_GetSymbol 
// 取得所有符号,填入候选列表中
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
// Return Value:
//		返回符号总数
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_GetSymbol( void *pBuffer, void * pDicBuffer );

int NEXTAP_GetLastWordLen( void *pBuffer, void * pDicBuffer );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_AddSentence2UserDic 
// 将当前句子(nCandNo<0)或当前词的第nCandNo个候选的简拼加入用户词典
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//		int nCandNo 为<0时,将当前句子加入用户词典,否则将当前词的第nCand个候选加入
// Return Value:
//		成功返回1,否则返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_AddSentence2UserDic( void *pDicBuffer, void *pBuffer, int nCandNo );
void NEXTAP_ResetUserDic( void *pDicBuffer );


/***********************************************************************************************************************************************************************************************************/
// en click, especially for English Version, similar to chs click
int NEXTAP_GetSentenceBufferSizeEN( void );

void NEXTAP_ResetSentenceEN( void *pBuffer, void * pDicBuffer, short nIMMethod, short nMaxCandCharNum, short nMaxPredictCharNum );

int NEXTAP_AddDigi2SentenceEN( void *pBuffer, void * pDicBuffer, char cDigi );

int NEXTAP_DelDigiFSentenceEN( void *pBuffer, void * pDicBuffer );

int NEXTAP_ChooseCandPredictEN( void *pBuffer, void * pDicBuffer, int nNo, int nCand_Predict, int bIsAdjustFreq );

int NEXTAP_MoveCandPredictEN( void *pBuffer, void * pDicBuffer, int nLeft_Right, int nCand_Predict );

int NEXTAP_GetSymbolEN( void *pBuffer, void * pDicBuffer );

/***********************************************************************************************************************************************************************************************************/
// handwriting, especially for Chinese Handwriting Version, similar to chs click except for NEXTAP_InitSentenceHW and DeleteSentenceHW,
// Be sure to call NEXTAP_InitSentenceHW and DeleteSentenceHW before and after other operations respectively
int NEXTAP_GetSentenceBufferSizeHW( void );

int NEXTAP_InitSentenceHW( void *pBuffer, void * pDicBuffer );		 // call this ONLY ONCE

int NEXTAP_DeleteSentenceHW( void *pBuffer, void * pDicBuffer );	 // call this ONLY ONCE

void NEXTAP_ResetSentenceHW( void *pBuffer, void * pDicBuffer );

/***********************************************************************************************************************************************************************************************************/
// NEXTAP_AddTrace2SentenceHW 
// 加入一个手写单字笔迹
// Parameters:
//		void *pBuffer 指向工作缓冲区的指针
//		void *pDicBuffer 指向字典缓冲区的指针
//		void *pTrace 指向笔迹缓冲区的指针,笔迹格式: 依次为(X1,Y1,X2,Y2,...,0xff,0x00,Xn,Yn,Xn+1,Yn+1,...,0xff,0x00,0xff,0xff),其中的点对(0xff,0x00)表示一个笔划结束,点对(0xff,0xff)表示该字结束
//		int nTraceLen 笔记缓冲区大小,以字节为单位
// Return Value:
//		成功,返回1; 失败,返回-1
/***********************************************************************************************************************************************************************************************************/
int NEXTAP_AddTrace2SentenceHW( void *pBuffer, void * pDicBuffer, void *pTrace, int nTraceLen );

int NEXTAP_DelTraceFSentenceHW( void *pBuffer, void * pDicBuffer );

int NEXTAP_ChooseCandPredictHW( void *pBuffer, void * pDicBuffer, int nNo, int nCand_Predict );

int NEXTAP_MoveCandPredictHW( void *pBuffer, void * pDicBuffer, int nLeft_Right, int nCand_Predict );

int NEXTAP_MoveStateHW( void *pBuffer, void *pDicBuffer, int nMoveStateDirection );

#ifdef _UNICODE		
#define	ch_strlen( str )			wcslen( str )							
#else										
#define	ch_strlen( str )			(strlen( (char*)(str) ) / 2)
#endif

#ifdef __cplusplus
}
#endif

#endif // #ifndef _PATTREE_20021114_H_

/*********************************************************************************************/
/*																							 */
/*	EDic.h:	File End											 							 */
/*																							 */
/*********************************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -