static PRESULT sudoku_con_callback(POBJECT_HEAD obj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; POBJECT_HEAD submenu; switch (event) { case EVN_PRE_OPEN: #ifdef NEW_GAME_FOCUS OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_ACTIVE); OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 1, \ C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG); #else OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_INACTIVE); OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 6, \ C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG); #endif game_pre_open(); break; case EVN_POST_CLOSE: OSD_ClearScreen(); win_open_submenu_title(submenu,sub_menu_desc->title_id, 0); //guop break; case EVN_POST_DRAW: game_1st_draw(); break; case EVN_MSG_GOT: game_event(param1, param2); break; } return ret; }
static PRESULT ad_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; CONTAINER* root = (CONTAINER*) pObj; switch(event) { case EVN_PRE_OPEN: #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif #ifdef PREVIEW_SUBMENU //-a by wangyang { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); if(param2==MENU_OPEN_TYPE_OTHER) { ad_menu_sels[focusObj->bID-1]->style.bHLIdx=SEL_SH_IDX; ad_menu_txts[focusObj->bID-1]->style.bHLIdx=TXT_SH_IDX; } else { ad_menu_sels[focusObj->bID-1]->style.bHLIdx=SEL_HL_IDX; ad_menu_txts[focusObj->bID-1]->style.bHLIdx=TXT_HL_IDX; } } #endif win_ad_load_setting(); wincom_open_subtitle(pObj, /*RS_AUDIO_DESCRIPTION_SETTING*/RS_AUDIO_DESCRIPTION, 0); break; case EVN_POST_OPEN: wincom_open_commen_help(pObj);//-a by wangyang break; case EVN_PRE_CLOSE: sys_data_save(1); *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; /* Make OSD not flickering */ break; case EVN_POST_CLOSE: wincom_close_subtitle(); OSD_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif //OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL); break; case EVN_MSG_GOT: break; default: break; } return ret; }
static PRESULT win_screen_saver_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; UINT16 vkey; switch(event) { case EVN_PRE_OPEN: { left_offset = RAND(600); top_offset = RAND(300); pObj->frame.uLeft = left_offset; pObj->frame.uTop = top_offset; win_screen_prog_infor(); f_screen_saver_timer = api_start_timer(SCREEN_SAVER_TIMER_NAME_ONE, SCREEN_SAVER_TIMER_INTERVAL_ONE, screen_saver_timer_func_one); } break; case EVN_POST_CLOSE: { OSD_ClearScreen(); } break; case EVN_UNKNOWN_ACTION: vkey = param1&0xFFFF; OSD_ClearScreen(); ap_send_key(vkey, TRUE); ret = PROC_LEAVE; break; case EVN_MSG_GOT: if(param1 == CTRL_MSG_SUBTYPE_CMD_LEAVE_SAVER) { ret = PROC_LEAVE; } break; default: break; } return ret ; }
static PRESULT otaset_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT32 sat_cnt; POBJECT_HEAD submenu; switch(event) { case EVN_PRE_OPEN: ota_presat_id = 0xFFFF; //wincom_open_title(pObj,RS_UPGRADE_MODE_SAT, 0); wincom_open_subtitle(pObj,RS_TOOLS_SW_UPGRADE_BY_OTA, 0); #ifdef _BUILD_OTA_E_ ota_load_parameter(); #else win_otaset_load_default_setting(0); #endif win_otaset_load_FreqSymbPid_display(); break; case EVN_POST_DRAW: //win_signal_open(pObj); win_signal_open_ex(pObj,pObj->frame.uLeft+30,pObj->frame.uTop + LIST_ITEMCNT*(CON_H + CON_GAP) +20); win_otaset_turn_frntend(); wincom_open_commen_help(pObj); //win_signal_refresh(); //win_signal_update(); break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: wincom_close_subtitle(); OSD_ClearScreen(); if((sys_data_get_sate_group_num(sys_data_get_cur_chan_mode())==0)) OSD_DrawObject((POBJECT_HEAD)&g_win_mainmenu,C_UPDATE_ALL); win_open_submenu_title(submenu,sub_menu_desc->title_id, 0); //guop break; case EVN_MSG_GOT: if(param1 == CTRL_MSG_SUBTYPE_STATUS_SIGNAL) win_signal_refresh(); //win_signal_update(); break; } return ret; }
static PRESULT av_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; POBJECT_HEAD submenu; switch(event) { case EVN_PRE_OPEN: wincom_open_subtitle((POBJECT_HEAD)&win_av_con,RS_SYSTEM_TV_SYSTEM, 0); win_av_load_setting(); win_av_set_vcrloop_action(FALSE); win_av_init_items(); #ifdef NEW_DEMO_FRAME remove_menu_item((POBJECT_HEAD)&win_av_con, (OBJECT_HEAD *)&av_item_con5, CON_H + CON_GAP); remove_menu_item((POBJECT_HEAD)&win_av_con, (OBJECT_HEAD *)&av_item_con6, CON_H + CON_GAP); remove_menu_item((POBJECT_HEAD)&win_av_con, (OBJECT_HEAD *)&av_item_con7, CON_H + CON_GAP); #endif break; case EVN_POST_OPEN: wincom_open_commen_help(pObj); wincom_open_help(pObj,0,0); break; case EVN_PRE_CLOSE: sys_data_save(1); /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: wincom_close_subtitle(); OSD_ClearScreen(); if((sys_data_get_sate_group_num(sys_data_get_cur_chan_mode())==0)) OSD_DrawObject((POBJECT_HEAD)&g_win_mainmenu,C_UPDATE_ALL); win_open_submenu_title(submenu,sub_menu_desc->title_id, 0); //guop break; case EVN_MSG_GOT: if(param1 == CTRL_MSG_SUBTYPE_CMD_TVSAT_SWITCH) { win_av_load_tv_mode_setting(TRUE); ret = PROC_LOOP; } break; default: break; } return ret; }
static PRESULT atnsetm_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; BOOL b; UINT8 back_saved; VACTION unact; POBJECT_HEAD submenu; switch(event) { case EVN_PRE_OPEN: win_atnsetm_load_tuner_configuration(); win_atnsetm_load_motor_antenna_setting(FALSE); wincom_open_subtitle(pObj,RS_INSTALLATION_ANTENNA_SETUP,0); wincom_open_commen_help(pObj); wincom_open_help(pObj,ant_setup_helpinfo , HELP_CNT); break; case EVN_PRE_CLOSE: b = win_atnsetm_check_save_motor_antenna_setting(); if(!b) { win_compopup_init(WIN_POPUP_TYPE_OK); win_compopup_set_msg(NULL, NULL, RS_MSG_OUT_RANGE); win_compopup_open_ext(&back_saved); ret = PROC_LOOP; break; } /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: wincom_close_help(); wincom_close_subtitle(); OSD_ClearScreen(); win_open_submenu_title(submenu,sub_menu_desc->title_id, 0); //guop break; case EVN_UNKNOWN_ACTION: unact = (VACTION)(param1>>16); ret = win_an_set_unkown_act_proc(unact); break; } return ret; }
static PRESULT favgrplst_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; POBJECT_HEAD submenu; switch(event) { case EVN_PRE_OPEN: wincom_open_subtitle(pObj,RS_FAVORITE,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_ClearScreen(); win_open_submenu_title(submenu,sub_menu_desc->title_id, 0); //guop break; } return ret; }
static PRESULT miscset_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; CONTAINER* root = (CONTAINER*) pObj; switch(event) { case EVN_PRE_OPEN: #ifdef PREVIEW_SUBMENU //-a by wangyang { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); if(param2==MENU_OPEN_TYPE_OTHER) { //misc_menu_sels[focusObj->bID-1]->style.bHLIdx=SEL_SH_IDX; //misc_menu_txts[focusObj->bID-1]->style.bHLIdx=TXT_SH_IDX; misc_menu_sels[4]->style.bHLIdx=SEL_SH_IDX; misc_menu_txts[4]->style.bHLIdx=TXT_SH_IDX; #ifdef ORDER_GZ1207009 misc_menu_sels[6]->style.bHLIdx=SEL_SH_IDX; misc_menu_txts[6]->style.bHLIdx=TXT_SH_IDX; #endif } else { //misc_menu_sels[focusObj->bID-1]->style.bHLIdx=SEL_HL_IDX; //misc_menu_txts[focusObj->bID-1]->style.bHLIdx=TXT_HL_IDX; misc_menu_sels[4]->style.bHLIdx=SEL_HL_IDX; misc_menu_txts[4]->style.bHLIdx=TXT_HL_IDX; #ifdef ORDER_GZ1207009 misc_menu_sels[6]->style.bHLIdx=SEL_HL_IDX; misc_menu_txts[6]->style.bHLIdx=TXT_HL_IDX; #endif } } #endif #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif win_miscset_load_setting(); wincom_open_subtitle(pObj,RS_AUTO_STANDBY,0); break; case EVN_POST_OPEN: wincom_open_commen_help(pObj);//-a by wangyang break; case EVN_PRE_CLOSE: win_miscset_save_setting(); /* 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); OSD_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif break; case EVN_MSG_GOT: #ifdef PREVIEW_SUBMENU //-a by wangyang if (param1 == CTRL_MSG_SUBTYPE_CMD_STO && param2 == USB_STATUS_OVER) { OSD_ObjOpen((POBJECT_HEAD)&g_win_submenu, MENU_OPEN_TYPE_OTHER ); } #endif break; } return ret; }
static VACTION map_display_keymap(POBJECT_HEAD pObj, UINT32 key) { VACTION act = VACT_PASS; SYSTEM_DATA *p_sys_data = sys_data_get(); UINT8 back_saved; switch(key) { case V_KEY_EXIT: case V_KEY_MENU: OSD_ClearScreen(); act = VACT_CLOSE; break; case V_KEY_RED: if (bMapDownloading) { break; } if (zoom_level < 21) { zoom_level++; } libc_printf("zoom level = %d\n", zoom_level); if (search_string[0] == '\0') { s_mapdisp_dl_handle = map_download(p_sys_data->map_city_name[city_index], zoom_level); } else { s_mapdisp_dl_handle = map_download(search_string, zoom_level); } bMapDownloading = TRUE; win_compopup_init(WIN_POPUP_TYPE_SMSG); win_compopup_set_msg((UINT8*)"Connecting, please wait...",NULL,0); win_compopup_open_ext(&back_saved); osal_task_sleep(1000); win_compopup_smsg_restoreback(); break; case V_KEY_GREEN: if (bMapDownloading) { break; } if (zoom_level != 0) { zoom_level--; } libc_printf("zoom level = %d\n", zoom_level); if (search_string[0] == '\0') { s_mapdisp_dl_handle = map_download(p_sys_data->map_city_name[city_index], zoom_level); } else { s_mapdisp_dl_handle = map_download(search_string, zoom_level); } bMapDownloading = TRUE; win_compopup_init(WIN_POPUP_TYPE_SMSG); win_compopup_set_msg((UINT8*)"Connecting, please wait...",NULL,0); win_compopup_open_ext(&back_saved); osal_task_sleep(1000); win_compopup_smsg_restoreback(); break; case V_KEY_ZOOM: win_mpzoom_open(); break; default: act = VACT_PASS; break; } return act; }
static PRESULT map_display_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT8 back_saved; OSD_RECT rect = {PREVIEW_L, PREVIEW_T, PREVIEW_W, PREVIEW_H}; struct YCbCrColor bgcolor; switch(event) { case EVN_PRE_OPEN: OSD_ClearScreen();//-a by wangyang 2011-09-20 win_media_player_init_ex(mp_apcallback, 1); bMapDownloading = FALSE; zoom_level = 12; //api_set_preview_vpo_color(TRUE); bgcolor.uY = 16; bgcolor.uCb = 128; bgcolor.uCr = 128; api_set_vpo_bgcolor(&bgcolor); image_restore_vpo_rect();//TODO #if 0 vpo_aspect_mode((struct vpo_device *)dev_get_by_id(HLD_DEV_TYPE_DIS,0), TV_4_3, NORMAL_SCALE); #ifdef DUAL_VIDEO_OUTPUT vpo_aspect_mode((struct vpo_device *)dev_get_by_id(HLD_DEV_TYPE_DIS,1), TV_4_3, NORMAL_SCALE); #endif osal_task_sleep(30); if(is_cur_decoder_avc()) { h264_decoder_select(0, hde_get_mode() == VIEW_MODE_PREVIEW); } #endif // system_state = SYS_STATE_USB_MP; //osal_cache_flush_all(); image_abort(); //map_show(rect); break; case EVN_POST_OPEN: //wincom_open_subtitle(pObj,RS_MAP,0); wincom_open_help_OK_list_small(pObj, map_display_helpinfo, 2); //wincom_open_help(pObj, map_display_helpinfo, 2); libc_printf("map_dl_param2 = %d\n", param2); map_show(rect, param2); break; case EVN_PRE_CLOSE://-a by wangyang 2011-09-20 map_download_abort(s_mapdisp_dl_handle); s_mapdisp_dl_handle = 0; media_player_release_ex(); imagedec_ioctl(1, IMAGEDEC_IO_CMD_CLEAN_FRM, TRUE); //when quit win_slide, clean 2 frm buffer image_abort(); break; case EVN_POST_CLOSE: wincom_close_subtitle(); image_restore_vpo_rect();//-a by wangyang 2011-09-20 break; case EVN_MSG_GOT: if (param1 == CTRL_MSG_SUBTYPE_STATUS_DOWNLOAD_FINISH) { bMapDownloading = FALSE; map_download_abort(s_mapdisp_dl_handle); s_mapdisp_dl_handle = 0; if ((int)param2 >= 0) { win_compopup_smsg_restoreback(); map_show(rect, param2); } } break; default: break; } return ret; }
static PRESULT sys_backup_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; CONTAINER* cont = (CONTAINER*)pObj; UINT8 id = OSD_GetObjID(pObj); OSD_RECT rect; UINT32 posi; switch(event) { case EVN_PRE_OPEN: #ifdef PREVIEW_SUBMENU //-a by wangyang if(param2==MENU_OPEN_TYPE_OTHER) { if(focus_flag==1) { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); focusObj_id =focusObj->bID; OSD_SetContainerFocus((CONTAINER*)pObj,0); focus_flag =0; } } else { OSD_SetContainerFocus((CONTAINER*)pObj,focusObj_id); focus_flag =1; } #endif #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif // win_usb_backup_tmr_loop =0; wincom_open_subtitle(pObj, RS_SYSTEM_BACKUP, 0); wincom_open_help(NULL, NULL, HELP_TYPE_RS232); OSD_SetProgressBarPos(&sys_backup_bar_progress,(INT16)0); OSD_SetTextFieldContent(&sys_backup_txt_progress, STRING_NUM_PERCENT, (UINT32)0); ret = win_sys_backup_init(); break; case EVN_POST_OPEN: system_state = SYS_STATE_USB_UPG; wincom_open_commen_help(pObj);//-a by wangyang win_sys_backup_msg_clear(); break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: system_state = SYS_STATE_NORMAL; //wincom_close_title(); wincom_close_subtitle(); wincom_close_help(); win_progress_bar_draw_bmp_close(); OSD_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif //epg_init(ap_send_epg_PF_update, ap_send_epg_sch_update, ap_send_epg_detail_update); //OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL); break; case EVN_MSG_GOT: if(param1 == CTRL_MSG_SUBTYPE_CMD_EXIT) { ret = PROC_LEAVE; } #ifdef PREVIEW_SUBMENU //-a by wangyang if (param1 == CTRL_MSG_SUBTYPE_CMD_STO && param2 == USB_STATUS_OVER) { system_state = SYS_STATE_NORMAL; wincom_close_subtitle(); OSD_ClearScreen(); wincom_close_help(); OSD_ClearObject( pObj, C_UPDATE_ALL); OSD_DrawFill(SUBMENU_W_L, SUBMENU_W_T, (SUBMENU_W_W), (SUBMENU_W_H), OSD_TRANSPARENT_COLOR, NULL); OSD_ObjOpen((POBJECT_HEAD)&win_rs232upg_con, MENU_OPEN_TYPE_OTHER ); ret = PROC_LEAVE; } #endif if (param1 == CTRL_MSG_SUBTYPE_CMD_TIMEDISPLAYUPDATE ) { /*if(start_backup==1) { win_usb_backup_tmr_loop++; posi = win_usb_backup_tmr_loop % PROGRESS_BAR_ICON_CNT; OSD_SetRect(&rect, BAR_TXT_L, BAR_TXT_T+BAR_TXT_H+4, 80, 80); win_progress_bar_draw_bmp(&rect,progress_bar_ids[posi]); } else win_progress_bar_draw_bmp_close();*/ } break; default: break; } return ret; }
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: #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif wincom_open_subtitle((POBJECT_HEAD)&win_lan_con,RS_SYSTEM_LANGUAGE, 0); #ifdef SHOW_WELCOME_SCREEN if(show_win_as_welcome) //if(1) { OSD_SetAttr(&lan_item_con6, C_ATTR_ACTIVE); ((POBJECT_HEAD)(&lan_item_con1))->bUpID = 6; ((POBJECT_HEAD)(&lan_item_con5))->bDownID = 6; //win_lan_con.head.style.bShowIdx = WSTL_WIN_BODYLEFT_01_HD; //win_lan_con.head.style.bHLIdx = WSTL_WIN_BODYLEFT_01_HD; // win_lan_con.head.style.bSelIdx = WSTL_WIN_BODYLEFT_01_HD; // win_lan_con.head.style.bGrayIdx = WSTL_WIN_BODYLEFT_01_HD; OSD_SetRect(&(win_lan_con.head.frame), MAIN_W_L, W_T, MAIN_W_W, W_H); } else { OSD_SetAttr(&lan_item_con6, C_ATTR_HIDDEN); ((POBJECT_HEAD)(&lan_item_con1))->bUpID = 5; ((POBJECT_HEAD)(&lan_item_con5))->bDownID = 1; win_lan_con.head.style.bShowIdx = WIN_SH_IDX; win_lan_con.head.style.bHLIdx = WIN_HL_IDX; win_lan_con.head.style.bSelIdx = WIN_SL_IDX; win_lan_con.head.style.bGrayIdx = WIN_GRY_IDX; OSD_SetRect(&(win_lan_con.head.frame), W_L, W_T, W_W, W_H); //remove_menu_item(&win_lan_con, (OBJECT_HEAD *)&lan_item_con6, CON_H + CON_GAP); } ((CONTAINER*)(&win_lan_con))->FocusObjectID = 1; #endif p_sys_data=sys_data_get(); //libc_printf("\nmmmmm-lan_open--mmmmmmm==%d\n",p_sys_data->lang.OSD_lang); 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 ORDER_GZ1207009 win_lan_set_epg_lan_string(p_sys_data->lang.epg_lang); #endif #ifdef SUPPORT_POP_SUBT subt_popup = TRUE; #else subt_popup = FALSE; #endif #ifdef PREVIEW_SUBMENU //-a by wangyang { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); if(param2==MENU_OPEN_TYPE_OTHER) { lan_item_set[focusObj->bID-1]->style.bHLIdx=TXTS_SH_IDX; lan_item_name[focusObj->bID-1]->style.bHLIdx=TXTN_SH_IDX; } else { lan_item_set[focusObj->bID-1]->style.bHLIdx=TXTS_HL_IDX; lan_item_name[focusObj->bID-1]->style.bHLIdx=TXTN_HL_IDX; } } #endif /* if(subt_popup) //-d by wangyang for add subtitle language { remove_menu_item(&win_lan_con, (POBJECT_HEAD)lan_items[3], (CON_H + CON_GAP)); }*/ break; case EVN_POST_OPEN: wincom_open_commen_help(pObj);//-a by wangyang break; case EVN_PRE_CLOSE: #ifdef EPG_MULTI_LANG #ifndef ORDER_GZ1207009 /*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 #endif #ifndef NEW_DEMO_FRAME UIChChgApplyAudLanguage(); #endif //libc_printf("\nmmmmm---mmmmmmm==%d\n",p_sys_data->lang.OSD_lang); 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_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif //OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL); break; } return ret; }
static PRESULT map_display_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; //UINT8 focusID = OSD_GetFocusID( pObj); UINT8 back_saved; OSD_RECT rect = {PREVIEW_L, PREVIEW_T, PREVIEW_W, PREVIEW_H}; struct YCbCrColor bgcolor; switch(event) { case EVN_PRE_OPEN: vdec_stop((struct vdec_device *)dev_get_by_type(NULL, HLD_DEV_TYPE_DECV), 0, 0); OSD_ClearScreen();//-a by wangyang 2011-09-20 win_media_player_init_ex(mp_apcallback, 1); bMapDownloading = FALSE; zoom_level = 12; //api_set_preview_vpo_color(TRUE); bgcolor.uY = 16; bgcolor.uCb = 128; bgcolor.uCr = 128; api_set_vpo_bgcolor(&bgcolor); image_restore_vpo_rect();//TODO #if 0 vpo_aspect_mode((struct vpo_device *)dev_get_by_id(HLD_DEV_TYPE_DIS,0), TV_4_3, NORMAL_SCALE); #ifdef DUAL_VIDEO_OUTPUT vpo_aspect_mode((struct vpo_device *)dev_get_by_id(HLD_DEV_TYPE_DIS,1), TV_4_3, NORMAL_SCALE); #endif osal_task_sleep(30); if(is_cur_decoder_avc()) { h264_decoder_select(0, hde_get_mode() == VIEW_MODE_PREVIEW); } #endif // system_state = SYS_STATE_USB_MP; //osal_cache_flush_all(); image_abort(); //map_show(rect); break; case EVN_POST_OPEN: //wincom_open_subtitle(pObj,RS_MAP,0); wincom_open_help_trans(pObj, map_display_helpinfo, 2); map_show(rect, param2); break; case EVN_POST_CLOSE: map_download_abort(s_mapdisp_dl_handle); s_mapdisp_dl_handle = 0; media_player_release_ex(); #ifdef LOGO_IN_RAM api_show_Test_logo_2(internet_osd4,get_logo_h_file_size(6)); #else api_show_Test_logo( LOGO_ID_TYPE|0X0200|7); #endif wincom_close_subtitle(); break; case EVN_MSG_GOT: if (param1 == CTRL_MSG_SUBTYPE_STATUS_DOWNLOAD_FINISH) { bMapDownloading = FALSE; map_download_abort(s_mapdisp_dl_handle); s_mapdisp_dl_handle = 0; if ((int)param2 >= 0) { win_compopup_smsg_restoreback(); map_show(rect, param2); } } break; default: break; } return ret; }
static PRESULT rs232upg_con_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: #ifdef PREVIEW_SUBMENU //-a by wangyang if(param2==MENU_OPEN_TYPE_OTHER) { if(focus_flag==1) { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); focusObj_id =focusObj->bID; OSD_SetContainerFocus((CONTAINER*)pObj,0); focus_flag =0; } } else { OSD_SetContainerFocus((CONTAINER*)pObj,focusObj_id); focus_flag =1; } #endif #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif wincom_open_subtitle((POBJECT_HEAD)&win_rs232upg_con,RS_UPGRADE_MODE_RS232, 0); win_rs232upg_load_chunk_info(); OSD_SetProgressBarPos(&rs232upg_bar_progress,(INT16)0); OSD_SetTextFieldContent(&rs232upg_txt_progress, STRING_NUM_PERCENT, (UINT32)0); break; case EVN_POST_OPEN: win_rs232upg_msg_clear(); wincom_open_commen_help(pObj);//-a by wangyang break; case EVN_PRE_CLOSE: win_rs232upg_clear(); /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: wincom_close_subtitle(); OSD_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif //OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL); break; #ifdef PREVIEW_SUBMENU //-a by wangyang case EVN_MSG_GOT: if (param1 == CTRL_MSG_SUBTYPE_CMD_STO && param2 == USB_STATUS_OVER) { OSD_ObjOpen((POBJECT_HEAD)&g_win_submenu, MENU_OPEN_TYPE_OTHER ); } break; #endif } return ret; }
static PRESULT localset_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; IP_LOC_CFG last_local_cfg; switch(event) { case EVN_PRE_OPEN: #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif #ifdef PREVIEW_SUBMENU //-a by wangyang { if(param2==MENU_OPEN_TYPE_OTHER) { /*if(focus_flag==1) { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); focusObj_id =focusObj->bID; OSD_SetContainerFocus((CONTAINER*)pObj,0); focus_flag =0; }*/ localset_item_txtname1.head.style.bHLIdx =TXT_SH_IDX; localset_item_dhcp.head.style.bHLIdx =SEL_SH_IDX; localset_item_txtname7.head.style.bHLIdx =TXT_SH_IDX; } else { /* OSD_SetContainerFocus((CONTAINER*)pObj,focusObj_id); focus_flag =1;*/ localset_item_txtname1.head.style.bHLIdx =TXT_HL_IDX; localset_item_dhcp.head.style.bHLIdx =SEL_HL_IDX; #ifdef OSD_15 localset_item_txtname7.head.style.bHLIdx =WIN_SUBMENU_APPLE_TITLE; #elif defined(OSD_12) localset_item_txtname7.head.style.bHLIdx =WIN_SUBMENU_APPLE_TITLE; #else localset_item_txtname7.head.style.bHLIdx =TXT_HL_IDX; #endif } } #endif wincom_open_subtitle((POBJECT_HEAD)&g_win_localsetting,RS_NET_LOCAL_SETTING, 0); localset_init(); if(flag==1&&net_local_cfg.dhcp_on) { localset_display(); } wincom_open_commen_help(pObj);//-a by wangyang break; case EVN_POST_OPEN: TestNetStatus(); break; case EVN_PRE_CLOSE: //localset_cfg_save(); /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: wincom_close_subtitle(); OSD_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif //OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL); break; case EVN_MSG_GOT: if (param1 == CTRL_MSG_SUBTYPE_STATUS_DHCP) { localset_display(); //guop add 20111226 } TestNetStatus(); break; default: break; } return ret; }
static PRESULT pvr_setting_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; SYSTEM_DATA* p_sys_data; switch(event) { case EVN_PRE_OPEN: #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif wincom_open_subtitle((POBJECT_HEAD)&win_osdset_con, RS_PVR_SETTING, 0); p_sys_data=sys_data_get(); win_pvr_setting_timeshift_set_string(p_sys_data->timeshift); win_pvr_setting_jumpstep_set_string(p_sys_data->jumpstep); win_pvr_setting_scramble_record_mode_set_string(p_sys_data->scramble_record_mode); remove_menu_item(&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con3, CON_H + CON_GAP); win_pvr_setting_ts_file_size_set_string(p_sys_data->record_ts_file_size); remove_menu_item(&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con4, CON_H + CON_GAP); win_pvr_setting_tms2rec_set_string(p_sys_data->tms2rec); win_pvr_setting_ttx_subt_set_string(p_sys_data->record_ttx_subt); remove_menu_item(&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con6, CON_H + CON_GAP); win_pvr_setting_rec_num_set_string(p_sys_data->rec_num); remove_menu_item(&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con7, CON_H + CON_GAP); #ifdef NEW_DEMO_FRAME win_pvr_setting_record_ps_set_string(p_sys_data->rec_ps_enable); #ifdef SUPPORT_CAS9 remove_menu_item((POBJECT_HEAD)&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con5, CON_H + CON_GAP); remove_menu_item((POBJECT_HEAD)&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con8, CON_H + CON_GAP); #endif #else remove_menu_item((POBJECT_HEAD)&g_win_pvr_setting, (OBJECT_HEAD *)&pvr_setting_item_con8, CON_H + CON_GAP); #endif #ifdef PREVIEW_SUBMENU //-a by wangyang { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); if(param2==MENU_OPEN_TYPE_OTHER) { pvr_setting_item_set[focusObj->bID-1]->style.bHLIdx=TXTS_SH_IDX; pvr_setting_item_name[focusObj->bID-1]->style.bHLIdx=TXTN_SH_IDX; } else { pvr_setting_item_set[focusObj->bID-1]->style.bHLIdx=TXTS_HL_IDX; pvr_setting_item_name[focusObj->bID-1]->style.bHLIdx=TXTN_HL_IDX; } } #endif break; case EVN_POST_OPEN: wincom_open_commen_help(pObj);//-a by wangyang break; case EVN_PRE_CLOSE: *((UINT32 *)param2) &= ~C_CLOSE_CLRBACK_FLG; p_sys_data=sys_data_get(); sys_data_save(1); #ifndef PVR3_SUPPORT pvr_r_set_ts_file_size(p_sys_data->record_ts_file_size + 1); #endif //api_pvr_jumpstep_trans(); break; case EVN_POST_CLOSE: wincom_close_subtitle(); OSD_ClearScreen(); #ifdef EXIT_KEY_EXIT_ALL_MENU if( exit_key_flag == TRUE) { exit_key_flag =FALSE; mm_leave_all_menu(); } #endif //OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL); break; #ifdef PREVIEW_SUBMENU //-a by wangyang case EVN_MSG_GOT: if (param1 == CTRL_MSG_SUBTYPE_CMD_STO && param2 == USB_STATUS_OVER) { //system_state = SYS_STATE_NORMAL; wincom_close_subtitle(); OSD_ClearScreen(); //wincom_close_help(); OSD_ClearObject( pObj, C_UPDATE_ALL); OSD_DrawFill(SUBMENU_W_L, SUBMENU_W_T, (SUBMENU_W_W), (SUBMENU_W_H), OSD_TRANSPARENT_COLOR, NULL); OSD_ObjOpen((POBJECT_HEAD)&win_info_con, MENU_OPEN_TYPE_OTHER ); ret = PROC_LEAVE; } break; #endif case EVN_UNKNOWN_ACTION: if (api_pvr_is_record_active()) break; win_popup_choice_t choice; UINT8 back_saved; #ifndef CI_PLUS_PVR_SUPPORT if (sys_data_get_tms() == 0) { win_popup_choice_t choice; UINT8 back_saved; win_compopup_init(WIN_POPUP_TYPE_OKNO); win_compopup_set_msg("Are you sure to enter record TP mode?", NULL, 0); if (pvr_r_get_record_all()) win_compopup_set_default_choice(WIN_POP_CHOICE_YES); else win_compopup_set_default_choice(WIN_POP_CHOICE_NO); choice = win_compopup_open_ext(&back_saved); if(choice == WIN_POP_CHOICE_YES) { pvr_r_set_record_all(TRUE); } else if (choice == WIN_POP_CHOICE_NO) { pvr_r_set_record_all(FALSE); } } else #endif { win_compopup_init(WIN_POPUP_TYPE_OKNO); win_compopup_set_msg("Record CA program in descrambled format?", NULL, 0); if (sys_data_get_scramble_record_mode()) win_compopup_set_default_choice(WIN_POP_CHOICE_YES); else win_compopup_set_default_choice(WIN_POP_CHOICE_NO); choice = win_compopup_open_ext(&back_saved); if (choice == WIN_POP_CHOICE_YES) { sys_data_set_scramble_record_mode(1); pvr_r_set_scramble_ext(0); } else if (choice == WIN_POP_CHOICE_NO) { sys_data_set_scramble_record_mode(0); pvr_r_set_scramble_ext(1); } } break; } return ret; }
static PRESULT tplst_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT8 back_saved; S_NODE s_node; POBJECT_HEAD submenu; switch(event) { case EVN_PRE_OPEN: if(sys_data_get_cur_satidx() == (UINT16)(~0)) cur_tp_sat_idx = win_load_default_satidx(); else cur_tp_sat_idx = sys_data_get_cur_satidx(); tp_list_pos = 0xffff; tp_list_top = 0; win_tplist_load_sat(FALSE); pre_tp_sat_idx= cur_tp_sat_idx; wincom_close_help(); wincom_open_subtitle(pObj,RS_TP_LIST,0); break; case EVN_POST_OPEN: //win_signal_open(pObj); //win_signal_open_tplist(pObj); win_signal_open_ex(pObj,pObj->frame.uLeft+30,pObj->frame.uTop + LIST_ITEMCNT*(ITEM_H + ITEM_GAP) + LST_SAT_H +25); wincom_open_commen_help(pObj); wincom_open_help(pObj,tplist_helpinfo , HELP_CNT); win_tplist_tuner_frontend(); win_signal_refresh(); //win_signal_update(); get_tuner_sat(TUNER_EITHER, cur_tp_sat_idx, &s_node); if(!tpscan_return) wincom_dish_move_popup_open(0xFFFF,s_node.sat_id,cur_tuner_idx,&back_saved); break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: if(win_tplist_check_change()) update_data(); api_stop_timer(&tpturn_timer_id); win_signal_close(); wincom_close_help(); sys_data_check_channel_groups(); sys_data_set_cur_satidx((UINT16)cur_tp_sat_idx); #ifdef MULTIFEED_SUPPORT multifeed_del_invalid_info(); #endif wincom_close_subtitle(); OSD_ClearScreen(); win_open_submenu_title(submenu,sub_menu_desc->title_id, 0); //guop break; case EVN_MSG_GOT: win_tplist_message_proc(param1,param2); break; default: break; } return ret; }