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

📄 dict.h

📁 在mtk平台上开发的电子词典源码
💻 H
字号:
#if defined(__PALM_LEARN_MACHINE__)

#include "PixtelDatatypes.h"
#include "gui_data_types.h"
#include "GlobalMenuItems.h"
#include "CustDataProts.h"
#include "CustDataRes.h"
#include "CalendarDef.h"
#include "EventsGprot.h"
#include "wgui_categories_util.h"
#include "GlobalDefs.h"
#include "HistoryGprot.h"
#include "CommonScreens.h"
#include "wgui_categories_inputsenum.h"
#include "wgui_categories_inputs.h"
#include "wgui_inputs.h"
#include "gui.h"
#include "gui_inputs.h"
#include "TimerEvents.h"
#include "UnicodeStrgprot.h"
#include "TouchScreenGprot.h"
#include "gdi_include.h"
#include "DebugInitDef.h"
#include "dict_defs.h"


#include "dict_get_word.h"
#include "NVRAMProt.h"
#include "scroll_bar.h"
#include "common_api.h"

#define GET_WORD_MAX_NUM 20
#define ENGLISHWORDLEN_LIMIT 36
//////////////////////////////////////////////////////////////////////////
extern int dict_sc_cur_menu;//当前窗口 0英汉 1汉英 2成语 3汉字 4人名 5地名
extern unsigned char dicts_single_inputbox_buf[128];
//extern unsigned char word_list[1024];
extern unsigned char *word_list;
extern unsigned char dict_word_list_array[20][80];//储存列表中的单词信息
//extern unsigned char dict_explain_array[1024];//以行的形式储存解释信息
extern unsigned char *dict_explain_array;
extern unsigned short dict_idiom_list_id[20];
extern int word_list_num;//单词个数
extern int explain_line_num;//解释的行数
extern int zt_dict_list_roll_content_current_line;//
extern int zt_dict_list_flag;//判断滚动条上下移动的标志。正常不移动为0
extern int zt_dict_exp_roll_content_current_line;//
extern int dict_cur_focus;//判断上下键控制的是列表还是解释区域,0为列表,1为解释区域
extern int dict_sc_cur_win;//当前窗口 0英汉 1汉英 2成语 3汉字 4人名 5地名
extern int dict_key_down_line;//触笔点击列表框时,位置所在的行数
extern int dict_list_cur_line;//当前应该显示选中的行
extern int dict_bottom_key_flag;//判断输入框是否有内容,为了显示右下是返回或者删除
extern int dict_list_begin;//显示列表时开始行
extern int DICT_IS_INPUT_NULL;//输入是否为空
extern int dict_is_show_charge_win;
extern unsigned char tempsave[64];
extern unsigned char gnoteString1[64];
extern unsigned short LM_dict_chinese_input_flag;
extern struct	VERT_SCROLL_ABR_STRUCT	zt_dict_list_vertical_scroll_bar;
extern struct	VERT_SCROLL_ABR_STRUCT	zt_dict_exp_vertical_scroll_bar;//滚动条
extern int DICT_IS_SHOW_CUR_ITEM;//是否显示当前选中的列表项
extern unsigned	char	msg_content[40];
extern unsigned	char	send_number[16];
extern int DICT_IS_CHARGED;//判断是否缴费了的变量


extern unsigned int setting_window_flag;//modified
//各个窗口进入函数
extern void  LM_dictions_mod(void);
extern void  dict_main(void);
extern void  dict_draw_win(void);
extern void  dict_eng_chn(void);//英汉解释主窗口函数0
extern void  dict_chn_eng(void);//汉英解释主窗口函数1
extern void  dict_idiom(void);//成语2
extern void  dict_chn_word(void);//汉字窗口3
extern void  dict_people_name(void);//人名4
extern void  dict_loc_name(void);//地名5
//end
extern void dict_get_word_list(void);
extern void dict_output_word_list(int);
extern void dict_get_explain(void);
extern void dict_output_word_explain(void);
extern void dict_show_bottom_text(int,int,int);
extern int  ZT_Dict_List_Rollbar_CallbackMain(unsigned short curLine);
extern int  ZT_Dict_Exp_Rollbar_CallbackMain(unsigned short curLine);
//////////////////////////////////////////////////////////////////////////
extern void dict_draw_cur_menu_active(void);
extern void dict_exit(void);
extern void dict_main_setkey_fun(void);
extern void dict_set_input_box_mode(unsigned short);
//////////////////////////////////////////////////////////////////////////
extern void LM_register_singleline_inputbox_keys(unsigned short input_type);
extern void LM_singleline_inputbox_abc(void);
extern void LM_singleline_inputbox_num(void);
extern void learn_machine_timerflag_update(void);////按键延迟标志更新
extern void Finish_Back(void);
extern void LM_pinyin_shurufa(void);
extern void LM_Dicts_chinese_input_refresh(void);

extern void LM_Dicts_Show_input_button(void);
extern void LM_Dicts_chinese_input_refresh(void);
//////////////////////////////////////////////////////////////////////////
void LM_UNICODE_TO_GB(unsigned char *pOutBuffer, unsigned char *pInBuffer, unsigned int OutLen);
extern int dict_divide_text_to_arraylist(unsigned short pix_num,/*每行能放下英文字符的个数 */ char *str_ptr,/*输入字符串指针 */ char *p_dust, unsigned short length);
//////////////////////////////////////////////////////////////////////////
extern void dict_editbox_update_callback(void);
extern void LM_dicts_menu_DisIdleScr(void);
extern void dict_main_right_key_down_fun(void);
extern void dict_main_left_key_down_fun(void);
extern void dict_main_right_key_fun(void);
extern void dict_main_right_key_long_fun(void);
extern void dict_main_left_key_fun(void);
extern void dict_main_keyup_up(void);
extern void dict_main_keyup_down(void);
extern void dict_main_keydown_down(void);
extern void dict_main_keydown_up(void);
extern void dict_main_keyright_down(void);
extern void dict_main_keyright_up(void);
extern void dict_main_keyleft_down(void);
extern void dict_main_keyleft_up(void);
extern void dict_main_keyup_long(void);
extern void dict_main_keydown_long(void);
extern void dict_key_pound_down_fun(void);
extern void dict_key_pound_up_fun(void);
extern void dict_pen_down_fun(mmi_pen_point_struct pos);
extern void dict_pen_up_fun(mmi_pen_point_struct pos);
extern void dict_pen_move_fun(mmi_pen_point_struct pos);

extern void dict_exit_fun(void );//modified
//帮助窗口
extern int dict_is_need_charge(void);
extern void dict_help_win_fun(void);
extern struct	VERT_SCROLL_ABR_STRUCT	dict_help_vertical_scroll_bar;
extern int dict_help_line_num;
extern int dict_help_cur_line;
extern void dict_help_draw_win_fun(void );
extern void dict_help_draw_fun(void);
extern void dict_help_setkey_fun(void);
extern void dict_help_lsk_fun(void);     
extern void dict_help_rsk_fun(void);
extern void dict_help_keyup_down_fun(void);
extern void dict_help_keydown_down_fun(void);
extern void dict_help_keyup_up_fun(void);
extern void dict_help_keydown_up_fun(void);
extern void dict_help_pendown_fun(mmi_pen_point_struct pos);
extern void dict_help_penup_fun(mmi_pen_point_struct pos);
extern int dict_help_callback_fun(unsigned short curLine);
//资费说明窗口
extern void dict_help_charge_win_fun(void);
extern void dict_help_charge_draw_win_fun(void);
extern void dict_help_charge_draw_win_fun(void );
extern void dict_help_charge_draw_fun(void);
extern void dict_help_charge_setkey_fun(void);
extern void dict_help_charge_lsk_fun(void);     
extern void dict_help_charge_rsk_fun(void);
extern void dict_help_charge_keyup_down_fun(void);
extern void dict_help_charge_keydown_down_fun(void);
extern void dict_help_charge_keyup_up_fun(void);
extern void dict_help_charge_keydown_up_fun(void);
extern void dict_help_charge_pendown_fun(mmi_pen_point_struct pos);
extern void dict_help_charge_penup_fun(mmi_pen_point_struct pos);
extern int dict_help_charge_callback_fun(unsigned short curLine);
//收费窗口    


extern void dict_charge_win_fun(void);
extern void dict_charge_draw_win_fun(void);
extern void dict_charge_setkey_fun(void);
extern void dict_charge_lsk_fun(void);
extern void dict_charge_rsk_fun(void);
extern void dict_charge_pendown_fun(mmi_pen_point_struct pos);
extern void dict_charge_penup_fun(mmi_pen_point_struct pos);
//初始化数据函数
extern void dict_init_data(void);
extern void dict_switch_menu(int flag);
/////
extern void dict_start_menu_win(void);
extern void dict_all_lsk_down(void);
extern void dict_all_rsk_down(void);
extern int   dict_IS_T_card_Exist(void);
//////////////////////////////////////////////////////////////////////////
extern void LM_pinyin_shurufa(void);
extern void Finish_Back(void);
extern void LM_pinyin_rightkey_fun(void);

extern void dict_setting_win_fun(void);
extern void dict_setting_draw_win_fun(void);
extern void dict_setting_setkey_fun(void);
extern void dict_setting_lsk_fun(void);
extern void dict_setting_lsk_down_fun(void);
extern void dict_setting_rsk_down_fun(void);
extern void dict_setting_rsk_fun(void);
extern void dict_setting_keyup_up_fun(void);
extern void dict_setting_keydown_up_fun(void);
extern void dict_setting_pendown_fun(mmi_pen_point_struct pos);
extern void dict_setting_penup_fun(mmi_pen_point_struct pos);
extern void dict_setting_item_change_fun(void);
extern void dict_setting_keyleft_down_fun(void);
extern void dict_setting_keyright_down_fun(void);
extern void dict_setting_keyleft_up_fun(void);
extern void dict_setting_keyright_up_fun(void);
extern void dict_help_charge_win_fun(void);
//错误提示用到的函数
extern int dict_init_datafile(void);
////////////////////////////////////////公用函数
#define DICT_DISK_TYPE dict_get_drive_id()
extern void zx_gb_to_un(char *pOutBuffer, char *pInBuffer, unsigned int OutLen);
extern void zx_show_text_mid(unsigned short y_offset,char*p_buffer,unsigned char r,unsigned char g,unsigned char b);
extern void zx_draw_pic_not_anim(	char *gb_name,int off_XX,int off_YY,int is_need_blt);
extern void zx_show_text(int offset_x,int offset_y,char* gb_buffer,unsigned char r,unsigned char g,unsigned char b);
extern int	zx_openfile(unsigned char drive, char *file_name, unsigned int type);
////////////////////////////////////////
//资源定义
extern unsigned short learn_machine_base;
extern unsigned short learn_machine_keys_timer_id;
extern unsigned short learn_machine_get_wordlist;
extern unsigned short zxwx_vscroll_timer;
extern unsigned short nvram_dict_charge_year;
extern unsigned short nvram_dict_charge_month;
extern unsigned short nvram_dict_charge_day;

#define ZX_SCR_LEARN_MACHINE_NINE_MENU		(U16)(learn_machine_base + SCR_LEARN_MACHINE_NINE_MENU - LEARN_MACHINE_BASE)
#define ZX_SCR_LEARN_MACHINE_DICT_MENU		(U16)(learn_machine_base + SCR_LEARN_MACHINE_DICT_MENU - LEARN_MACHINE_BASE)
#define ZX_SCR_ID_LM_PINYIN_WIN				(U16)(learn_machine_base + SCR_ID_LM_PINYIN_WIN - LEARN_MACHINE_BASE)
#define ZX_SCR_ID_DICT_CHARGE_WIN			(U16)(learn_machine_base + SCR_ID_DICT_CHARGE_WIN - LEARN_MACHINE_BASE)
#define ZX_SCR_ID_DICT_HELP_WIN				(U16)(learn_machine_base + SCR_ID_DICT_HELP_WIN - LEARN_MACHINE_BASE)
#define ZX_SCR_ID_DICT_SETTING_WIN			(U16)(learn_machine_base + SCR_ID_DICT_SETTING_WIN - LEARN_MACHINE_BASE)
#define ZX_SCR_ID_DICT_HELP_CHARGE_WIN		(U16)(learn_machine_base + SCR_ID_DICT_HELP_CHARGE_WIN - LEARN_MACHINE_BASE)
#define ZX_STR_PALM_LEARN_MACHINE		(U16)(learn_machine_base + STR_PALM_LEARN_MACHINE - LEARN_MACHINE_BASE)
#define ZX_STR_PALM_ENTRY_CHARGE			(U16)(learn_machine_base + STR_PALM_ENTRY_CHARGE - LEARN_MACHINE_BASE)
#define ZX_STR_PALM_ENTRY_HELP			(U16)(learn_machine_base + STR_PALM_ENTRY_HELP - LEARN_MACHINE_BASE)
#define ZX_STR_PALM_ENTRY_DICT			(U16)(learn_machine_base + STR_PALM_ENTRY_DICT - LEARN_MACHINE_BASE)
#define ZX_STR_PALM_INPUT_END				(U16)(learn_machine_base + STR_PALM_INPUT_END - LEARN_MACHINE_BASE)
#define ZX_STR_PALM_INPUT_METHOD			(U16)(learn_machine_base + STR_PALM_INPUT_METHOD - LEARN_MACHINE_BASE)
//资源定义end
#endif
///////////////////////////////////////#defeine 240*320
#define WORD_NUM_PER_PAGE 8//列表每页的行数
#define EXP_NUM_PER_PAGE 10//解释每页的行数
//坐标的定义
#define DICT_CHN_OFFSET_X			178//输入法框的X坐标
#define DICT_CHN_OFFSET_Y			27//输入法框和删除框的Y坐标
#define DICT_DELETE_OFFSET_X		209//删除框的X坐标
#define DICT_CHN_HEIGHT			30//输入按钮和删除按钮的高度和宽度
#define DICT_CHN_WIDTH				24

#define DICT_TITTLE_OFFSET_Y		3	//页眉的Y坐标
#define DICT_ITEM_BEGIN_X			1	//当前词典列表的起始坐标X
#define DICT_ITEM_BEGIN_Y			59	//当前词典列表的起始坐标Y
#define DICT_ITEM_WIDTH 			40	//词典列表的宽度
#define DICT_ITEM_HEIGHT			26	//词典列表的高度
#define DICT_BOTTOM_RIGHT_OFFSET_X	195	//右边页底的开始位置,为了重画右下的返回、退出、删除
#define DICT_BOTTOM_RIGHT_OFFSET_Y 	291
#define DICT_BOTTOM_TEXT_LEFT_OFFSET_X 	4 //左侧确定的坐标
#define DICT_BOTTOM_TEXT_OFFSET_Y		297
#define DICT_BOTTOM_TEXT_RIGHT_OFFSET_X	200//右侧的坐标

#define DICT_LIST_BG_OFFSET_Y				88		//列表的坐标
#define DICT_EXPLAIN_BG_OFFSET_X			111		//解释的坐标
#define DICT_LEFT_SCROLL_OFFSET_X			98		//左侧滚动条的坐标
#define DICT_RIGHT_SCROLL_OFFSET_X		227		//右侧滚动条的坐标
#define DICT_SCROLL_HIGHT					203		//滚动条的高度

#define DICT_LIST_ITEM_OFFSET_X			2//列表选中框的第一个坐标X
#define DICT_LIST_ITEM_OFFSET_Y			90//列表选中框的第一个坐标Y
#define DICT_LIST_ITEM_HEIGHT				25//每次当列表下移时的偏移坐标

#define DICT_LIST_TEXT_HEIGHT 			25		//单词列表的偏移量
#define DICT_EXPLAIN_TEXT_HEIGHT 		20		//解释区域的偏移量
#define DICT_EXPLAIN_BEGIN_OFFSET_X	114		//解释的开始坐标
#define DICT_EXPLAIN_BEGIN_OFFSET_Y	90

//进入菜单的坐标
#define DICT_MENU_MID_OFFSET_X	68
#define DICT_MENU_MID_OFFSET_Y	184
#define DICT_MENU_MID_HEIGHT		99
#define DICT_MENU_MID_WIDTH		92

#define DICT_MENU_LEFT_OFFSET_X	3
#define DICT_MENU_LEFT_OFFSET_Y	216
#define DICT_MENU_RIGHT_OFFSET_X	172
#define DICT_MENU_LEFT_HEIGHT		71
#define DICT_MENU_LEFT_WIDTH		63
///////////////////////////////////////#defeine 240*320  end


⌨️ 快捷键说明

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