Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
0
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);	
		}
	}
}
Ejemplo n.º 3
0
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)"");
	}
}
Ejemplo n.º 4
0
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)"");
	}    
}
Ejemplo n.º 5
0
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)"");
	}    
}
Ejemplo n.º 6
0
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)"");
	}
}
Ejemplo n.º 7
0
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;
}
Ejemplo n.º 8
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)"");
        
	}    
}
Ejemplo n.º 9
0
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;

}
Ejemplo n.º 10
0
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;
}
Ejemplo n.º 11
0
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)"");
	}    
}
Ejemplo n.º 12
0
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);
}
Ejemplo n.º 13
0
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	
	}
Ejemplo n.º 14
0
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);		
	}
}
Ejemplo n.º 15
0
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;		

}
Ejemplo n.º 16
0
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)"");

		}
		
	}
}
Ejemplo n.º 17
0
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		

	}
Ejemplo n.º 18
0
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;
}
Ejemplo n.º 19
0
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;
}
Ejemplo n.º 20
0
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);
		
		
	
	}

}
Ejemplo n.º 21
0
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	
	}
}
Ejemplo n.º 22
0
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
}
Ejemplo n.º 23
0
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;
}
Ejemplo n.º 24
0
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;
}
Ejemplo n.º 25
0
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;		

}