• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ OSD_TrackObject函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中OSD_TrackObject函数的典型用法代码示例。如果您正苦于以下问题:C++ OSD_TrackObject函数的具体用法?C++ OSD_TrackObject怎么用?C++ OSD_TrackObject使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了OSD_TrackObject函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: hddfmt_callback

static PRESULT hddfmt_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT16 title_id;
	POBJECT_HEAD nextObj;

	switch(event)
	{
	case EVN_PRE_OPEN:
		if(hddfmt_window_active)
		{
			hddfmt_window_active= TRUE;
			title_id = RS_STORAGE_FORMAT;
			OSD_SetContainerNextObj(&g_win_hddformat, (POBJECT_HEAD)&hddfmt_item_con1);
		}
		else
		{
			title_id = RS_HDD_NFORMATION;
			hddfmt_window_active = FALSE;
			OSD_SetContainerNextObj(&g_win_hddformat, NULL);
		}			
		hddfmt_vol_init();
		hddfmt_set_vol_string(&hddfmt_item_txtset1);
	
		wincom_open_subtitle(pObj,title_id,0);
		break;
	case EVN_POST_OPEN:
		break;
	case EVN_PRE_CLOSE:
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		break;
	case EVN_POST_CLOSE:
		break;
	case EVN_POST_DRAW:
		win_hddfmt_draw_disk_infor();
		break;
    case EVN_MSG_GOT:
        if(param1 == CTRL_MSG_SUBTYPE_CMD_STO && param2 == USB_STATUS_OVER)
        {
		//	storage_dev_mount_hint(1);
			hddfmt_vol_init();
			if(storage_get_volume_count() == 0)
			{
				ret = PROC_LEAVE;
			}
			else if(hddfmt_window_active)
			{
				hddfmt_set_vol_string(&hddfmt_item_txtset1);
				OSD_TrackObject((POBJECT_HEAD)&g_win_hddformat, C_UPDATE_ALL);
				win_hddfmt_draw_disk_infor();
			}
        }
		break;
		
	}

	return ret;
}
开发者ID:alkap007,项目名称:ali3606,代码行数:59,代码来源:win_pvr_hdd_format.c


示例2: win_par_right_key

void win_par_right_key(POBJECT_HEAD pObj,UINT8 id)
{
	SYSTEM_DATA* p_sys_data=sys_data_get();
	switch(id)
	{
		case MENU_PARENTAL_MENU_LOCK:
			p_sys_data->menu_lock=1-p_sys_data->menu_lock;
			win_par_set_menu_lock_string(p_sys_data->menu_lock);
			OSD_TrackObject(pObj,C_UPDATE_ALL);
			break;
		case MENU_PARENTAL_CHANNEL_LOCK:
			p_sys_data->channel_lock=1-p_sys_data->channel_lock;
			win_par_set_channel_lock_string(p_sys_data->channel_lock);
			OSD_TrackObject(pObj,C_UPDATE_ALL);
			break;
	}
}
开发者ID:alkap007,项目名称:ali3606,代码行数:17,代码来源:win_parental.c


示例3: rs232upg_item_callback

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;
}
开发者ID:alkap007,项目名称:ali3606,代码行数:58,代码来源:Win_rs232upg.c


示例4: win_sto_set_right_key

void win_sto_set_right_key(POBJECT_HEAD pObj,UINT8 id)
{
	if(id == 1)
	{
		m_sd_ide_statue = !m_sd_ide_statue;
		win_sto_set_sd_ide_set_string(m_sd_ide_statue, &sto_set_item_txtset1);
	}
	OSD_TrackObject(pObj,C_UPDATE_ALL);
}
开发者ID:alkap007,项目名称:ali3606,代码行数:9,代码来源:win_storage_setting.c


示例5: palntsc_callback

static PRESULT palntsc_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	SYSTEM_DATA* sys_data;
	UINT8 tv_out;
	TEXT_FIELD *txt;
	UINT16 str_id;

	txt = &g_win_PALNTSC;

	sys_data = sys_data_get();

	switch(event)
	{
	case EVN_PRE_OPEN:

		tv_out = api_video_get_tvout();
		if(tv_out != TV_MODE_PAL && tv_out != TV_MODE_NTSC358)
		{
			tv_out = TV_MODE_PAL;
			api_video_set_tvout(sys_data->avset.tv_mode = tv_out);
		}
		str_id = (tv_out == TV_MODE_PAL)? RS_SYSTEM_TV_SYSTEM_PAL : RS_SYSTEM_TV_SYSTEM_NTSC;
		OSD_SetTextFieldContent(txt, STRING_ID, (UINT32)str_id);
		break;
	case EVN_POST_OPEN:
		api_stop_timer(&tvmode_UI_timer_id);
		tvmode_UI_timer_id = api_start_timer(TVMODE_UI_TIMER_NAME, TVMODE_UI_TIMER_TIME, win_tvmode_UI_handler);		
		break;
	case EVN_PRE_CLOSE:
		break;
	case EVN_POST_CLOSE:
		break;
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);
		if(unact == VACT_ENTER)
		{
			tv_out = api_video_get_tvout();
			tv_out = (tv_out == TV_MODE_PAL)? TV_MODE_NTSC358 : TV_MODE_PAL;
			str_id = (tv_out == TV_MODE_PAL)? RS_SYSTEM_TV_SYSTEM_PAL : RS_SYSTEM_TV_SYSTEM_NTSC;
			OSD_SetTextFieldContent(txt, STRING_ID, (UINT32)str_id);
			api_video_set_tvout(sys_data->avset.tv_mode = tv_out);

			OSD_TrackObject( (POBJECT_HEAD)txt, C_UPDATE_ALL);			
			ret = PROC_LOOP;		

			api_stop_timer(&tvmode_UI_timer_id);
			tvmode_UI_timer_id = api_start_timer(TVMODE_UI_TIMER_NAME, TVMODE_UI_TIMER_TIME, win_tvmode_UI_handler);

		}
		break;
	}

	return ret;
	
}
开发者ID:alkap007,项目名称:ali3606,代码行数:57,代码来源:win_PALNTSC.c


示例6: newcamd_win_callback

static PRESULT newcamd_win_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	VACTION msg_got;
	UINT8 bFocusID=OSD_GetContainerFocus((PCONTAINER)&g_win_newcamd);
	
	switch(event)
	{
		case EVN_PRE_OPEN:
			newcamd_init();
			break;
		case EVN_POST_OPEN:
		#ifdef NEWCAMD_SUPPORT_EXT16_SERVER
			newcamd_draw_ext_server_info(0);
		#endif
			wincom_open_help(pObj,newcamd_helpinfo, ARRAY_SIZE(newcamd_helpinfo));
			break;
		case EVN_PRE_CLOSE:
	       	*((UINT32 *)param2) &= ~C_CLOSE_CLRBACK_FLG;

			break;
		case EVN_POST_CLOSE:
			//OSD_ClearObject( (POBJECT_HEAD)&g_win_newcamd, C_UPDATE_ALL);
			wincom_close_help();
			OSD_TrackObject((POBJECT_HEAD)&g_win_mainmenu,C_UPDATE_ALL);
			break;

		case EVN_UNKNOWN_ACTION:
			unact = (VACTION)(param1>>16);
			ret=newcamd_unknowact_proc(pObj,unact);
			break;
		case EVN_ITEM_POST_CHANGE:
			{
				g_newcamd_curidx=bFocusID;
				newcamd_display_info1(TRUE);
				newcamd_display_info2(TRUE,newcamd_serinfo[g_newcamd_curidx-1].cas_sys_type);
				//newcamd_draw_ext_server_info(bFocusID-1);
			}
			break;
		case EVN_MSG_GOT:
			if(param1==CTRL_MSG_SUBTYPE_STATUS_NEWCAMD)
			{
				UINT16 serIdx = (UINT16)(param2>>16);
				UINT16 casType= (UINT16)(param2&0xFFFF);
				NEWCAMD_SERVER_T Newcamd_Serinfo;

				get_newcamd_serinfo( (PNEWCAMD_SERVER_T)&newcamd_serinfo[serIdx],serIdx);
				newcamd_display_info2(TRUE,newcamd_serinfo[g_newcamd_curidx-1].cas_sys_type);
			}
			//soc_printf("param1:0x%x vaction is 0x%x, 0x%x\n",param1,msg_got,VACT_CURSOR_LEFT);
			//newcamd_redraw_dt(TRUE);
			//newcamd_signal_refresh(TRUE);
			
			break;
	}	
开发者ID:alkap007,项目名称:ali3606,代码行数:56,代码来源:win_newcamd.c


示例7: win_av_load_tv_mode_setting

static void win_av_load_tv_mode_setting(BOOL bDraw)
{
	MULTISEL * msel;	
	SYSTEM_DATA* sys_data;
	UINT32 i,sel,cnt;
    UINT32 focus = OSD_GetFocusID((POBJECT_HEAD)&win_av_con);
	
	sys_data = sys_data_get();

	/* TV MODE */
	msel = av_item_set[TVMODE_ID - 1];
	OSD_SetMultiselCount(msel, get_tv_mode_count());

	sel = tvmode_setting_to_osd(sys_data->avset.tv_mode);
	OSD_SetMultiselSel(msel, sel);
    if (bDraw)
    {
        if (focus == TVMODE_ID)
            OSD_TrackObject((POBJECT_HEAD)av_items[TVMODE_ID - 1], C_UPDATE_ALL);
        else
            OSD_DrawObject((POBJECT_HEAD)av_items[TVMODE_ID - 1], C_UPDATE_ALL);
    }

	/* Video Output */
	msel = av_item_set[VIDEOOUT_ID - 1];
#ifdef HDTV_SUPPORT
	if (sys_data_get_scart_out() == SCART_YUV)
		sel = 0;
	else
		sel = 1;
#else			
	sel = sys_data->avset.scart_out;
#endif
	OSD_SetMultiselSel(msel, sel);
    if (bDraw)
    {
        if (focus == VIDEOOUT_ID)
            OSD_TrackObject((POBJECT_HEAD)av_items[VIDEOOUT_ID - 1], C_UPDATE_ALL);
        else
            OSD_DrawObject((POBJECT_HEAD)av_items[VIDEOOUT_ID - 1], C_UPDATE_ALL);
    }
}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:42,代码来源:win_tvsys.c


示例8: cti_mat_draw_pin

static void cti_mat_draw_pin(void)
{
	char strPIN[MAX_PIN_LEN+1];
	UINT8 i=0;
	UINT8 idx=0;

	memset(strPIN,0,sizeof(strPIN));
	for(i=0;i<MAX_PIN_LEN;i++)
	{
		if(input_pin_char_cnt>i)
			strPIN[i]=pin_mask[0];
		else 
			strPIN[i]=pin_mask[1];

	}
	strPIN[MAX_PIN_LEN]='\0';
	/*
	switch(input_pin_char_cnt)
	{
		case 1:
			sprintf(strPIN,"*-------");
			break;
		case 2:
			sprintf(strPIN,"**------");
			break;
		case 3:
			sprintf(strPIN,"***-----");
			break;
		case 4:
			sprintf(strPIN,"****----");
			break;
		case 5:
			sprintf(strPIN,"*****---");
			break;
		case 6:
			sprintf(strPIN,"******--");
			break;
		case 7:
			sprintf(strPIN,"*******-");
			break;
		case 8:
			sprintf(strPIN,"********");
			break;
		case 0:
		default:
			sprintf(strPIN,"--------");
			break;
		
	}
	*/
	OSD_SetTextFieldContent(&cti_mat_item_pin, STRING_ANSI, (UINT32)(strPIN));
	OSD_TrackObject( (POBJECT_HEAD)&cti_mat_item_con2, C_DRAW_SIGN_EVN_FLG|C_UPDATE_ALL);
	
}
开发者ID:alkap007,项目名称:ali3606,代码行数:54,代码来源:win_cti_set_maturity.c


示例9: win_mlimit_limitbtn_draw

void win_mlimit_limitbtn_draw(UINT32 state)
{
	TEXT_FIELD* txt;
	txt = &mlimit_txtbtn_setlimit;


	if(state == 0)
		OSD_DrawObject((POBJECT_HEAD)txt,C_UPDATE_ALL);
	else
		OSD_TrackObject((POBJECT_HEAD)txt,C_UPDATE_ALL);
}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:11,代码来源:win_motor_limitsetup.c


示例10: nc_item_sel_DNSenable

static void nc_item_sel_DNSenable(UINT8 enable,BOOL update)
{
	UINT8 action = (  enable== 0) ? C_ATTR_INACTIVE : C_ATTR_ACTIVE;
	UINT8 i;

	OSD_SetMultiselSel(&nc_item_selt2,enable);
	
	if(update)
	{
		OSD_TrackObject( (POBJECT_HEAD)&nc_item_con8, C_UPDATE_ALL);
	}
}
开发者ID:alkap007,项目名称:ali3606,代码行数:12,代码来源:win_newcamd_setting.c


示例11: par_con_callback

static PRESULT par_con_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT32 i;
	UINT8	unact;
	CONTAINER* cont = (CONTAINER*)pObj;
	UINT8	id = OSD_GetObjID(pObj);
	SYSTEM_DATA* p_sys_data;

	static UINT32 default_key_exit[] = 
	{
		V_KEY_EXIT,V_KEY_MENU,V_KEY_LEFT,V_KEY_UP,V_KEY_DOWN
	};
	
	switch(event)
	{
	case EVN_PRE_OPEN:
		
		if(win_pwd_open(default_key_exit,ARRAY_SIZE(default_key_exit))==FALSE)
		{
			return PROC_LEAVE;
		}
		wincom_open_subtitle((POBJECT_HEAD)&win_parental_con,RS_SYSTME_PARENTAL_LOCK, 0);
		OSD_ChangeFocus((POBJECT_HEAD)&win_parental_con,MENU_PARENTAL_MENU_LOCK,0);
		p_sys_data=sys_data_get();
		win_par_set_menu_lock_string(p_sys_data->menu_lock);
		win_par_set_channel_lock_string(p_sys_data->channel_lock);
		win_par_switch_confirm(FALSE);
		g_PL_Input_Bit_Number=0;
		g_PL_Input_Status=FALSE;
		win_pl_password_value[0]=0;
		win_pl_password_value[1]=0;
		win_pl_set_password_str(0);
		win_pl_set_password_str(1);
		break;
	
	case EVN_POST_OPEN:
		break;
		
	case EVN_PRE_CLOSE:
		sys_data_save(1);
        *((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		break;

	case EVN_POST_CLOSE:
  		wincom_close_subtitle();
		OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
		break;
	}
	return ret;
}
开发者ID:alkap007,项目名称:ali3606,代码行数:51,代码来源:win_parental.c


示例12: atnsetm_item_edf_callback

static PRESULT atnsetm_item_edf_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT32 sel;
	UINT8 bID;
 	char str[10];
    UINT16 * Uni_str;
    UINT8* pstr;
	SYSTEM_DATA* sys_data;	
	EDIT_FIELD* edf;
	VACTION unact;
	UINT32 value;
	
	
	sys_data = sys_data_get();

	bID = OSD_GetObjID(pObj);
	edf = (EDIT_FIELD*)pObj;	

	switch(event)
	{
	case EVN_PRE_CHANGE:
		break;
	case EVN_POST_CHANGE:
		value = param1;
		break;
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);		
		if(unact ==  VACT_CHANGE_SUB)
		{
			if( bID == LONG_ID)
			{
				longitute_sub_idx = (longitute_sub_idx == 0)? 1 : 0;
				OSD_SetEditFieldSuffix(edf, STRING_ANSI, (UINT32)longitute_sub_chars[longitute_sub_idx]);
				
			}
			else if(bID == LAT_ID )
			{
				latitute_sub_idx = (latitute_sub_idx == 0)? 1 : 0;
				OSD_SetEditFieldSuffix(edf, STRING_ANSI, (UINT32)latitute_sub_chars[latitute_sub_idx]);
			}
			OSD_TrackObject((POBJECT_HEAD)edf, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
		}

		break;
	}

	return ret;

}
开发者ID:alkap007,项目名称:ali3606,代码行数:50,代码来源:win_antenna_set_motor.c


示例13: timerlst_callback

static PRESULT timerlst_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;

	switch(event)
	{
	case EVN_PRE_OPEN:
		wincom_open_subtitle(pObj,RS_SYSTEM_TIMER_SETTING/*RS_SYSTEM_TIMER*/,0);
		break;
	case EVN_POST_OPEN:
		break;
	case EVN_PRE_CLOSE:
		sys_data_check_channel_groups();
		reset_group();
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		break;
	case EVN_POST_CLOSE:
               sys_data_save(1);
  		wincom_close_subtitle();
		OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
		break;
	case EVN_PRE_DRAW:
		win_timerlist_loadsetting();
		break;
    case EVN_MSG_GOT:
        if(param1 == CTRL_MSG_SUBTYPE_CMD_UPDATE_VIEW)
        {
            OSD_TrackObject(pObj, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
            ret = PROC_LOOP;
        }
        break;
	}


	return ret;
}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:37,代码来源:win_timer_list.c


示例14: win_dis_enter_key

void win_dis_enter_key(UINT8 id)
{
    SYSTEM_DATA* p_sys_data=sys_data_get();
    UINT16 result;
    OSD_RECT rect;
    COM_POP_LIST_PARAM_T param;
    UINT16 sel = 0;
    POBJECT_HEAD pObj,pObjItem;
    MULTISEL* msel;

    msel = dis_item_set[id - 1];
    pObj = (POBJECT_HEAD)msel;
    pObjItem = (POBJECT_HEAD)dis_items[id - 1];

    rect.uLeft  = CON_L+SEL_L_OF;
    rect.uWidth = SEL_W;
    rect.uTop = pObj->frame.uTop;

    param.selecttype = POP_LIST_SINGLESELECT;

    switch(id)
    {
    case IDC_DIS_BRIGHT:
        sel = p_sys_data->avset.brightness;
        break;
    case IDC_DIS_CONTRAST:
        sel = p_sys_data->avset.contrast;
        break;
    case IDC_DIS_SATURATION:
        sel = p_sys_data->avset.saturation;
        break;
    case IDC_DIS_HUE:
        sel = p_sys_data->avset.hue;
        break;
    case IDC_DIS_SHARP:
        sel = p_sys_data->avset.sharpness;
        break;
    }

    rect.uHeight = 340;
    param.cur = sel - m_dis_set_range[id][0];
    sel = win_com_open_sub_list(POP_LIST_MENU_DISPLAY_SET,&rect,&param) + m_dis_set_range[id][0];

    OSD_SetMultiselSel(msel, sel);
    OSD_NotifyEvent(pObj,EVN_POST_CHANGE,(UINT32)sel, 0);
    OSD_TrackObject(pObjItem,C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);

}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:48,代码来源:win_display_set.c


示例15: otaset_callback

static PRESULT  otaset_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT32 sat_cnt;

	switch(event)
	{
	case EVN_PRE_OPEN:

		ota_presat_id = 0xFFFF;
 		//wincom_open_title(pObj,RS_UPGRADE_MODE_SAT, 0);
 		wincom_open_subtitle(pObj,RS_TOOLS_SW_UPGRADE_BY_OTA, 0);
#ifdef	_BUILD_OTA_E_
		ota_load_parameter();
#else
		win_otaset_load_default_setting(0);
#endif
		win_otaset_load_FreqSymbPid_display();
		break;
	case EVN_POST_DRAW:
		//win_signal_open(pObj);
		win_signal_open_ex(pObj,pObj->frame.uLeft+30,pObj->frame.uTop + LIST_ITEMCNT*(CON_H + CON_GAP) +20);
		win_otaset_turn_frntend();
		//win_signal_refresh();
		//win_signal_update();
		break;
	case EVN_PRE_CLOSE:
		/* Make OSD not flickering */
		*((UINT32*)param2) &= ~C_CLOSE_CLRBACK_FLG;	
		break;
	case EVN_POST_CLOSE: 
#ifndef _BUILD_OTA_E_
	  		wincom_close_subtitle();
			OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
#endif
		break;
	case EVN_MSG_GOT:
		if(param1 == CTRL_MSG_SUBTYPE_STATUS_SIGNAL)
			win_signal_refresh();
			//win_signal_update();	
		break;
		
	}

	return ret;
	
}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:47,代码来源:win_ota_set.c


示例16: ca_win_event_proc

static PRESULT ca_win_event_proc(POBJECT_HEAD pObj, UINT32 msg_type, UINT32 msg_code)
{
	PRESULT ret = PROC_LOOP;
	UINT16 ca_slot_status_str[CA_MENU_TXT_LENGTH];
	UINT8 focusID;
	
	
	if((msg_type & 0xffff) == CTRL_MSG_SUBTYPE_STATUS_MCAS)
	{
		UINT8 slot = (UINT8)(msg_code&1);
		UINT16 ca_system_id = (UINT16)(msg_code & 0xFFFE);
		mcas_disp_type_t disp_type = (mcas_disp_type_t)(msg_code>>16);
		
		UINT16 *unistr=NULL;
		UINT16 *unistr2=NULL;
		UINT16 unistr_dest[50]={0};
		UINT16 uni_string[CA_MENU_TXT_LENGTH]={0};
		UINT16 uni_string2[CA_MENU_TXT_LENGTH]={0};
		char string[20];

		memset(string,0,sizeof(string));
		memset(unistr_dest,0,sizeof(unistr_dest));
		memset(uni_string,0,sizeof(uni_string));
		memset(uni_string2,0,sizeof(uni_string2));

		unistr = OSD_GetUnicodeString(RS_SLOT);
		#ifdef SUPPORT_DUAL_SMC
			sprintf(string," %d :",slot+1);  
		#else
			sprintf(string," : ");
		#endif
		ComAscStr2Uni(string,unistr_dest);      
		ComUniStrCopyChar(&uni_string,(UINT16 *)unistr);
		ComUniStrCat(&uni_string,unistr_dest); 

		unistr2 = OSD_GetUnicodeString(stSlotInfor[slot].ucMCASstr);        
		ComUniStrCopyChar(&uni_string2,(UINT16 *)unistr2);
		ComUniStrCat(&uni_string,uni_string2); 
		
		OSD_SetTextFieldContent((PTEXT_FIELD)txt_ca_slots[slot], STRING_UNICODE, (UINT32)uni_string);

		focusID = OSD_GetFocusID((POBJECT_HEAD)&g_win_ca_slots);
		if(focusID == (slot + 1))
			OSD_TrackObject(con_ca_slots[slot], C_UPDATE_ALL);
		else
			OSD_DrawObject(con_ca_slots[slot], C_UPDATE_ALL);
	}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:47,代码来源:win_mcas_slots.c


示例17: timerlst_item_callback

static PRESULT timerlst_item_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	VACTION unact;
	UINT8 bID;
	TIMER_SET_CONTENT rettimer,*timer;
	SYSTEM_DATA* sys_data;
	P_NODE p_node;
	UINT16 curview_index = 0;


	bID = OSD_GetObjID(pObj);
	sys_data = sys_data_get();
	

	switch(event)
	{
	case EVN_PRE_DRAW:
		break;
	case EVN_UNKNOWN_ACTION:
		unact = (VACTION)(param1>>16);
		if(unact == VACT_ENTER)
		{
			sys_data->timer_set.common_timer_num = bID;
			
			timer = &sys_data->timer_set.TimerContent[bID - 1];
			if(timer->timer_mode==TIMER_MODE_OFF)
			{
				timer->wakeup_chan_mode = sys_data_get_cur_chan_mode();
				curview_index = sys_data_get_cur_group_cur_mode_channel();
				get_prog_at(curview_index,&p_node);
				timer->wakeup_channel = p_node.prog_id;
			}/*if the timer if off,set the default channel as current playing one.*/
			
			if(win_timerset_open(timer,&rettimer,timer->timer_mode==TIMER_MODE_OFF))
				MEMCPY(timer,&rettimer,sizeof(TIMER_SET_CONTENT));			
			OSD_TrackObject((POBJECT_HEAD)&g_win_timerlist, C_DRAW_SIGN_EVN_FLG | C_UPDATE_ALL);
		}
		break;
	default:
		;
		
		
	}

	return ret;
}
开发者ID:Janesak1977,项目名称:ali3602,代码行数:47,代码来源:win_timer_list.c


示例18: movefile_change_storage

static PRESULT movefile_change_storage(VACTION act)
{
	PRESULT ret = PROC_LOOP;
	TEXT_FIELD *pTxt;
	OBJLIST *pOl;
	char str_buff[10];
	
	if(act == VACT_CHG_DEVL)
	{
		if(RET_FAILURE == win_get_next_device(movefile_cur_device, movefile_cur_device,TRUE))
		{
			return ret;
		}
	}
	else
	{
		if(RET_FAILURE == win_get_next_device(movefile_cur_device, movefile_cur_device,FALSE))
		{
			return ret;
		}
	}

	file_list_change_device(win_move_dirlist,movefile_cur_device);

	pTxt = &mpmove_dev_name;
	win_get_display_devicename(str_buff, movefile_cur_device);
	sprintf(str_buff,"%s",str_buff);
	OSD_SetTextFieldContent(pTxt,STRING_ANSI,(UINT32)str_buff);//show current device name
	//OSD_DrawObject((POBJECT_HEAD)pTxt,C_UPDATE_ALL);
	OSD_DrawObject((POBJECT_HEAD)&mpmove_dev_con,C_UPDATE_ALL);
/*
	pTxt = &mpmove_dir_txt;
	sprintf(str_buff,"%s","Root");
	OSD_SetTextFieldContent(pTxt,STRING_ANSI,(UINT32)str_buff);
	OSD_DrawObject((POBJECT_HEAD)pTxt,C_UPDATE_ALL);
*/
	pOl  = &ol_mpmove;
	get_file_list_info(win_move_dirlist, &movefile_dirnum, &movefile_filenum, NULL);
	OSD_SetObjListCurPoint(pOl, 0);
	OSD_SetObjListNewPoint(pOl, 0);
	OSD_SetObjListTop(pOl, 0);
	OSD_SetObjListCount(pOl, movefile_dirnum+movefile_filenum);

	OSD_TrackObject((POBJECT_HEAD)pOl, C_UPDATE_ALL | C_DRAW_SIGN_EVN_FLG);

	return ret;
}
开发者ID:alkap007,项目名称:ali3606,代码行数:47,代码来源:win_mp_move_file.c


示例19: win_osd_lcn_right_key

void win_osd_lcn_right_key(POBJECT_HEAD pObj)
{
	SYSTEM_DATA* p_sys_data=sys_data_get();
	
	lcn_display_on_off1=p_sys_data->osd_set.lcn_sort;
	if(p_sys_data->osd_set.lcn_sort==1)
	{
		p_sys_data->osd_set.lcn_sort=0;
	}
	else
	{
		p_sys_data->osd_set.lcn_sort++;
	}
	lcn_display_on_off2=p_sys_data->osd_set.lcn_sort;
	win_osd_set_lcn(p_sys_data->osd_set.lcn_sort);
	OSD_TrackObject(pObj,C_UPDATE_ALL);
}
开发者ID:alkap007,项目名称:ali3606,代码行数:17,代码来源:win_lcn.c


示例20: hdmi_factest_callback

static PRESULT  hdmi_factest_callback(POBJECT_HEAD pObj, VEVENT event, UINT32 param1, UINT32 param2)
{
	PRESULT ret = PROC_PASS;
	UINT8 bID;
	POBJECT_HEAD nxtObj;
    POBJECT_HEAD topmenu;
	bID = OSD_GetObjID(pObj);
	extern sys_state_t      system_state; 

	switch(event)
	{
    case EVN_PRE_OPEN:
        
        //ap_enable_key_task_get_key(TRUE);
		//key_set_upgrade_check_flag(0);
		last_system_state = system_state;
        //system_state = SYS_STATE_UPGRAGE_HOST;
		memset(hdmi_info_name_str,0x00,sizeof(hdmi_info_name_str));
        memset(hdmi_info1_str,0x00,sizeof(hdmi_info1_str));
        memset(hdmi_info2_str,0x00,sizeof(hdmi_info2_str));
        memset(hdmi_info3_str,0x00,sizeof(hdmi_info3_str));
        memset(hdmi_info4_str,0x00,sizeof(hdmi_info4_str));		
        wincom_close_title();
		if(menu_stack_get(0) == (POBJECT_HEAD)&g_win_mainmenu)
		{
			OSD_ClearObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);
			topmenu = menu_stack_get_top();
			if(topmenu)
				OSD_ClearObject( topmenu, C_UPDATE_ALL);
		}
        break;
    case EVN_POST_OPEN:
        
        hdmi_display_info_set();
        break;
    case EVN_POST_CLOSE:
        if(menu_stack_get(0) == (POBJECT_HEAD)&g_win_mainmenu)
		    OSD_TrackObject( (POBJECT_HEAD) &g_win_mainmenu, C_UPDATE_ALL);	
        system_state = last_system_state;
        break;
	case EVN_UNKNOWN_ACTION:
	    break;
	}

	return ret;		
}
开发者ID:alkap007,项目名称:ali3606,代码行数:46,代码来源:win_hdmi_factory.c



注:本文中的OSD_TrackObject函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ OSDynamicCast函数代码示例发布时间:2022-05-30
下一篇:
C++ OSD_SetTextFieldContent函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap