本文整理汇总了C++中OSD_TrackObject函数的典型用法代码示例。如果您正苦于以下问题:C++ OSD_TrackObject函数的具体用法?C++ OSD_TrackObject怎么用?C++ OSD_TrackObject使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了OSD_TrackObject函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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;
}
示例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;
}
}
示例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;
}
示例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);
}
示例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;
}
示例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;
}
示例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);
}
}
示例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);
}
示例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);
}
示例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);
}
}
示例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;
}
示例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;
}
示例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;
}
示例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,¶m) + 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);
}
示例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;
}