static PRESULT win_smc_up_info_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT psult = PROC_PASS; OSD_RECT rc_con; OSD_RECT rc_preview; static UINT8 preview_flag=0; struct help_item_resource win_smc_upgrade_help[] = { {0,RS_MENU,RS_HELP_BACK}, {0,RS_HELP_EXIT,RS_HELP_EXIT}, }; switch (event) { case EVN_PRE_OPEN: wincom_open_title_ext(RS_SMC_UPGRADE_INFO, IM_TITLE_ICON_SYSTEM); wincom_open_help(win_smc_upgrade_help, 2); win_stb_clear_trash(); break; case EVN_POST_OPEN: win_smc_upgrade_info_load_data(); break; case EVN_PRE_CLOSE: *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: win_stb_clear_trash(); break; default: break; } return psult; }
static PRESULT win_stb_info_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT psult = PROC_PASS; switch (event) { case EVN_PRE_OPEN: wincom_open_title_ext(RS_STB_INFO, IM_TITLE_ICON_SYSTEM); wincom_open_help(win_SI_help, 2); win_clear_trash(display_strs[40],ITERM_COUNT); break; case EVN_POST_OPEN: win_stb_info_load_data(); break; case EVN_PRE_CLOSE: *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: //win_clear_trash(display_strs[40],7); break; case EVN_MSG_GOT: psult = stb_info_message_proc( param1, param2 ); break; default: break; } return psult; }
static PRESULT operator_detail_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT32 cnt = 0, retval; struct help_item_resource win_oid_help[] = { {1,IM_HELP_ICON_TB,RS_HELP_SELECT}, {0,RS_HELP_ENTER,RS_HELP_ENTER_INTO}, {0,RS_MENU,RS_HELP_BACK}, {0,RS_HELP_EXIT,RS_FULL_PLAY}, }; switch(event) { case EVN_PRE_OPEN: wincom_open_title_ext(RS_OPERATOR_INFORMATION, IM_TITLE_ICON_SYSTEM); wincom_open_help(win_oid_help, 4); break; case EVN_POST_OPEN: //wincom_open_preview_default(); break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ *((UINT32*)param2)&= ~C_CLOSE_CLRBACK_FLG; break; case EVN_MSG_GOT: wincom_preview_proc(); break; case EVN_POST_CLOSE: break; } return ret; }
static PRESULT win_detitle_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; OBJLIST* ol = &detitle_olist; UINT16 tmp, num=0; struct help_item_resource detitle_help[] = { {1,IM_EPG_COLORBUTTON_RED,RS_HELP_DELETE}, {1,IM_EPG_COLORBUTTON_GREEN,RS_DELETE_ALL}, {1,IM_HELP_ICON_TB,RS_HELP_SELECT}, }; switch(event) { case EVN_PRE_OPEN: init_detitle_flag(); tmp = detitle_get_info(&num); if (0 == tmp) { ret = PROC_LEAVE; break; } OSD_SetObjListCount(ol, num); if (num <= OSD_GetObjListCurPoint(&detitle_olist)) { OSD_SetObjListCurPoint (&detitle_olist, 0); OSD_SetObjListNewPoint (&detitle_olist, 0); OSD_SetObjListTop (&detitle_olist, 0); //OSD_SetObjListNewPoint(&detitle_olist, 0); } wincom_open_title_ext(RS_DETITLE, IM_TITLE_ICON_SYSTEM); wincom_open_help(detitle_help, 3); win_init_pstring(18); break; case EVN_POST_OPEN: break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ save_detitle(); *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: //TFCAS_WriteFlash();//write to flash at once, ignore the delay break; } return ret; }
static PRESULT sys_items_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; OSD_RECT rc_con; OSD_RECT rc_preview; switch (event) { case EVN_PRE_OPEN: wincom_open_title_ext(RS_SYS_CHOICE, IM_TITLE_ICON_SYSTEM); wincom_open_help(win_items_help, 4); //set_update_flag(TRUE); if((usb_mount== FALSE)&&(con_sitem_sub_menu.FocusObjectID == WIN_OTA_ID)) { con_sitem_sub_menu.FocusObjectID = WIN_FACT_ID; } break; case EVN_POST_OPEN: rc_con.uLeft = PREVIEW_L; rc_con.uTop = PREVIEW_T; rc_con.uWidth = PREVIEW_W; rc_con.uHeight = PREVIEW_H; rc_preview.uLeft = PREVIEW_INNER_L; rc_preview.uTop = PREVIEW_INNER_T; rc_preview.uWidth = PREVIEW_INNER_W; rc_preview.uHeight = PREVIEW_INNER_H; // wincom_open_preview_ext(rc_con, rc_preview, WSTL_SUBMENU_PREVIEW); break; case EVN_PRE_CLOSE: *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: //wincom_close_preview(); break; case EVN_MSG_GOT: ret = sys_item_message_proc(param1, param2); break; case EVN_UNKNOWN_ACTION: break; } return ret; }
void win_IPPVinfo_open_title(POBJECT_HEAD pObj, UINT16 num) { UINT8 *p, info[20]; UINT16 temp[20],title[50]; if (NULL == title) return; MEMSET(temp, 0, sizeof(temp)); MEMSET(title, 0, sizeof(title)); p = OSD_GetUnicodeString(RS_IPPV_PROGRAM); ComUniStrCopyChar((UINT8 *)title, p); sprintf(info, " (NUM: %d)",num); ComAscStr2Uni(info, temp); ComUniStrCat(title,temp); wincom_open_title_ext(pObj, NULL, title,0); }
static PRESULT win_main_freq_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; SYSTEM_DATA *pSysData = NULL; pSysData = sys_data_get(); switch (event) { case EVN_PRE_OPEN: #if(defined(MIS_AD) || defined(MIS_AD_NEW)) #else main_freq_con_item1.head.bUpID = 3; main_freq_con_item3.head.bDownID = 1; main_freq_con_item4.head.bAttr = C_ATTR_HIDDEN; #endif win_mainFeq_load_data(); wincom_open_title_ext(RS_CENTER_FREQ_MANAGEMENT, IM_TITLE_ICON_SYSTEM); wincom_open_help(win_main_freq_help, 4); dvbc_quickscan_set_def_val(); dm_set_onoff(0); break; case EVN_POST_OPEN: //win_qs_update_param(1); //win_signal_open(pObj); break; case EVN_PRE_CLOSE: *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: dm_set_onoff(1); //win_signal_close(); win_qs_update_param(1); win_mainFeq_save_data(); sys_data_save(1); break; case EVN_MSG_GOT: ret = main_req_message_proc(param1, param2); break; } return ret; }
static PRESULT IPPVinfo_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; UINT32 cnt = 0; INT32 iret; switch(event) { case EVN_PRE_OPEN: total_IPPV_number = 0; iret = IPPVinfo_got_info(); if(0 == iret) { ret = PROC_LEAVE; break; } OSD_SetObjListCount(&IPPVinfo_olist,total_IPPV_number); //for different card display if (total_IPPV_number <= OSD_GetObjListCurPoint(&IPPVinfo_olist)) { //OSD_SetObjListNewPoint(&IPPVinfo_olist, 0); OSD_SetObjListCurPoint (&IPPVinfo_olist, 0); OSD_SetObjListNewPoint (&IPPVinfo_olist, 0); OSD_SetObjListTop (&IPPVinfo_olist, 0); } wincom_open_title_ext(RS_IPPV_PROGRAM, IM_TITLE_ICON_SYSTEM); wincom_open_help(win_opinfo_help, 2); win_init_pstring(9); break; case EVN_POST_OPEN: // win_ippv_draw_title(); break; case EVN_PRE_CLOSE: /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: break; } return ret; }
static PRESULT pvod_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: // SendMsgtoThread(Pvod_START_PAT,0,0);//自己启动PVOD win_pvod_pause(); win_pvod_load_prog_info(); OSD_SetProgressBarPos(&pvod_bar_progress,(INT16)0); OSD_SetTextFieldContent(&pvod_txt_progress, STRING_NUM_PERCENT, (UINT32)0); break; case EVN_POST_OPEN: win_pvod_msg_clear(); //win_pvod_display_msg( OSD_GetMultiselSel(&pvod_sel_prog_name)); wincom_open_title_ext((POBJECT_HEAD)&g_win_pvod,"Push VOD", 0); break; case EVN_PRE_CLOSE: win_pvod_clear(); /* Make OSD not flickering */ *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG; break; case EVN_POST_CLOSE: break; case EVN_MSG_GOT: if(param1 == CTRL_MSG_SUBTYPE_STATUS_PVOD) { UINT16 percent = (UINT16)(param2 ); pvod_disp_type_t disp_type = (pvod_disp_type_t)(param2>>16); if(PVOD_DISP_DDB_DOWNLOAD_PROGRASS == disp_type) { win_pvod_process_update(percent); if(percent == 100) { POBJECT_HEAD submenu=NULL; mp_title_type = TITLE_VIDEO; submenu = (POBJECT_HEAD)&g_win_usb_filelist; g_enter_from_pvod = TRUE; if(OSD_ObjOpen(submenu, MENU_OPEN_TYPE_MENU | 1) != PROC_LEAVE) { menu_stack_push(submenu); } } } } break; }