📄 browse_func.c
字号:
br_Draw_FFicon();//xyy 2003-7-29 16:51
}
/**************************************************************************
* *
* Function Name: browse_func_select * *
* *
* Purposes: *
* use enter key to select some function that according to *
* different cases ,for example select CH and TT for DVD. *
* when the key was used ,the HL will be changed *
* Descriptions: *
* use enter key to select some function that according to *
* different cases ,for example select CH and TT for DVD. *
* when the key was used ,the HL will be changed * *
* Arguments: VOID *
* Returns: NONE *
* *
* See also: NONE *
* *
**************************************************************************/
void browse_func_select(void)
{
//info_index:the index of string_index_dvd array or string_index_vcd array
//which is defined in file browse_gui.h
if(info_index==6||info_index==7)//the value of title time and chapter time is not changeable
return;
if(cd_type_loaded==CDDVD)
{
if(info_index<=1 && bInputIndex<2 && bBrowseLevel==1)
return;
}
else
{
if(info_index==0 && bInputIndex<2 && bBrowseLevel==1)
return;
}
if(bBrowseLevel==0)
{
#if defined(ADJUSTING_ACTION_VALID_RIGHT_NOW)//xyy 2003-9-9 16:10
action_click = 2; // alan, 2003/8/28 05:45PM
#else
action_click = 0;
#endif
// action_click = 2; // alan, 2003/8/28 05:45PM
switch(info_index)
{
case 0://title(DVD) or track(VCD/CD/MP3) information
bBrowseLevel = 1; //xyy 2003-8-11 17:14
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
br_Draw_TT_info();
br_Draw_underline(brArea[BR_CONTENT_AREA].xStart,brArea[BR_CONTENT_AREA].yStart+ITEM_HEIGHT*(HL_index-1),UNDERLINECOL,INFO_BKCOL);
break;
case 1://chaprter(DVD) or playtime(VCD/CD/MP3) information
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
if(cd_type_loaded==CDDVD)
{
bBrowseLevel = 1; //xyy 2003-8-11 17:14
br_Draw_CHP_info();
br_Draw_underline(brArea[BR_CONTENT_AREA].xStart,brArea[BR_CONTENT_AREA].yStart+ITEM_HEIGHT*(HL_index-1),UNDERLINECOL,INFO_BKCOL); //xyy 2003-8-11 16:16
}
else
init_time_search();
break;
case 2://playtime(DVD) or title time(VCD) or repeat setup(CD/MP3)information
if(cd_type_loaded==CDDVD)
{
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
init_time_search();
}
else if(cd_type_loaded==CDROM || cd_type_loaded==CDDA)//xyy 2003-9-12 13:38
{
bBrowseLevel = 1;//zhaoyanhua add 2003-12-8 9:39
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
br_Draw_rtSpecialItem();
}
else
return;
break;
case 3://sub-title language setup(DVD) or chapter time(VCD) information
if(cd_type_loaded==CDDVD)
{
if(pDSV->dAv_SPST_Ns<2)
return;
bBrowseLevel = 1;//zhaoyanhua add 2003-12-8 9:39
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
br_Draw_rtSpecialItem();
}
else
return;
break;
case 4://audio language setup(DVD) or repeat setup(VCD) information
if(cd_type_loaded==CDDVD)
{
if(pDSV->dAv_AST_Ns<=1)
return;
}
else
{
if( IsPBCOn() )
return;
}
bBrowseLevel = 1;//zhaoyanhua add 2003-12-8 9:39
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
br_Draw_rtSpecialItem();
break;
case 5://multi-angle(only DVD)information
if(get_angle_Ns()<1)
return;
bBrowseLevel = 1;//zhaoyanhua add 2003-12-8 9:39
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
br_Draw_rtSpecialItem();
break;
case 8://repeat setup(DVD)information
bBrowseLevel = 1;//zhaoyanhua add 2003-12-8 9:39
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_PRE_BKCOL);
br_Draw_rtSpecialItem();
break;
}
bBrowseLevel = 1;
}
else if(bBrowseLevel == 1)
{
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_BKCOL);//xyy 2003-8-11 16:08
switch(info_index)
{
case 0://title(DVD) or track(VCD/CD/MP3) information
if(bInputIndex==1)
return;
if(bInputIndex > 1)
{
bInputIndex = 0;
if(cd_type_loaded==CDDVD)
{
if(info_index==0)
dvd_chapter = 1;
if(UOP_check(UOP_PTT_PS)&&(dvd_chapter==1))
dvd_chapter = 0;//TT play,terry,3-8-23 19:35
ircmd_post_func(CMD_FUNC|CMD_PTT_PLAY);
}
else
ircmd_post_func(CMD_SELECT | dvd_title);
bInputState = NON_INPUT_STATE;
}
break;
case 1://chaprter(DVD) or playtime(VCD/CD/MP3) information
if(cd_type_loaded==CDDVD)
{
if(bInputIndex==1)
return;
if(bInputIndex > 1)
{
bInputIndex = 0;
if(UOP_check(UOP_PTT_PS)&&(dvd_chapter==1))
dvd_chapter = 0;//TT play,terry,3-8-23 19:35
ircmd_post_func(CMD_FUNC|CMD_PTT_PLAY);
bInputState = NON_INPUT_STATE;
}
}
else
exe_time_goto();
break;
case 2://playtime(DVD) or title time(VCD) or repeat setup(CD/MP3)information
if(cd_type_loaded==CDDVD)
exe_time_goto();
else
br_DrawRightItem();
break;
case 3://sub-title language setup(DVD) or chapter time(VCD) information
case 4://audio language setup(DVD) or repeat setup(VCD) information
case 5://multi-angle(only DVD)information
case 8://repeat setup(DVD)information
br_DrawRightItem();
break;
}
bBrowseLevel = 0;
}
}
/**************************************************************************
* *
* Function Name: browse_func_clear *
* *
* Purposes: *
* clear the unuseful informaton which had been selected *
* Descriptions: *
* clear the unuseful informaton which had been selected *
* Arguments: VOID *
* Returns: NONE *
* *
* See also: NONE *
* *
**************************************************************************/
#ifdef CLEAR_KEY_IN_WINDOW //Maoyong 2004.02.18
void browse_func_clear(void)
{
//DVD not in CHP, TT, CHP and TT time item, no use
if(cd_type_loaded == CDDVD)
{
if((info_index != 5)&&(info_index != 6)&&(info_index != 0)&&(info_index != 1))
return;
}
else //CDROM, CDVCD..., not DVD
{
if( (info_index != 0) && (info_index != 1) && (info_index != 2) )
return;
}
index_x=0;
bBrowseLevel = 0;
bInputState = NON_INPUT_STATE;
bInputIndex = 0;
browse_func_select();
}
#endif
UINT32 ten_power(BYTE exponent)
{
UINT32 temp=1,i;
for(i=0;i<exponent;i++)
temp = temp*10;
return temp;
}
/**************************************************************************
* *
* Function Name: browse_func_left *
* *
* Purposes: *
* use ir left_key to control browse function *
* Descriptions: *
* use ir left_key to control browse function *
* Arguments: VOID *
* Returns: NONE *
* *
* See also: NONE *
* *
**************************************************************************/
void browse_func_left(void)
{
if(bBrowseLevel==0)
return;
if((cd_type_loaded==CDDVD && info_index <= 1) || (cd_type_loaded!=CDDVD && info_index==0))
{
bInputState = NON_INPUT_STATE;
bInputIndex = 0;
bBrowseLevel = 0;
UpdateTT_CHP_info();
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_BKCOL);//xyy 2003-8-11 17:06
}
else if((cd_type_loaded==CDDVD && info_index == 2) || (cd_type_loaded!=CDDVD && info_index==1))
{
br_DrawLeftItem(info_index,info_index%ITEM_PER_PAGE,INFO_FONTCOL,INFO_BKCOL);//xyy 2003-8-11 17:06
br_DrawRightItem();
bBrowseLevel = 0;
bTimeInput = 0;
index_x = 0; // alan, 2003/9/5 02:16
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -