📄 key_handler_setup.c
字号:
{ *d4_state = MENU_D4_SPK_TIME_DLY_START+1; return FALSE; } else return TRUE; break; case MENU_D3_SPK_VOLUME_SET: if (*d4_state<=MENU_D4_SPK_VOL_START) { *d4_state = MENU_D4_SPK_VOL_END-1; return FALSE; } if(*d4_state>=MENU_D4_SPK_VOL_END) { *d4_state = MENU_D4_SPK_VOL_START+1; return FALSE; } else return TRUE; break;#endif#endif default: return TRUE; } return TRUE;}/******************************************************************************* Function name : GuiSetupCheckDom5List* Arguments : * IN MenuDom3State_et d4_state, MenuDom4State_et *d5_state* * OUT * I/O * Return : * * By : changlina 060426* Description :* Revision : 1.0 *******************************************************************************/ STATIC BOOL GuiSetupCheckDom5List( MenuDom4State_et d4_state, MenuDom5State_et *d5_state ){ switch(d4_state) { #if _APP_CAP_AUD_SETUP_SPEAKER case MENU_D4_SPK_TIME_CDLY: if (*d5_state<=MENU_D5_SPK_CDLY_START+1) { *d5_state = MENU_D5_SPK_CDLY_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_CDLY_END-1) { *d5_state = MENU_D5_SPK_CDLY_END-1; return FALSE; } else return TRUE; break; case MENU_D4_SPK_TIME_SDLY: if (*d5_state<=MENU_D5_SPK_SDLY_START+1) { *d5_state = MENU_D5_SPK_SDLY_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_SDLY_END-1) { *d5_state = MENU_D5_SPK_SDLY_END-1; return FALSE; } else return TRUE; break;#if _APP_CAP_AUD_CONTROL_VOLUME case MENU_D4_SPK_VOL_FL: if (*d5_state<=MENU_D5_SPK_VOL_FL_START+1) { *d5_state = MENU_D5_SPK_VOL_FL_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_VOL_FL_END-1) { *d5_state = MENU_D5_SPK_VOL_FL_END-1; return FALSE; } else return TRUE; break; case MENU_D4_SPK_VOL_FR: if (*d5_state<=MENU_D5_SPK_VOL_FR_START+1) { *d5_state = MENU_D5_SPK_VOL_FR_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_VOL_FR_END-1) { *d5_state = MENU_D5_SPK_VOL_FR_END-1; return FALSE; } else return TRUE; break; case MENU_D4_SPK_VOL_SL: if (*d5_state<=MENU_D5_SPK_VOL_SL_START+1) { *d5_state = MENU_D5_SPK_VOL_SL_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_VOL_SL_END-1) { *d5_state =MENU_D5_SPK_VOL_SL_END-1; return FALSE; } else return TRUE; break; case MENU_D4_SPK_VOL_SR: if (*d5_state<=MENU_D5_SPK_VOL_SR_START+1) { *d5_state = MENU_D5_SPK_VOL_SR_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_VOL_SR_END-1) { *d5_state = MENU_D5_SPK_VOL_SR_END-1; return FALSE; } else return TRUE; break; case MENU_D4_SPK_VOL_CEN: if (*d5_state<=MENU_D5_SPK_VOL_CEN_START+1) { *d5_state = MENU_D5_SPK_VOL_CEN_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_VOL_CEN_END-1) { *d5_state = MENU_D5_SPK_VOL_CEN_END-1; return FALSE; } else return TRUE; break; case MENU_D4_SPK_VOL_SUB: if (*d5_state<=MENU_D5_SPK_VOL_SUB_START+1) { *d5_state = MENU_D5_SPK_VOL_SUB_START+1; return FALSE; } if(*d5_state>=MENU_D5_SPK_VOL_SUB_END-1) { *d5_state = MENU_D5_SPK_VOL_SUB_END-1; return FALSE; } else return TRUE; break;#endif#endif default: return TRUE; } return TRUE;}#if _SUPPORT_TVG_FUNCTION_ //(weilf)20060705/******************************************************************************* Function name : GuiSetupCheckDom6List* Arguments : * IN * * OUT * I/O * Return : * * By : Weilifeng* Description :20060705* Revision : 1.0 *******************************************************************************/ STATIC BOOL GuiSetupCheckDom6List( MenuDom6State_et *d6_state ){ if (*d6_state<=MENU_D6_START) { *d6_state = MENU_D6_START+1; return FALSE; } else if(*d6_state>=MENU_D6_END) { *d6_state = MENU_D6_END-1; return FALSE; } else return TRUE;} /******************************************************************************* Function name : GuiSetupCheckDom7List* Arguments : * IN * * OUT * I/O * Return : * * By : Weilifeng* Description :20060705* Revision : 1.0 *******************************************************************************/STATIC BOOL GuiSetupCheckDom7List( MenuDom6State_et *d6_state,MenuDom7State_et *d7_state ){ char low=0,high=0; switch(*d6_state) { case MENU_D6_TVG_GUARDIAN: low = MENU_D7_GUARDIAN_START; high = MENU_D7_GUARDIAN_END; break; case MENU_D6_TVG_HELL_DAMN: low = MENU_D7_HELL_START; high = MENU_D7_HELL_END; break; case MENU_D6_TVG_RELIGIOUS: low = MENU_D7_RELIGIOUS_START; high = MENU_D7_RELIGIOUS_END; break; case MENU_D6_TVG_SEXUAL: low = MENU_D7_SEXUAL_START; high = MENU_D7_SEXUAL_END; break; case MENU_D6_TVG_CC_MODE: low = MENU_D7_CCMODE_START; high = MENU_D7_CCMODE_END; break; case MENU_D6_TVG_CC_CHANNEL: low = MENU_D7_CCCHANNEL_START; high = MENU_D7_CCCHANNEL_END; break; default: break; } if (*d7_state<=low) { *d7_state = low+1; return FALSE; } else if(*d7_state>=high) { *d7_state = high-1; return FALSE; } else return TRUE;} /******************************************************************************* Function name : SetupInfoSetMenuKaraoke* Arguments : * IN * * OUT * I/O * Return : * * By : Weilifeng* Description :20060720* Revision : 1.0 *******************************************************************************/VOID SetupInfoSaveTVG(VOID){ UCHAR temp1,temp2; temp1 = (UCHAR) (gSetup_info.TVG.TVGuardian << 5) | (gSetup_info.TVG.hell_damn << 4) | (gSetup_info.TVG.religious << 3) | (gSetup_info.TVG.sexual <<2)| (gSetup_info.TVG.activation_flag <<1); temp2 = (UCHAR) (gSetup_info.TVG.ccmode << 6) | (gSetup_info.TVG.ccchannel << 4)| (gSetup_info.TVG.number_ad << 1); SH_writeEepromByte( ROM_ADDR_TVG_GUARDIAN, temp1 ); SH_writeEepromByte( ROM_ADDR_TVG_CC, temp2 );}/******************************************************************************* Function name : SetupInfoSetMenuKaraoke* Arguments : * IN * * OUT * I/O * Return : * * By : Weilifeng* Description :20060720* Revision : 1.0 *******************************************************************************/VOID SetupInfoSetTVG( SetupTVG_t *tvg ){ memcpy(&gSetup_info.TVG,tvg,sizeof(SetupTVG_t)); SetTVGSetupItem(); SetupInfoSaveTVG(); }/******************************************************************************* Function name : GuiSetupChangeD7Value* Arguments : * IN * * OUT * I/O * Return : * * By : Weilifeng* Description :20060720* Revision : 1.0 *******************************************************************************/STATIC CHAR GuiSetupChangeD7Value( MenuDom7State_et d7_state ){ SetupTVG_t tvg; tvg = gSetup_info.TVG; switch(d7_state) { case MENU_D7_GUARDIAN_OFF: case MENU_D7_GUARDIAN_TOLERANT: case MENU_D7_GUARDIAN_MODERATE: case MENU_D7_GUARDIAN_STRICT: tvg.TVGuardian = d7_state - MENU_D7_GUARDIAN_START; break; case MENU_D7_HELL_FILTERED: case MENU_D7_HELL_OFF: tvg.hell_damn = d7_state - MENU_D7_HELL_START-1; break; case MENU_D7_RELIGIOUS_FILTERED: case MENU_D7_RELIGIOUS_OFF: tvg.religious = d7_state - MENU_D7_RELIGIOUS_START-1; break; case MENU_D7_SEXUAL_FILTERED: case MENU_D7_SEXUAL_OFF: tvg.sexual = d7_state - MENU_D7_SEXUAL_START-1; break; case MENU_D7_CCMODE_OFF: case MENU_D7_CCMODE_ONMUTE: case MENU_D7_CCMODE_ONCONTINUOUS: tvg.ccmode = d7_state - MENU_D7_CCMODE_START; break; case MENU_D7_CCCHANNEL_CC2: case MENU_D7_CCCHANNEL_CC1: tvg.ccchannel = d7_state - MENU_D7_CCCHANNEL_START; break; } SetupInfoSetTVG(& tvg);}#endif STATIC VOID SetupSelectDom2( MenuDom2State_et select ){ OsdSetupCtrl_st setup; setup.d2_old = select; setup.d2_new = select; OSD_ChangeSetup( OSD_CTRL_SETUP_SEL_D2, &setup, SYS_WAIT );}STATIC VOID SetupSelectDom3( MenuDom3State_et select ){ OsdSetupCtrl_st setup; setup.new_depth = MENU_DOM_DEPTH_3; setup.d3_old = select; setup.d3_new = select; OSD_ChangeSetup(OSD_CTRL_SETUP_SEL_D3, &setup, SYS_WAIT);}/****************************************************************************** * Function name : GuiSetupNumControl * Arguments : * Return : VOID * By : Liurenliang * Description : ******************************************************************************/ VOID GuiSetupNumControl(UCHAR key){ TempKeeper_t data; OSD_State_st *osd_state; OsdSetupCtrl_st setup; SetupAdult_t adult; SetupLang_t lang; BOOL ret; BYTE2 temp_2dig; // to get 2 digit value BYTE2 temp_3dig; // to get 3 digit value BYTE1 input_dig; osd_state = OSD_GetState(); SetTempValueSetFlag( TRUE ); if (key == RC_KEY_NUM10) SetTempValue(10); else SetTempValue(key - RC_KEY_NUM0);#if _HJL_NEW_SETUP_SCHEME OSD_ChangeSetup( OSD_CTRL_SETUP_NUMBER, NULL, SYS_WAIT ); return;#endif SetupInfoGetMenuLang(&lang); /* Get current data */ GetTempValueState( &data ); temp_2dig = GetTempValue(2); temp_3dig = GetTempValue(3); input_dig = GetTempInputDig(); if( osd_state->etSetup_dsp.pass_step == PASSWD_SUB_CREATE || osd_state->etSetup_dsp.pass_step == PASSWD_SUB_CHANGE || osd_state->etSetup_dsp.pass_step == PASSWD_SUB_CHECK || osd_state->etSetup_dsp.pass_step == PASSWD_SUB_CONFIRM|| osd_state->etSetup_dsp.pass_step == PASSWD_SUB_CREATE_CONFIRM) { setup.passwd_count = input_dig; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_ENTER, &setup, SYS_WAIT ); /* Check password input end */ if( input_dig == 4 ) { SetupInfoGetMenuAdult( &adult ); switch( osd_state->etSetup_dsp.pass_step ) { case PASSWD_SUB_CREATE: adult.tmp_pass = data.number[3]<<24 | data.number[2]<<16 | \ data.number[1]<<8 | data.number[0]; SetupInfoSetMenuAdult( &adult ); setup.passwd_type = PASSWD_SUB_CREATE_CONFIRM; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); break; case PASSWD_SUB_CHANGE: adult.tmp_pass = data.number[3]<<24 | data.number[2]<<16 | \ data.number[1]<<8 | data.number[0]; SetupInfoSetMenuAdult( &adult ); setup.passwd_type = PASSWD_SUB_CONFIRM; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); break; case PASSWD_SUB_CHECK: ret = SetupComparePassword( data.number[0], data.number[1], data.number[2], data.number[3] ); if( ret == TRUE ) { gPasswd_passed = TRUE; gPasswd_wrong_cnt = 0; GuiSetupEnter(0); } else { gPasswd_wrong_cnt++; if( gPasswd_wrong_cnt < 3 )//clina 20060330 { setup.passwd_type = PASSWD_SUB_WRONG; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); setup.passwd_count = 4; setup.passwd_type = PASSWD_SUB_CHECK; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); /* retry */ setup.passwd_type = PASSWD_SUB_CHECK; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); } else { gPasswd_wrong_cnt = 0; GuiSetupReturn( 0 );//clina 060403 } } break; case PASSWD_SUB_CONFIRM: ret = SetupComparePassword( data.number[0], data.number[1], data.number[2], data.number[3] ); if( ret == TRUE ) { adult.passwd = adult.tmp_pass; SetupInfoSetMenuAdult( &adult ); SetupInfoSetPasswdSet( TRUE ); // cydrain 20050817 gPasswd_wrong_cnt = 0; gPasswd_confirmed = TRUE; gPasswd_passed = TRUE; GuiSetupReturn( 0 ); } else { setup.passwd_type = PASSWD_SUB_NOTMATCH; OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); } break; case PASSWD_SUB_CREATE_CONFIRM: ret = SetupComparePassword( data.number[0], data.number[1], data.number[2], data.number[3] ); if( ret == TRUE ) { adult.passwd = adult.tmp_pass; adult.set = TRUE; SetupInfoSetMenuAdult( &adult ); SetupInfoSetPasswdSet(TRUE); gPasswd_wrong_cnt = 0; gPasswd_confirmed = TRUE; gPasswd_passed = TRUE; GuiSetupReturn( 0 ); } else { adult.set = FALSE; SetupInfoSetMenuAdult( &adult ); SetupInfoSetPasswdSet(FALSE); setup.passwd_type = PASSWD_SUB_NOTMATCH;//clina060403 OSD_ChangeSetup( OSD_CTRL_SETUP_PW_CHECK, &setup, SYS_WAIT ); } break; } InitTempValueState(); } OSD_SetTimer( OSD_TIMER_NORMAL, OSD_TIME_FOR_PW_CHECK); } /* else if( osd_state->etSetup_dsp.depth == MENU_DOM_DEPTH_4 && osd_state->etSetup_dsp.d3_list == MENU_D3_LANG_RESET_RESTORE&& (data.number[0] > 0 && data.number[0] <= MENU_SUPPORT_LANG_NUM) ) { SetupInfoInit(TRUE); SetupInfoGetMenuLang(&lang);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -