⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 osd_handler_setup.c

📁 SAMSUNG 5009的源代码
💻 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 + -