Ejemplo n.º 1
0
static PRESULT sudoku_con_callback(POBJECT_HEAD obj, VEVENT event, UINT32 param1, UINT32 param2)
{
    PRESULT ret = PROC_PASS;
    POBJECT_HEAD submenu;
    switch (event)
    {
    case EVN_PRE_OPEN:
#ifdef NEW_GAME_FOCUS
        OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_ACTIVE);
        OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 1, \
                        C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
#else
        OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_INACTIVE);
        OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 6, \
                        C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
#endif
        game_pre_open();
        break;

    case EVN_POST_CLOSE:
        OSD_ClearScreen();
        win_open_submenu_title(submenu,sub_menu_desc->title_id, 0);  //guop
        break;

    case EVN_POST_DRAW:
        game_1st_draw();
        break;

    case EVN_MSG_GOT:
        game_event(param1, param2);
        break;
    }
    return ret;
}
Ejemplo n.º 2
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);
	}

}
Ejemplo n.º 3
0
static PRESULT sudoku_con_callback(POBJECT_HEAD obj, VEVENT event, UINT32 param1, UINT32 param2)
{
    PRESULT ret = PROC_PASS;

    switch (event)
    {
    case EVN_PRE_OPEN:
	#ifdef NEW_GAME_FOCUS
        OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_ACTIVE);
		OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 1, \
			C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
	#else
        OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_INACTIVE);
		OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 6, \
			C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
	#endif
        game_pre_open();
        break;

    case EVN_POST_CLOSE:
		OSD_DrawObject((POBJECT_HEAD)&g_win_mainmenu, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
        break;

    case EVN_POST_DRAW:
        game_1st_draw();
        break;

    case EVN_MSG_GOT:
        game_event(param1, param2);
        break;
    }
    return ret;
}
Ejemplo n.º 4
0
static PRESULT rs232upg_item_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	UINT8 bID;

	bID = OSD_GetObjID(pObj);

	switch(event)
	{
		case EVN_UNKNOWN_ACTION:
			unact = (VACTION)(param1>>16);
			if(unact == VACT_ENTER && bID == START_ID)
			{
				system_state = SYS_STATE_UPGRAGE_HOST;

				OSD_SetAttr(&rs232upg_item_con1, C_ATTR_INACTIVE);
				OSD_SetAttr(&rs232upg_item_con2, C_ATTR_INACTIVE);
				OSD_DrawObject( (POBJECT_HEAD)&rs232upg_item_con1, C_UPDATE_ALL);
				OSD_DrawObject( (POBJECT_HEAD)&rs232upg_item_con2, C_UPDATE_ALL);

				ClearUpgFlag();
			
				if(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type) == 0)
				{
               				p2p_enable_upgrade_bootloader(TRUE);
					if(InitBlockList() != SUCCESS)
						return PROC_LEAVE;											
					SetUpgFlag(0, 0, 1);
				}
				else
				{					
					p2p_enable_upgrade_bootloader(FALSE);
					if(InitBlockList() != SUCCESS)
						return PROC_LEAVE;
					//-a by wangyang del seecode upgrade 
					if(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type) == 1)
						SetUpgFlag(Index2Id(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type)), 0xFFFFFFFF, 1);
					else
						SetUpgFlag(Index2Id(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type)+1), 0xFFFFFFFF, 1);
				//	SetUpgFlag(Index2Id(OSD_GetMultiselSel(&rs232upg_sel_upgrade_type)), 0xFFFFFFFF, 1);
				}
				
				//start transfer
				win_rs232upg_start();
			
				OSD_SetAttr(&rs232upg_item_con1, C_ATTR_ACTIVE);
				OSD_SetAttr(&rs232upg_item_con2, C_ATTR_ACTIVE);
				OSD_DrawObject( (POBJECT_HEAD)&rs232upg_item_con1, C_UPDATE_ALL);
				OSD_TrackObject( (POBJECT_HEAD)&rs232upg_item_con2, C_UPDATE_ALL);

				system_state = SYS_STATE_NORMAL;
			}
			break;
	}

	return ret;
}
Ejemplo n.º 5
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.º 6
0
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
}
Ejemplo n.º 7
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);
	}
}
Ejemplo n.º 8
0
void submenu_set_item_attr(UINT32 itemidx, UINT8 bAttr)
{
	CONTAINER* menu_item_obj;
	POBJECT_HEAD pObj;
	
	menu_item_obj = submenu_items[itemidx];
	OSD_SetAttr(menu_item_obj, bAttr);
	pObj = menu_item_obj->pNextInCntn;
	while(pObj != NULL)
	{
		OSD_SetAttr(pObj, bAttr);
		pObj = pObj->pNext;
	}
	
}
Ejemplo n.º 9
0
static PRESULT game_con_callback(POBJECT_HEAD obj, VEVENT event, UINT32 param1, UINT32 param2)
{
    PRESULT ret = PROC_PASS;
    static UINT8 m_focus_id;
    switch (event)
    {
    case EVN_PRE_OPEN:
        m_focus_id = OSD_GetFocusID((POBJECT_HEAD)&game_con);
        OSD_SetContainerFocus(&game_con, 32);
        OSD_SetAttr((POBJECT_HEAD)&txt_start, C_ATTR_ACTIVE);

        game_pre_open();
        break;
    case EVN_POST_OPEN:
        OSD_ChangeFocus((POBJECT_HEAD)&game_con, m_focus_id, C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
        break;

    case EVN_POST_CLOSE:
	OSD_DrawObject((POBJECT_HEAD)&g_win_mainmenu, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
        break;

    case EVN_POST_DRAW:
        game_1st_draw();
        break;

    case EVN_MSG_GOT:
        game_event(param1, param2);
        break;
    }
    return ret;
}
Ejemplo n.º 10
0
void win_set_youtube_help_attr()
{
	
	OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_ACTIVE);//search
	OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_ACTIVE);//pre 
	OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_ACTIVE);//next
	OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_ACTIVE);
	OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);
	
	//OSD_SetAttr(pHelp2Txt_ids[0], C_ATTR_ACTIVE);
	//OSD_SetAttr(pHelp2Txt_ids[1], C_ATTR_ACTIVE);//exit//sort
	//OSD_SetAttr(pHelp2Txt_ids[2], C_ATTR_ACTIVE);//exit
	//OSD_SetAttr(pHelp2Txt_ids[3], C_ATTR_ACTIVE);
	//OSD_SetAttr(pHelp2Txt_ids[4], C_ATTR_ACTIVE);
				
		
}
Ejemplo n.º 11
0
void win_par_switch_confirm(BOOL flag)
{
	UINT8 action;

	if(flag)
		action = C_ATTR_ACTIVE;
	else
		action = C_ATTR_INACTIVE;

	if( !OSD_CheckAttr(&par_item_con4, action))
	{
		OSD_SetAttr(&par_item_con4, action);
		OSD_SetAttr(&par_item_txtname4, action);
		OSD_SetAttr(&par_item_txtset4, action);
		OSD_DrawObject((POBJECT_HEAD )&par_item_con4,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
	}

}
Ejemplo n.º 12
0
BOOL ota_load_parameter()
{
	UINT32 addr;
	UINT32 len;	
    unsigned char *p = NULL;
	UINT32 m_ota_load_offset;
	BOOL ret = FALSE;
	do 
	{
		if(!find_ota_loader(&m_ota_load_offset))
			break;;

		chunk_init(m_ota_load_offset+SYS_FLASH_BASE_ADDR, 0x100000);
		
		// get user_db address
		if(!get_chuck_add_len(0x15Fa0200, &addr, &len))
			break;

		p = (UINT8 *)addr;
		MEMCPY(&m_ota_cfg, p, sizeof(m_ota_cfg));
	    
	    ota_freq = m_ota_cfg.t_node.frq;
	    ota_symb = m_ota_cfg.t_node.sym;
	    ota_pid = m_ota_cfg.pid;
		ota_pol = m_ota_cfg.t_node.pol;
		ret = TRUE;
	}while(0);

	if(!ret)
	{
		S_NODE *p_s_node = &m_ota_cfg.s_node;
		p_s_node->lnb_low = 5150;
		p_s_node->lnb_high= 5150;
		p_s_node->DiSEqC_port = 4;
	    ota_freq = 4150;
	    ota_symb = 40000;
	    ota_pid = 256;
		ota_pol = 0;
		
	}
	libc_printf("%s: p=0x%x, Freq=%d, ota_symb=%d, ota_pid=%d, ota_pol =%d\n", \
		__FUNCTION__, p, ota_freq, ota_symb, ota_pid, ota_pol);

	OSD_ChangeFocus((POBJECT_HEAD)&win_otaupg_con, 7, 0);
	CONTAINER *con = &wota_con0;
	OSD_SetAttr(con, C_ATTR_INACTIVE);
	con = &wota_con1;
	OSD_SetAttr(con, C_ATTR_INACTIVE);		
	PTEXT_FIELD pText = &wota_txt0;
	OSD_SetAttr(pText, C_ATTR_INACTIVE);
	pText = &wota_txt1;
	OSD_SetAttr(pText, C_ATTR_INACTIVE);		

	PMULTISEL pmul = &wota_num0;
	OSD_SetAttr(pmul, C_ATTR_INACTIVE);	
	pmul = &wota_num1;
	OSD_SetAttr(pmul, C_ATTR_INACTIVE);

	return ret;
}
Ejemplo n.º 13
0
static void win_pvod_download()
{
	UINT16 i;
	BOOL bFinished=FALSE;
#if 0	
	OSD_SetAttr(&pvod_item_con1, C_ATTR_INACTIVE);
	OSD_DrawObject( (POBJECT_HEAD)&pvod_item_con1, C_UPDATE_ALL);
		
	OSD_SetAttr(&pvod_item_con2, C_ATTR_INACTIVE);
	OSD_DrawObject( (POBJECT_HEAD)&pvod_item_con1, C_UPDATE_ALL);
		
	OSD_SetAttr(&pvod_item_con3, C_ATTR_INACTIVE);
	OSD_DrawObject( (POBJECT_HEAD)&pvod_item_con1, C_UPDATE_ALL);
		
	OSD_SetAttr(&pvod_item_con4, C_ATTR_INACTIVE);
	OSD_DrawObject( (POBJECT_HEAD)&pvod_item_con1, C_UPDATE_ALL);
	
	OSD_SetProgressBarPos(&pvod_bar_progress,(INT16)0);
	OSD_SetTextFieldContent(&pvod_txt_progress, STRING_NUM_PERCENT, (UINT32)0);
#endif

	//download data
/*
	for(i=0;i<5;i++)
	{
		
		osal_delay(300);
		win_pvod_process_update(20*(i+1));
	}
*/
	//download finished
//	bFinished = TRUE;
//	SendMsgtoThread(0x01,0x00,0x00);/**Pvod_Programschedule_Query*/
	//检查USB连接????
	//启动pushvod
	SendMsgtoThread(Pvod_START_PAT,0,0);	
	
}
Ejemplo n.º 14
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);
	}
}
Ejemplo n.º 15
0
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);

	}	
}
Ejemplo n.º 16
0
static PRESULT game_con_callback(POBJECT_HEAD obj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;

	switch (event)
	{
		case EVN_PRE_OPEN:
#ifdef USE_LIB_GE
			OSD_SetVscrDst(GUI_MEMVSCR_SURF,0);
			PGUI_VSCR pVscr=OSD_GetTaskVscr(osal_task_get_current_id());
			OSD_SetRect(&(pVscr->frm),0,0,0,0);
#endif
			record_scene();
			OSD_SetAttr((POBJECT_HEAD) &txt_start, C_ATTR_ACTIVE);
			OSD_SetContainerFocus(&game_con, 1);
			game_pre_open();
			break;
		case EVN_POST_OPEN:
#ifdef USE_LIB_GE
			OSD_SetVscrDst(GUI_GMA2_SURF,0);
#endif
			break;
		case EVN_PRE_CLOSE:
			*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;
			break;
		case EVN_POST_CLOSE:
			restore_scene();
			break;
		case EVN_POST_DRAW:
			game_1st_draw();
			break;

		case EVN_MSG_GOT:
			ret = games_com_message_proc(param1, param2);
			game_event(param1, param2);
			break;
	}
	return ret;
}
Ejemplo n.º 17
0
static PRESULT sudoku_newgame_callback(POBJECT_HEAD obj, VEVENT event, UINT32 param1, UINT32 param2)
{
    PRESULT ret = PROC_PASS;
    UINT8   unact;

    switch (event)
    {
    case EVN_UNKNOWN_ACTION:
        unact = (VACTION)(param1>>16);
        if (unact == VACT_ENTER)
        {
			OSD_SetAttr((POBJECT_HEAD)obj, C_ATTR_INACTIVE);
            OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 6, \
                  C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);

            game_start();
        }
        break;
    }

    return ret;
}
Ejemplo n.º 18
0
static PRESULT con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8 id = OSD_GetObjID(pObj);

	switch(event)
	{
		case EVN_PRE_OPEN:
			if(from_auto_scan)
			{
				wincom_open_subtitle((POBJECT_HEAD)&win_country_net_con,RS_INSTALLATION_AUTO_SEARCH, 0);
				//remove_menu_item(&win_country_net_con,(POBJECT_HEAD)&item_country_con,CON_H + CON_GAP);
				OSD_SetAttr(&item_country_con, C_ATTR_HIDDEN);
				OSD_SetAttr(&item_button_prev_con, C_ATTR_HIDDEN);
				OSD_SetRect(&(item_button_next_con.head.frame),CON_L, CON_T + (CON_H + CON_GAP)*1,CON_W,CON_H);
				OSD_SetRect(&(item_button_next_label.head.frame),CON_L, CON_T + (CON_H + CON_GAP)*1,CON_W,CON_H);

				((POBJECT_HEAD)(&item_button_next_con))->bLeftID = MAX_ID;
				((POBJECT_HEAD)(&item_button_next_con))->bUpID = NETWORK_ID;
				((POBJECT_HEAD)(&item_button_next_con))->bDownID = NETWORK_ID;
				((PTEXT_FIELD)(&item_button_next_label))->bAlign = C_ALIGN_LEFT | C_ALIGN_VCENTER;
                ((POBJECT_HEAD)(&item_button_next_label))->style.bShowIdx = TXTN_SH_IDX;//TXT_SH_IDX;
                ((POBJECT_HEAD)(&item_button_next_label))->style.bHLIdx = TXTN_HL_IDX;
		((POBJECT_HEAD)(&item_button_next_label))->style.bSelIdx = TXTN_SL_IDX;
		((POBJECT_HEAD)(&item_button_next_label))->style.bGrayIdx = TXTN_GRY_IDX;

				OSD_SetRect(&(item_network_con.head.frame),CON_L, CON_T,CON_W,CON_H);
				OSD_SetRect(&(item_network_label.head.frame),CON_L, CON_T,TXTN_W,CON_H);
				OSD_SetRect(&(item_network_sel.head.frame),CON_L+TXTS_L_OF, CON_T,TXTS_W,CON_H);

				((POBJECT_HEAD)(&item_network_con))->bUpID = BUTTON_NEXT_ID;
				((POBJECT_HEAD)(&item_network_con))->bDownID = BUTTON_NEXT_ID;

				OSD_SetTextFieldContent(&item_button_next_label,STRING_ID,RS_COMMON_SEARCH);
                win_country_net_con.head.style.bShowIdx = WIN_SH_IDX;
                win_country_net_con.head.style.bHLIdx = WIN_HL_IDX;
                win_country_net_con.head.style.bSelIdx = WIN_SL_IDX;
                win_country_net_con.head.style.bGrayIdx = WIN_GRY_IDX;

                OSD_SetRect(&(win_country_net_con.head.frame), W_L,W_T,W_W,W_H);
                
			}else
			{
				wincom_open_subtitle((POBJECT_HEAD)&win_country_net_con,RS_SYSTEM_WELCOME, 0);
				OSD_SetAttr(&item_country_con, C_ATTR_ACTIVE);
				OSD_SetAttr(&item_button_prev_con, C_ATTR_ACTIVE);
				OSD_SetRect(&(item_button_next_con.head.frame),CON_W-80, CON_T + (CON_H + CON_GAP)*7, BTN_W, BTN_H);
				OSD_SetRect(&(item_button_next_label.head.frame),CON_W-80, CON_T + (CON_H + CON_GAP)*7, BTN_W, BTN_H);

				((POBJECT_HEAD)(&item_button_next_con))->bLeftID = BUTTON_PREV_ID;
				((POBJECT_HEAD)(&item_button_next_con))->bUpID = NETWORK_ID;
				((POBJECT_HEAD)(&item_button_next_con))->bDownID = COUNTRY_ID;
				((PTEXT_FIELD)(&item_button_next_label))->bAlign = C_ALIGN_CENTER | C_ALIGN_VCENTER;
                ((POBJECT_HEAD)(&item_button_next_label))->style.bShowIdx = BTN_SH_IDX;

				OSD_SetRect(&(item_network_con.head.frame),CON_L, CON_T + (CON_H + CON_GAP)*1,CON_W-30,CON_H);
				OSD_SetRect(&(item_network_label.head.frame),CON_L, CON_T + (CON_H + CON_GAP)*1,TXTN_W,CON_H);
				OSD_SetRect(&(item_network_sel.head.frame),CON_L+TXTS_L_OF, CON_T + (CON_H + CON_GAP)*1,TXTS_W,CON_H);

				((POBJECT_HEAD)(&item_network_con))->bUpID = COUNTRY_ID;
				((POBJECT_HEAD)(&item_network_con))->bDownID = BUTTON_NEXT_ID;

               // win_country_net_con.head.style.bShowIdx = WSTL_WIN_BODYLEFT_01_HD;
               // win_country_net_con.head.style.bHLIdx = WSTL_WIN_BODYLEFT_01_HD;
               // win_country_net_con.head.style.bSelIdx = WSTL_WIN_BODYLEFT_01_HD;
               // win_country_net_con.head.style.bGrayIdx = WSTL_WIN_BODYLEFT_01_HD;
                OSD_SetRect(&(win_country_net_con.head.frame), MAIN_W_L, W_T, MAIN_W_W, W_H);

			}
			load_settings();
			break;
		case EVN_POST_OPEN:
			// win_help_guide_open_ex(pObj,com_guide,2);
			 break;
		case EVN_PRE_CLOSE:
			sys_data_save(1);
			/* Make OSD not flickering */
			*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;
			from_auto_scan = FALSE;
			break;
		case EVN_POST_CLOSE:
			wincom_close_subtitle();
			OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
			break;
		case EVN_MSG_GOT:
			break;
	}
	return ret;
}
Ejemplo n.º 19
0
void win_capin_switch_confirm(UINT8 stage, BOOL flag)
{
	UINT8 action,opp_action;

	if(flag)
	{
		action = C_ATTR_ACTIVE;
		opp_action = C_ATTR_INACTIVE;
	}
	else
	{
		action = C_ATTR_INACTIVE;
		opp_action = C_ATTR_ACTIVE;
	}

	if(stage == 1)
	{
		if(flag)
		{
			if( !OSD_CheckAttr(&capin_item_con2, action))
			{
				OSD_SetAttr(&capin_item_con1, opp_action);
				OSD_SetAttr(&capin_item_txtname1, opp_action);
				OSD_SetAttr(&capin_item_txtset1, opp_action);
				OSD_DrawObject((POBJECT_HEAD )&capin_item_con1,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

				OSD_SetAttr(&capin_item_con2, action);
				OSD_SetAttr(&capin_item_txtname2, action);
				OSD_SetAttr(&capin_item_txtset2, action);
				OSD_DrawObject((POBJECT_HEAD )&capin_item_con2,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
			}		
		}
		else
		{
			if( !OSD_CheckAttr(&capin_item_con2, action))
			{
				OSD_SetAttr(&capin_item_con1, opp_action);
				OSD_SetAttr(&capin_item_txtname1, opp_action);
				OSD_SetAttr(&capin_item_txtset1, opp_action);
				OSD_DrawObject((POBJECT_HEAD )&capin_item_con1,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
			
				OSD_SetAttr(&capin_item_con2, action);
				OSD_SetAttr(&capin_item_txtname2, action);
				OSD_SetAttr(&capin_item_txtset2, action);
				OSD_DrawObject((POBJECT_HEAD )&capin_item_con2,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

				OSD_SetAttr(&capin_item_con3, action);
				OSD_SetAttr(&capin_item_txtname3, action);
				OSD_SetAttr(&capin_item_txtset3, action);
				OSD_DrawObject((POBJECT_HEAD )&capin_item_con3,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
			}
		}
	}
	else if(stage == 2)
	{
		if( !OSD_CheckAttr(&capin_item_con3, action))
		{
			OSD_SetAttr(&capin_item_con3, action);
			OSD_SetAttr(&capin_item_txtname3, action);
			OSD_SetAttr(&capin_item_txtset3, action);
			OSD_DrawObject((POBJECT_HEAD )&capin_item_con3,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

			OSD_SetAttr(&capin_item_con1, C_ATTR_INACTIVE);
			OSD_SetAttr(&capin_item_txtname1, C_ATTR_INACTIVE);
			OSD_SetAttr(&capin_item_txtset1, C_ATTR_INACTIVE);
			OSD_DrawObject((POBJECT_HEAD )&capin_item_con1,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
		}
	}
	else if(stage == 3)
	{
			OSD_SetAttr(&capin_item_con2, C_ATTR_ACTIVE);
			OSD_SetAttr(&capin_item_txtname2, C_ATTR_ACTIVE);
			OSD_SetAttr(&capin_item_txtset2, C_ATTR_ACTIVE);
			OSD_SetAttr(&capin_item_con3, C_ATTR_INACTIVE);
			OSD_SetAttr(&capin_item_txtname3, C_ATTR_INACTIVE);
			OSD_SetAttr(&capin_item_txtset3, C_ATTR_INACTIVE);
	}
}
Ejemplo n.º 20
0
static PRESULT sudoku_key_proc(UINT32 vkey, UINT8 key_repeat_cnt, UINT8 key_status)
{
	PRESULT ret = PROC_LOOP;
	UINT8   back_saved;
	UINT8	pos;
	UINT8 i;
	if (key_status == PAN_KEY_PRESSED)
	{
		switch (vkey)
		{
			case V_KEY_UP:
			case V_KEY_DOWN:
			case V_KEY_LEFT: 
			case V_KEY_RIGHT: 
				sudoku_draw_grid(cur_row, cur_col);
				if (vkey == V_KEY_UP)
				{
				cur_row = cur_row == 0 ? 8 : cur_row - 1;
				}
				else if (vkey == V_KEY_DOWN)
				{
				cur_row = cur_row == 8 ? 0 : cur_row + 1;
				}
				else if (vkey == V_KEY_LEFT)
				{
				cur_col = cur_col == 0 ? 8 : cur_col - 1;
				}
				else if (vkey == V_KEY_RIGHT)
				{
				cur_col = cur_col == 8 ? 0 : cur_col + 1;
				}
				sudoku_draw_cursor(cur_row, cur_col);
				break;

			case V_KEY_0:
				pos = cur_row*BOARD_COLS+cur_col;
				if(!IS_FIXED(pos))
				{
					if(pboard[pos]!=' ')
					{
						pboard[pos]=' ';
    					sudoku_draw_cursor(cur_row, cur_col);
					}
				}
				break;
				
			case V_KEY_1:	case V_KEY_2:	case V_KEY_3:
			case V_KEY_4:	case V_KEY_5:	case V_KEY_6:	case V_KEY_7:
			case V_KEY_8:	case V_KEY_9:
				pos = cur_row*BOARD_COLS+cur_col;
				if(!IS_FIXED(pos))
				{
					pboard[pos]=(vkey-V_KEY_0)+0x30;
    				sudoku_draw_cursor(cur_row, cur_col);
				}
				for (i=0;i<81 ;i++ )
					if(pboard[i]==' ')
						break;
				if(i==81)
				{
					for (i=0;i<81 ;i++ )
						if(pboard[i]!=(GET_DIGIT(solved_board[i])+0x30))
							break;
				}
	
				if(i==81)
				{
					completed=1;
					win_compopup_init(WIN_POPUP_TYPE_OK);
					win_compopup_set_frame(GAME_MSG_LEFT,   GAME_MSG_TOP, GAME_MSG_WIDTH,GAME_MSG_HEIGHT);
					win_compopup_set_msg(NULL, NULL, RS_GAME_YOU_WIN);
					if (win_compopup_open_ext(&back_saved) == WIN_POP_CHOICE_YES)
					{
                        sudoku_draw_board();
						//sudoku_draw_grid(cur_row, cur_col);
						OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_ACTIVE);
						OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 1, \
						C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
					}
				}
				break;
			case V_KEY_MENU:
			case V_KEY_EXIT:
				win_compopup_init(WIN_POPUP_TYPE_OKNO);
				win_compopup_set_frame(GAME_MSG_LEFT,   GAME_MSG_TOP, GAME_MSG_WIDTH,GAME_MSG_HEIGHT);
				win_compopup_set_msg(NULL, NULL, RS_GAME_MSG_DO_YOU_QUIT);
				if (win_compopup_open_ext(&back_saved) == WIN_POP_CHOICE_YES)
				{
                    sudoku_draw_board();
					//sudoku_draw_grid(cur_row, cur_col);
					OSD_SetAttr((POBJECT_HEAD)&txt_newgame, C_ATTR_ACTIVE);
					OSD_ChangeFocus((POBJECT_HEAD)&game_sudoku_con, 1, \
					C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
				}
                else
                {
                    sudoku_draw_board();
					sudoku_draw_cursor(cur_row, cur_col);
                }
				break;
			default :
				ret = PROC_PASS;
				break;
		}
	}

	return ret;
}
Ejemplo n.º 21
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);


}
Ejemplo n.º 22
0
void win_time_switch_GMT_Type(UINT8 enable)
{
    UINT8 action;

    if(enable)
    {
        if( !OSD_CheckAttr(&time_item_con2, C_ATTR_ACTIVE))
        {
            OSD_SetAttr(&time_item_con2, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_txtname2, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_txtset2, C_ATTR_ACTIVE);
        }
        if( !OSD_CheckAttr(&time_item_con3, C_ATTR_ACTIVE))
        {
            OSD_SetAttr(&time_item_con3, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_txtname3, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_txtset3, C_ATTR_ACTIVE);
        }
        if( !OSD_CheckAttr(&time_item_con4, C_ATTR_INACTIVE))
        {
            OSD_SetAttr(&time_item_con4, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_txtname4, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_edit4, C_ATTR_INACTIVE);
        }
        if( !OSD_CheckAttr(&time_item_con5, C_ATTR_INACTIVE))
        {
            OSD_SetAttr(&time_item_con5, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_txtname5, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_edit5, C_ATTR_INACTIVE);
        }
    }
    else
    {
        if( !OSD_CheckAttr(&time_item_con2, C_ATTR_INACTIVE))
        {
            OSD_SetAttr(&time_item_con2, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_txtname2, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_txtset2, C_ATTR_INACTIVE);
        }
        if( !OSD_CheckAttr(&time_item_con3, C_ATTR_INACTIVE))
        {
            OSD_SetAttr(&time_item_con3, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_txtname3, C_ATTR_INACTIVE);
            OSD_SetAttr(&time_item_txtset3, C_ATTR_INACTIVE);
        }
        if( !OSD_CheckAttr(&time_item_con4, C_ATTR_ACTIVE))
        {
            OSD_SetAttr(&time_item_con4, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_txtname4, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_edit4, C_ATTR_ACTIVE);
        }
        if( !OSD_CheckAttr(&time_item_con5, C_ATTR_ACTIVE))
        {
            OSD_SetAttr(&time_item_con5, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_txtname5, C_ATTR_ACTIVE);
            OSD_SetAttr(&time_item_edit5, C_ATTR_ACTIVE);
        }
    }


}
Ejemplo n.º 23
0
static PRESULT srch_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT16 title_id;
	POBJECT_HEAD mainmenu;
	UINT8 av_flag;
	UINT16 cur_chan;
	UINT8 back_saved;
	
	switch(event)
	{
	case EVN_PRE_OPEN:
		system_state = SYS_STATE_SEARCH_PROG;
		if(win_search_param.as_method == AS_METHOD_TP
			 || win_search_param.as_method == AS_METHOD_NIT_TP) // tp scan
				title_id = RS_INSTALLATION_TP_SCAN;
		else if(win_search_param.as_method == AS_METHOD_FFT 
	        || win_search_param.as_method == AS_METHOD_MULTI_FFT)//auto scan
	        title_id = RS_INSTALLATION_AUTO_SCAN; 
		else if(win_search_param.as_method == AS_METHOD_SAT_TP
	        ||win_search_param.as_method == AS_METHOD_MULTI_TP
	        || win_search_param.as_method == AS_METHOD_NIT
	        || win_search_param.as_method == AS_METHOD_MULTI_NIT)//preset scan
			title_id = RS_INSTALLATION_PRESET_SCAN;
		else
			title_id = RS_INSTALLATION_AUTO_SCAN;		
		wincom_open_subtitle(pObj,title_id,0);
/*Remove progress bar when search type is AS_METHOD_NIT_TP/AS_METHOD_NIT/AS_METHOD_MULTI_NIT*/
		if(win_search_param.as_method == AS_METHOD_NIT_TP ||
			win_search_param.as_method == AS_METHOD_NIT||
			win_search_param.as_method == AS_METHOD_MULTI_NIT)
		{
            OSD_SetAttr(&srch_progress_txt, C_ATTR_HIDDEN);
            OSD_SetAttr(&srch_progress_bar, C_ATTR_HIDDEN);
		}
        else
        {
            OSD_SetAttr(&srch_progress_txt, C_ATTR_ACTIVE);
            OSD_SetAttr(&srch_progress_bar, C_ATTR_ACTIVE);
        }

		key_pan_display("srch", 4);
		
		epg_off();
		stop_tdt();

#ifdef AUTOSCAN_BYPASS_CI
        // Before Autoscan, DMX0 bypass CI
		if(win_search_param.as_method == AS_METHOD_FFT 
	        || win_search_param.as_method == AS_METHOD_MULTI_FFT)//auto scan
		{
            tsi_dmx_src_select(TSI_DMX_0, TSI_TS_B);
            tsi_para_src_select(TSI_SPI_1,0);
            api_set_nim_ts_type(2, 0x03);			
		}
#endif
#ifdef HW_SS830C
            tsi_dmx_src_select(TSI_DMX_0, TSI_TS_B);	
	     api_set_nim_ts_type(2, 0x03);						
#endif

		break;
	case EVN_POST_OPEN:
		win_search_init();
		break;
	case EVN_PRE_CLOSE:
        win_search_pre_close = 1;
		osal_task_dispatch_off();
		moving_disk = 0;/*Clear moving dish flag*/
		win_search_stop_signal = 1;
		osal_task_dispatch_on();
		as_service_stop();
		db_search_exit();
		//api_stop_timer(&win_search_tmr_id);
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;			

		prog_callback_unregister();
		pid_search_flg = 0;
		break;
	case EVN_POST_CLOSE:
		if((srch_ch_cnt[0] != 0x0)
			|| (srch_ch_cnt[1] != 0x0))
		{
            win_search_last_tp_ok_failed(srch_tp_cnt);

			win_compopup_init(WIN_POPUP_TYPE_SMSG);
			win_compopup_set_msg(NULL, NULL, RS_MSG_WAIT_FOR_SAVING);
			//win_compopup_open();
			win_compopup_open_ext(&back_saved);
			
			update_data();

			win_compopup_smsg_restoreback();
			win_compopup_init(WIN_POPUP_TYPE_OK);
			win_compopup_set_msg("Search End", NULL, 0);
			win_compopup_open_ext(&back_saved);

			/* Change to all satellite group */
            UINT32 grp_idx = sys_data_get_cur_group_index();

			sys_data_check_channel_groups();
			sys_data_set_cur_group_index(grp_idx);

			av_flag = sys_data_get_cur_chan_mode();

			if(sys_data_get_sate_group_num(av_flag) == 0)
			{
				av_flag = (av_flag == TV_CHAN)? RADIO_CHAN : TV_CHAN;
				sys_data_set_cur_chan_mode(av_flag);
			}
			if(av_flag == RADIO_CHAN && (srch_ch_cnt[1] != 0x0))        //guop add  20101231
			{
				av_flag = TV_CHAN;
				sys_data_set_cur_chan_mode(av_flag);
			}

			sys_data_change_group(grp_idx);

			if(srch_ch_cnt[av_flag] > 0)
			{
				cur_chan = get_prog_pos(win_search_cur_prog[av_flag].prog_id);
				if(cur_chan == 0xFFFF)
				{
                    grp_idx = get_sat_pos(cur_sat_id) + 1;
        			sys_data_change_group(grp_idx);
    				cur_chan = get_prog_pos(win_search_cur_prog[av_flag].prog_id);
                    if (cur_chan == 0xFFFF)
                    {
            			sys_data_change_group(0);
        				cur_chan = get_prog_pos(win_search_cur_prog[av_flag].prog_id);
                        if (cur_chan == 0xffff)
    					    cur_chan = 0;
                    }
				}
				sys_data_set_cur_group_channel(cur_chan);
			}
			else if(sys_data_get_sate_group_num(av_flag))
				key_pan_display("noCH", 4);
			else
				key_pan_display("----", 4);
			sys_data_save(1);
			epg_reset();
		}

		OSD_ClearObject( (POBJECT_HEAD)&srch_progress_bar, C_UPDATE_ALL);
		OSD_ClearObject( (POBJECT_HEAD)&srch_progress_txt, C_UPDATE_ALL);

		mainmenu = (POBJECT_HEAD)&g_win_mainmenu;
		OSD_TrackObject(mainmenu,C_UPDATE_ALL);

#ifdef AUTOSCAN_BYPASS_CI
        // After Autoscan, DMX0 NOT bypass CI
		if(win_search_param.as_method == AS_METHOD_FFT 
	        || win_search_param.as_method == AS_METHOD_MULTI_FFT)//auto scan
		{
            tsi_dmx_src_select(TSI_DMX_0, TSI_TS_A);
            tsi_para_src_select(TSI_SPI_1,0);
		}
#endif
		start_tdt();
		system_state = SYS_STATE_NORMAL;
		
		break;
	case EVN_MSG_GOT:
		ret = win_search_message_proc(param1,param2);		
		break;

	}

	return ret;
}
Ejemplo n.º 24
0
static void ci_info_init()
{
	char * tmp;
	UINT8 *tmp_buf;
	
	// init
	MEMSET(&ci_info, 0, sizeof(ci_info));
	// get menu string
	tmp_buf = (void*)(win_ci_get_tmp_buf());
	
	tmp = api_ci_get_menu_string(tmp_buf, CI_DATA_BUFFER_LEN, ci_slot);

	if(tmp != NULL)
	{
		ci_info_set_string(ci_info.name, CI_MENU_TXT_LENGTH, tmp);
	}
	else
	{
		ci_info.name[0] = '\0';
	}


	//set the window style as the difference show modal
	win_ci_info_set_colorstyle();
	if(win_ci_info_modal == WIN_CI_INFO_SHOW_AS_MODAL)
	{
        OSD_SetColor((POBJECT_HEAD)&g_win_ci_info,WIN_SH_IDX_SD,WIN_HL_IDX_SD,WIN_SL_IDX_SD,WIN_GRY_IDX_SD);
        OSD_MoveObject((POBJECT_HEAD)&g_win_ci_info, W_L_SD,W_T_SD, 0);//62, 55, 0);
		OSD_MoveObject((POBJECT_HEAD)&txt_ci_info_split1, W_L_SD + 10, SPLIT_1_T_SD, 0); //62, SPLIT_1_T, 0);
		OSD_MoveObject((POBJECT_HEAD)&txt_ci_info_split2, W_L_SD + 10, SPLIT_2_T_SD, 0);//62, SPLIT_2_T - 1, 0);
	}
	else
	{
		OSD_SetColor((POBJECT_HEAD)&g_win_ci_info, WIN_SUBMENU_BODY_FRAME, WIN_SUBMENU_BODY_FRAME, WIN_SUBMENU_BODY_FRAME, WIN_SUBMENU_BODY_FRAME);//guop
		OSD_MoveObject((POBJECT_HEAD)&g_win_ci_info, W_L,W_T, 0);
		OSD_MoveObject((POBJECT_HEAD)&txt_ci_info_split1, SPLIT_1_L, SPLIT_1_T, 0);
		OSD_MoveObject((POBJECT_HEAD)&txt_ci_info_split2, SPLIT_1_L, SPLIT_2_T, 0);
	}
	

	/////////////////////////////////////////////////////////////////////////	
	//clear the menu
	//1. CI Title
	OSD_SetTextFieldContent(&txt_ci_info_title, STRING_UNICODE, (UINT32)"");
	//2. sub title
	ci_info_subtitle_content[0].text.pString = NULL;
	
	//3. bottom 
	OSD_SetTextFieldContent(&txt_ci_info_bottom, STRING_UNICODE, (UINT32)"");
	//4. list
	OSD_SetObjListCount(&olst_ci_info, 0);
	
	OSD_SetAttr(&sb_ci_info, C_ATTR_HIDDEN);

	//show the ci enquiry dialog
	OSD_SetObjpNext(&txt_ci_info_bottom, NULL);
	//the the windows focus to the dialog
	g_win_ci_info.FocusObjectID = 1;


}
Ejemplo n.º 25
0
static PRESULT lan_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT32 i;
	UINT8	unact;
	BOOL subt_popup;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);
	SYSTEM_DATA* p_sys_data;
	UINT8 lang_code[8];
    
	switch(event)
	{
	case EVN_PRE_OPEN:
#ifdef EXIT_KEY_EXIT_ALL_MENU
	         exit_key_flag =  FALSE;
#endif
		wincom_open_subtitle((POBJECT_HEAD)&win_lan_con,RS_SYSTEM_LANGUAGE, 0);
#ifdef SHOW_WELCOME_SCREEN
		if(show_win_as_welcome)
		//if(1)
		{
			OSD_SetAttr(&lan_item_con6, C_ATTR_ACTIVE);
			((POBJECT_HEAD)(&lan_item_con1))->bUpID = 6;
			((POBJECT_HEAD)(&lan_item_con5))->bDownID = 6;
            //win_lan_con.head.style.bShowIdx = WSTL_WIN_BODYLEFT_01_HD;
            //win_lan_con.head.style.bHLIdx = WSTL_WIN_BODYLEFT_01_HD;
           // win_lan_con.head.style.bSelIdx = WSTL_WIN_BODYLEFT_01_HD;
           // win_lan_con.head.style.bGrayIdx = WSTL_WIN_BODYLEFT_01_HD;
            OSD_SetRect(&(win_lan_con.head.frame), MAIN_W_L, W_T, MAIN_W_W, W_H);
		}
		else
		{
			OSD_SetAttr(&lan_item_con6, C_ATTR_HIDDEN);
			((POBJECT_HEAD)(&lan_item_con1))->bUpID = 5;
			((POBJECT_HEAD)(&lan_item_con5))->bDownID = 1;
            win_lan_con.head.style.bShowIdx = WIN_SH_IDX;
            win_lan_con.head.style.bHLIdx = WIN_HL_IDX;
            win_lan_con.head.style.bSelIdx = WIN_SL_IDX;
            win_lan_con.head.style.bGrayIdx = WIN_GRY_IDX;

            OSD_SetRect(&(win_lan_con.head.frame), W_L, W_T, W_W, W_H);
    		//remove_menu_item(&win_lan_con, (OBJECT_HEAD *)&lan_item_con6, CON_H + CON_GAP);
			
		}
         ((CONTAINER*)(&win_lan_con))->FocusObjectID = 1;
#endif

		p_sys_data=sys_data_get();
//libc_printf("\nmmmmm-lan_open--mmmmmmm==%d\n",p_sys_data->lang.OSD_lang);
		win_lan_set_menu_lan_string(p_sys_data->lang.OSD_lang);
		win_lan_set_1st_audio_lan_string(p_sys_data->lang.Audio_lang_1);
		win_lan_set_2nd_audio_lan_string(p_sys_data->lang.Audio_lang_2);
		win_lan_set_subtitle_lan_string(p_sys_data->lang.sub_lang);
		win_lan_set_teletext_lan_string(p_sys_data->lang.ttx_lang);
#ifdef ORDER_GZ1207009
		win_lan_set_epg_lan_string(p_sys_data->lang.epg_lang);
#endif

#ifdef SUPPORT_POP_SUBT
		subt_popup = TRUE;
#else
		subt_popup = FALSE;
#endif

#ifdef PREVIEW_SUBMENU  //-a by wangyang 
{
				
			POBJECT_HEAD focusObj=OSD_GetFocusObject(pObj);
			
			if(param2==MENU_OPEN_TYPE_OTHER)
			{
				lan_item_set[focusObj->bID-1]->style.bHLIdx=TXTS_SH_IDX;
				lan_item_name[focusObj->bID-1]->style.bHLIdx=TXTN_SH_IDX;
			}
			else
			{
				lan_item_set[focusObj->bID-1]->style.bHLIdx=TXTS_HL_IDX;
				lan_item_name[focusObj->bID-1]->style.bHLIdx=TXTN_HL_IDX;
			}

}
#endif

	/*	if(subt_popup) //-d by wangyang  for add subtitle language
		{
			remove_menu_item(&win_lan_con, (POBJECT_HEAD)lan_items[3], (CON_H + CON_GAP));			
		}*/
		break;
	
	case EVN_POST_OPEN:
		wincom_open_commen_help(pObj);//-a by wangyang 
		break;
		
	case EVN_PRE_CLOSE:
#ifdef EPG_MULTI_LANG
#ifndef ORDER_GZ1207009
		/*set epg language*/
		p_sys_data = sys_data_get();
		STRCPY(lang_code,stream_iso_639lang_abbr[p_sys_data->lang.OSD_lang]);
		epg_set_lang_code(lang_code);
#endif
#endif

#ifndef NEW_DEMO_FRAME
		UIChChgApplyAudLanguage();
#endif
//libc_printf("\nmmmmm---mmmmmmm==%d\n",p_sys_data->lang.OSD_lang);
		sys_data_save(1);
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		
		break;

	case EVN_POST_CLOSE:
              TTXEng_set_g0_set();
  		wincom_close_subtitle();
			OSD_ClearScreen();
#ifdef EXIT_KEY_EXIT_ALL_MENU
	        if( exit_key_flag == TRUE)
	        	{
 			 exit_key_flag =FALSE;
			mm_leave_all_menu();
		}
#endif
		//OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
		break;
	}
	return ret;
}
Ejemplo n.º 26
0
static PRESULT tetris_key_proc(UINT32 vkey, UINT8 key_repeat_cnt, UINT8 key_status)
{
    	UINT8   back_saved;
	PRESULT ret = PROC_LOOP;
	if (key_status == PAN_KEY_PRESSED)
	{
		switch (vkey)
		{
			case V_KEY_UP:
				ChangeShape(&x, &y, &CurrentShape, &Status);
				break;

			case V_KEY_DOWN:
				GoDown(&x, &y, &CurrentShape, &Status);
				if (key_repeat_cnt == 0)
				{
				/* speed up drop speed */
				osal_timer_set(GAME_CYCLIC_ID, 100);
				speed_up = TRUE;
				}
				break;

			case V_KEY_LEFT: 
				GoLeft(&x, &y, &CurrentShape, &Status);
				break;

			case V_KEY_RIGHT: 
				GoRight(&x, &y, &CurrentShape, &Status);
				break;

			case V_KEY_ENTER:
				if (playing == TRUE)
				{
					osal_timer_activate(GAME_CYCLIC_ID, FALSE);

					win_compopup_init(WIN_POPUP_TYPE_OK);
					win_compopup_set_frame(GET_MID_L(170), GET_MID_T(130), 170, 130);                    
					win_compopup_set_msg(NULL, NULL, RS_PAUSE);
					win_compopup_open_ext(&back_saved);

					osal_timer_activate(GAME_CYCLIC_ID, TRUE);
				}
				break;

			case V_KEY_MENU:
			case V_KEY_EXIT:
				if (playing == TRUE)
				{
					osal_timer_activate(GAME_CYCLIC_ID, FALSE);

					win_compopup_init(WIN_POPUP_TYPE_OKNO);
					//win_compopup_set_frame(GET_MID_L(250), GET_MID_T(130), 250, 130);
					win_compopup_set_frame(GET_MID_L(250), GET_MID_T(130), 320, 130);
					win_compopup_set_msg(NULL, NULL, RS_GAME_MSG_DO_YOU_QUIT);
					if (win_compopup_open_ext(&back_saved) == WIN_POP_CHOICE_YES)
					{
						playing = FALSE;

						tetris_init();
 						update_status(Speed, Erasered, TotalMark);
 						tetris_redraw_main();
 						tetris_redraw_preview();

						OSD_SetAttr((POBJECT_HEAD)&txt_start, C_ATTR_ACTIVE);
						OSD_ChangeFocus((POBJECT_HEAD)&game_con, 1, \
						C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
					}
					else
					{
						osal_timer_activate(GAME_CYCLIC_ID, TRUE);
					}
				}
				break;
			default:
				ret = PROC_PASS;
		}
	}
	else if (key_status == PAN_KEY_RELEASE)
	{
		normal_speed();
	}

	return ret;
}
Ejemplo n.º 27
0
static BOOL GoDown(INT16 *x, INT16 *y, INT8 *CurrentShape, INT8 *Status)
{
    INT8 AllAreOne = 1, removed_lines = 0;
    INT8 i, j, r, l, rr, ll;
    UINT8   back_saved;

    
    if (Possible(*x, (*y) + 1, *CurrentShape, *Status))
    {
        hide(*x, *y, *CurrentShape, *Status);
        (*y)++;
        show(*x, *y, *CurrentShape, *Status, BLOCK_ACTIVE);
        return TRUE;
    }

    normal_speed();

    for (i = 0; i < 4; i++)
    {
        for (j = 0; j < 4; j++)
        {
            back[i + *y][j + *x] += shape[*CurrentShape][*Status][i][j];
        }
    }

    for (r = 1; r < MAXY; r++)//20
    {
        for (l = 2; l < 2 + MAXX; l++)//13
        {
            if (back[r][l] == 0)
            {
                AllAreOne = 0;
            }
        }

        if (AllAreOne == 1)
        {
            for (rr = r; rr > 0; rr--)
            {
                for (ll = 2; ll < 2 + MAXX; ll++)
                {
                    back[rr][ll] = back[rr - 1][ll];
                }
            }

		for (ll = 2; ll < 2 + MAXX; ll++)
		{
			back[0][ll] = 0;
		}//the upper line will be all zero which represented the line is blank

            Erasered++;
            if((!(Erasered % 30)) && (Speed < 10))
            {
                Speed++;
                osal_timer_set(GAME_CYCLIC_ID, TimeDelay[Speed - 1]);
            }
            
            removed_lines++;
        }

        AllAreOne = 1;
    }

    show(*x, *y, *CurrentShape, *Status, BLOCK_INACTIVE); //sunk the button

    CreateNewShape(x, y, CurrentShape, Status);

    if (!Possible(*x, *y, *CurrentShape, *Status))
    {
        playing = FALSE;

        osal_timer_activate(GAME_CYCLIC_ID, FALSE);

        win_compopup_init(WIN_POPUP_TYPE_OK);
        win_compopup_set_frame(GET_MID_L(250), GET_MID_T(130), 250, 130);
        win_compopup_set_msg(NULL, NULL, RS_GAME_SORRY_YOU_LOST);
        win_compopup_open_ext(&back_saved);

	tetris_init();
	update_status(Speed, Erasered, TotalMark);
	tetris_redraw_main();
	tetris_redraw_preview();

        OSD_SetAttr((POBJECT_HEAD)&txt_start, C_ATTR_ACTIVE);
        OSD_ChangeFocus((POBJECT_HEAD)&game_con, 1, \
              C_UPDATE_FOCUS | C_DRAW_SIGN_EVN_FLG);
    }

    TotalMark += (Speed + 1) * (10 + removed_lines - 1) * removed_lines;
    update_status(Speed, Erasered, TotalMark);

    if (removed_lines > 0)
    {
        tetris_redraw_main();
    }

    if (playing == TRUE)
    {
        show(*x, *y, *CurrentShape, *Status, BLOCK_ACTIVE);
    }

    return FALSE;
}
Ejemplo n.º 28
0
static PRESULT sys_backup_item_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	UINT8 bID,back_saved;
	UINT16 block_idx,file_idx,popup_strid;
	INT32 vscr_idx,length,fileread_ret;
	char str_buff[20];
	void *pBuff;
	BOOL burnflash_ret;
	VACTION unact;
	PRESULT ret;
	PMULTISEL pMsel;
	lpVSCR apVscr;
	win_popup_choice_t choice;
	UINT8 tmp[4];
	UINT8 block_name[20];
	UINT8 file_extention[4];
	UINT8 file_name[24];
	UINT32 chunk_offset;
	USB_BACKUP_MODE_TYPE_E usb_backup_mode;
	
	ret = PROC_PASS;	
	bID = OSD_GetObjID(pObj);
	switch(event)
	{
		case EVN_UNKNOWN_ACTION:
			unact = (VACTION)(param1>>16);
			if(unact == VACT_ENTER && bID == START_ID)
			{
//				start_backup =1;
				win_sys_backup_msg_clear();
				win_sys_backup_process_update(0);
				vscr_idx = osal_task_get_current_id();
				apVscr = OSD_GetTaskVscr(vscr_idx);

				popup_strid = RS_SYS_BACKUP_ALERT_NOPLUG;
				
				win_compopup_init(WIN_POPUP_TYPE_SMSG);
				win_compopup_set_msg(NULL,NULL, popup_strid);
				win_compopup_open_ext(&back_saved);
				osal_task_sleep(2000);
				win_compopup_smsg_restoreback();
				
				OSD_SetAttr(&sys_backup_item_con1, C_ATTR_INACTIVE);
				OSD_SetAttr(&sys_backup_item_con2, C_ATTR_INACTIVE);
				OSD_DrawObject( (POBJECT_HEAD)&sys_backup_item_con1, C_UPDATE_ALL);
				OSD_DrawObject( (POBJECT_HEAD)&sys_backup_item_con2, C_UPDATE_ALL);

				pMsel = &sys_backup_sel_upgrade_type;
				usb_backup_mode = OSD_GetMultiselSel(pMsel);
				switch(usb_backup_mode)
				{
					case EM_BACKUP_MODE_TOTAL_FLASH:
						block_idx = 0;
						break;

					case EM_BACKUP_MODE_USER_DATA:
						block_idx = usbupg_get_block_index(USBUPG_USERDB);
						break;

#ifdef EANBLE_BAKUP_CCCAM_NEWCAMD_DATA					
					case EM_BACKUP_MODE_CCCAM_NEWCAMD:
						block_idx = usbupg_get_block_index(USBUPG_CCCAM_NEWCAMD);
						break;
#endif
#ifdef ENABLE_SOFT_CAM_KEY					
					case EM_BACKUP_MODE_SOFTCAM:
						block_idx = usbupg_get_block_index(USBUPG_SOFTCAM);
						break;
#endif
					
					default:
//						start_backup =0;
						ASSERT(0);
						return;
				}

				usbupg_get_blockinfo(block_idx, block_name, &chunk_offset);
				usb_backup_get_file_filter(usb_backup_mode, file_extention, tmp);
				sprintf(file_name, "%s.%s", block_name, file_extention);
				string_to_lower(file_name);
				//libc_printf("[sys_backup_item_callback]block_idx = %d, block_name = %s, file_extention = %s, file_name = %s", block_idx, block_name, file_extention, file_name);

#ifdef EANBLE_BAKUP_CCCAM_NEWCAMD_DATA
				if(EM_BACKUP_MODE_CCCAM_NEWCAMD == usb_backup_mode)
				{
					//save the cccam data and newcamd data(first 16 group data)
					ret = usbupg_dump_flash2(CccamNewcamdBackup,(64*1024),file_name, win_sys_backup_process_update);
				}
				else
#endif
#ifdef ENABLE_SOFT_CAM_KEY
				if(EM_BACKUP_MODE_SOFTCAM == usb_backup_mode)
				{
					//save the softcam data
					ret = usbupg_dump_flash2(softcam_backup, 64*1024,file_name, win_sys_backup_process_update);
				}
				else
#endif
				{
				#if 1//def WANGYANG
					ret = usbupg_dump_flash3(block_idx, file_name, win_sys_backup_process_update,win_progress_bar_draw_bmp);
				#else
					ret = usbupg_dump_flash(block_idx, file_name, win_sys_backup_process_update);
				#endif
				}

				if (ret ==RET_SUCCESS)
				{
					popup_strid = RS_MSG_BACKUP_SUCCESS;
				}
				else
				{
					popup_strid = RS_OTA_UPGRADE_FAIL;
				}

ERROR_HANDLER:
			
				OSD_SetAttr(&sys_backup_item_con1, C_ATTR_ACTIVE);
				OSD_SetAttr(&sys_backup_item_con2, C_ATTR_ACTIVE);
				OSD_DrawObject( (POBJECT_HEAD)&sys_backup_item_con1, C_UPDATE_ALL);
				OSD_TrackObject( (POBJECT_HEAD)&sys_backup_item_con2, C_UPDATE_ALL);
				OSD_UpdateVscr(apVscr);
//				start_backup =0;
				
				if(popup_strid != 0)
				{
					win_sys_backup_msg_update(popup_strid);
					
					win_compopup_init(WIN_POPUP_TYPE_SMSG);
					win_compopup_set_msg(NULL,NULL, popup_strid);
					win_compopup_open_ext(&back_saved);
					osal_task_sleep(2000);
					win_compopup_smsg_restoreback();
				}

				return ret;
			}
			break;
	}

	return ret;
}
Ejemplo n.º 29
0
void win_set_mp_pvr_help_attr(UINT8 main_help, TITLE_TYPE title_type)
{
	POBJECT_HEAD pObj;	
	UINT8 i = 0;
	TEXT_FIELD* pTxt;
	struct mp_help_item1_resource* helpitem;
	
	if(title_type == TITLE_RECORD)
	{
		pObj = (OBJECT_HEAD *)&g_win_record;
	}
	else
	{
		pObj = (OBJECT_HEAD *)&g_win_usb_filelist;
	}	
	if(main_help == 1)
	{
		if(OSD_GetFocusID(pObj) == MP_DEVICE_ID)
		{
			switch(title_type)
			{
			case TITLE_MUSIC:
				OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_INACTIVE);//play list
				OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_INACTIVE);//fav
				OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_INACTIVE);//fav all
				OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_ACTIVE);//edit
				OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);//info
				
				OSD_SetAttr(pHelp2Txt_ids[0], C_ATTR_ACTIVE);//switch
				OSD_SetAttr(pHelp2Txt_ids[1], C_ATTR_INACTIVE);//sort
				OSD_SetAttr(pHelp2Txt_ids[2], C_ATTR_INACTIVE);//repeat
				OSD_SetAttr(pHelp2Txt_ids[3], C_ATTR_ACTIVE);//exit
				OSD_SetAttr(pHelp2Txt_ids[4], C_ATTR_ACTIVE);
				break;
			case TITLE_IMAGE:
				OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_INACTIVE);//play list
				OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_INACTIVE);//fav
				OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_INACTIVE);//fav all
				OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_ACTIVE);//edit
				OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);//info
				
				OSD_SetAttr(pHelp2Txt_ids[0], C_ATTR_ACTIVE);//switch
				OSD_SetAttr(pHelp2Txt_ids[1], C_ATTR_INACTIVE);//sort
				OSD_SetAttr(pHelp2Txt_ids[2], C_ATTR_INACTIVE);//setup
				OSD_SetAttr(pHelp2Txt_ids[3], C_ATTR_INACTIVE);//multi view
				OSD_SetAttr(pHelp2Txt_ids[4], C_ATTR_ACTIVE);//exit
				break;
			case TITLE_VIDEO:
				OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_ACTIVE);//edit
				OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_ACTIVE);//info
				OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_ACTIVE);
				OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_ACTIVE);
				OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);
				
				OSD_SetAttr(pHelp2Txt_ids[0], C_ATTR_ACTIVE);//switch
				OSD_SetAttr(pHelp2Txt_ids[1], C_ATTR_INACTIVE);//sort
				OSD_SetAttr(pHelp2Txt_ids[2], C_ATTR_ACTIVE);//exit
				OSD_SetAttr(pHelp2Txt_ids[3], C_ATTR_ACTIVE);
				OSD_SetAttr(pHelp2Txt_ids[4], C_ATTR_ACTIVE);
				break;
			case TITLE_RECORD:
				OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_INACTIVE);//rename
				OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_INACTIVE);//lock
				OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_INACTIVE);//delete
				OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_ACTIVE);//advance
				OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);//info
				
				OSD_SetAttr(pHelp2Txt_ids[0], C_ATTR_ACTIVE);//switch
				OSD_SetAttr(pHelp2Txt_ids[1], C_ATTR_INACTIVE);//sort
				OSD_SetAttr(pHelp2Txt_ids[2], C_ATTR_ACTIVE);//exit
				OSD_SetAttr(pHelp2Txt_ids[3], C_ATTR_ACTIVE);
				OSD_SetAttr(pHelp2Txt_ids[4], C_ATTR_ACTIVE);
				break;
			default:
				break;
			}
		}
		else
		{
			for(i = 0; i < help_cnt1[title_type];i++)
			{
				pTxt = pHelp1Txt_ids[i];
				OSD_SetAttr(pTxt, C_ATTR_ACTIVE);
			}
			
			for(i = 0; i < help_cnt2[title_type];i++)
			{
				pTxt = pHelp2Txt_ids[i];
				OSD_SetAttr(pTxt, C_ATTR_ACTIVE);
			}
		}
	}
	else //edit&advance help
	{
		if(OSD_GetFocusID(pObj) == MP_DEVICE_ID)
		{
			switch(title_type)
			{
			case TITLE_MUSIC:
			case TITLE_IMAGE:
			case TITLE_VIDEO:
				OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_INACTIVE);//rename
				OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_INACTIVE);//copy
				OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_INACTIVE);//delete
				OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_INACTIVE);//+folder
				OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);//info
				break;
			case TITLE_RECORD:
				OSD_SetAttr(pHelp1Txt_ids[0], C_ATTR_INACTIVE);//copy
				OSD_SetAttr(pHelp1Txt_ids[1], C_ATTR_ACTIVE);//info
				OSD_SetAttr(pHelp1Txt_ids[2], C_ATTR_ACTIVE);//
				OSD_SetAttr(pHelp1Txt_ids[3], C_ATTR_ACTIVE);//
				OSD_SetAttr(pHelp1Txt_ids[4], C_ATTR_ACTIVE);//
				break;
			default:
				break;
			}

		}
		else
		{
			for(i = 0; i < edithelp_cnt[title_type];i++)
			{
				pTxt = pHelp1Txt_ids[i];
				OSD_SetAttr(pTxt, C_ATTR_ACTIVE);
			}
		}
	}
}
Ejemplo n.º 30
0
BOOL ota_load_parameter()
{
	UINT32 addr;
	UINT32 len;	
    unsigned char *p = NULL;
	UINT32 m_ota_load_offset;
	BOOL ret = FALSE;	
	UINT32 ota_bin_max_size = 0x200000;

	struct sto_device *flash_dev = (struct sto_device *)dev_get_by_type(NULL, HLD_DEV_TYPE_STO);

#ifndef _CAS9_CA_ENABLE_
	do 
	{
		if(!find_ota_loader(&m_ota_load_offset))
			break;;

		if((UINT32)flash_dev->totol_size > m_ota_load_offset)
		{
			ota_bin_max_size = (UINT32)flash_dev->totol_size-m_ota_load_offset;
		}
		if(ota_bin_max_size < 0x100000)
			ota_bin_max_size = 0x100000;
		
		chunk_init(m_ota_load_offset+SYS_FLASH_BASE_ADDR, ota_bin_max_size);
		
		// get user_db address
		if(!get_chunk_add_len(0x15Fa0200, &addr, &len))
			break;

		p = (UINT8 *)addr;
		MEMCPY(&m_ota_cfg, p, sizeof(m_ota_cfg));
	    
	    ota_freq = m_ota_cfg.t_node.frq;
	    ota_symb = m_ota_cfg.t_node.sym;
	    ota_pid = m_ota_cfg.pid;
		ota_pol = m_ota_cfg.t_node.pol;
        ota_modulation= m_ota_cfg.t_node.FEC_inner; //DVBC 
		ret = TRUE;
	}while(0);
#endif

	if((ota_freq == 0) && (ota_symb == 0) && (ota_pid == 0))
	{
#if (SYS_PROJECT_FE == PROJECT_FE_DVBS || SYS_PROJECT_FE == PROJECT_FE_DVBS2)
	    ota_freq = 4150;
	    ota_symb = 40000;
	    ota_pid = 256;
		ota_pol = 0;
#else
        //DVBC setting
	    ota_freq = 5050;
	    ota_symb = 6875;
	    ota_pid = OTA_DATA_PID;
		ota_modulation = QAM64;

#endif		
	}

#if (SYS_PROJECT_FE == PROJECT_FE_DVBS || SYS_PROJECT_FE == PROJECT_FE_DVBS2)
	OSD_ChangeFocus((POBJECT_HEAD)&win_otaupg_con, 7, 0);
	CONTAINER *con = &wota_con0;
	OSD_SetAttr(con, C_ATTR_INACTIVE);
	con = &wota_con1;
	OSD_SetAttr(con, C_ATTR_INACTIVE);		
	PTEXT_FIELD pText = &wota_txt0;
	OSD_SetAttr(pText, C_ATTR_INACTIVE);
	pText = &wota_txt1;
	OSD_SetAttr(pText, C_ATTR_INACTIVE);		

	PMULTISEL pmul = &wota_num0;
	OSD_SetAttr(pmul, C_ATTR_INACTIVE);	
	pmul = &wota_num1;
	OSD_SetAttr(pmul, C_ATTR_INACTIVE);
#endif

	return ret;
}