コード例 #1
0
ファイル: win_sat_edit.c プロジェクト: alkap007/ali3606
static PRESULT sate_item_edt_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT8 unact;
	UINT8 caps;
	mobile_input_type_t mobile_input_type;

	caps = mobile_input_get_caps();

	mobile_input_type.type 		= MOBILE_INPUT_NORMAL;
	mobile_input_type.caps_flag = caps? MOBILE_CAPS_INIT_UP : MOBILE_CAPS_INIT_LOW;
	mobile_input_type.maxlen    = 17;
	mobile_input_type.fixlen_flag = 0;
	mobile_input_type.callback	= NULL;

	bID = OSD_GetObjID(pObj);

	switch(event)
	{
	case EVN_KEY_GOT:
		if(bID == SAT_NAME_ID)
		{
			ret = mobile_input_proc((EDIT_FIELD*)pObj,(VACTION)(param1>>16), param1 & 0xFFFF, param2);
			if(ret == PROC_LOOP)
				draw_caps_flag(CAPSFLG_L,CAPSFLG_T, 1);
		}
		break;
	case EVN_PRE_CHANGE:
		break;
	case EVN_POST_CHANGE:
		break;
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);
		if(unact == VACT_CHANGE_SUB)
		{
			sat_orbit_direct = sat_orbit_direct == 0 ? 1 : 0;
			OSD_SetEditFieldSuffix( (PEDIT_FIELD)pObj, STRING_ANSI, (UINT32)longitute_sub_chars[sat_orbit_direct]);
			OSD_TrackObject(pObj, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
		}
		break;
	case EVN_FOCUS_PRE_GET:
	case EVN_PARENT_FOCUS_PRE_GET:
		if(bID == SAT_NAME_ID)
		{
			mobile_input_init((EDIT_FIELD*)pObj,&mobile_input_type);
			draw_caps_flag(CAPSFLG_L,CAPSFLG_T, 1);
			draw_caps_del_colbtn(COLBTN_L, COLBTN_T,1);
		}		
		break;
	case EVN_FOCUS_PRE_LOSE:
	case EVN_PARENT_FOCUS_PRE_LOSE:		
		if(bID == SAT_NAME_ID)
		{
			mobile_input_init((EDIT_FIELD*)pObj,&mobile_input_type);
			draw_caps_flag(CAPSFLG_L,CAPSFLG_T, 0);
			draw_caps_del_colbtn(COLBTN_L, COLBTN_T,0);
		}
		break;
	}
コード例 #2
0
static VACTION nc_item_con_keymap(POBJECT_HEAD pObj, UINT32 key)
{
	VACTION act=VACT_PASS;
	UINT8 bID = OSD_GetObjID(pObj);
	
	switch(key)
	{
		case V_KEY_ENTER:     
			act = VACT_ENTER;
			break; 

		case V_KEY_YELLOW:
			act = VACT_COPYDATA;
			break;

#if 0 
12345
//ppppppppppp
		case V_KEY_BLUE:
			act = VACT_DOMAIN_IP;
			break;
#endif			

			
		default:
			act = VACT_PASS;
			break;
	}

	return act;
}
コード例 #3
0
ファイル: win_timer_set.c プロジェクト: jinfeng-geeya/3202C
static PRESULT timerset_msel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT32 sel;

	bID = OSD_GetObjID(pObj);

	switch (event)
	{
		case EVN_PRE_CHANGE:
			sel = *((UINT32*)param1);
		case EVN_POST_CHANGE:
			sel = param1;
			if (bID == TIMER_MODE_ID)
				win_timerset_timermode_change(TRUE);
			else if (bID == TIMER_SERVICE_ID)
				win_timerset_timerservice_change(TRUE);
			else if (bID == TIMER_SERVICEINFO_ID)
				win_timerset_timerserviceinfo_change(TRUE, (UINT16)sel);
			break;
	}

	return ret;
}
コード例 #4
0
static PRESULT cti_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8 id = OSD_GetObjID(pObj);
	UINT8 action;	

	switch(event)
	{
		case EVN_PRE_OPEN:
			cti_win_initial();
			wincom_open_subtitle(pObj,RS_CTI_CONDITION_ACCESS,0);
			break;
		case EVN_POST_OPEN:
			break;
		case EVN_PRE_CLOSE:
			/* Make OSD not flickering */
			*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
			break;
		case EVN_POST_CLOSE:
	  		 wincom_close_subtitle();
			OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
			break;
	}
	return ret;
}
コード例 #5
0
static PRESULT nc_item_sel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID = OSD_GetObjID(pObj);

	switch(event)
	{
		case EVN_POST_CHANGE:
			if(ID_CON_BACTIVE== bID)
			{
				newcamd_serinfo[current_index-1].bActive=param1;
				nc_item_sel_active(newcamd_serinfo[current_index-1].bActive,newcamd_serinfo[current_index-1].bAutouser,TRUE);
			}
			else if(ID_CON_BAUTOUSER== bID)
			{
				newcamd_serinfo[current_index-1].bAutouser=param1;
				nc_item_sel_autouser(newcamd_serinfo[current_index-1].bActive,newcamd_serinfo[current_index-1].bAutouser,TRUE);
			}
			else if(ID_CON_BDNS == bID)
			{
				newcamd_serinfo[current_index-1].bDNS_enable=param1;
				nc_item_sel_DNSenable(newcamd_serinfo[current_index-1].bDNS_enable,TRUE);
			}
			break; 
		default:
			break;
	}
	return ret;
}
コード例 #6
0
ファイル: win_timer_set.c プロジェクト: jinfeng-geeya/3202C
static PRESULT timerset_btn_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT8 back_save;

	bID = OSD_GetObjID(pObj);

	switch (event)
	{
		case EVN_UNKNOWN_ACTION:
			if (bID == TIMER_BTN_OK_ID)
			{
				if (win_timerset_check_and_save() == 0)
				{
					timer_set_ok_cancel_flag = 1;
					ret = PROC_LEAVE;
				}
				else
				{
					win_compopup_init(WIN_POPUP_TYPE_OK);
					win_compopup_set_msg(NULL, NULL, RS_MSG_INVALID_INPUT_CONTINUE);
					win_compopup_open_ext(&back_save);
				}
			}
			else
				ret = PROC_LEAVE;

			break;
	}

	return ret;
}
コード例 #7
0
ファイル: win_sys_backup.c プロジェクト: Janesak1977/ali3602
static PRESULT sys_backup_item_sel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	UINT8 bID;
	UINT16 sel, *Uni_str;
	UINT32 block_len;
	char str_buf[20] = {0};
	PRESULT ret = PROC_PASS;

	bID = OSD_GetObjID(pObj);
	switch(event)
	{
		case EVN_REQUEST_STRING:
			sel = param1;
			Uni_str= (UINT16*)param2; // NOTICE: Uni_str size is 32 (#define MAX_STR_LEN 32) in obj_multisel.c
			if(bID == BACKUP_MODE_ID)
			{
				memcpy(str_buf, usb_backup_type_name[sel], STRLEN(usb_backup_type_name[sel]));
				ComAscStr2Uni(str_buf, Uni_str);
			}						
			else
			{
				ComAscStr2Uni("", Uni_str);
			}
			break;
			
		default:
			break;
	}
	return ret;
}
コード例 #8
0
ファイル: win_pvr_setting.c プロジェクト: Janesak1977/ali3602
static PRESULT pvr_setting_item_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact;
	BOOL	input;
	UINT8	id = OSD_GetObjID(pObj);

	switch(event)
	{		
	case EVN_FOCUS_PRE_GET:
		break;		
	case EVN_FOCUS_PRE_LOSE:
		break;
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16) ;
		if(unact == VACT_DECREASE)
		{
			win_pvr_setting_left_key(pObj,id);
		}
		else if(unact == VACT_INCREASE)
		{
			win_pvr_setting_right_key(pObj,id);
		}
		ret = PROC_LOOP;
		break;
	}
	return ret;

}
コード例 #9
0
ファイル: win_pvr_checkdisk.c プロジェクト: alkap007/ali3606
static PRESULT checkdisk_item_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact;
	BOOL	input;
	UINT8	id = OSD_GetObjID(pObj);

	switch(event)
	{		
	case EVN_FOCUS_PRE_GET:
		break;
		
	case EVN_FOCUS_PRE_LOSE:
		break;

	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16) ;
		input = sys_data_get_checkdisk();	
		if((unact == VACT_INCREASE) || (unact == VACT_DECREASE))
		{
			input = !input;
		}
		sys_data_set_checkdisk(input);
		win_checkdisk_set_string(input);
		OSD_TrackObject(pObj,C_UPDATE_ALL);
		ret = PROC_LOOP;
		break;
	}
	return ret;

}
コード例 #10
0
ファイル: win_pvr_checkdisk.c プロジェクト: alkap007/ali3606
static PRESULT checkdisk_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact;
	UINT32 i;
	BOOL subt_flag;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);
	static UINT8 preval;
	
	switch(event)
	{
	case EVN_PRE_OPEN:
		preval = sys_data_get_checkdisk();
		wincom_open_title((POBJECT_HEAD)&g_win_checkdisk,RS_DVR_CHECKDISK, 0);
		win_checkdisk_set_string(preval);
		break;
	
	case EVN_POST_OPEN:
		break;
		
	case EVN_PRE_CLOSE:
		if(preval != sys_data_get_checkdisk())
		{
			sys_data_save(1);
		}
		break;

	case EVN_POST_CLOSE:
		break;
	}
	return ret;
}
コード例 #11
0
ファイル: win_pvod.c プロジェクト: alkap007/ali3606
static PRESULT pvod_item_sel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID = OSD_GetObjID(pObj);
	UINT32 progNum;
	char string[100];

	switch(event)
	{
		case EVN_REQUEST_STRING:
			if(bID==1)
			{
				UINT16 *uni_progName=(UINT16 *)param2;
				UINT8 * src;
				//ComAscStr2Uni("No Data", uni_progName);
				src = OSD_GetUnicodeString(RS_DISPLAY_NO_DATA);
				ComUniStrCopyChar((UINT8*)uni_progName, src);
			}
			break;
		case EVN_POST_CHANGE:
			//win_pvod_display_msg(param1);
			break;
		default:
			break;
	}
	
	return ret;
}
コード例 #12
0
ファイル: win_ota_set.c プロジェクト: alkap007/ali3606
static PRESULT  otaset_item_edf_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT8 status;
	EDIT_FIELD* edf;

	bID = OSD_GetObjID(pObj);

	edf = (EDIT_FIELD*)pObj;

	switch(event)
	{
	case EVN_POST_CHANGE:
		status = OSD_GetEditFieldStatus(edf);
		if(status == SELECT_STATUS)
		{
			if(bID == EDIT_TP_FREQ_ID || bID == EDIT_TP_SYMB_ID)
				win_otaset_turn_frntend();
		}
		break;
	case EVN_PARENT_FOCUS_POST_LOSE:
		if(bID == EDIT_TP_FREQ_ID || bID == EDIT_TP_SYMB_ID)
		{
			if(win_otaset_get_FreqSymbPid_display() != 0)
				win_otaset_turn_frntend();
		}			
			
		
		break;
		
	}

	return ret;
}
コード例 #13
0
ファイル: win_factory_set.c プロジェクト: alkap007/ali3606
static PRESULT factoryset_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);

	switch(event)
	{
		case EVN_PRE_OPEN:
			OSD_SetContainerFocus(cont, BTN_NO_ID);
			//OSD_SetContainerFocus(cont, 2);
			wincom_open_subtitle((POBJECT_HEAD)&win_factoryset_con,RS_TOOLS_FACTORY_SETTING, 0);
			break;
			
		case EVN_POST_OPEN:
			break;
		
		case EVN_PRE_CLOSE:
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
			
			break;

		case EVN_POST_CLOSE:
	  		wincom_close_subtitle();
			OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
			break;
	}
	return ret;
}
コード例 #14
0
static PRESULT sto_set_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact;
	UINT32 i;
	BOOL subt_flag;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);
    char new_volume[16];
	
	switch(event)
	{
	case EVN_PRE_OPEN:
		wincom_open_subtitle((POBJECT_HEAD)&g_win_sto_setting,RS_STORAGE_SETTING, 0);
		m_sd_ide_statue = sys_data_get_sd_ide_statue();
		win_sto_set_sd_ide_set_string(m_sd_ide_statue,&sto_set_item_txtset1);
		OSD_SetContainerFocus(&g_win_sto_setting, 1);
		break;
	
	case EVN_POST_OPEN:
		break;
		
	case EVN_PRE_CLOSE:
        *((UINT32 *)param2) &= ~C_CLOSE_CLRBACK_FLG;
		win_pvr_sd_ide_save();
		sys_data_save(1);
		break;

	case EVN_POST_CLOSE:
		break;
    case EVN_UNKNOWN_ACTION:		
        break;
	}
	return ret;
}
コード例 #15
0
static PRESULT games_con_item_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact;
	UINT8	id = OSD_GetObjID(pObj) + sub_menu_desc->list_top;
	
	switch(event)
	{
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16) ;
		if(unact == VACT_ENTER)
		{
			if(id==GAMES_TETRIS_ID)
			{
				game_tetris_init();
			}
			else if(id==GAMES_SNAKE_ID)
			{
				game_othello_init();
			}
			else if(id==GAMES_SUDOKU_ID)
			{
				game_sudoku_init();
			}
			
			enter_sub_menu(games_sub_menus,id - 1);
			ret = PROC_LOOP;
		}

	}

	return ret;
}
コード例 #16
0
ファイル: win_language.c プロジェクト: alkap007/ali3606
static PRESULT lan_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT32 i;
	UINT8	unact;
	BOOL subt_popup;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);
	SYSTEM_DATA* p_sys_data;
	UINT8 lang_code[8];
    
	switch(event)
	{
	case EVN_PRE_OPEN:
		wincom_open_subtitle((POBJECT_HEAD)&win_lan_con,RS_SYSTEM_LANGUAGE, 0);
		p_sys_data=sys_data_get();
		win_lan_set_menu_lan_string(p_sys_data->lang.OSD_lang);
		win_lan_set_1st_audio_lan_string(p_sys_data->lang.Audio_lang_1);
		win_lan_set_2nd_audio_lan_string(p_sys_data->lang.Audio_lang_2);
		win_lan_set_subtitle_lan_string(p_sys_data->lang.sub_lang);
		win_lan_set_teletext_lan_string(p_sys_data->lang.ttx_lang);
#ifdef SUPPORT_POP_SUBT
		subt_popup = TRUE;
#else
		subt_popup = FALSE;
#endif
		if(subt_popup)
		{
			remove_menu_item(&win_lan_con, (POBJECT_HEAD)lan_items[3], (CON_H + CON_GAP));			
		}
		break;
	
	case EVN_POST_OPEN:
		break;
		
	case EVN_PRE_CLOSE:
#ifdef EPG_MULTI_LANG		
		/*set epg language*/
		p_sys_data = sys_data_get();
		STRCPY(lang_code,stream_iso_639lang_abbr[p_sys_data->lang.OSD_lang]);
		epg_set_lang_code(lang_code);
#endif
		
#ifndef NEW_DEMO_FRAME
		UIChChgApplyAudLanguage();
#endif
		sys_data_save(1);
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		
		break;

	case EVN_POST_CLOSE:
              TTXEng_set_g0_set();
  		wincom_close_subtitle();
		OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
		break;
	}
	return ret;
}
コード例 #17
0
ファイル: win_purse.c プロジェクト: alkap007/ali3606
static PRESULT purse_list_item_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	UINT8	bID ;
	UINT16  icon_id, top;
	POBJECT_HEAD submenu;	
	
 	bID = OSD_GetObjID(pObj);
	top = OSD_GetObjListTop(&purse_olist);	
	cur_purse = bID + top;

	switch(event)
	{
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);
		if(unact == VACT_ENTER)
		{
			if(0 != purse_cnt)
			{
			submenu = (POBJECT_HEAD)&win_token_con;
			if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU) != PROC_LEAVE)
				menu_stack_push(submenu);					
		        }
		}
		break;
	}
	return ret;
}
コード例 #18
0
static PRESULT disk_operate_btn_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	bID;

	bID = OSD_GetObjID(pObj);

	switch(event)
	{
	case EVN_UNKNOWN_ACTION:
		if(bID == BTN_OK_ID)
		{	
			disk_operate_ok = 1;
			ret = PROC_LEAVE;
		}
		else if(bID == BTN_CANCEL_ID)
		{
            disk_operate_ok = 0;
			ret = PROC_LEAVE;
		}
		
		break;
	}

	return ret;
}
コード例 #19
0
ファイル: win_language.c プロジェクト: alkap007/ali3606
static PRESULT lan_item_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact,input;
	UINT8	id = OSD_GetObjID(pObj);
	SYSTEM_DATA* p_sys_data=sys_data_get();

	switch(event)
	{		
	case EVN_FOCUS_PRE_GET:
		break;
		
	case EVN_FOCUS_PRE_LOSE:
		break;

	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16) ;
		if(unact == VACT_ENTER)
		{
			win_language_enter_key(pObj,id);
		}
		else if(unact == VACT_DECREASE)
		{
			win_language_left_key(pObj,id);
		}
		else if(unact == VACT_INCREASE)
		{
			win_language_right_key(pObj,id);
		}
		ret = PROC_LOOP;
		break;
	}
	return ret;

}
コード例 #20
0
ファイル: win_find.c プロジェクト: alkap007/ali3606
static PRESULT find_item_edt_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT8 unact;
	UINT8 caps;

	bID = OSD_GetObjID(pObj);

	caps = mobile_input_get_caps();

	switch(event)
	{
	case EVN_KEY_GOT:
		ret = mobile_input_proc((EDIT_FIELD*)pObj,(VACTION)(param1>>16), param1 & 0xFFFF, param2);
		if(ret == PROC_LOOP)
			draw_caps_flag(CAPSFLG_L,CAPSFLG_T, 1);
		break;
	case EVN_PRE_CHANGE:
		break;
	case EVN_POST_CHANGE:
		break;
	case EVN_FOCUS_PRE_GET:
	case EVN_PARENT_FOCUS_PRE_GET:
	case EVN_FOCUS_PRE_LOSE:
	case EVN_PARENT_FOCUS_PRE_LOSE:		
		break;
	default:
		break;
	}

	return ret;
}
コード例 #21
0
ファイル: Win_rs232upg.c プロジェクト: alkap007/ali3606
static PRESULT rs232upg_item_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	UINT8 bID;

	bID = OSD_GetObjID(pObj);

	switch(event)
	{
		case EVN_UNKNOWN_ACTION:
			unact = (VACTION)(param1>>16);
			if(unact == VACT_ENTER && bID == START_ID)
			{
				system_state = SYS_STATE_UPGRAGE_HOST;

				OSD_SetAttr(&rs232upg_item_con1, C_ATTR_INACTIVE);
				OSD_SetAttr(&rs232upg_item_con2, C_ATTR_INACTIVE);
				OSD_DrawObject( (POBJECT_HEAD)&rs232upg_item_con1, C_UPDATE_ALL);
				OSD_DrawObject( (POBJECT_HEAD)&rs232upg_item_con2, C_UPDATE_ALL);

				ClearUpgFlag();
			
				if(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type) == 0)
				{
               				p2p_enable_upgrade_bootloader(TRUE);
					if(InitBlockList() != SUCCESS)
						return PROC_LEAVE;											
					SetUpgFlag(0, 0, 1);
				}
				else
				{					
					p2p_enable_upgrade_bootloader(FALSE);
					if(InitBlockList() != SUCCESS)
						return PROC_LEAVE;
					//-a by wangyang del seecode upgrade 
					if(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type) == 1)
						SetUpgFlag(Index2Id(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type)), 0xFFFFFFFF, 1);
					else
						SetUpgFlag(Index2Id(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type)+1), 0xFFFFFFFF, 1);
				//	SetUpgFlag(Index2Id(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type)), 0xFFFFFFFF, 1);
				}
				
				//start transfer
				win_rs232upg_start();
			
				OSD_SetAttr(&rs232upg_item_con1, C_ATTR_ACTIVE);
				OSD_SetAttr(&rs232upg_item_con2, C_ATTR_ACTIVE);
				OSD_DrawObject( (POBJECT_HEAD)&rs232upg_item_con1, C_UPDATE_ALL);
				OSD_TrackObject( (POBJECT_HEAD)&rs232upg_item_con2, C_UPDATE_ALL);

				system_state = SYS_STATE_NORMAL;
			}
			break;
	}

	return ret;
}
コード例 #22
0
ファイル: win_internet_ping.c プロジェクト: alkap007/ali3606
static PRESULT  netping_item_edf_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT8 status;
	EDIT_FIELD* edf;
	UINT8 back_save;
	UINT32 value;
	char strTmp[30];

	bID = OSD_GetObjID(pObj);

	edf = (EDIT_FIELD*)pObj;
	//libc_printf("pObj=%xh, event=%x, param1=%x, param2=%x\n",pObj, event, param1, param2);

	switch(event)
	{
	case EVN_KEY_GOT:
		if(bID == IDC_NETPING_URL/* && net_remote_cfg.url_type != 0*/)
		{
	#ifdef EAGLE_REQ
		UINT32 value;
		SYSTEM_DATA* sys_data;
    		sys_data = sys_data_get();
	#endif
			ret = mobile_input_proc(edf,(VACTION)(param1>>16), param1 & 0xFFFF, param2);
	#ifdef EAGLE_REQ
		value = OSD_GetEditFieldContent(&netping_item_url);
		ComUniStrToAsc((UINT8 *)value,sys_data->internet_ping_str);
	#endif
		}
		break;
		
	case EVN_PRE_CHANGE:
		break;
		
	case EVN_POST_CHANGE:
		//libc_printf("POST: ip %xh, get value = %xh\n",param1,OSD_GetEditFieldContent((PEDIT_FIELD)pObj));
		break;

	case EVN_FOCUS_PRE_GET:
	case EVN_PARENT_FOCUS_PRE_GET:
		netping_mobile_input_init(bID);
		break;

	case EVN_FOCUS_PRE_LOSE:
	case EVN_PARENT_FOCUS_PRE_LOSE:
		//netping_mobile_input_init(bID);
		break;

	case EVN_DATA_INVALID:
		win_compopup_init(WIN_POPUP_TYPE_OK);
		ComUniStrToAsc((UINT8 *)OSD_GetUnicodeString(RS_INVALID_ADDRESS_NUMBER),strTmp);
        win_compopup_set_msg(strTmp, NULL, 0);
		win_compopup_open_ext(&back_save);
		ret = PROC_LOOP;
		break;
	}
コード例 #23
0
static PRESULT cti_item_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	UINT8 bID;
	POBJECT_HEAD submenu;	

	bID = OSD_GetObjID(pObj);

	switch(event)
	{
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);
		if(unact == VACT_ENTER )//&&Correct_card==1)
		{
			switch(bID)
			{
			case CTI_CARD_INFO_ID:
				submenu = (POBJECT_HEAD)&g_win_cti_cardinfo;
				if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | bID) != PROC_LEAVE)
					menu_stack_push(submenu);					
				break;
			case CTI_PPID_INFO_ID:
				submenu = (POBJECT_HEAD)&g_win_cti_PPID;
				if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | bID) != PROC_LEAVE)
					menu_stack_push(submenu);					
				break;
			case CTI_MATURITY_RATING_ID:
				submenu = (POBJECT_HEAD)&g_win_cti_set_maturity;
				if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | bID) != PROC_LEAVE)
					menu_stack_push(submenu);					
				break;
			case CTI_CARD_PIN_ID:
				submenu = (POBJECT_HEAD)&g_win_cti_pin;
				if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | bID) != PROC_LEAVE)
					menu_stack_push(submenu);					
				break;
			case CTI_BMAIL_ID:
				submenu = (POBJECT_HEAD)&g_win_cti_mail;
				if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | bID) != PROC_LEAVE)
					menu_stack_push(submenu);					
				break;
	///*		
			case CTI_USER_VIEW:
				submenu = (POBJECT_HEAD)&g_win_cti_userview;
				if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | bID) != PROC_LEAVE)
					menu_stack_push(submenu);					
				break;
			//*/
			}
		}
		break;
	default:
		;
	}
	return ret;
}
コード例 #24
0
ファイル: win_factory_set.c プロジェクト: alkap007/ali3606
static PRESULT factoryset_btn_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;	
	//PRESULT ret = PROC_LEAVE;	
	VACTION unact;
	UINT8 bID,back_saved;
	win_popup_choice_t choice;
	UINT32 chunk_id, default_db_addr, default_db_len;

	bID = OSD_GetObjID(pObj);
	
	switch(event)
	{
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);
		if(unact == VACT_ENTER)
		{
		       ret = PROC_LEAVE;
			if(bID == BTN_NO_ID)
			{
				break;
			}
			
			//win_compopup_init(WIN_POPUP_TYPE_OKNO);
			//win_compopup_set_msg(NULL, NULL, RS_DISPLAY_SURE_TO_DELETE);
			//win_compopup_set_default_choice(WIN_POP_CHOICE_NO);
			//choice = win_compopup_open_ext(&back_saved);
			//if(choice == WIN_POP_CHOICE_YES)
			{
				win_compopup_init(WIN_POPUP_TYPE_SMSG);
				win_compopup_set_msg(NULL,NULL, RS_MSG_SAVING_DATA);
				win_compopup_open_ext(&back_saved);

				chunk_id = 0x03FC0100;
				api_get_chuck_addlen(chunk_id, &default_db_addr, &default_db_len);
				set_default_value(DEFAULT_ALL_PROG,default_db_addr + 16);

				sys_data_factroy_init(); 
				//sys_data_set_factory_reset(TRUE);
				sys_data_set_cur_chan_mode(TV_CHAN);
				sys_data_save(TRUE);
				sys_data_load();
				if(GetMuteState())
					SetMuteOnOff(FALSE);
				if(GetPauseState())
					SetPauseOnOff(FALSE);
				win_compopup_smsg_restoreback();
				// PRESULT ret = PROC_LEAVE;
				//ap_send_msg(CTRL_MSG_SUBTYPE_CMD_EXIT_ROOT, (UINT32)&g_win_PALNTSC,FALSE);
			}
		
		}
		break;
	}

	return ret;
}
コード例 #25
0
static PRESULT cti_mat_item_pin_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact,input,save;
	POBJECT_HEAD    newMenu;
	UINT8 mat_val = 0xFF;
	UINT8	id = OSD_GetObjID(pObj);
	char ch;

	switch(event)
	{		
	case EVN_FOCUS_PRE_GET:
		break;
	case EVN_FOCUS_PRE_LOSE:
		break;
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16) ;
		//soc_printf("act === %d\n",unact);
		if(unact <= VACT_NUM_9 )
		{
			ch = (char)('0' + (unact - VACT_NUM_0));
			if(input_pin_char_cnt < MAX_PIN_LEN)
			{
				input_pin_chars[input_pin_char_cnt] = ch;
				input_pin_char_cnt ++;				
			}
			cti_mat_draw_pin();

		}
		else if(unact == VACT_LEFT)
		{
			if(input_pin_char_cnt>0)
			{
				input_pin_char_cnt--;
				input_pin_chars[input_pin_char_cnt] = '\0';
			}
			cti_mat_draw_pin();
		}
		else if(unact == VACT_ENTER)
		{
			if(cti_mat_modify())
			{
				;//soc_printf("modify pin error!!\n");
			}
			else
			{
				ret = PROC_LEAVE;
				break;
			}

		}
		ret = PROC_LOOP;
		break;
	}
	return ret;
}
コード例 #26
0
static PRESULT hddfmt_item_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8	unact,input;
	UINT8	id = OSD_GetObjID(pObj);

	switch(event)
	{		
	case EVN_FOCUS_PRE_GET:
		break;
		
	case EVN_FOCUS_PRE_LOSE:
		break;

	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16) ;
		if(id == 1)
		{
	        if(unact == VACT_DECREASE)
			{
				if(!hddfmt_get_next_vol(-1))
				{
					ret = PROC_LEAVE;
					break;
				}
		        hddfmt_set_vol_string(&hddfmt_item_txtset1);
				OSD_TrackObject(pObj,C_UPDATE_ALL);
				win_hddfmt_draw_disk_infor();
			}
			else if(unact == VACT_INCREASE)
			{
				if(!hddfmt_get_next_vol(1))
				{
					ret = PROC_LEAVE;
					break;
				}
		        hddfmt_set_vol_string(&hddfmt_item_txtset1);
				OSD_TrackObject(pObj,C_UPDATE_ALL);
				win_hddfmt_draw_disk_infor();
			}		
	        else if(unact == VACT_ENTER)
			{
				hddfmt_vol_enter_key(pObj,id);
			}
		}
		else if(id == 2)
		{
			if(hddfmt_cur_volume >= 0)
				hddfmt_start();
		}
		ret = PROC_LOOP;
		break;
	}
	return ret;

}
コード例 #27
0
ファイル: win_chan_rename.c プロジェクト: Janesak1977/ali3602
static VACTION chanrn_item_edt_keymap(POBJECT_HEAD pObj, UINT32 key)
{
    VACTION act;
    UINT8 bID;
    UINT8 bStyle;
    EDIT_FIELD	*edf;

    edf = (EDIT_FIELD*)pObj;

    bID = OSD_GetObjID(pObj);

    bStyle = edf->bStyle;

    switch(key)
    {
    case V_KEY_0:
    case V_KEY_1:
    case V_KEY_2:
    case V_KEY_3:
    case V_KEY_4:
    case V_KEY_5:
    case V_KEY_6:
    case V_KEY_7:
    case V_KEY_8:
    case V_KEY_9:
        act = key - V_KEY_0 + VACT_NUM_0;
        break;
    case V_KEY_LEFT:
    case V_KEY_RIGHT:
        act = (key == V_KEY_LEFT)? VACT_EDIT_LEFT : VACT_EDIT_RIGHT;
        break;
    case V_KEY_ENTER:
        act = VACT_EDIT_ENTER;
        break;
    case V_KEY_EXIT:
        if(bStyle&EDIT_STATUS)
            act = VACT_EDIT_SAVE_EXIT;
        else
            act = VACT_PASS;
        break;
    case V_KEY_RED:
        act = VACT_CAPS;
        break;
    case V_KEY_GREEN:
        act = VACT_DEL;
        break;
    case V_KEY_BLUE:
    case V_KEY_MENU:
        act = VACT_CLOSE;
    default:
        act = VACT_PASS;
    }

    return act;
}
コード例 #28
0
ファイル: win_sat_edit.c プロジェクト: Janesak1977/ali3602
static VACTION sate_item_edt_keymap(POBJECT_HEAD pObj, UINT32 key)
{
	VACTION act;
	UINT8 bID;
	UINT8 bStyle;
	EDIT_FIELD	*edf;

	edf = (EDIT_FIELD*)pObj;

	bID = OSD_GetObjID(pObj);	

	bStyle = edf->bStyle;
	
	switch(key)
    {
	case V_KEY_0:	case V_KEY_1:	case V_KEY_2:	case V_KEY_3:
	case V_KEY_4:	case V_KEY_5:	case V_KEY_6:	case V_KEY_7:
	case V_KEY_8:	case V_KEY_9:
		act = key - V_KEY_0 + VACT_NUM_0;
		break;
	case V_KEY_LEFT:
	case V_KEY_RIGHT:
		if(bID == SAT_ORBIT_ID && !(bStyle&EDIT_STATUS))
			act = VACT_CHANGE_SUB;
		else
			act = (key == V_KEY_LEFT)? VACT_EDIT_LEFT : VACT_EDIT_RIGHT;
		break;
	case V_KEY_ENTER:
	#ifdef USE_KEYBOARD_EDIT
		if(bID == SAT_ORBIT_ID)
			act = VACT_EDIT_ENTER;
		else
			act = VACT_ENTER;
	#else
		act = VACT_EDIT_ENTER;
	#endif
		break;
	case V_KEY_EXIT:
		if(bStyle&EDIT_STATUS)
			act = VACT_EDIT_SAVE_EXIT;
		else
			act = VACT_PASS;
		break;			
	case V_KEY_RED:
		act = VACT_CAPS;
		break;
	case V_KEY_GREEN:
		act = VACT_DEL;
		break;
	default:
		act = VACT_PASS;
	}

	return act;	 
}
コード例 #29
0
static PRESULT  localset_item_edf_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	UINT8 status;
	EDIT_FIELD* edf;
	UINT8 back_save;
	UINT32 value;
    char tmpStr[32];

	bID = OSD_GetObjID(pObj);

	edf = (EDIT_FIELD*)pObj;

	switch(event)
	{
	case EVN_PRE_CHANGE:
		
		break;
	case EVN_POST_CHANGE:
		value = OSD_GetEditFieldContent((PEDIT_FIELD)pObj);
		switch(bID)
		{
			case IDC_LOCALSET_IP_ADDR:
				net_local_cfg.ip_addr = htonl(value);
				break;
			case IDC_LOCALSET_SUBNET_MASK:
				net_local_cfg.subnet_mask = htonl(value);
				break;
			case IDC_LOCALSET_GATEWAY:
				net_local_cfg.gateway = htonl(value);
				break;
			case IDC_LOCALSET_DNS1:
				net_local_cfg.dns = htonl(value);
				break;                
            case IDC_LOCALSET_DNS2:
                net_local_cfg.dns2 = htonl(value);
                break;
		}
		//libc_printf("POST: ip %xh, get value = %xh\n",param1,value);
		break;
	case EVN_PARENT_FOCUS_POST_LOSE:
		break;		
	case EVN_DATA_INVALID:		
		win_compopup_init(WIN_POPUP_TYPE_OK);
		win_compopup_set_msg("Invalid address number!", NULL, 0);
		win_compopup_open_ext(&back_save);
		ret = PROC_LOOP;
		break;
		
	}

	return ret;
}
コード例 #30
0
ファイル: win_parental.c プロジェクト: alkap007/ali3606
static PRESULT par_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT32 i;
	UINT8	unact;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);
	SYSTEM_DATA* p_sys_data;

	static UINT32 default_key_exit[] = 
	{
		V_KEY_EXIT,V_KEY_MENU,V_KEY_LEFT,V_KEY_UP,V_KEY_DOWN
	};
	
	switch(event)
	{
	case EVN_PRE_OPEN:
		
		if(win_pwd_open(default_key_exit,ARRAY_SIZE(default_key_exit))==FALSE)
		{
			return PROC_LEAVE;
		}
		wincom_open_subtitle((POBJECT_HEAD)&win_parental_con,RS_SYSTME_PARENTAL_LOCK, 0);
		OSD_ChangeFocus((POBJECT_HEAD)&win_parental_con,MENU_PARENTAL_MENU_LOCK,0);
		p_sys_data=sys_data_get();
		win_par_set_menu_lock_string(p_sys_data->menu_lock);
		win_par_set_channel_lock_string(p_sys_data->channel_lock);
		win_par_switch_confirm(FALSE);
		g_PL_Input_Bit_Number=0;
		g_PL_Input_Status=FALSE;
		win_pl_password_value[0]=0;
		win_pl_password_value[1]=0;
		win_pl_set_password_str(0);
		win_pl_set_password_str(1);
		break;
	
	case EVN_POST_OPEN:
		break;
		
	case EVN_PRE_CLOSE:
		sys_data_save(1);
        *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		break;

	case EVN_POST_CLOSE:
  		wincom_close_subtitle();
		OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
		break;
	}
	return ret;
}