static PRESULT camail_list_item_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; POBJECT_HEAD pmenu; OBJLIST* ol; TEXT_FIELD* txt; UINT16 curitem; switch(event) { case EVN_UNKNOWN_ACTION: unact = (VACTION)(param1>>16); if(unact == VACT_ENTER) { pmenu = OSD_GetContainerNextObj((CONTAINER*)pObj); txt = (TEXT_FIELD*)OSD_GetObjpNext(pmenu); if(ComUniStrLen(txt->pString)>0) { ol = &mail_olist; curitem = OSD_GetObjListNewPoint(ol); pmenu = (POBJECT_HEAD)&g_win_camsg_detail; if(OSD_ObjOpen(pmenu, MENU_OPEN_TYPE_MENU + curitem) != PROC_LEAVE) menu_stack_push(pmenu); } ret = PROC_LOOP; } break; } return ret; }
static void playlist_display_items(UINT16 uTop) { UINT8 i; char str_buff[MAX_FILE_NAME_SIZE + 1]; RET_CODE ret; TEXT_FIELD *pTxt; BITMAP *pBmp; FileInfo playlist_node; BOOL move_flag; UINT16 file_idx, curitem, index; POBJLIST pOl; pOl = &ol_playlist; curitem = OSD_GetObjListNewPoint(pOl); for(i = 0; i < PL_ITEM_CNT;i++) { index = uTop + i; move_flag = FALSE; if((moving_flag==1) && (move_file_idx != INVALID_IDX) && (index == curitem)) { move_flag = TRUE; } file_idx = list_index_2_playlist_index(pOl, index); ret = get_file_from_play_list(cur_display_playlist,(file_idx +1),&playlist_node); if(ret == RET_SUCCESS) { pTxt = playlist_idxs[i]; sprintf(str_buff,"%d",(uTop + i + 1)); OSD_SetTextFieldContent(pTxt,STRING_ANSI,(UINT32)str_buff); pBmp = playlist_icons[i]; OSD_SetBitmapContent(pBmp, file_icon_ids[playlist_node.filetype]); pTxt = playlist_files[i]; //filter_unkownfont_name(playlist_node.name,str_buff); win_shorten_filename(playlist_node.name,str_buff); OSD_SetTextFieldContent(pTxt,STRING_UTF8,(UINT32)str_buff); pBmp = playlist_moveicons[i]; if(move_flag == TRUE) //OSD_SetBitmapContent(pBmp, IM_TV_DEL); OSD_SetAttr(pBmp, C_ATTR_ACTIVE); else OSD_SetAttr(pBmp, C_ATTR_HIDDEN); } else { pTxt = playlist_idxs[i]; OSD_SetTextFieldContent(pTxt,STRING_ANSI,(UINT32)""); pBmp = playlist_icons[i]; OSD_SetBitmapContent(pBmp, 0); pTxt = playlist_files[i]; OSD_SetTextFieldContent(pTxt,STRING_ANSI,(UINT32)""); pBmp = playlist_moveicons[i]; OSD_SetAttr(pBmp, C_ATTR_HIDDEN); } } }
static void win_purse_set_display(void) { UINT32 i,j,n; OBJLIST* ol; UINT16 top,cnt,page,index,curitem; UINT32 valid_idx,ew_flag; CONTAINER* item; TEXT_FIELD* txt; UINT8 purse_str[30]; UINT16 icon_id; BITMAP* bmp; SYSTEM_DATA* sys_data; UINT8 hl_idx; sys_data = sys_data_get(); ol = &purse_olist; cnt = purse_cnt; // cnt = OSD_GetObjListCount(ol); OSD_SetObjListCount(ol, cnt); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { item = (CONTAINER*)purselist_items[i]; index = top + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; /* Name*/ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); if(valid_idx) OSD_SetTextFieldContent(txt, STRING_ANSI,ap_purse[top+i].name); else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); /* Balance*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(purse_str, "%d", ap_purse[top+i].balance); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)purse_str); } else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); } }
static void catch_up_list_display(void) { CONTAINER* con; TEXT_FIELD* text; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; struct catch_up_list_node_s *catch_up_list_node; char name[50] = {0}; char time[50] = {0}; ol = &ol_catch_up; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { con = (CONTAINER *)catch_up_items[i]; index = top + i; if(index < cnt) valid_idx = 1; else valid_idx = 0; /* IDX */ text = (TEXT_FIELD*)OSD_GetContainerNextObj(con); if(valid_idx) OSD_SetTextFieldContent(text, STRING_NUMBER, index+ 1); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); /* Name**/ text = (TEXT_FIELD*)OSD_GetObjpNext(text); if(valid_idx) { catch_up_list_node = catch_up_query(index); OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)(catch_up_list_node->data)); memset(name, 0x0, sizeof(name)); memset(time, 0x0, sizeof(time)); catch_up_get_prog_name_time(catch_up_list_node->data, name, time); libc_printf("name = %s, time = %s\n", name, time); } else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); } }
static void news_list_display(void) { CONTAINER* con; TEXT_FIELD* text; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; struct news_node_s *news_node; ol = &ol_news_list; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { con = (CONTAINER *)news_list_items[i]; index = top + i; if(index < cnt) valid_idx = 1; else valid_idx = 0; /* IDX */ text = (TEXT_FIELD*)OSD_GetContainerNextObj(con); if(valid_idx) OSD_SetTextFieldContent(text, STRING_NUMBER, index+ 1); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); /* Name**/ text = (TEXT_FIELD*)OSD_GetObjpNext(text); if(valid_idx) { news_node = news_query(1, index); OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)(news_node->data)); } else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); } }
static void weathercitylst_set_display(void) { CONTAINER* con; TEXT_FIELD* text; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; SYSTEM_DATA* sys_data = sys_data_get(); ol = &weather_city_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { con = (CONTAINER *)weathercitylst_items[i]; index = top + i; if(index < cnt) valid_idx = 1; else valid_idx = 0; /* IDX */ text = (TEXT_FIELD*)OSD_GetContainerNextObj(con); if(valid_idx) OSD_SetTextFieldContent(text, STRING_NUMBER, index+ 1); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); /* Name**/ text = (TEXT_FIELD*)OSD_GetObjpNext(text); if(valid_idx) { //libc_printf("\n^^^^^^^^555555==%s==%d\n",sys_data->weather_city_name[index],index); OSD_SetTextFieldContent(text, STRING_UNICODE, (UINT32)sys_data->weather_city_name[index]); } else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); } }
INT32 favgrp_check_input_name(UINT16* uni_name) { char ansi_name[30]; UINT16 unicode_tmp[FAV_GRP_NAME_LEN]; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; UINT8 back_saved; if (ComUniStrLen(uni_name) == 0) { win_compopup_init(WIN_POPUP_TYPE_OK); win_compopup_set_msg(NULL,NULL, RS_MSG_NAME_EMPTY); win_compopup_open_ext(&back_saved); return -2; } SYSTEM_DATA* sys_data = sys_data_get(); ol = &favgrplist_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); memset((void *)unicode_tmp,0x0,sizeof(unicode_tmp)); memcpy((void *)unicode_tmp,(void *)uni_name,(sizeof(unicode_tmp[0]) * (FAV_GRP_NAME_LEN - 1)) ); ComUniStrToAsc((UINT8*)unicode_tmp,ansi_name); for(i=0;i<MAX_FAVGROUP_NUM;i++) { if(i==curitem) continue; if(STRCMP(ansi_name,sys_data->favgrp_names[i]) == 0) { win_compopup_init(WIN_POPUP_TYPE_OK); win_compopup_set_msg(NULL,NULL, RS_DISPLAY_NAME_EXIST); win_compopup_open_ext(&back_saved); return -1; } } return 0; }
static void win_favgrplst_set_display(void) { CONTAINER* con; TEXT_FIELD* text; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; SYSTEM_DATA* sys_data = sys_data_get(); ol = &favgrplist_olist; char ee[30]; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { con = (CONTAINER*)favgrplist_items[i]; index = top + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; /* IDX */ text = (TEXT_FIELD*)OSD_GetContainerNextObj(con); if(valid_idx) OSD_SetTextFieldContent(text, STRING_NUMBER, index+ 1); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); /* Name**/ text = (TEXT_FIELD*)OSD_GetObjpNext(text); ComUniStrToAsc(sys_data->favgrp_names[index],ee); libc_printf("\n88888888===%s\n",ee); if(valid_idx) OSD_SetTextFieldContent(text, STRING_UNICODE, (UINT32)sys_data->favgrp_names[index]); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); } }
static UINT16 list_index_2_playlist_index(OBJLIST* ol,UINT16 list_idx) { char flag = 0; UINT16 start_idx,end_idx,cur_idx,plist_idx,new_point; /* When moving, the file displayer order is not same as normal */ if(moving_flag == 1 && move_file_idx!=INVALID_IDX) { new_point = OSD_GetObjListNewPoint(ol);//ol->wNewPoint; start_idx = (new_point>move_file_idx) ? move_file_idx : new_point; end_idx = (new_point>move_file_idx) ? new_point : move_file_idx; if( list_idx<start_idx || list_idx> end_idx) flag = 0; else { if(new_point==move_file_idx) flag = 0; else if(new_point<move_file_idx) { if( list_idx>new_point && list_idx<=move_file_idx) flag = -1; //else ;//list_idx==new_point) } else { if( list_idx>=move_file_idx && list_idx<new_point) flag = 1; //else ; //list_idx==new_point) } } if(list_idx==new_point) /* foucs item show the channel in moving */ plist_idx = move_file_idx; else plist_idx = list_idx + flag; } else /* not in moving state*/ plist_idx = list_idx; return plist_idx; }
static PRESULT favgrplst_list_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; UINT16 uni_name[30]; UINT8* new_name; OBJLIST* ol; UINT16 curitem; SYSTEM_DATA* sys_data = sys_data_get(); ol = &favgrplist_olist; curitem = OSD_GetObjListNewPoint(ol); switch(event) { case EVN_PRE_DRAW: win_favgrplst_set_display(); break; case EVN_UNKNOWN_ACTION: unact = (VACTION)(param1>>16); if(unact== VACT_FAV_EDIT) { //ComAscStr2Uni(sys_data->favgrp_names[curitem], uni_name); MEMCPY(uni_name,(UINT16*)sys_data->favgrp_names[curitem],(FAV_GRP_NAME_LEN + 1)); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name,favgrp_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,favgrp_check_input_name)) #endif { //ComUniStrToAsc(new_name,sys_data->favgrp_names[curitem]); ComUniStrCopyChar(sys_data->favgrp_names[curitem],new_name); } OSD_TrackObject((POBJECT_HEAD)&g_win_favgrplst, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); // wincom_open_title(pObj,RS_FAVORITE,0); wincom_open_subtitle(pObj,RS_FAVORITE,0); } break; } return ret; }
static void map_city_list_display(void) { CONTAINER* con; TEXT_FIELD* text; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; SYSTEM_DATA *p_sys_data = sys_data_get(); ol = &ol_map_city; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { con = (CONTAINER *)map_city_items[i]; index = top + i; if(index < cnt) valid_idx = 1; else valid_idx = 0; /* IDX */ text = (TEXT_FIELD*)OSD_GetContainerNextObj(con); if(valid_idx) OSD_SetTextFieldContent(text, STRING_NUMBER, index+ 1); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); /* Name**/ text = (TEXT_FIELD*)OSD_GetObjpNext(text); if(valid_idx) OSD_SetTextFieldContent(text, STRING_UNICODE, (UINT32)p_sys_data->map_city_name[index]); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); } }
static void SNstate_addr_list_display(BOOL updata) { CONTAINER* con; TEXT_FIELD* text; OBJLIST* ol; UINT16 i,top,cnt,page,index,curitem,valid_idx; SYSTEM_DATA *p_sys_data = sys_data_get(); char sstat[21]={0},nstat[64]={0},ret=0; ol = &ol_SNstate_addr; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { con = (CONTAINER *)SNstate_addr_items[i]; index = top + i; if(index < cnt) valid_idx = 1; else valid_idx = 0; /* IDX */ text = (TEXT_FIELD*)OSD_GetContainerNextObj(con); if(valid_idx) { if(i==0) OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)"S:"); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)"N:"); } else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); /* Name**/ text = (TEXT_FIELD*)OSD_GetObjpNext(text); if(valid_idx) { if(i==0) { ret=getSState(sstat); if(ret==1) OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)sstat); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)"Error"); } else { ret=getNState(nstat); if(ret==1) OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)nstat); else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)"Error"); } } else OSD_SetTextFieldContent(text, STRING_ANSI, (UINT32)""); } if(updata) OSD_TrackObject( (POBJECT_HEAD)ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); }
static void win_nagra2_set_display(void) { UINT32 i,j,n; CAS_KEYINFO *Pm = NULL; OBJLIST* ol; UINT16 top,cnt,page,index,curitem; UINT32 valid_idx; CONTAINER* item1,*item2; TEXT_FIELD* txt; char str[100], str1[16],str2[8],str3[100]; UINT16 icon_id; UINT8 hl_idx; char ch1,ch2; ol = &nagra2_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page/2;i++) { if(top%2) { item1 = (CONTAINER*)nagra2_items[i*2+1]; } else { item1 = (CONTAINER*)nagra2_items[i*2]; } index = top/2 + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; if(valid_idx) { if(top%2) { Pm = (CAS_KEYINFO *) softcam_get_keydata((u8) CAS_ID_NAGRA2,(top/2+i+1)); } else { Pm = (CAS_KEYINFO *) softcam_get_keydata((u8) CAS_ID_NAGRA2,(top/2+i)); } } if(Pm==NULL) { valid_idx=0; } /* viaccess2 IDX */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item1); if(valid_idx) { if(top%2) { OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1+1)); } else { OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1)); } } else { OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); } /* patch chan Name*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)Pm ->ChanName); else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); //soc_printf("%d chan name is %d \n",index + 1,Pm->KeyData); /* patch ident*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(str,"%08x",Pm ->Ident); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* patch num*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { ch1 = (Pm ->KeyNum)>>8;//is ch1 '0'~'9' 'a'~z A~Z ch2 = (Pm ->KeyNum)&0xFF; sprintf(str,"%c%c",(ch1>0)?ch1:' ',(ch2>0)?ch2:' '); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); #if 1 /* patch keydata*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { memset(str,0,sizeof(str)); sprintf(str,"%02x ",Pm->KeyData[0]); if((Pm->Lenth < 65)) { for(j=1;j<8;j++) { sprintf(str1,"%02x ",Pm->KeyData[j]); strcat(str,str1); } } } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); #endif }
static void win_wifilist_update_wifi_ap_list_display(BOOL refresh_ap_list) { UINT16 top,cnt,page,index,curitem; UINT32 i,n; UINT32 valid_idx; OBJLIST* ol; CONTAINER* item; TEXT_FIELD* txt; ol = &wifilist_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); DEBUG_PRINTF("win_wifilist_update_wifi_ap_list_display()\n"); DEBUG_PRINTF("-cnt=%d\n", cnt); DEBUG_PRINTF("-page=%d\n", page); DEBUG_PRINTF("-top=%d\n", top); DEBUG_PRINTF("-curitem=%d\n", curitem); DEBUG_PRINTF("-select=%d\n", OSD_GetObjListSingleSelect(ol)); // update ap_list selected item info (cursor, highlight positions) ap_list_item_sel = curitem; ap_list_top = top; ap_list_pos = ap_list_item_sel-ap_list_top; for(i=0;i<page;i++) { item = (CONTAINER*)wifilist_items[i]; index = top + i; if(index< cnt) { valid_idx = 1; } else { valid_idx = 0; } /* AP IDX */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); #if 1 if(valid_idx) { OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1)); } else { OSD_SetTextFieldContent(txt,STRING_ANSI,(UINT32)""); } #else OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1)); #endif /* AP Name*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { if(strlen(AP_List[index].ssid)) { OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)AP_List[index].ssid); } else { #ifdef ENABLE_HIDDEN_SSID_WIFI_AP_SCAN_LIST OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)"*Hidden AP*"); #else OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)""); #endif } } else { OSD_SetTextFieldContent(txt,STRING_ANSI,(UINT32)""); } /* AP EncrytMode*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)wifi_encrypt_str[AP_List[index].encryptMode]); } else { OSD_SetTextFieldContent(txt,STRING_ANSI,(UINT32)""); } /* Status*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); #if 1 if(valid_idx) { OSD_SetTextFieldContent(txt, STRING_NUM_PERCENT, api_wifi_convert_signal_quality_to_percentage(AP_List[index].quality)); } else { OSD_SetTextFieldContent(txt,STRING_ANSI,(UINT32)""); } #endif } if(refresh_ap_list) { OSD_TrackObject((POBJECT_HEAD)&wifilist_olist, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); } }
static VACTION nagra2_rsa_list_keymap(POBJECT_HEAD pObj, UINT32 key) { VACTION act; UINT16 top,curitem; OBJLIST* ol; ol = &nagra2_rsa_olist; top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); switch(key) { case V_KEY_UP: if(curitem != top) { act = VACT_CURSOR_UP; } else { act = VACT_CURSOR_PGUP; } break; case V_KEY_DOWN: if((curitem+1)%8 != 0) { act = VACT_CURSOR_DOWN; } else { if((curitem+1) != top) { act = VACT_CURSOR_PGDN; OSD_ObjListChgFocus(ol,top,C_UPDATE_FOCUS); } else { act = VACT_CURSOR_DOWN; } } break; case V_KEY_P_UP: act = VACT_CURSOR_PGUP; break; case V_KEY_P_DOWN: act = VACT_CURSOR_PGDN; break; #if 1 case V_KEY_RED: act = VACT_NAGRA2_RSA; break; case V_KEY_GREEN: act = VACT_CONAX; break; case V_KEY_YELLOW: act = VACT_MORE; break; #else case V_KEY_RED: act = VACT_NAGRA_RSA; break; case V_KEY_GREEN: act = VACT_NAGRA2_RSA; break; case V_KEY_YELLOW: act = VACT_CONAX; break; case V_KEY_BLUE: act = VACT_MORE; break; #endif case V_KEY_ENTER: act = VACT_patch_EDIT_WIN; break; default: act = VACT_PASS; } return act; }
static void win_camail_set_display(void) { UINT32 i,j,n; OBJLIST* ol; UINT16 top,cnt,page,index,curitem; UINT32 valid_idx,ew_flag; CONTAINER* item; TEXT_FIELD* txt; //char str[30]; UINT8 name[10], msg[300]; UINT16 icon_id; BITMAP* bmp; SYSTEM_DATA* sys_data; UINT8 hl_idx; sys_data = sys_data_get(); ol = &mail_olist; cnt = 16;//OSD_GetObjListCount(ol); OSD_SetObjListCount(ol, cnt); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { item = (CONTAINER*)maillist_items[i]; index = top + i; if(index< cnt) { /* name */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); sprintf(name,"%d", index+1); OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)name); /* msg */ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); MEMSET(msg,0,300); //if(conax_get_msg_info(msg, index)==SUCCESS) conax_get_msg_info(msg, index); msg[32+50] = 0; //else // msg[32] = 0; OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)&msg[32]); } else { /* name */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); /* msg */ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); } } }
static void win_satlist_set_display(void) { UINT32 i,j,n,lnb_cnt; S_NODE s_node; OBJLIST* ol; UINT16 top,cnt,page,index,curitem; UINT32 valid_idx,sat_longitude,ew_flag; CONTAINER* item; TEXT_FIELD* txt; char str[30]; UINT16 icon_id; BITMAP* bmp; SYSTEM_DATA* sys_data; UINT8 hl_idx; sys_data = sys_data_get(); #ifdef SUPPORT_TWO_TUNER if(sys_data->antenna_connect_type == ANTENNA_CONNECT_DUAL_DIFF) lnb_cnt = 2; else lnb_cnt = 1; #endif ol = &satlist_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { item = (CONTAINER*)satlist_items[i]; index = top + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; if(valid_idx) get_sat_at(index,VIEW_ALL,&s_node); /* Sat IDX */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); if(valid_idx) OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1)); else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); /* Sat Name*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) #ifdef DB_USE_UNICODE_STRING OSD_SetTextFieldContent(txt, STRING_UNICODE,(UINT32)s_node.sat_name); #else OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32),s_node.sat_name); #endif else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); /* Sat Orbit*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sat_longitude = s_node.sat_orbit; if(sat_longitude>1800) { sat_longitude = 3600 - sat_longitude; ew_flag = 0; } else ew_flag = 1; sprintf(str,"%s %d.%d",ew_flag? "E" : "W", sat_longitude/10, sat_longitude%10); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); } else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); #ifdef SUPPORT_TWO_TUNER for(j=0;j<lnb_cnt;j++) { icon_id = 0; if(valid_idx) { if((j==0 && s_node.tuner1_valid) || (j==1 && s_node.tuner2_valid)) { #ifndef SUPPORT_SELECT_SAME_SAT if(s_node.tuner1_valid && s_node.tuner2_valid) { s_node.tuner2_valid = 0; modify_sat(s_node.sat_id, &s_node); } #endif /* #if0 */ icon_id = IM_TV_FAVORITE; } } bmp = sat_lnb_sel_bmps[i][j]; OSD_SetBitmapContent(bmp, icon_id); hl_idx = BMP_HL_IDX; if(index == curitem) { if(OSD_GetFocusObject((POBJECT_HEAD)item) == (POBJECT_HEAD)bmp) hl_idx = BMP_HLEDIT_IDX; } bmp->head.style.bHLIdx = hl_idx; } #endif }
static PRESULT map_city_list_unact_proc(VACTION act) { PRESULT ret = PROC_PASS; OBJLIST* ol; UINT16 curitem; UINT8 back_saved; SYSTEM_DATA* p_sys_data = sys_data_get(); UINT16 uni_name[30]; UINT8* new_name; ol = &ol_map_city; curitem = OSD_GetObjListNewPoint(ol); switch (act) { case VACT_MAP_CITY_EDIT: // ComAscStr2Uni(p_sys_data->map_city_name[curitem], uni_name); MEMCPY(uni_name,(UINT16*)p_sys_data->map_city_name[curitem],(MAP_CITY_NAME_LEN + 1)); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name,map_city_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,map_city_check_input_name)) #endif { // ComUniStrToAsc(new_name,p_sys_data->map_city_name[curitem]); ComUniStrCopyChar(p_sys_data->map_city_name[curitem], new_name); } OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); break; case VACT_MAP_CITY_ADD: if (OSD_GetObjListCount(ol) == MAP_CITY_MAX_NUM) { win_compopup_init(WIN_POPUP_TYPE_OK); win_compopup_set_msg(NULL,NULL,RS_LIST_IS_FULL); win_compopup_open_ext(&back_saved); break; } memset(uni_name, 0x0, sizeof(uni_name)); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name, map_city_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,map_city_check_input_name)) #endif { // ComUniStrToAsc(new_name, p_sys_data->map_city_name[OSD_GetObjListCount(ol)]); ComUniStrCopyChar(p_sys_data->map_city_name[OSD_GetObjListCount(ol)],new_name); } map_city_list_load(); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); break; case VACT_MAP_CITY_DEL: map_city_delete(curitem); map_city_list_load(); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); break; case VACT_MAP_CITY_DOWNLOAD: city_index = curitem; map_download(p_sys_data->map_city_name[curitem], 14); bMapDownloading = TRUE; win_compopup_init(WIN_POPUP_TYPE_SMSG); win_compopup_set_msg(NULL,NULL,RS_CONNECTING_WAIT); win_compopup_open_ext(&back_saved); break; case VACT_MAP_SEARCH: memset(search_string, 0x0, sizeof(search_string)); if (win_map_search_input_menu_open(search_string)) { map_download(search_string, 14); bMapDownloading = FALSE; win_compopup_init(WIN_POPUP_TYPE_SMSG); win_compopup_set_msg(NULL,NULL,RS_CONNECTING_WAIT); win_compopup_open_ext(&back_saved); } break; default: break; } return ret; }
static PRESULT weathercitylst_list_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; UINT16 uni_name[30]; UINT8* new_name; OBJLIST* ol; UINT16 curitem; UINT8 back_saved, i; char strTmp[30]; char strTmp1[30]; SYSTEM_DATA* sys_data = sys_data_get(); ol = &weather_city_olist; curitem = OSD_GetObjListNewPoint(ol); switch(event) { case EVN_PRE_DRAW: weathercitylst_set_display(); break; case EVN_UNKNOWN_ACTION: unact = (VACTION)(param1>>16); if(unact== VACT_CITY_EDIT) { //ComAscStr2Uni(sys_data->weather_city_name[curitem], uni_name); MEMCPY(uni_name,(UINT16*)sys_data->weather_city_name[curitem],(WEATHER_CITY_NAME_LEN + 1)); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name,weathercity_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,weathercity_check_input_name)) #endif { //ComUniStrToAsc(new_name,sys_data->weather_city_name[curitem]); ComUniStrCopyChar(sys_data->weather_city_name[curitem], new_name); } OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); } else if(unact == VACT_CITY_DEL) { weathercitylst_delete(curitem); weathercitylst_load_list(); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); } else if(unact== VACT_CITY_ADD) { if (OSD_GetObjListCount(ol) == WEATHER_CITY_MAX_NUM) { win_compopup_init(WIN_POPUP_TYPE_OK); //ComUniStrToAsc((UINT8 *)OSD_GetUnicodeString(RS_THE_LIST_IS_FULL),strTmp); win_compopup_set_msg(/*(UINT8*)strTmp*/NULL,NULL,RS_THE_LIST_IS_FULL); win_compopup_open_ext(&back_saved); break; } memset(uni_name, 0x0, sizeof(uni_name)); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name,weathercity_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,weathercity_check_input_name)) #endif { //ComUniStrToAsc(new_name,sys_data->weather_city_name[OSD_GetObjListCount(ol)]); ComUniStrCopyChar(sys_data->weather_city_name[OSD_GetObjListCount(ol)],new_name); } weathercitylst_load_list(); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); } else if(unact == VACT_CITY_ENTER) { if(weath==0) { weath = weather_download(sys_data->weather_city_name[curitem]); win_compopup_init(WIN_POPUP_TYPE_SMSG); //ComUniStrToAsc((UINT8 *)OSD_GetUnicodeString(RS_CONNECTINF_WAITE),strTmp1); win_compopup_set_msg(/*(UINT8*)strTmp1*/NULL,NULL,RS_CONNECTINF_WAITE); win_compopup_open_ext(&back_saved); ret=weath; } } break; } return ret; }
static void win_tplist_set_display(void) { char str[20]; UINT16 pol_strID; UINT16 top,cnt,page,index,curitem; UINT32 i,n; UINT32 valid_idx; S_NODE s_node; T_NODE t_node; OBJLIST* ol; CONTAINER* item; TEXT_FIELD* txt; ol = &tplst_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); get_tuner_sat(TUNER_EITHER, cur_tp_sat_idx, &s_node); for(i=0;i<page;i++) { item = (CONTAINER*)tplist_items[i]; index = top + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; if(valid_idx) get_tp_at(s_node.sat_id,index,&t_node); /* TP IDX */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); if(valid_idx) sprintf(str,"%d",index + 1); else STRCPY(str,""); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* Freq*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) sprintf(str,"%5dMHz",t_node.frq); else STRCPY(str,""); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* Symb */ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) sprintf(str,"%5dKs/s",t_node.sym); else STRCPY(str,""); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* pol */ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(!valid_idx) pol_strID = 0; else if(t_node.pol == 0) pol_strID = RS_INFO_POLARITY_H; else pol_strID = RS_INFO_POLARITY_V; OSD_SetTextFieldContent(txt, STRING_ID, (UINT32)pol_strID); } }
static void win_biss_set_display(void) { UINT32 i,j,n; BISS_KEYINFO *Pm = NULL; OBJLIST* ol; UINT16 top,cnt,page,index,curitem; UINT32 valid_idx; CONTAINER* item,*item2; TEXT_FIELD* txt; char str[100], str1[16],str2[8],str3[100]; UINT16 icon_id; UINT8 hl_idx; char ch1,ch2; ol = &biss_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); for(i=0;i<page;i++) { item = (CONTAINER*)biss_items[i]; index = top + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; if(valid_idx) { Pm = (BISS_KEYINFO *) softcam_get_keydata((u8) CAS_ID_BISS,index); } if(Pm==NULL) { valid_idx=0; } /* IDX */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item); if(valid_idx) { OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1)); } else { OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); } /* biss chan Name*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)Pm ->ChanName); else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); //soc_printf("%d chan name is %d \n",index + 1,Pm->KeyData); /* biss chanID*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(str,"%08x",Pm ->ChanID); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* SatDegree */ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(str,"%03d",Pm ->SatDegree); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* Frequency */ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(str,"%05d",Pm ->Frequency); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* ServiceID*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(str,"%04x",Pm ->ServiceID); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); #if 1 /* biss keydata*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { memset(str,0,sizeof(str)); sprintf(str,"%02x ",Pm->KeyData[0]); if((Pm->Lenth < 65)) { for(j=1;j<8;j++) { sprintf(str1,"%02x ",Pm->KeyData[j]); strcat(str,str1); } } } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); #endif } }
static void win_conax_set_display(void) { UINT32 i,j,n; CAS_KEYINFO *Pm = NULL; OBJLIST* ol; UINT16 top,cnt,page,index,curitem; UINT32 valid_idx; CONTAINER* item1,*item2; TEXT_FIELD* txt; char str[100], str1[16],str2[8],str3[100]; UINT16 icon_id; UINT8 hl_idx; char ch1,ch2; ol = &conax_olist; cnt = OSD_GetObjListCount(ol); page = OSD_GetObjListPage(ol); top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); i = 0; //for(i=0;i<page/8;i++) { if(top%8) { item1 = (CONTAINER*)conax_items[top%8+1]; } else { item1 = (CONTAINER*)conax_items[i*8]; } index = top/8 + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; if(valid_idx) { if(top%8) { Pm = (CAS_KEYINFO *) softcam_get_keydata((u8) CAS_ID_CONAX,(top/8+i+1)); } else { Pm = (CAS_KEYINFO *) softcam_get_keydata((u8) CAS_ID_CONAX,(top/8+i)); } } if(Pm==NULL) { valid_idx=0; } /* conax IDX */ txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item1); if(valid_idx) { if(top%8) { OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1+1)); } else { OSD_SetTextFieldContent(txt, STRING_NUMBER, (UINT32) (index + 1)); } } else { OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); } /* conax chan Name*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)Pm ->ChanName); else OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)""); //soc_printf("%d chan name is %d \n",index + 1,Pm->KeyData); /* conax ident*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { sprintf(str,"%08x",Pm ->Ident); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); /* conax E M*/ txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { //ch1 = (Pm ->KeyNum)>>8;//is ch1 '0'~'9' 'a'~z A~Z ch2 = (Pm ->KeyNum)&0xFF; sprintf(str,"%c%c",'0',(ch2>0)?ch2:' '); } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); #if 1 /* conax keydata*/ // for(i=0;i<8;i++) // { txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); if(valid_idx) { memset(str,0,sizeof(str)); sprintf(str,"%02x ",Pm->KeyData[0]); if((Pm->Lenth < 65)) { for(j=1;j<8;j++) { sprintf(str1,"%02x ",Pm->KeyData[j]); strcat(str,str1); } } } else { sprintf(str,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); // } #endif } #if 1 for(i=1;i<8;i++) { // if(top%8) { item2 = (CONTAINER*)conax_items[i]; } // else { // item2 = (CONTAINER*)conax_items[i*8+1]; } index = top/8 + i; if(index< cnt) valid_idx = 1; else valid_idx = 0; if(valid_idx) { Pm = (CAS_KEYINFO *) softcam_get_keydata((u8) CAS_ID_CONAX,(top/8)); } if(Pm==NULL) { valid_idx=0; } txt = (PTEXT_FIELD)OSD_GetContainerNextObj(item2); sprintf(str,""); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); txt = (PTEXT_FIELD)OSD_GetObjpNext(txt); OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str); if(valid_idx) { memset(str3,0,sizeof(str3)); sprintf(str3,"%02x ",Pm->KeyData[8*i]); if((Pm->Lenth < 65)) { for(j=1;j<8;j++) { sprintf(str2,"%02x ",Pm->KeyData[j+8*i]); strcat(str3,str2); } } } else { sprintf(str3,""); } OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str3); } #endif }
static PRESULT favgrplst_list_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2) { PRESULT ret = PROC_PASS; VACTION unact; UINT16 uni_name[30]; UINT8* new_name; OBJLIST* ol; UINT16 curitem; SYSTEM_DATA* sys_data = sys_data_get(); ol = &favgrplist_olist; curitem = OSD_GetObjListNewPoint(ol); switch(event) { case EVN_PRE_DRAW: { POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj); win_favgrplst_set_display(); #if ((!defined(OSD_15))&&(!defined(OSD_12))) #ifdef PREVIEW_SUBMENU if(preview_menu) { preview_menu=0; OSD_SetWholeObjStyleHL(focusObj,CON_SH_IDX,TXTN_SH_IDX,0,0); } else { OSD_SetWholeObjStyleHL(focusObj,CON_SH_IDX,TXTN_HL_IDX,0,0); } #endif #endif }break; case EVN_UNKNOWN_ACTION: unact = (VACTION)(param1>>16); if(unact== VACT_FAV_EDIT) { //ComAscStr2Uni(sys_data->favgrp_names[curitem], uni_name); MEMCPY(uni_name,(UINT16*)sys_data->favgrp_names[curitem],(FAV_GRP_NAME_LEN + 1)); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name,favgrp_check_input_name)) #else #if (defined(GZ1105002)||defined(GZ1105003)||defined(GZ1105004)||defined(GZ1105005)||defined(GZ1105006)) if(win_rename_open(uni_name,&new_name,favgrp_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,favgrp_check_input_name)) #endif #endif { //ComUniStrToAsc(new_name,sys_data->favgrp_names[curitem]); ComUniStrCopyChar(sys_data->favgrp_names[curitem],new_name); } OSD_TrackObject((POBJECT_HEAD)&g_win_favgrplst, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); // wincom_open_title(pObj,RS_FAVORITE,0); wincom_open_subtitle(pObj,RS_FAVORITE,0); } break; } return ret; }
static PRESULT map_city_list_unact_proc(VACTION act) { PRESULT ret = PROC_PASS; OBJLIST* ol; UINT16 curitem; UINT8 back_saved; SYSTEM_DATA* p_sys_data = sys_data_get(); UINT16 uni_name[30]; UINT8* new_name; char strTmp[30]; char strTmp1[30]; char strTmp2[30]; ol = &ol_map_city; curitem = OSD_GetObjListNewPoint(ol); switch (act) { case VACT_MAP_CITY_EDIT: //ComAscStr2Uni(p_sys_data->map_city_name[curitem], uni_name); MEMCPY(uni_name,(UINT16*)p_sys_data->map_city_name[curitem],(MAP_CITY_NAME_LEN + 1)); wincom_close_help(); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name,map_city_check_input_name)) #else #if (defined(GZ1105002)||defined(GZ1105003)||defined(GZ1105004)||defined(GZ1105005)||defined(GZ1105006)) if(win_rename_open(uni_name,&new_name,map_city_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,map_city_check_input_name)) #endif #endif { //ComUniStrToAsc(new_name,p_sys_data->map_city_name[curitem]); ComUniStrCopyChar(p_sys_data->map_city_name[curitem], new_name); } wincom_open_help_OK_list_small((POBJECT_HEAD)&g_win_map_city, map_city_helpinfo, HELP_CNT); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); break; case VACT_MAP_CITY_ADD: if (OSD_GetObjListCount(ol) == MAP_CITY_MAX_NUM) { win_compopup_init(WIN_POPUP_TYPE_OK); ComUniStrToAsc((UINT8 *)OSD_GetUnicodeString(RS_THE_LIST_IS_FULL),strTmp); win_compopup_set_msg((UINT8*)strTmp,NULL,0); win_compopup_open_ext(&back_saved); break; } memset(uni_name, 0x0, sizeof(uni_name)); wincom_close_help(); #ifndef KEYBOARD_SUPPORT if(win_rename_open(uni_name,&new_name, map_city_check_input_name)) #else #if (defined(GZ1105002)||defined(GZ1105003)||defined(GZ1105004)||defined(GZ1105005)||defined(GZ1105006)) if(win_rename_open(uni_name,&new_name, map_city_check_input_name)) #else if(win_keyboard_rename_open(uni_name,&new_name,map_city_check_input_name)) #endif #endif { //ComUniStrToAsc(new_name, p_sys_data->map_city_name[OSD_GetObjListCount(ol)]); ComUniStrCopyChar(p_sys_data->map_city_name[OSD_GetObjListCount(ol)],new_name); } map_city_list_load(); wincom_open_help_OK_list_small((POBJECT_HEAD)&g_win_map_city, map_city_helpinfo, HELP_CNT); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); break; case VACT_MAP_CITY_DEL: map_city_delete(curitem); map_city_list_load(); OSD_TrackObject(ol, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL); break; case VACT_MAP_CITY_DOWNLOAD: city_index = curitem; s_mapdl_handle = map_download(p_sys_data->map_city_name[curitem], 14); bMapDownloading = TRUE; win_compopup_init(WIN_POPUP_TYPE_SMSG); //ComUniStrToAsc((UINT8 *)OSD_GetUnicodeString(RS_CONNECTINF_WAITE),strTmp1); win_compopup_set_msg(/*(UINT8*)strTmp1*/NULL,NULL,RS_CONNECTINF_WAITE); win_compopup_open_ext(&back_saved); break; case VACT_MAP_SEARCH: memset(search_string, 0x0, sizeof(search_string)); wincom_close_help(); if (win_map_search_input_menu_open(search_string)) { s_mapdl_handle = map_download(search_string, 14); bMapDownloading = FALSE; win_compopup_init(WIN_POPUP_TYPE_SMSG); //ComUniStrToAsc((UINT8 *)OSD_GetUnicodeString(RS_CONNECTINF_WAITE),strTmp2); win_compopup_set_msg(/*(UINT8*)strTmp2*/NULL,NULL,RS_CONNECTINF_WAITE); win_compopup_open_ext(&back_saved); } wincom_open_help_OK_list_small((POBJECT_HEAD)&g_win_map_city, map_city_helpinfo, HELP_CNT); break; default: break; } return ret; }
static VACTION cryptowork_list_keymap(POBJECT_HEAD pObj, UINT32 key) { VACTION act; UINT16 top,curitem; OBJLIST* ol; ol = &cryptowork_olist; top = OSD_GetObjListTop(ol); curitem = OSD_GetObjListNewPoint(ol); switch(key) { case V_KEY_UP: if(curitem != top) { act = VACT_CURSOR_UP; } else { act = VACT_CURSOR_PGUP; } break; case V_KEY_DOWN: if((curitem+1)%8 != 0) { act = VACT_CURSOR_DOWN; } else { if((curitem+1) != top) { act = VACT_CURSOR_PGDN; OSD_ObjListChgFocus(ol,top,C_UPDATE_FOCUS); } else { act = VACT_CURSOR_DOWN; } } break; case V_KEY_P_UP: act = VACT_CURSOR_PGUP; break; case V_KEY_P_DOWN: act = VACT_CURSOR_PGDN; break; case V_KEY_RED: act = VACT_BISS; break; case V_KEY_GREEN: act = VACT_CRYPTOWORK; break; //added by Eric.Ren, for updata TP list from net(kingofsat) ,2010.7.23 case V_KEY_YELLOW: act = VACT_DIRECT_CW; break; case V_KEY_BLUE: act = VACT_MORE; break; case V_KEY_ENTER: act = VACT_patch_EDIT_WIN; break; default: act = VACT_PASS; } return act; }