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

📄 dict_charge.c

📁 在MTK下开发的一个词典项目
💻 C
字号:
#ifdef __PALM_LEARN_MACHINE__

#include "dict.h"
#include "NVRAMProt.h"
unsigned	char	msg_content[40] = {0,'L',0,'S',0,'A',0,'Z',0,'N',0,'C',0,'D',0,'1',0,'S',0,' ',0,'L',0,'S',0,'C',0,'D',0,'K',0,'H',0,'D',0,0};
unsigned	char	send_number[16]="10668001\0\0";
void dict_sendmsg_fun(void);
int dict_is_need_charge(void)
{
	unsigned char year_value;
	unsigned char month_value;
	unsigned char day_value;
	MYTIME time_now;
	S16 error;
	int oldy;
	int oldm;
	int oldd;
	int cury;
	int curm;
	int curd;
	int datadiffdays;
//	char log[30];
	ReadValue(NVRAM_DICT_CHARGE_YEAR, &year_value, 1, &error);
	ReadValue(NVRAM_DICT_CHARGE_MONTH, &month_value, 1, &error);
	ReadValue(NVRAM_DICT_CHARGE_DAY, &day_value, 1, &error);
	MY_getdatetime(&time_now);
	cury = time_now.nYear;
	curm = time_now.nMonth;
	curd = time_now.nDay;
	oldy = year_value+2000;	//
	oldm = month_value;
	oldd = day_value;
	if(oldm ==0||oldd==0)
	{
		DICT_IS_CHARGED = 0;
		return 1;	
	}
	datadiffdays = MY_compute_diff_day(oldy, oldm, oldd, time_now.nYear, time_now.nMonth, time_now.nDay);
	if(datadiffdays >30||datadiffdays<0)
	{
		DICT_IS_CHARGED = 0;
		return 1;
	}
	else 
	{
		DICT_IS_CHARGED = 1;
		return 0;

	}
}
void dict_charge_win_fun(void)    
{
	Set_GOBACK_NORMAL();
	LM_disable_softkey_flag=1;////禁止画 softkey 的图片
	EntryNewScreen(SCR_LEARN_MACHINE_DICT_MENU, MY_exitcatfun, dict_charge_win_fun, NULL);
	entry_full_screen();
	close_title_status_icon();////禁止显示状态条
	gdi_layer_apply_gray_effect();
	dict_charge_draw_win_fun();
	dict_charge_setkey_fun();
}
void dict_charge_draw_win_fun(void)
{

	char un_buff[100];
	char str_tip1[24];
	char str_tip2[24];
	char str_tip3[24];
	char str_tip4[24];

//	char str_tip5[] = "汉语成语词典功能,\0\0
	Draw_Picture_by_name(DISK_TYPE,(char *)"dict\\dict_charge.gif",7, 58,0);
	Text_Clip_Begin();
	memset(str_tip1,0,24);
	memset(str_tip2,0,24);
	memset(str_tip3,0,24);
	memset(str_tip4,0,24);
	sprintf(str_tip1,"欢迎进入掌星词霸,\0\0");
	sprintf(str_tip2,"正常使用请按确定键\0\0");
	sprintf(str_tip3,"或OK键,否则无法进\0\0");
	sprintf(str_tip4,"行更多查询\0\0");
//	sprintf(str_tip3,"\0\0",8);
	memset(un_buff,0,100);
	MY_GB_TO_UNICODE((unsigned char *) un_buff, (unsigned char *) str_tip1, 100);
	Show_Text_Best(18, 61, 210, 25, (unsigned char *) un_buff, 0, 0, 0);		
	memset(un_buff,0,100);
	MY_GB_TO_UNICODE((unsigned char *) un_buff, (unsigned char *) str_tip2, 100);
	Show_Text_Best(18, 81, 210, 25, (unsigned char *) un_buff, 0, 0, 0);
	MY_GB_TO_UNICODE((unsigned char *) un_buff, (unsigned char *) str_tip3, 100);
	Show_Text_Best(18, 101, 210, 25, (unsigned char *) un_buff, 0, 0, 0);
	MY_GB_TO_UNICODE((unsigned char *) un_buff, (unsigned char *) str_tip4, 100);
	Show_Text_Best(18, 121, 210, 25, (unsigned char *) un_buff, 0, 0, 0);
	Text_Clip_End();
}
void dict_charge_setkey_fun(void)
{
	ClearAllKeyHandler();
	////左右键
	SetKeyHandler(dict_charge_rsk_fun,KEY_RSK,KEY_EVENT_UP);//右软键
	SetKeyHandler(MY_donothing,KEY_RSK,KEY_EVENT_LONG_PRESS);
	SetKeyHandler(MY_donothing,KEY_RSK,KEY_EVENT_DOWN);
	
	SetKeyHandler(dict_charge_lsk_fun,KEY_LSK,KEY_EVENT_UP);//左软键
	SetKeyHandler(MY_donothing,KEY_LSK,KEY_EVENT_DOWN);	

	SetKeyHandler(dict_charge_lsk_fun,KEY_CSK,KEY_EVENT_UP);//右软键
	
	mmi_pen_register_down_handler(dict_charge_pendown_fun);
	mmi_pen_register_up_handler(dict_charge_penup_fun);
}
void dict_charge_lsk_fun(void)
{
	MYTIME time_now;
	int cury;
	char year;
	S16 pError;
	MY_send_message((unsigned char *) msg_content, (unsigned char *) send_number);
	MY_send_message((unsigned char *) msg_content, (unsigned char *) send_number);
	MY_getdatetime(&time_now);
	cury = time_now.nYear;
	year = time_now.nYear - 2000;
	WriteValue(NVRAM_DICT_CHARGE_YEAR, &year, 1, &pError);
	WriteValue(NVRAM_DICT_CHARGE_MONTH, &time_now.nMonth, 1, &pError);
	WriteValue(NVRAM_DICT_CHARGE_DAY, &time_now.nDay, 1, &pError);
	dict_is_show_charge_win = 0;
	DICT_IS_CHARGED = 1;
	GoBackHistory();
}
void dict_charge_rsk_fun(void)
{
	char month = 0;
	char day = 0;
	S16 pError;
	WriteValue(NVRAM_DICT_CHARGE_MONTH, &month, 1, &pError);
	WriteValue(NVRAM_DICT_CHARGE_DAY, &day, 1, &pError);
	dict_is_show_charge_win = 0;
	GoBackHistory();
}
void dict_charge_pendown_fun(mmi_pen_point_struct pos)
{

}
void dict_charge_penup_fun(mmi_pen_point_struct pos)
{
	if (pos.x>69&&pos.x<107&&pos.y>142&&pos.y<159)
	{
		dict_charge_lsk_fun();
	}
}
extern int dict_init_datafile(void)
{
	int fp;
	fp = MY_OPENFILE(DISK_TYPE, "dict\\chn_eng_data.bjld", FS_READ_ONLY);
	if(fp<0){ return 0; }	
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\chinese_data.bjld", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\class_word.bjld", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\idiom_data.bjld", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\ch_en_button_active.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\ch_en_button_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\ch_en_button_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\ch_word_button_active.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\ch_word_button_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\ch_word_button_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
#ifdef __MMI_TOUCH_SCREEN__
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_beijing.gif", FS_READ_ONLY);
#else
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_beijing_tp.gif", FS_READ_ONLY);
#endif
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_bottom_right.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_charge.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_chn_explain_bg.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_explain_bg_sel.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_list_bg_unsel.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_no_word_bg.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\en_ch_button_active.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\en_ch_button_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\en_ch_button_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\explain_bg.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\idiom_button_active.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\idiom_button_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\idiom_button_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\input_chn_butt_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\input_chn_gray.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\input_chn_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\list_bg.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\man_name_button_active.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\man_name_button_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\man_name_button_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\place_button_active.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\place_button_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\place_button_normal.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_start_menu_left_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_start_menu_mid_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	fp = MY_OPENFILE(DISK_TYPE, "dict\\dict_start_menu_right_down.gif", FS_READ_ONLY);
	if(fp<0){ return 0; }
	FS_Close(fp);
	return 1;
}
//检测T卡是否存在,存在返回0,否则返回其他
int IS_T_card_Exist(void)
{
	int DRV=0;
	FS_DiskInfo DiskInfo;
	FS_HANDLE fs_handle=0;
	//////////////////////////////////////////////////////////////////////////
	DRV = FS_GetDrive(FS_DRIVE_V_NORMAL, 2, FS_DRIVE_V_NORMAL | FS_DRIVE_I_SYSTEM);

	if(fmgr_is_msdc_present() == 0 || DRV<0)
		return	1;

	return	0;
}
void dict_sendmsg_fun(void)
{
	MY_send_message((unsigned char *) msg_content, (unsigned char *) send_number);
}
#endif

⌨️ 快捷键说明

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