void win_timerset_timermode_change(BOOL update) { UINT8 action; if (TIMER_MODE == TIMER_MODE_OFF) action = C_ATTR_INACTIVE; else action = C_ATTR_ACTIVE; if (OSD_CheckAttr(&timer_con_servicetype, action)) return ; set_container_active(&timer_con_servicetype, action); set_container_active(&timer_con_serviceinfo, action); set_container_active(&timer_con_wakeupdate, action); set_container_active(&timer_con_wakeuptime, action); if (action == C_ATTR_ACTIVE && TIMER_SERVICE_TYPE == TIMER_SERVICE_MESSAGE) action = C_ATTR_INACTIVE; set_container_active(&timer_con_duration, action); if (update) { OSD_DrawObject((POBJECT_HEAD) &timer_con_servicetype, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD) &timer_con_serviceinfo, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD) &timer_con_wakeupdate, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD) &timer_con_wakeuptime, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD) &timer_con_duration, C_UPDATE_ALL); } }
static void win_ad_load_setting(void) { MULTISEL *msel; msel =&ad_sel0; // AD service OSD_SetMultiselSel(msel, sys_data_get_ad_service()); msel =&ad_sel1; // Use AD as default OSD_SetMultiselSel(msel, sys_data_get_ad_default_mode()); msel =&ad_sel2; // AD volume offset OSD_SetMultiselSel(msel, (sys_data_get_ad_volume_offset() + AD_VOLUME_NO_OFFSET_IDX)); if (sys_data_get_ad_service() == 0) { set_container_active(&ad_item1, C_ATTR_INACTIVE); set_container_active(&ad_item2, C_ATTR_INACTIVE); } /* else if (sys_data_get_ad_default_mode() == 0) { set_container_active(&ad_item2, C_ATTR_INACTIVE); } */ }
static PRESULT ad_item_sel_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT32 sel; UINT8 bID; UINT32 drawCmd = C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL; bID = OSD_GetObjID(pObj); switch(event) { case EVN_PRE_CHANGE: sel = *((UINT32*)param1); break; case EVN_POST_CHANGE: sel = param1; if (bID == AD_SERVICE_ID) { UINT8 action = sel ? C_ATTR_ACTIVE : C_ATTR_INACTIVE; sys_data_set_ad_service(sel); set_container_active(&ad_item1, action); set_container_active(&ad_item2, action); OSD_DrawObject((POBJECT_HEAD)&ad_item1, drawCmd); OSD_DrawObject((POBJECT_HEAD)&ad_item2, drawCmd); } else if (bID == AD_USING_ID) { // UINT8 action = sel ? C_ATTR_ACTIVE : C_ATTR_INACTIVE; sys_data_set_ad_default_mode(sel); sys_data_set_ad_mode(sel); // set_container_active(&ad_item2, action); // OSD_DrawObject((POBJECT_HEAD)&ad_item2, drawCmd); } else if (bID == AD_VOLUME_OFFSET_ID) { INT32 offset = (INT32)sel - AD_VOLUME_NO_OFFSET_IDX; sys_data_set_ad_volume_offset((signed char)offset); api_audio_set_ad_volume_offset(offset); } break; default: break; } return ret; }
static void nc_item_sel_autouser(UINT8 active,UINT8 bAuto,BOOL update) { UINT8 action= ( bAuto== 1 ||active==0) ? C_ATTR_INACTIVE : C_ATTR_ACTIVE; OSD_SetMultiselSel(&nc_item_selt3,bAuto); set_container_active(&nc_item_con4, action); set_container_active(&nc_item_con5, action); if(update) { OSD_DrawObject( (POBJECT_HEAD)&nc_item_con4, C_UPDATE_ALL); OSD_DrawObject( (POBJECT_HEAD)&nc_item_con5, C_UPDATE_ALL); //OSD_TrackObject( (POBJECT_HEAD)&nc_item_con9, C_UPDATE_ALL); } }
static void tms_set_tms2rec_item_active(BOOL update) { UINT8 action; action = sys_data_get_tms() ? C_ATTR_ACTIVE : C_ATTR_INACTIVE; set_container_active(&tms_item_con2, action); if(update) OSD_DrawObject( (POBJECT_HEAD)&tms_item_con2, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); }
void win_timerset_timerservice_change(BOOL update) { UINT8 action; TEXT_FIELD *txt; MULTISEL *msel; UINT16 ch_idx, ch_cnt; TIMER_SET_CONTENT *settimer; P_NODE p_node; settimer = &timer_set; if (TIMER_MODE == TIMER_MODE_OFF) action = C_ATTR_INACTIVE; else { if (TIMER_SERVICE_TYPE == TIMER_SERVICE_MESSAGE) action = C_ATTR_INACTIVE; else action = C_ATTR_ACTIVE; } /* TIMER service information: message or channel */ txt = &timer_txt_serviceinfo; msel = &timer_msel_serviceinfo; if (TIMER_SERVICE_TYPE == TIMER_SERVICE_MESSAGE) { /* TIMER_SERVICE_SMG */ OSD_SetMultiselSelType(msel, STRING_ID); OSD_SetMultiselCount(msel, 3); OSD_SetMultiselSelTable(msel, (void*)WakeupMessageStr_id); if (settimer->wakeup_message >= 3) settimer->wakeup_message = 0; OSD_SetMultiselSel(msel, settimer->wakeup_message); } else { //modified by Robin if (get_prog_by_id(settimer->wakeup_channel, &p_node) == DB_SUCCES) ch_idx = get_prog_pos(settimer->wakeup_channel); else ch_idx = sys_data_get_cur_group_cur_mode_channel(); ch_cnt = get_prog_num(VIEW_ALL | settimer->wakeup_chan_mode, 0); OSD_SetMultiselSelType(msel, STRING_PROC); OSD_SetMultiselCount(msel, ch_cnt); OSD_SetMultiselSel(msel, ch_idx); } OSD_SetTextFieldContent(txt, STRING_ID, (UINT32)TimerServiceTxtStr_id[TIMER_SERVICE_TYPE]); if (update) OSD_DrawObject((POBJECT_HEAD) &timer_con_serviceinfo, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); set_container_active(&timer_con_duration, action); if (update) OSD_DrawObject((POBJECT_HEAD) &timer_con_duration, C_UPDATE_ALL); }
static void win_satsrch_set_nitactive(BOOL update) { UINT8 action; action = (SATSRCH_MODE_IDX == 0)? C_ATTR_INACTIVE : C_ATTR_ACTIVE; set_container_active(&satsrch_item4, action); if(update) OSD_DrawObject( (POBJECT_HEAD)&satsrch_item4, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); }
static void nc_item_sel_active(UINT8 active,UINT8 bAuto,BOOL update) { UINT8 action ; UINT8 i; OSD_SetMultiselSel(&nc_item_selt1,active); action = ( active== 0) ? C_ATTR_INACTIVE : C_ATTR_ACTIVE; set_container_active(&nc_item_con1, action); set_container_active(&nc_item_con2, action); set_container_active(&nc_item_con3, action); set_container_active(&nc_item_con6, action); #if ((defined(ORDER_GZ1006005))||(defined(ORDER_GZ1006006))) set_container_active(&nc_item_con_type, action); #endif //set_container_active(&nc_item_con9, action);//auto user sel // action =( bAuto== 0 ||active==0) ? C_ATTR_INACTIVE : C_ATTR_ACTIVE; // set_container_active(&nc_item_con4, action);//user // set_container_active(&nc_item_con5, action);//pwd nc_item_sel_autouser(active,bAuto,FALSE); if(update) { OSD_DrawObject( (POBJECT_HEAD)&nc_item_con1, C_UPDATE_ALL); OSD_DrawObject( (POBJECT_HEAD)&nc_item_con2, C_UPDATE_ALL); OSD_DrawObject( (POBJECT_HEAD)&nc_item_con3, C_UPDATE_ALL); OSD_DrawObject( (POBJECT_HEAD)&nc_item_con4, C_UPDATE_ALL); OSD_DrawObject( (POBJECT_HEAD)&nc_item_con5, C_UPDATE_ALL); OSD_DrawObject( (POBJECT_HEAD)&nc_item_con6, C_UPDATE_ALL); #if ((defined(ORDER_GZ1006005))||(defined(ORDER_GZ1006006))) OSD_DrawObject( (POBJECT_HEAD)&nc_item_con_type, C_UPDATE_ALL); #endif //OSD_DrawObject( (POBJECT_HEAD)&nc_item_con9, C_UPDATE_ALL); OSD_TrackObject( (POBJECT_HEAD)&nc_item_con7, C_UPDATE_ALL); } }
static void win_satsrch_set_nitactive(BOOL update) { UINT8 action; #ifdef ORDER_GZ1011001 action = (SATSRCH_MODE_IDX == 1)? C_ATTR_INACTIVE : C_ATTR_ACTIVE; #else action = (SATSRCH_MODE_IDX == IDX_SCAN_MODE_AUTO_SCAN)? C_ATTR_INACTIVE : C_ATTR_ACTIVE; #endif set_container_active(&satsrch_item4, action); if(update) OSD_DrawObject( (POBJECT_HEAD)&satsrch_item4, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); }
static BOOL win_pvr_vol_init() { m_volume_index = -1; m_pvr_vol_error = 0; storage_get_device_info(STORAGE_TYPE_SD); if(storage_get_volume_count() == 0) { set_container_active(&tms_item_con4, FALSE); m_pvr_vol_error = -1; return FALSE; } m_sto_device_type = sys_data_get_storage_type(); m_sto_device_sub = sys_data_get_storage_sub_dev(); m_sto_device_part = sys_data_get_storage_partition(); // check the system data setting valid. m_volume_index = storage_find_volume(m_sto_device_type,m_sto_device_sub,m_sto_device_part); if(m_volume_index < 0) { m_pvr_vol_error = -2; libc_printf("cann't find the origial PVR partition(%d:%d:%d)\n",m_sto_device_type,m_sto_device_sub,m_sto_device_part); // invalid config, load current pvr setting. storage_get_cur_pvr_sto_info(&m_sto_device_type , &m_sto_device_sub, &m_sto_device_part); // check it again. m_volume_index = storage_find_volume(m_sto_device_type,m_sto_device_sub,m_sto_device_part); if(m_volume_index < 0) { ASSERT(0); m_sto_device_type = 0; m_sto_device_sub = 0; m_sto_device_part = 0; m_pvr_vol_error = -3; libc_printf("cann't find the new PVR partition(%d:%d:%d)\n",m_sto_device_type,m_sto_device_sub,m_sto_device_part); return FALSE; } libc_printf("find the new PVR partition(%d:%d:%d)\n",m_sto_device_type,m_sto_device_sub,m_sto_device_part); } return TRUE; }
static void sp_item_sel_active(UINT8 active,UINT8 bAuto,BOOL update) { UINT8 action ; UINT8 i; OSD_SetMultiselSel(&sp_item_selt1,active); action = ( active== 0) ? C_ATTR_INACTIVE : C_ATTR_ACTIVE; set_container_active(&sp_item_con6, action); if(update) { OSD_DrawObject( (POBJECT_HEAD)&sp_item_con6, C_UPDATE_ALL); OSD_TrackObject( (POBJECT_HEAD)&sp_item_con7, C_UPDATE_ALL); } }
static void localset_hdcp_on(BOOL update, UINT32 on) { UINT8 action; UINT8 i; action = on? C_ATTR_INACTIVE : C_ATTR_ACTIVE; if( action == C_ATTR_INACTIVE ) { UINT8 bID = g_win_localsetting.FocusObjectID; if((bID != IDC_LOCALSET_APPLY) && (bID != IDC_LOCALSET_DHCP)) { g_win_localsetting.FocusObjectID = IDC_LOCALSET_DHCP; } } for(i = 0; i < ARRAY_SIZE(localset_cons); i++) { set_container_active(localset_cons[i], action); if(update) OSD_DrawObject( (POBJECT_HEAD)localset_cons[i], C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); } }
void win_timerset_timermode_change(BOOL update) { UINT8 action; MULTISEL *msel; TIMER_SET_CONTENT* settimer; P_NODE p_node; UINT8 ifpvr; settimer = &timer_set; if(TIMER_MODE == TIMER_MODE_OFF) //guop modify 20100629 { action = C_ATTR_INACTIVE; ifpvr = C_ATTR_INACTIVE; } else { action = C_ATTR_ACTIVE; if(!pvr_info.hdd_valid) ifpvr = C_ATTR_INACTIVE; else ifpvr = C_ATTR_ACTIVE; } //if(OSD_CheckAttr(&timer_con_servicetype, action)) // return; set_container_active(&timer_con_servicetype,ifpvr); set_container_active(&timer_con_serviceinfo,action); set_container_active(&timer_con_wakeupdate,action); set_container_active(&timer_con_wakeupweekday,action); set_container_active(&timer_con_wakeuptime,action); set_container_active(&timer_con_duration,ifpvr); set_container_active(&timer_con_rec_type,ifpvr); // if(ifpvr == C_ATTR_ACTIVE && ((TIMER_SERVICE_TYPE == TIMER_SERVICE_MESSAGE) ||( TIMER_SERVICE_TYPE == TIMER_SERVICE_CHANNEL))) // ifpvr = C_ATTR_INACTIVE; // set_container_active(&timer_con_duration,ifpvr); msel = &timer_msel_rec_type; get_prog_at(settimer->wakeup_channel, &p_node); /*if((TIMER_MODE == TIMER_MODE_OFF) || (TIMER_SERVICE_TYPE != TIMER_SERVICE_DVR_RECORD) || (p_node.ca_mode == 1) ) { ifpvr = C_ATTR_INACTIVE; settimer->wakeup_message = 0; } else if((TIMER_SERVICE_TYPE == TIMER_SERVICE_DVR_RECORD) && (!pvr_info.hdd_valid)) ifpvr = C_ATTR_INACTIVE; else ifpvr = C_ATTR_ACTIVE; set_container_active(&timer_con_duration,ifpvr); set_container_active(&timer_con_rec_type,ifpvr); */ if(ifpvr == C_ATTR_ACTIVE) { if(settimer->wakeup_message > 2) settimer->wakeup_message = 0; } OSD_SetMultiselSel(&timer_msel_rec_type, settimer->wakeup_message); if(update) { OSD_DrawObject((POBJECT_HEAD)&timer_con_servicetype, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD)&timer_con_serviceinfo, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD)&timer_con_wakeupdate, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD)&timer_con_wakeupweekday, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD)&timer_con_wakeuptime, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD)&timer_con_duration, C_UPDATE_ALL); OSD_DrawObject((POBJECT_HEAD)&timer_con_rec_type, C_UPDATE_ALL); } }
static PRESULT timerset_mselinfo_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT32 sel; VACTION unact; P_NODE p_node; UINT16* Uni_str; TIMER_SET_CONTENT* settimer; COM_POP_LIST_PARAM_T param; OSD_RECT rect; settimer = &timer_set; switch(event) { case EVN_PRE_CHANGE: sel = *((UINT32*)param1); break; case EVN_POST_CHANGE: sel = param1; break; case EVN_UNKNOWN_ACTION: unact = (VACTION)(param1>>16); if(unact == VACT_ENTER) // select channel { OSD_SetRect2(&rect,&pObj->frame); rect.uTop -= 80; rect.uLeft -= 40; rect.uWidth += 40; rect.uHeight = 300; param.selecttype = POP_LIST_SINGLESELECT; param.cur = TIMER_SERVICE_INFO; sel = win_com_open_sub_list(POP_LIST_TYPE_CHANLIST,&rect,¶m); if(sel < (UINT32)TIMER_SERVICE_INFO_CNT) { get_prog_at(sel,&p_node); settimer->wakeup_channel = p_node.prog_id; TIMER_SERVICE_INFO = sel; } OSD_TrackObject( (POBJECT_HEAD )&timer_con_serviceinfo, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); } break; case EVN_REQUEST_STRING: sel = param1; Uni_str= (UINT16*)param2; get_prog_at(sel,&p_node); if(p_node.ca_mode) ComAscStr2Uni("$", Uni_str); ComUniStrCopyChar((UINT8*)&Uni_str[p_node.ca_mode], p_node.service_name); if((TIMER_MODE == TIMER_MODE_OFF) || (TIMER_SERVICE_TYPE != TIMER_SERVICE_DVR_RECORD) || (p_node.ca_mode == 1)) { set_container_active(&timer_con_rec_type, C_ATTR_INACTIVE); settimer->wakeup_message = 0; } else if((TIMER_SERVICE_TYPE == TIMER_SERVICE_DVR_RECORD) && (!pvr_info.hdd_valid)) //guop add set_container_active(&timer_con_rec_type, C_ATTR_INACTIVE); else { set_container_active(&timer_con_rec_type, C_ATTR_ACTIVE); if(settimer->wakeup_message > 2) settimer->wakeup_message = 0; } OSD_SetMultiselSel(&timer_msel_rec_type, settimer->wakeup_message); OSD_DrawObject((POBJECT_HEAD)&timer_con_rec_type, C_UPDATE_ALL); break; } return ret; }
static PRESULT satsrch_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; MULTISEL* msel; UINT16 title_id,sat_idx,sat_cnt; OSD_RECT rect; POBJECT_HEAD lastitem; SYSTEM_DATA* sys_data = sys_data_get(); UINT16 i; UINT8 flag; S_NODE s_node; switch(event) { case EVN_PRE_OPEN: sat_idx = 0; if(!single_multi_srch_flag) { if(sys_data_get_cur_satidx() == (UINT16)(~0)) sat_idx = win_load_default_satidx(); else sat_idx = sys_data_get_cur_satidx(); } recreate_sat_view(VIEW_ALL, 0); #if (defined(SUPPORT_TWO_TUNER) || !defined(SELECT_SAT_ONLY)) for(i=0;i<get_sat_num(VIEW_ALL);i++) { get_sat_at((UINT16)i,VIEW_ALL,&s_node); flag = s_node.tuner1_valid | s_node.tuner2_valid; if(s_node.selected_flag != flag) { s_node.selected_flag = flag; modify_sat(s_node.sat_id, &s_node); } } #endif msel = satsrch_sels[SAT_ID - 1]; sat_cnt = get_tuner_sat_cnt(TUNER_EITHER_SELECT); OSD_SetMultiselCount(msel, sat_cnt); if(sat_idx >= sat_cnt) { sat_idx = 0; } OSD_SetMultiselSel(msel,sat_idx); if(single_multi_srch_flag) title_id = RS_INSTALLATION_MULTI_SEARCH; else title_id = RS_INSTALLATION_SINGLE_SEARCH; wincom_open_subtitle(pObj,title_id,0); /*lastitem = (POBJECT_HEAD)&satsrch_item7; if(single_multi_srch_flag) OSD_SetObjpNext(lastitem, &satsrch_multisats_back); //OSD_SetObjpNext(lastitem, NULL); else OSD_SetObjpNext(lastitem, NULL);*/ win_satsrch_set_nitactive(FALSE); set_container_active(&satsrch_item6, C_ATTR_INACTIVE); get_sat_at(sat_idx,SET_SELECTED,&s_node); if(sys_data->antenna_connect_type == ANTENNA_CONNECT_DUAL_DIFF) { #ifdef SUPPORT_SELECT_SAME_SAT OSD_SetTextFieldContent(&satsrch_txt6_note , STRING_ID, ((s_node.reserve_1 == 0)? RS_LNB1 : RS_LNB2)); #else OSD_SetTextFieldContent(&satsrch_txt6_note , STRING_ID, (s_node.tuner1_valid ? RS_LNB1 : RS_LNB2)); #endif } else { OSD_SetTextFieldContent(&satsrch_txt6_note , STRING_ID, RS_LNB1); } OSD_DrawObject((POBJECT_HEAD)&satsrch_txt6_note, C_UPDATE_ALL); #ifndef SUPPORT_TWO_TUNER remove_menu_item(&g_win_sat_srchset,(POBJECT_HEAD)&satsrch_item6,(CON_H + CON_GAP)); //guop add #endif break; case EVN_POST_OPEN: if(single_multi_srch_flag == 1) { OSD_DrawObject((POBJECT_HEAD)&satsrch_split,C_UPDATE_ALL); } win_satsrch_set_drawselectsats(); 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; }
static PRESULT satsrch_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; MULTISEL* msel; UINT16 title_id,sat_idx,sat_cnt; OSD_RECT rect; POBJECT_HEAD lastitem; SYSTEM_DATA* sys_data = sys_data_get(); UINT16 i; UINT8 flag; S_NODE s_node; switch(event) { case EVN_PRE_OPEN: #ifdef EXIT_KEY_EXIT_ALL_MENU exit_key_flag = FALSE; #endif sat_idx = 0; if(!single_multi_srch_flag) { if(sys_data_get_cur_satidx() == (UINT16)(~0)) sat_idx = win_load_default_satidx(); else sat_idx = sys_data_get_cur_satidx(); } recreate_sat_view(VIEW_ALL, 0); #if (defined(SUPPORT_TWO_TUNER) || !defined(SELECT_SAT_ONLY)) for(i=0; i<get_sat_num(VIEW_ALL); i++) { get_sat_at((UINT16)i,VIEW_ALL,&s_node); flag = s_node.tuner1_valid | s_node.tuner2_valid; if(s_node.selected_flag != flag) { s_node.selected_flag = flag; modify_sat(s_node.sat_id, &s_node); } } #endif msel = satsrch_sels[SAT_ID - 1]; sat_cnt = get_tuner_sat_cnt(TUNER_EITHER_SELECT); OSD_SetMultiselCount(msel, sat_cnt); /*if(sat_idx >= sat_cnt)//albert.li del 2011.7.6 { sat_idx = 0; } OSD_SetMultiselSel(msel,sat_idx);*/ sat_idx=get_sat_idx_in_selected_sats(sat_cnt);//albert.li add 2011.7.6 OSD_SetMultiselSel(msel,sat_idx); if(single_multi_srch_flag) title_id = RS_INSTALLATION_MULTI_SEARCH; else title_id = RS_INSTALLATION_SINGLE_SEARCH; //wincom_open_subtitle(pObj,title_id,0); wincom_open_subtitle_ex(pObj,title_id,0,-15,0,-10);//albert.li add 2011.6.21 /*lastitem = (POBJECT_HEAD)&satsrch_item7; if(single_multi_srch_flag) OSD_SetObjpNext(lastitem, &satsrch_multisats_back); //OSD_SetObjpNext(lastitem, NULL); else OSD_SetObjpNext(lastitem, NULL);*/ win_satsrch_set_nitactive(FALSE); set_container_active(&satsrch_item6, C_ATTR_INACTIVE); get_sat_at(sat_idx,SET_SELECTED,&s_node); if(sys_data->antenna_connect_type == ANTENNA_CONNECT_DUAL_DIFF) { #ifdef SUPPORT_SELECT_SAME_SAT OSD_SetTextFieldContent(&satsrch_txt6_note , STRING_ID, ((s_node.reserve_1 == 0)? RS_LNB1 : RS_LNB2)); #else OSD_SetTextFieldContent(&satsrch_txt6_note , STRING_ID, (s_node.tuner1_valid ? RS_LNB1 : RS_LNB2)); #endif } else { OSD_SetTextFieldContent(&satsrch_txt6_note , STRING_ID, RS_LNB1); } OSD_DrawObject((POBJECT_HEAD)&satsrch_txt6_note, C_UPDATE_ALL); #ifndef SUPPORT_TWO_TUNER remove_menu_item(&g_win_sat_srchset,(POBJECT_HEAD)&satsrch_item6,(CON_H + CON_GAP)); //guop add #endif break; case EVN_POST_OPEN: //wincom_open_help(pObj,search_set_helpinfo, HELP_CNT); wincom_open_commen_help(pObj); if(single_multi_srch_flag == 1) { OSD_DrawObject((POBJECT_HEAD)&satsrch_split,C_UPDATE_ALL); } sat_cnt = get_tuner_sat_cnt(TUNER_EITHER_SELECT); if(sat_cnt <=(SELSAT_ROW_CNT*2)) win_satsrch_set_fix_drawselectsats(); else { start_scroll_sat_id=0; //api_stop_timer(&sat_display_scroll); sat_display_scroll = api_start_timer("SATDISP",500,(OSAL_T_TIMER_FUNC_PTR)sat_search_scroll_disp_handler); } break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: api_stop_timer(&sat_display_scroll); wincom_close_subtitle(); OSD_ClearObject((POBJECT_HEAD)&g_win_sat_srchset,C_UPDATE_ALL);//albert.li add //OSD_TrackObject( (POBJECT_HEAD) &g_win_submenu/*g_win_mainmenu*/, C_UPDATE_ALL); #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: if(param1 == CTRL_MSG_SUBTYPE_CMD_SAT_SCROLL_DISP) { start_scroll_sat_id=win_satsrch_set_scroll_drawselectsats(start_scroll_sat_id); if(sat_display_scroll!=OSAL_INVALID_ID) { api_stop_timer(&sat_display_scroll); sat_display_scroll = api_start_timer("SATDISP",500,(OSAL_T_TIMER_FUNC_PTR)sat_search_scroll_disp_handler); } } break; } return ret; }