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

📄 dict_start.c

📁 在mtk平台上开发的电子词典源码
💻 C
📖 第 1 页 / 共 4 页
字号:
void dict_set_input_box_mode(unsigned short id)
{
	switch(id)
	{
	case 0:////字母输入
	case 4:
	case 5:
		change_singleline_inputbox_mode(INPUT_MODE_MULTITAP_LOWERCASE_ABC);
		dict_sc_cur_menu=id;
		LM_register_singleline_inputbox_keys(0);
		break;
	case 1:////汉字输入
	case 2:
	case 3:
		dict_sc_cur_menu=id;
		break;
	default: return;
	}////switch(id)
}
int ZT_Dict_List_Rollbar_CallbackMain(unsigned short curLine)
{
	zt_dict_list_flag = curLine - zt_dict_list_roll_content_current_line +1;
	zt_dict_list_roll_content_current_line = curLine+1;
	if(zt_dict_list_roll_content_current_line>0 && zt_dict_list_roll_content_current_line < word_list_num + 1)
		dict_output_word_list(1);
	return curLine;
}
int    ZT_Dict_Exp_Rollbar_CallbackMain(unsigned short curLine)
{
	zt_dict_exp_roll_content_current_line = curLine+1;
	if(zt_dict_exp_roll_content_current_line>0 && zt_dict_exp_roll_content_current_line < explain_line_num + 1)
		dict_output_word_explain();
	return curLine;
}
void LM_UNICODE_TO_GB(unsigned char *pOutBuffer, unsigned char *pInBuffer, unsigned int OutLen)
{
	if(pOutBuffer==NULL || pInBuffer==NULL || OutLen==0) return;
	
	//mmi_chset_ucs2_to_gb18030_str((char *)pOutBuffer, (char *)pInBuffer, OutLen);
	mmi_chset_ucs2_to_text_str(pOutBuffer, (unsigned short)OutLen, pInBuffer, GB2312_ENCODING_TYPE);
}
void LM_dicts_menu_DisIdleScr(void)
{
	DisplayIdleScreen();
}
void dict_main_right_key_long_fun(void)
{
	if (DICT_IS_INPUT_NULL==0)
	{
		gui_single_line_input_box_clear(&MMI_singleline_inputbox);
	}
}
void dict_main_right_key_fun()
{
	dict_show_rsk_fun(0);
	if (DICT_IS_INPUT_NULL==0)
	{
		singleline_inputbox_delete_character();
	}
	else 
	{
		if (DICT_IS_SHOW_CUR_ITEM==1&&dict_sc_cur_menu!=3)
		{
			DICT_IS_SHOW_CUR_ITEM = 0;
			dict_get_word_list();
		}
		else
			GoBackHistory();
	}
}
void dict_main_right_key_down_fun(void)
{
	dict_show_rsk_fun(1);
}
void dict_main_left_key_down_fun()
{
	dict_show_lsk_fun(1);
}
void dict_main_left_key_fun()//modified
{
	dict_show_lsk_fun(0);
	memset(gnoteString1,0,64);
	memcpy(gnoteString1,MMI_singleline_inputbox.text,2*UCS2_Text_len((unsigned short *)MMI_singleline_inputbox.text));
	LM_pinyin_shurufa();			
}
void dict_main_keyup_down(void)
{
	if (DICT_IS_SHOW_CUR_ITEM==0&&dict_sc_cur_menu!=3)
	{
		return;
	}
	if (dict_sc_cur_menu == 3)
	{
		ZXWX_Vscroll_bar_KeyDown((unsigned char*)&zt_dict_exp_vertical_scroll_bar,0);
	}
	else
	{
		if (dict_cur_focus==0)
		{
			ZXWX_Vscroll_bar_KeyDown((unsigned char*)&zt_dict_list_vertical_scroll_bar,0);
		}
		else
		{
			ZXWX_Vscroll_bar_KeyDown((unsigned char*)&zt_dict_exp_vertical_scroll_bar,0);
		}
	}
}                    
void dict_main_keyup_up(void)
{
	if (DICT_IS_SHOW_CUR_ITEM==0&&dict_sc_cur_menu!=3)
	{
		DICT_IS_SHOW_CUR_ITEM = 1;
		dict_output_word_list(1);
		dict_show_lsk_fun(0);
		dict_show_rsk_fun(0);	
		return;
	}
	if (dict_sc_cur_menu==3)
	{
		ZXWX_Vscroll_bar_KeyUp((unsigned char *)&zt_dict_exp_vertical_scroll_bar);
	}
	else
	{
		if (dict_cur_focus==0)
		{
			ZXWX_Vscroll_bar_KeyUp((unsigned char *)&zt_dict_list_vertical_scroll_bar);
		}
		else
		{
			ZXWX_Vscroll_bar_KeyUp((unsigned char *)&zt_dict_exp_vertical_scroll_bar);
		}
	}
}
void dict_main_keydown_down(void)
{
	if (DICT_IS_SHOW_CUR_ITEM==0)
	{
		return;
	}
	if (dict_sc_cur_menu==3)
	{
		ZXWX_Vscroll_bar_KeyDown((unsigned char *)&zt_dict_exp_vertical_scroll_bar,1);
	}
	else
	{
		if (dict_cur_focus==0)
		{
			ZXWX_Vscroll_bar_KeyDown((unsigned char *)&zt_dict_list_vertical_scroll_bar,1);
		}
		else
		{
			ZXWX_Vscroll_bar_KeyDown((unsigned char *)&zt_dict_exp_vertical_scroll_bar,1);
		}
	}
}
void dict_main_keydown_up(void)
{
	if (DICT_IS_SHOW_CUR_ITEM==0&&dict_sc_cur_menu!=3)
	{
		DICT_IS_SHOW_CUR_ITEM = 1;
		dict_output_word_list(1);
		dict_show_lsk_fun(0);
		dict_show_rsk_fun(0);
		return;
	}
	if (dict_sc_cur_menu==3)
	{
		ZXWX_Vscroll_bar_KeyUp((unsigned char *)&zt_dict_exp_vertical_scroll_bar);
	}
	else
	{
		if (dict_cur_focus==0)
		{
			ZXWX_Vscroll_bar_KeyUp((unsigned char *)&zt_dict_list_vertical_scroll_bar);
		}
		else
		{
			ZXWX_Vscroll_bar_KeyUp((unsigned char *)&zt_dict_exp_vertical_scroll_bar);
		}
	}
}
void dict_main_keydown_long(void)
{
	if (DICT_IS_SHOW_CUR_ITEM==0)
	{
		return;
	}
	if (dict_sc_cur_menu==3)
	{
		ZXWX_Vscroll_bar_KeyLong((unsigned char *)&zt_dict_exp_vertical_scroll_bar,1);
	}
	else
	{
		if (dict_cur_focus==0)
		{
			ZXWX_Vscroll_bar_KeyLong((unsigned char *)&zt_dict_list_vertical_scroll_bar,1);
		}
		else
		{
			ZXWX_Vscroll_bar_KeyLong((unsigned char *)&zt_dict_exp_vertical_scroll_bar,1);
		}

	}
}
void dict_main_keyup_long(void)
{
	if (DICT_IS_SHOW_CUR_ITEM==0)
	{
		return;
	}
	if (dict_sc_cur_menu==3)
	{
		ZXWX_Vscroll_bar_KeyLong((unsigned char *)&zt_dict_exp_vertical_scroll_bar,0);
	}
	else
	{
		if (dict_cur_focus==0)
		{
			ZXWX_Vscroll_bar_KeyLong((unsigned char *)&zt_dict_list_vertical_scroll_bar,0);
		}
		else
		{
			ZXWX_Vscroll_bar_KeyLong((unsigned char *)&zt_dict_exp_vertical_scroll_bar,0);
		}
		
	}
}
void dict_main_keyleft_up(void)
{
	if (dict_sc_cur_menu==3)
	{
		dict_switch_menu(-1);
		return;
	}
	else if (DICT_IS_INPUT_NULL&&DICT_IS_SHOW_CUR_ITEM==0)
	{
		dict_switch_menu(-1);
		return;
	}
	if (dict_cur_focus==1)
	{
		dict_cur_focus = 0;
		dict_output_word_list(0);
		dict_output_word_explain();
	}
	else
	{
		singleline_inputbox_previous_character();
	}
}
void dict_main_keyright_up(void)
{
	if (dict_sc_cur_menu==3)
	{
		dict_switch_menu(1);
		return;
	}
	else if (DICT_IS_INPUT_NULL&&DICT_IS_SHOW_CUR_ITEM==0)
	{
		dict_switch_menu(1);
		return;
	}

	if (dict_cur_focus==0)
	{
		dict_cur_focus = 1;
		dict_output_word_list(0);
		dict_output_word_explain();
	}
	else
	{
		singleline_inputbox_next_character();
	}
}
void dict_key_pound_down_fun(void)
{
	if (dict_sc_cur_menu==0||dict_sc_cur_menu==4||dict_sc_cur_menu==5)
	{
		return;
	}
	else 
	{
		Draw_Picture_by_name(DISK_TYPE,"dict\\input_chn_butt_down.gif",DICT_CHN_OFFSET_X,DICT_CHN_OFFSET_Y,0);
		return;
	}
}
void dict_key_pound_up_fun(void)
{
	if (dict_sc_cur_menu==0||dict_sc_cur_menu==4||dict_sc_cur_menu==5)
	{
		return;
	}
	else 
	{
		memset(gnoteString1,0,64);
		memcpy(gnoteString1,MMI_singleline_inputbox.text,2*UCS2_Text_len((unsigned short *)MMI_singleline_inputbox.text));
		LM_pinyin_shurufa();
		return;
	}
}
#ifdef __MMI_TOUCH_SCREEN__
void dict_pen_down_fun(mmi_pen_point_struct pos)
{
	int i;
	for(i=0;i<10;i++)
		dict_down_place[i] = 0;
	if (pos.y>DICT_ITEM_BEGIN_Y&&pos.y<DICT_ITEM_BEGIN_Y+DICT_ITEM_HEIGHT)//窗口选择按钮
	{
		if (pos.x>DICT_ITEM_BEGIN_X&&pos.x<DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH)
		{
			if (dict_sc_cur_menu==0)
			{
				return;
			}
			dict_down_place[2] = 1;
			Draw_Picture_by_name(DISK_TYPE,(char*)"dict\\en_ch_button_down.gif",DICT_ITEM_BEGIN_X,DICT_ITEM_BEGIN_Y,0);
			return;
		}
		if (pos.x>DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH&&pos.x<DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*2)
		{
			if (dict_sc_cur_menu==1)
			{
				return;
			}
			dict_down_place[3] = 1;
			Draw_Picture_by_name(DISK_TYPE,(char*)"dict\\ch_en_button_down.gif",DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH,DICT_ITEM_BEGIN_Y,0);
			return;
		}
		if (pos.x>DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*2&&pos.x<DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*3)
		{
			if (dict_sc_cur_menu==2)
			{
				return;
			}
			dict_down_place[4] = 1;
			Draw_Picture_by_name(DISK_TYPE,(char*)"dict\\idiom_button_down.gif",DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*2,DICT_ITEM_BEGIN_Y,0);
			return;
		}
		if (pos.x>DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*3&&pos.x<DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*4)
		{
			if (dict_sc_cur_menu==3)
			{
				return;
			}
			dict_down_place[5] = 1;
			Draw_Picture_by_name(DISK_TYPE,(char*)"dict\\ch_word_button_down.gif",DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*3,DICT_ITEM_BEGIN_Y,0);
			return;
		}
		if (pos.x>DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*4&&pos.x<DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*5)
		{
			if (dict_sc_cur_menu==4)
			{
				return;
			}
			dict_down_place[6] = 1;
			Draw_Picture_by_name(DISK_TYPE,(char*)"dict\\man_name_button_down.gif",DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*4,DICT_ITEM_BEGIN_Y,0);
			return;
		}
		if (pos.x>DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*5&&pos.x<UI_DEVICE_WIDTH)
		{
			if (dict_sc_cur_menu==5)
			{
				return;
			}
			dict_down_place[7] = 1;
			Draw_Picture_by_name(DISK_TYPE,(char*)"dict\\place_button_down.gif",DICT_ITEM_BEGIN_X+DICT_ITEM_WIDTH*5,DICT_ITEM_BEGIN_Y,0);
			return;
		}
		return;
	}
	if (pos.y>DICT_BOTTOM_TEXT_OFFSET_Y&&pos.y<UI_DEVICE_HEIGHT)
	{
		if (pos.x>DICT_BOTTOM_TEXT_LEFT_OFFSET_X&&pos.x<DICT_BOTTOM_TEXT_LEFT_OFFSET_X+40)
		{
			dict_down_place[8] = 1;
			dict_main_left_key_down_fun();
			return;
		}
		if (pos.x>DICT_BOTTOM_RIGHT_OFFSET_X&&pos.x<UI_DEVICE_WIDTH)
		{
			dict_down_place[9] = 1;
			dict_main_right_key_down_fun();
			return;
		}
		return;
	}
	if (DICT_IS_SHOW_CUR_ITEM==0&&pos.x>0&&pos.x<UI_DEVICE_WIDTH&&pos.y>DICT_LIST_BG_OFFSET_Y&&pos.x<DICT_BOTTOM_RIGHT_OFFSET_Y&&dict_sc_cur_menu!=3)
	{
		return;
	}
	if (pos.x>DICT_CHN_OFFSET_X&&pos.x<DICT_CHN_OFFSET_X+DICT_CHN_WIDTH&&pos.y>DICT_CHN_OFFSET_Y&&pos.y<DICT_CHN_OFFSET_Y+DICT_CHN_HEIGHT)//输入法框
	{
		dict_down_place[0] = 1;
		Draw_Picture_by_name(DISK_TYPE,"dict\\input_chn_butt_down.gif",DICT_CHN_OFFSET_X,DICT_CHN_OFFSET_Y,0);
		return;
	}
	if (pos.x>DICT_DELETE_OFFSET_X&&pos.x<DICT_DELETE_OFFSET_X+DICT_CHN_WIDTH&&pos.y>DICT_CHN_OFFSET_Y&&pos.y<DICT_CHN_OFFSET_Y+DICT_CHN_HEIGHT)//删除框
	{
		dict_down_place[1] = 1;
		Draw_Picture_by_name(DISK_TYPE,"dict\\delete_button_down.gif",DICT_DELETE_OFFSET_X,DICT_CHN_OFFSET_Y,0);
		return;
	}
	if (pos.y>DICT_LIST_BG_OFFSET_Y&&pos.y<DICT_BOTTOM_TEXT_OFFSET_Y)
	{
		if (dict_sc_cur_menu==3)
		{
			ZXWX_Vscroll_bar_pen_event((unsigned char *)(&zt_dict_exp_vertical_scroll_bar),pos,EVENT_PEN_DOWN);				
			return;
		}
		else
		{
			if (pos.x>DICT_LEFT_SCROLL_OFFSET_X&&pos.x<DICT_LEFT_SCROLL_OFFSET_X+13)
			{
				ZXWX_Vscroll_bar_pen_event((unsigned char *)(&zt_dict_list_vertical_scroll_bar),pos,EVENT_PEN_DOWN);
				return;
			}
			if (pos.x>DICT_RIGHT_SCROLL_OFFSET_X&&pos.x<DICT_RIGHT_SCROLL_OFFSET_X+13)
			{
				ZXWX_Vscroll_bar_pen_event((unsigned char *)(&zt_dict_exp_vertical_scroll_bar),pos,EVENT_PEN_DOWN);
				return;
			}
		}
	}
}
void dict_pen_up_fun(mmi_pen_point_struct pos)
{

⌨️ 快捷键说明

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