static void win_atnsetm_load_local_action(BOOL update)
{
	MULTISEL* msel;
	CONTAINER*  long_item = &atnsetm_item4;
	CONTAINER*  lat_item = &atnsetm_item5;
	CONTAINER*  initpos_item = &atnsetm_item6;
	POBJECT_HEAD pObj;
	UINT8 action;

	msel = anesetm_msels[MOTOR_ID - 1];

	action = (msel->nSel == 0)? C_ATTR_INACTIVE : C_ATTR_ACTIVE;

	if( !OSD_CheckAttr(long_item, action))
	{

		OSD_SetAttr(long_item, action);
		pObj = OSD_GetContainerNextObj(long_item);
		while(pObj)
		{
			OSD_SetAttr(pObj , action);
			pObj = OSD_GetObjpNext(pObj);				
		}
		if(update)
			OSD_DrawObject( (POBJECT_HEAD)long_item,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

		OSD_SetAttr(lat_item, action);
		pObj = OSD_GetContainerNextObj(lat_item);
		while(pObj)
		{
			OSD_SetAttr(pObj , action);
			pObj = OSD_GetObjpNext(pObj);				
		}
		if(update)
			OSD_DrawObject( (POBJECT_HEAD)lat_item,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

		action = (action == C_ATTR_INACTIVE)? C_ATTR_ACTIVE : C_ATTR_INACTIVE;
		OSD_SetAttr(initpos_item, action);
		pObj = OSD_GetContainerNextObj(initpos_item);
		while(pObj)
		{
			OSD_SetAttr(pObj , action);
			pObj = OSD_GetObjpNext(pObj);				
		}
		if(update)
			OSD_DrawObject( (POBJECT_HEAD)initpos_item,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

	}	
}
Beispiel #2
0
void win_satfav_set_display(void)
{
	UINT32 i;
	UINT16 top,cnt,page,idx;
	
	OBJLIST* ol = &satfav_item_list;
	BITMAP* bmp;
	TEXT_FIELD* txt;
	CONTAINER* item;
	UINT32 valid_idx;
	UINT16 unistr[50];
	UINT8 group_type,group_idx,av_flag;

	av_flag = sys_data_get_cur_chan_mode();
	

	cnt = OSD_GetObjListCount(ol);
	page = OSD_GetObjListPage(ol); 
	top = OSD_GetObjListTop(ol);

	for(i=0;i<page;i++)
	{
		item = (CONTAINER*)satfav_items[i];


		idx = top + i;
		group_idx = (UINT8)(idx);
		if(sat_fav_list_flag == 1)
		{
			group_idx += sys_data_get_sate_group_num(av_flag);
			group_idx ++;
		}
				
		if(idx< cnt)
			valid_idx = 1;
		else
			valid_idx = 0;
		
		if(valid_idx)
			get_chan_group_name((UINT8*)unistr,group_idx,&group_type);
		

		/*IDX */
		txt = (TEXT_FIELD*)OSD_GetContainerNextObj(item);//bmp->head.pNext;
		if(valid_idx)
			OSD_SetTextFieldContent(txt,STRING_NUMBER, idx + 1);
		else
			OSD_SetTextFieldContent(txt,STRING_ANSI,(UINT32)"");

		/*Name*/
		txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);//txt->head.pNext;
		if(valid_idx)
		{
			OSD_SetTextFieldContent(txt, STRING_UNICODE, (UINT32)unistr);
		}
		else
			OSD_SetTextFieldContent(txt,STRING_ANSI,(UINT32)"");
	}
	
}
Beispiel #3
0
static void win_antcnt_update_lnb12_action(INT32 update)
{
	MULTISEL* msel;
	CONTAINER* item;
	UINT8 action;
	POBJECT_HEAD pObj;

	msel = antcnt_msels[0];
	if(msel->nSel == ANTENNA_CONNECT_DUAL_DIFF)
		action = C_ATTR_ACTIVE;
	else
		action = C_ATTR_INACTIVE;

	item = antcnt_items[2];
	if( !OSD_CheckAttr(item, action))
	{
		OSD_SetAttr(item, action);

		pObj = OSD_GetContainerNextObj(item);
		while(pObj)
		{
			OSD_SetAttr(pObj, action);
			pObj = OSD_GetObjpNext(pObj);				
		}

		if(update)
			OSD_DrawObject((POBJECT_HEAD )item,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
	}

}
Beispiel #4
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;
}
Beispiel #5
0
static void ci_info_list_display()
{
	OBJLIST* ol;
	CONTAINER* item;	
	TEXT_FIELD* txt;	
	UINT16 top,cnt,page,index, i;

	

	ol = &olst_ci_info;

	cnt = OSD_GetObjListCount(ol);
	page = OSD_GetObjListPage(ol); 
	top = OSD_GetObjListTop(ol);


	
	for( i = 0; i < page; i++)
	{
		index = top + i;

		item = (PCONTAINER)ci_info_list_items[i];
		txt  = (PTEXT_FIELD)OSD_GetContainerNextObj(item);
		if(index < cnt)
		{
			OSD_SetTextFieldContent(txt, STRING_UNICODE, (UINT32)ci_info.menu.entry_ls_txt[index]);
		}
		else
		{
			OSD_SetTextFieldContent(txt, STRING_UNICODE, (UINT32)"");
		}
		
	}
}
static void win_atnsetm_load_tuner_configuration(void)
{
	CONTAINER* tuner_item= &atnsetm_item1;
	CONTAINER* win =&g_win_antenna_set_motor;
	CONTAINER* lnb_item = &atnsetm_item2;
	MULTISEL* msel;
	POBJECT_HEAD pObj;

	UINT32 i,tuner_cnt;
	UINT8 action;
	static BOOL bFirstTime = 1;

#ifdef SUPPORT_TWO_TUNER


	msel = anesetm_msels[TUNER_ID - 1];
	tuner_cnt = get_tuner_cnt();

	msel->nCount = tuner_cnt;
	if(antset_cur_tuner >= tuner_cnt)
		antset_cur_tuner = tuner_cnt - 1;
	msel->nSel = antset_cur_tuner;
	
	action = (tuner_cnt == 1)? C_ATTR_INACTIVE : C_ATTR_ACTIVE;
	OSD_SetAttr(tuner_item, action);
	pObj = OSD_GetContainerNextObj(tuner_item);
	while(pObj)
	{
		OSD_SetAttr(pObj , action);
		pObj = OSD_GetObjpNext(pObj);				
	}
	if((C_ATTR_INACTIVE == action)&&(TUNER_ID == OSD_GetContainerFocus(win)))
 		OSD_SetContainerFocus(win, LNB_ID);

	tuner_type_ids[0] = get_tuner_strid(0);
	tuner_type_ids[1] = get_tuner_strid(1);
#else
	if(bFirstTime)
	{
		OSD_SetContainerNextObj(win,lnb_item);
		lnb_item->head.bUpID = tuner_item->head.bUpID;

		pObj = (POBJECT_HEAD)lnb_item;
		OSD_MoveObject(pObj,0, -(CON_H + CON_GAP), TRUE);
		while(pObj->pNext)
		{
			pObj = pObj->pNext;
			OSD_MoveObject(pObj,0, -(CON_H + CON_GAP), TRUE);
		}
		pObj->bDownID = lnb_item->head.bID;
    	OSD_SetContainerFocus(win, LNB_ID);
	}
	bFirstTime = 0;
	
#endif
}
Beispiel #7
0
void win_detitle_list_display()
{
    CONTAINER* con;
    TEXT_FIELD* text;
    OBJLIST* ol;
    UINT16 index, cnt,iconID;
    BITMAP *bmp;
    ol = &detitle_olist;
    cnt = OSD_GetObjListCount(ol);
    BOOL del_flag;
    //argly :), may remove status item later
    OSD_SetTextFieldContent(&detitle_status0, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status1, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status2, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status3, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status4, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status5, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status6, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status7, STRING_ID, (UINT32)0);
    OSD_SetTextFieldContent(&detitle_status8, STRING_ID, (UINT32)0);
    OSD_SetBitmapContent(&ca_detitle_delete_0, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_1, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_2, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_3, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_4, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_5, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_6, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_7, 0);
    OSD_SetBitmapContent(&ca_detitle_delete_8, 0);
    for(index=0; index<cnt; index++)
    {
        con = (CONTAINER*)detitle_olist_ListField[index];

        del_flag = detitle_get_del_flag(index);

        /* index */
        text = (TEXT_FIELD*)OSD_GetContainerNextObj(con);
        OSD_SetTextFieldContent(text, STRING_NUMBER, Detitle_Chknum[index]);

        /* status**/
        text = (TEXT_FIELD*)OSD_GetObjpNext(text);
        OSD_SetTextFieldContent(text, STRING_ID, (UINT32)RS_DETITLE_STATUS_READED);

        /* detitle confirm code**/
        //text = (TEXT_FIELD*)OSD_GetObjpNext(text);
        //OSD_SetTextFieldContent(text, STRING_NUMBER, (UINT32)Detitle_Chknum[index]);
        /* Delete */
        bmp = (BITMAP*)OSD_GetObjpNext(text);
        iconID = (del_flag) ?IM_TV_DEL: 0;
        OSD_SetBitmapContent(bmp, iconID);
    }

}
Beispiel #8
0
void set_container_active(CONTAINER *con, UINT8 action)
{
	POBJECT_HEAD pObj;

	OSD_SetAttr(con, action);
	pObj = OSD_GetContainerNextObj(con);
	while (pObj)
	{
		OSD_SetAttr(pObj, action);
		pObj = OSD_GetObjpNext(pObj);
	}
}
Beispiel #9
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)"");
	}
}
Beispiel #10
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)"");
	}    
}
Beispiel #11
0
void win_av_set_vcrloop_action(BOOL update)
{
	POBJECT_HEAD pObj;
	UINT8 action;
	SYSTEM_DATA* sys_data;

	/* Check VCR Loopthroup item exist or not*/
	pObj = OSD_GetContainerNextObj(&win_av_con);
	while(pObj != NULL && pObj != (POBJECT_HEAD)av_items[VCR_ID - 1] )
		pObj = OSD_GetObjpNext(pObj);
	if(pObj == NULL)
		return;

	sys_data = sys_data_get();
	if(sys_data->avset.scart_out == SCART_RGB)
		action = C_ATTR_INACTIVE;
	else
		action = C_ATTR_ACTIVE;

	if( ! OSD_CheckAttr(av_items[VCR_ID - 1], action))
	{
		if(action == C_ATTR_INACTIVE)
			OSD_SetMultiselSel(av_item_set[VCR_ID - 1], 1);
		else
			OSD_SetMultiselSel(av_item_set[VCR_ID - 1], sys_data->vcrloopmode);
		OSD_SetAttr(av_items[VCR_ID - 1], action);
		pObj = OSD_GetContainerNextObj(av_items[VCR_ID - 1]);
		while(pObj)
		{
			OSD_SetAttr(pObj , action);
			pObj = OSD_GetObjpNext(pObj);				
		}
		if(update)
			OSD_DrawObject( (POBJECT_HEAD)av_items[VCR_ID - 1],C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
	}
}
Beispiel #12
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)"");
	}    
}
Beispiel #13
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 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)"");
	}
}
Beispiel #15
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)"");
	}    
}
Beispiel #16
0
static void ci_info_display()
{
	OBJLIST* ol;
	UINT16 cnt, page;
	UINT8 i;

	CONTAINER* item = NULL;	
	TEXT_FIELD* txt = NULL;	


	//1. CI Title
	OSD_SetTextFieldContent(&txt_ci_info_title, STRING_UNICODE, (UINT32)ci_info.menu.title_str);
	//2. sub title
	ci_info_subtitle_content[0].text.pString = ci_info.menu.subtitle_str;
	//3. bottom 
	OSD_SetTextFieldContent(&txt_ci_info_bottom, STRING_UNICODE, (UINT32)ci_info.menu.bottom_str);
	//4. fill the list
	ol = &olst_ci_info;


	page = OSD_GetObjListPage(ol); 

	cnt = ci_info.menu.entry_cnt;
	OSD_SetObjListCount(ol, cnt);

	if(cnt <= page)
		OSD_SetAttr(&sb_ci_info, C_ATTR_HIDDEN);
	else
		OSD_SetAttr(&sb_ci_info, C_ATTR_ACTIVE);
	OSD_SetObjListTop(ol, 0);
	OSD_SetObjListCurPoint(ol, 0);
	OSD_SetObjListNewPoint(ol, 0);
	
	for( i = 0; i < page; i++)	
	{
		item = (PCONTAINER)ci_info_list_items[i];
		txt  = (PTEXT_FIELD)OSD_GetContainerNextObj(item);

		if(ci_info.menu.is_selectable)	
		{
            if(api_is_sd_color_mode())
            {
    	//		OSD_SetColor(item, CON_SH_IDX_SD, CON_HL_IDX_SD, CON_SL_IDX_SD, CON_GRY_IDX_SD);
     			OSD_SetColor(item, CON_SH_IDX, CON_HL_IDX, CON_SL_IDX, CON_GRY_IDX);
   	//		OSD_SetColor(txt, TXT_SH_IDX_SD,TXT_HL_IDX_SD,TXT_SL_IDX_SD,TXT_GRY_IDX_SD);
    			OSD_SetColor(txt, TXT_SH_IDX,TXT_HL_IDX,TXT_SL_IDX,TXT_GRY_IDX);
            }
            else
            {
#if 0
    			OSD_SetColor(item, CON_SH_IDX, CON_HL_IDX, CON_SL_IDX, CON_GRY_IDX);
    			OSD_SetColor(txt, TXT_SH_IDX,TXT_HL_IDX,TXT_SL_IDX,TXT_GRY_IDX);                
#endif
            }            
        }
		else
		{
            if(api_is_sd_color_mode())
            {
     			OSD_SetColor(item, CON_SH_IDX_SD, CON_SH_IDX_SD, CON_SL_IDX_SD, CON_GRY_IDX_SD);
     			OSD_SetColor(txt, TXT_SH_IDX_SD,TXT_SH_IDX_SD,TXT_SL_IDX_SD,TXT_GRY_IDX_SD);
            }
            else
            {
#if 0
                OSD_SetColor(item, CON_SH_IDX, CON_SH_IDX, CON_SL_IDX, CON_GRY_IDX);
    			OSD_SetColor(txt, TXT_SH_IDX,TXT_SH_IDX,TXT_SL_IDX,TXT_GRY_IDX);    
#endif
            }
        }
	}

	OSD_TrackObject( (POBJECT_HEAD)&g_win_ci_info, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);


}
Beispiel #17
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	
	}
Beispiel #18
0
void win_timerlist_loadsetting(void)
{
    SYSTEM_DATA* sys_data;
    TIMER_SET_CONTENT* timer;
    INT32 i;
    CONTAINER* con;
    TEXT_FIELD* txt;
    UINT16* pstr;
    char str[30];
    UINT16 strID;
    P_NODE p_node;

    sys_data = sys_data_get();
    for(i=0;i < MAX_TIMER_NUM;i++)
    {
	LOAD_ONE_TIMER:    
        timer = &sys_data->timer_set.TimerContent[i];
        con = timers_conts[i];
        
        pstr = display_strs[2*i];
        
        /*Number */
        txt = (TEXT_FIELD*)OSD_GetContainerNextObj(con);
		OSD_SetTextFieldStrPoint(txt,pstr);
        OSD_SetTextFieldContent(txt, STRING_NUMBER, i+1);
        pstr += 3;

        /*Mode */
        txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
        strID = TimerModeStr_id[timer->timer_mode];
        OSD_SetTextFieldContent(txt, STRING_ID,(UINT32)strID);
        
        /*Service */
        txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
        if(timer->timer_mode!= TIMER_MODE_OFF)
            strID = TimerServiceStr_id[timer->timer_service];
        else
            strID = 0;
       OSD_SetTextFieldContent(txt, STRING_ID,(UINT32)strID);
        
        /*Content */
        strID = 0;
        txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
        if(timer->timer_mode!= TIMER_MODE_OFF)
        {
            if(timer->timer_service == TIMER_SERVICE_MESSAGE)
            {
                strID = WakeupMessageStr_id[timer->wakeup_message];
                pstr = NULL;
            }
            else
            {
				if(get_prog_by_id(timer->wakeup_channel,&p_node) == DB_SUCCES)
				{
					if(p_node.ca_mode)
						ComAscStr2Uni("$", pstr);
					ComUniStrCopyChar((UINT8*)&pstr[p_node.ca_mode], p_node.service_name);	
				}
                else
                {
                	/* When the specified channel not exit, turn off the timer */
                	timer->timer_mode = TIMER_MODE_OFF;
                    pstr = NULL;
					goto LOAD_ONE_TIMER;
                }
            }
        }
        else
            pstr = NULL;
		OSD_SetTextFieldStrPoint(txt,pstr);				
		OSD_SetTextFieldContent(txt, STRING_ID,(UINT32)strID);


        pstr = display_strs[2*i + 1];
        
        /*Date&Time*/
        txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
        str[0] = '\0';
        if(timer->timer_mode!= TIMER_MODE_OFF)
            sprintf(str,"%02d/%02d/%04d %02d:%02d",
                timer->wakeup_month,timer->wakeup_day,timer->wakeup_year,
                timer->wakeup_time/60,timer->wakeup_time%60);
		OSD_SetTextFieldStrPoint(txt,pstr);
		OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)str);
        pstr += 20;

        /*Duration*/
        txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
        str[0] = '\0';
        if(timer->timer_mode!= TIMER_MODE_OFF 
			&& (timer->timer_service == TIMER_SERVICE_CHANNEL
#ifdef DVR_PVR_SUPPORT
			|| timer->timer_service == TIMER_SERVICE_DVR_RECORD
#endif
			)
		)
            sprintf(str,"%02d:%02d",timer->wakeup_duration_time/60,timer->wakeup_duration_time%60);
        ComAscStr2Uni(str, pstr);
        OSD_SetTextFieldStrPoint(txt,pstr);
		OSD_SetTextFieldContent(txt, STRING_ANSI,(UINT32)str);
    }

#if 0
	sys_data_set_cur_chan_mode(cur_chan_mode);	
	recreate_prog_view(VIEW_ALL | cur_chan_mode,0);
#endif	

}
Beispiel #19
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		

	}
Beispiel #20
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)"");

		}
		
	}
}
Beispiel #21
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);		
	}
}
Beispiel #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
}
Beispiel #23
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	
	}
}
Beispiel #24
0
static void mail_disp()
{
	UINT32 i, valid_idx;
	UINT32 MJD_Date;
	UINT16 UTC_Date[3];
	UINT8 K;
	UINT8 asc_str[100];
	UINT16 top, cnt, page, index, strid,iconID;
	UINT16 mail_title[40+1], date[20];
	UINT8 str[6];//-----yuanlin
	BOOL del_flag;
	OBJLIST *ol;
	CONTAINER *item;
	TEXT_FIELD *txt;
	BITMAP *bmp;

	ol = &mail_ol;

	cnt = OSD_GetObjListCount(ol);
	page = OSD_GetObjListPage(ol);
	top = OSD_GetObjListTop(ol);

	for (i = 0; i < page; i++)
	{
		item = (CONTAINER*)mail_ol_ListField[i];
		index = top + i;
		del_flag = FALSE;

		valid_idx = (index < cnt) ? 1 : 0;
		if (valid_idx)
		{
			del_flag = mail_get_del_flag(index);
		}

		/* IDX */
		txt = (TEXT_FIELD*)OSD_GetContainerNextObj(item);
		if (valid_idx)
		{
			sprintf(str, "%02d", index + 1);
			OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)str);
		}
		else
			OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)"");
         
		/*mail title*/
		txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
		if (valid_idx)
		{
			convert_gb2312_to_unicode(email_head[index].title, 40+1, mail_title, 40+1);
			OSD_SetTextFieldContent(txt, STRING_UNICODE, (UINT32)mail_title);
		}
		else
			OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)"");
		wincom_scroll_textfield_stop(txt);



		
		/* time */
		txt = (TEXT_FIELD*)OSD_GetObjpNext(txt);
		if (valid_idx)
		{
			#if 1
			MEMSET(len_display_str, 0, sizeof(len_display_str));
			MJD_Date = email_head[index].create_Time[0]*256 + email_head[index].create_Time[1];
			UTC_Date[0] = ( MJD_Date-15078.2 )/365.25;//MJD算法计算发行年份
			UTC_Date[1] =  ( MJD_Date-14956.1-(UINT32)(UTC_Date[0]*365.25))/30.6001;//月份
			UTC_Date[2] = MJD_Date-14956-(UINT32)(UTC_Date[0]*365.25)-(UINT32)(UTC_Date[1]*30.6001);//日期
			if( (UTC_Date[1]==15) || (UTC_Date[1]==14) )
				K=1;
			else
				K=0;
			UTC_Date[0] += K;
			UTC_Date[1] = UTC_Date[1]-1-K*12;
			UTC_Date[0] += 1900;//Year since 1900
			
			sprintf(asc_str, "%02d%02d-%02d-%02d",(UINT8)(UTC_Date[0]/100),(UINT8)(UTC_Date[0]%100),UTC_Date[1],UTC_Date[2]);
			ComAscStr2Uni(asc_str, len_display_str);
			
			OSD_SetTextFieldContent(txt, STRING_UNICODE, (UINT32)len_display_str);
			#else
			convert_sysdate_to_uni(email_head[index].create_Time, date);
			date[16] = '\0';
			OSD_SetTextFieldContent(txt, STRING_UNICODE, (UINT32)date);
			#endif
		}
		else
			OSD_SetTextFieldContent(txt, STRING_ANSI, (UINT32)"");
        
			/* Delete */
		bmp = (BITMAP*)OSD_GetObjpNext(txt);
		iconID = (del_flag) ?IM_TV_DEL: 0;
		OSD_SetBitmapContent(bmp, iconID);
         
	}
}
Beispiel #25
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);
		
		
	
	}

}
Beispiel #26
0
BOOL submenu_set_one_page(sub_menu_t* sub_menu)
{
	UINT16 i;
	sub_menu_item_t* menu_item;
	CONTAINER* menu_item_obj;
	POBJECT_HEAD pObj,pObjName,pObjSet;
	CONTAINER* win_sub_menu = &g_win_submenu;
	UINT8 action;

	for(i=0;i<sub_menu->list_page;i++)
	{
#if 0	
		/* IDX & setting Display */
		ComInt2UniStr(display_strs[i], i + 1, 0);
		ComAscStr2Uni("", display_strs[10 + i]);
#endif		

		/* Set attribute to active*/
		action = submenu_item_attr(sub_menu, i+sub_menu->list_top);
		submenu_set_item_attr(i,action);
		
		menu_item = &sub_menu->items[i+sub_menu->list_top];
		menu_item_obj = submenu_items[i];

		/* Link menu items next object and set IDs*/
		menu_item_obj->head.pNext = (i< (sub_menu->list_page - 1) ) ?  ((POBJECT_HEAD)submenu_items[i + 1]) : NULL;
		OSD_SetID(menu_item_obj, i + 1, i + 1, i + 1, 
			i==0? sub_menu->list_page : i, 
			(i==sub_menu->list_page - 1)? 1 : i+2);

#if 0
		/* Link menu item's setting or not*/
		pObj = menu_item_obj->pNextInCntn;	/* IDX */
		pObjName = pObj->pNext;	/* Name */		
		pObjSet = submenu_item_sets[i];		
		switch(menu_item->item_type)
		{
		case ITEM_TYPE_NOMAL:
			pObjName->pNext = NULL;
			break;
		default:
			pObjName->pNext = pObjSet;
			break;
		}
#endif		

		/* Set menu item's name display*/
		pObjName = OSD_GetContainerNextObj(menu_item_obj);
		OSD_SetTextFieldContent((PTEXT_FIELD)pObjName, STRING_ID, (UINT32)menu_item->item_name);		

		/*Set menu item's callback */
		if(menu_item->item_callback != NULL)
			OSD_SetCallback(menu_item_obj, menu_item->item_callback);
		else
			OSD_SetCallback(menu_item_obj, sm_item_con_callback);
		
	}

	OSD_SetContainerFocus(win_sub_menu, sub_menu->list_sel + 1 - sub_menu->list_top);

}
Beispiel #27
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);
}