📄 osd_handler_setup.c
字号:
/******************************************************************************
* Filename : OSD_manager.c
* Start : 2002. 11. 19
* By : Taejin Kwon
* Contact : tj1kwon@samsung.co.kr
* Description :
******************************************************************************
*/
/******************************************************
* INCLUDES
*****************************************************/
#include <string.h>
#include <stdio.h>
#include "Basic_typedefs.h"
#include "CUSTOM/Custom_option.h"
#include "OS/OS_abstract.h"
#include "API/SH_types.h"
#include "API/SH_api.h"
#include "COMMON/Common.h"
#include "MAIN/Global_state.h"
#include "MAIN/Appl_types.h"
#include "MAIN/Uop_msg.h"
#include "DRIVER/FS/Fs_api.h"
#include "CUSTOM/Osd_types.h"
#include "CUSTOM/Osd_if.h"
#include "CUSTOM/Key_handler_setup.h"
#include "MAIN/DVD/Dvd_predef.h"
#include "MAIN/DVD/Dvd_common.h"
#include "MAIN/MMP/Mmp_common.h"
#include "CUSTOM/Key_receive.h"
#include "CUSTOM/FP_handle.h"
#include "CUSTOM/Key_defs.h"
#include "MAIN/SVCD/Svcd_types.h"
#include "MAIN/SVCD/Svcd_ext.h"
#include "MAIN/SVCD/Svcd_show.h"
#include "Osd_util.h"
#include "Osd_draw.h"
#include "Osd_timer.h"
#include "CUSTOM/Strings_ext.h"
#include "Osd_data.h"
#include "Osd_draw_explore.h"
#include "Osd_draw_setup.h"
#include "Osd_draw_program.h"
/******************************************************
* Global variables / functions
*****************************************************/
/******************************************************
* Extern variables / functions
*****************************************************/
#if _HJL_NEW_SETUP_SCHEME
extern SetupItem_st *FocusedItem;
extern SETUP_ITEM_FUNC_CALL SetupEventHandler[];
#endif
VOID OsdHandlerSetupCtrlMsg( OsdCtrl_st ctrl )
{
#if _HJL_NEW_SETUP_SCHEME
ctrl.control = OwGfxMessageTransfer(ctrl.control);
#endif
switch( ctrl.control )
{
#if _HJL_NEW_SETUP_SCHEME
case OSD_CTRL_SETUP_LEVEL_UP:
case OSD_CTRL_SETUP_LEVEL_DOWN:
case OSD_CTRL_SETUP_NEXT_SIBLING:
case OSD_CTRL_SETUP_PREV_SIBLING:
case OSD_CTRL_SETUP_NUMBER:
(*SetupEventHandler[FocusedItem->OnEvent])(ctrl.control);
break;
#else
case OSD_CTRL_SETUP_PW_CHECK:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4;
OwGfxSetupPasswordCheck( ctrl.p.setup.passwd_type);
//#ifndef _MTK_STYLE
if(ctrl.p.setup.passwd_type==PASSWD_SUB_NOTMATCH)//clina 20060403
{
if(gOSD_state.etSetup_dsp.pass_step==PASSWD_SUB_CREATE_CONFIRM)
gOSD_state.etSetup_dsp.pass_step = PASSWD_SUB_CREATE_CONFIRM;
if(gOSD_state.etSetup_dsp.pass_step==PASSWD_SUB_CONFIRM)
gOSD_state.etSetup_dsp.pass_step = PASSWD_SUB_CONFIRM;
}
else
//#endif
gOSD_state.etSetup_dsp.pass_step = ctrl.p.setup.passwd_type;
break;
case OSD_CTRL_SETUP_PW_ENTER:
#if _SUPPORT_TVG_FUNCTION_ //(weilf)20060705
if(gOSD_state.etSetup_dsp.d2_list == MENU_D2_LOCK_TVG
&& gOSD_state.etSetup_dsp.depth == MENU_DOM_DEPTH_4)
OwGfxSetupTVGPasswordEnter(ctrl.p.setup.passwd_count);
else
#endif
OwGfxSetupPasswordEnter(ctrl.p.setup.passwd_count);
break;
case OSD_CTRL_SETUP_SEL_D1:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_1;
OwGfxSetupPartialCtrlD1( ctrl.p.setup.d1_old, ctrl.p.setup.d1_new);
gOSD_state.etSetup_dsp.d1_list = ctrl.p.setup.d1_new;
break;
case OSD_CTRL_SETUP_SEL_D2:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_2;
OwGfxSetupPartialCtrlD2(ctrl.p.setup.d2_old, ctrl.p.setup.d2_new);
gOSD_state.etSetup_dsp.d2_list = ctrl.p.setup.d2_new;
break;
case OSD_CTRL_SETUP_SEL_D3:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_3;
OwGfxSetupPartialCtrlD3(ctrl.p.setup.d3_old, ctrl.p.setup.d3_new);
gOSD_state.etSetup_dsp.d3_list = ctrl.p.setup.d3_new;
break;
#if _APP_CAP_AUD_SETUP_SPEAKER
case OSD_CTRL_SETUP_SEL_D4:
OwGfxSetupPartialCtrlD4(ctrl.p.setup.d4_old,ctrl.p.setup.d4_new);
gOSD_state.etSetup_dsp.d4_list = ctrl.p.setup.d4_new;
break;
case OSD_CTRL_SETUP_SEL_D5: //clina 060427
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_5;
OwGfxSetupPartialVolumeD5(ctrl.p.setup.d5_new);
gOSD_state.etSetup_dsp.d5_list = ctrl.p.setup.d5_new;
break;
#endif
#if _SUPPORT_TVG_FUNCTION_ //(weilf)20060705
case OSD_CTRL_SETUP_SEL_D6:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_6;
OwGfxSetupPartialCtrlD6(ctrl.p.setup.d6_old, ctrl.p.setup.d6_new);
gOSD_state.etSetup_dsp.d6_list = ctrl.p.setup.d6_new;
break;
case OSD_CTRL_SETUP_SEL_D7:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_7;
OwGfxSetupPartialCtrlD7(ctrl.p.setup.d7_old, ctrl.p.setup.d7_new);
gOSD_state.etSetup_dsp.d7_list = ctrl.p.setup.d7_new;
break;
case OSD_CTRL_SETUP_RETURN_FROM_D7:
//gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_6;
OwGfxSetupReturnFromD7(ctrl.p.setup.d7_new);
break;
#endif
case OSD_CTRL_SETUP_CHANGE_D3:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_2;
OwGfxSetupReturnFromD3(ctrl.p.setup.d3_new);
//gOSD_state.etSetup_dsp.d3_list = ctrl.p.setup.d3_new;
break;
case OSD_CTRL_SETUP_RETURN_FROM_D2:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_1;
OwGfxSetupReturnFromD2(ctrl.p.setup.d2_old);
gOSD_state.etSetup_dsp.pass_step = ctrl.p.setup.passwd_type;
break;
case OSD_CTRL_SETUP_RETURN_FROM_D3:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_2;
OwGfxSetupReturnFromD3(ctrl.p.setup.d3_new);
break;
case OSD_CTRL_SETUP_RETURN_FROM_D4:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_2;
OwGfxSetupReturnFromD4(ctrl.p.setup.d3_new);
gOSD_state.etSetup_dsp.d3_list = ctrl.p.setup.d3_new;
gOSD_state.etSetup_dsp.pass_step = ctrl.p.setup.passwd_type;
break;
case OSD_CTRL_SETUP_CREATE_OTHER_LANG:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4;
OwGfxSetupShowOtherLang(); // Qian liping 051102
switch( gOSD_state.etSetup_dsp.d2_list )
{
case MENU_D2_LANG_AUDIO: gOSD_state.etSetup_dsp.d3_list = MENU_D3_LANG_AUDIO_OTHER; break;
case MENU_D2_LANG_SUBTITLE: gOSD_state.etSetup_dsp.d3_list = MENU_D3_LANG_SUBTITLE_OTHER; break;
case MENU_D2_LANG_DISCMENU: gOSD_state.etSetup_dsp.d3_list = MENU_D3_LANG_DISC_OTHER; break;
}
break;
case OSD_CTRL_SETUP_CREATE_RATING:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_3;
OwGfxSetupShowRatingLevel(ctrl.p.setup.d3_new); // Qian liping 051102
gOSD_state.etSetup_dsp.d3_list = ctrl.p.setup.d3_new;
break;
case OSD_CTRL_SETUP_SEL_RATING:
OwGfxSetupPartialCtlRatingLevel(ctrl.p.setup.d3_new) ; // Qian liping 051102
gOSD_state.etSetup_dsp.d3_list = ctrl.p.setup.d3_new;
break;
case OSD_CTRL_SETUP_SHOW_VERSION:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4; //clina 060422
OwGfxSetupD4VersionMsg();
break;
#if _APP_CAP_FUNC_DIVX_DRM //clina 060422
case OSD_CTRL_SETUP_SHOW_DRM:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4; //clina 060422
OwGfxSetupD4RegistrationCodeMsg();
break;
#endif
#if _APP_CAP_FUNC_COLDSTART
case OSD_CTRL_SETUP_SHOW_INIT://Clina 060410
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4;
OSD_SetMainDisplay(DISPLAY_COLDSTART, SYS_NO_WAIT);
return;
break;
#endif
#if _APP_CAP_AUD_SETUP_SPEAKER
case OSD_CTRL_SETUP_CREATE_VOLUME_CONTROL:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4;
OwGfxSetupD4ShowSpeakerCtrl();
gOSD_state.etSetup_dsp.d4_list = ctrl.p.setup.d4_new;
break;
case OSD_CTRL_SETUP_UPDATE_TEST_TONE:
#if _APP_CAP_AUD_CALNOISE
if(gOSD_state.etCur_dsp == DISPLAY_SETUP)
{
OwGfxSetupTestSpeaker (ctrl.p.setup.eiChannel);
}//clina 060405
#endif/*_APP_CAP_AUD_CALNOISE*/
break;
#endif/*_APP_CAP_AUD_SETUP_SPEAKER*/
#if _SUPPORT_TVG_FUNCTION_
case OSD_CTRL_SETUP_TVG_ACTIVATION:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_4;
OwSetupTVGActivation();
break;
case OSD_CTRL_SETUP_TVG_INTERFACE:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_6;
gOSD_state.etSetup_dsp.d6_list = MENU_D6_TVG_GUARDIAN;
OwSetupTVGInterface();
break;
case OSD_CTRL_SETUP_TVG_SETUPHELP_INTERFACE:
gOSD_state.etSetup_dsp.depth = MENU_DOM_DEPTH_8;
OwSetupTVGSetuphelpInterface();
break;
case OSD_CTRL_SETUP_TVG_DISABLE:
OwSetupTVGChaningDisable();
break;
case OSD_CTRL_SETUP_TVG_ENABLE:
OwSetupTVGChaningEnable();
break;
case OSD_CTRL_SETUP_TVG_INVALID_CODE:
OwSetupTVGDrawInvalidCode();
break;
case OSD_CTRL_SETUP_TVG_DEL_INVALID_CODE:
OwSetupTVGDelInvalidCode();
break;
#endif
#endif
}
SH_GfxShowCanvas(SH_CANV1, TRUE);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -