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

📄 o_tvguardian_config.c

📁 Zoran V966 DVD 解码 Soc芯片的源程序
💻 C
📖 第 1 页 / 共 2 页
字号:
/****************************************************************************************************
*  Copyright (c) 2005 ZORAN Corporation, All Rights Reserved
*  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
*  File: o_tvguardian_config.c
*
* Description:
* =========
****************************************************************************************************/
#include "Config.h"   	// Global Configuration - do not remove!

/****************************************************************************************************
*	DEFINITION: Private constants 
****************************************************************************************************/
/***************************************************************************************
*	Descriptor 	: 	oTVGuardianContainerDescriptor
*
*	Purpose	 	:	
 ****************************************************************************************/
 static CONST MS_DESCRIPTOR_TVGUARDIAN_COMPONENT oTVGuardianComponentDescriptor =
{// MS_DESCRIPTOR_COMPONENT
	{//MS_DESCRIPTOR_CONTAINER
		{//MS_DESCRIPTOR
			sizeof(MSO_TVGUARDIAN_COMPONENT),
			MS_NAV_NULL,
			MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1,
			{
				AREA_TVGUARDIAN_COMPONENT_X	,
				AREA_TVGUARDIAN_COMPONENT_Y	,
				AREA_TVGUARDIAN_COMPONENT_W	,
				AREA_TVGUARDIAN_COMPONENT_H	
			},
			_TVGuardianComponentOperation,
			mpfFillOsdSegNull,
			mpParamNull,
		},
		maContentsNull,
		mwNbrContentsNull
	},
	NULL
};


/***************************************************************************************
* 	Object definitions
****************************************************************************************/
CONST MS_COLOR_SET oTitleTextColorSet =
{
	CIDX_6,
	NULL,
	NULL,
	NULL
};

/***************************************************************************************
* 	The TVG Setup title text object
****************************************************************************************/
static CONST OSD_TEXT oTVGuardianSetupTitleText =	
{ OSDR_GetFormUniStr_OsdMessage, S_TVGUARDIAN_SETUP};

static CONST MS_DESCRIPTOR_TEXT oTVGuardianSetupTitleDescriptor =
{ // MS_DESCRIPTOR_TEXT
	{ // MS_DESCRIPTOR
        	sizeof(MSO_TEXT),
        	MS_NAV_NULL,
        	MS_ATTR_OSD_LAYER_0,
        	{
        		AREA_TITLE_TEXT_X, 
			AREA_TITLE_TEXT_Y,
            		(AREA_TVGUARDIAN_SETUP_W - (AREA_TITLE_TEXT_X<<1)),
            		TEXT_HEIGHT
        	},
        	OTEXT_Operation,
        	OTEXT_FillOSDSeg,
        	(UINT8*)NULL
    	},
    	(MS_X_Y_ALIGN *)&oTopCenterAlignToContainer,
	(MS_COLOR_SET *)&oTitleTextColorSet,
	NULL,
	(OSD_TEXT*)&oTVGuardianSetupTitleText,
	FONT_0,
	NULL,
	NULL
};

/***************************************************************************************
* 	The TV Guardian Setup Component objects
****************************************************************************************/
static CONST MS_CHOICE_DATA aOnOffChoiceTable[MAX_CHOICE_ONOFF_VALUES] = 
{
	{TVG_WORDS_SET_OFF, 		S_OFF		},
	{TVG_WORDS_SET_FILTERED, 	S_FILTERED	}
};



static CONST MS_CHOICE_DATA aTVGuardianValueTable[MAX_TVGUARDIAN_VALUES] =
{
	{TVG_MODE_OFF,			S_OFF	},
	{TVG_MODE_ONTOL,	S_TVG_MODE_ONTOL},
	{TVG_MODE_ONMOD,	S_MODERATE	},
	{TVG_MODE_ONSTR, 		S_TVG_MODE_ONSTR}
};

static CONST MS_DESCRIPTOR_CHOICE oTVGuardianChoiceDescriptor = 
{
	{// MS_DESCRIPTOR
		sizeof(MSO_CHOICE),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			CHOICE_START_X, 
			AREA_TVGUARDIAN_CHOICE_Y, 
			CHOICE_WIDTH, 
			CHOICE_HEIGHT
		},
		_TVGuardianChoiceOperation,
		ChoiceFillOSDSeg,
		mpParamNull
	},
	NULL,
	S_TV_GUARDIAN,
	MAX_TVGUARDIAN_VALUES,
	(MS_CHOICE_DATA*)&aTVGuardianValueTable,
	CHOICE_NAME_TEXT_COLOR,
	CHOICE_VALUE_TEXT_COLOR,
	CHOICE_BACKGROUND_COLOR,
	CHOICE_BACKGROUND_BMP,
	_TVGuardianChoiceAction
};

/***************************************************************************************
* 	The Hell/Damn On/Off choice object
****************************************************************************************/
static CONST MS_DESCRIPTOR_CHOICE oHellDamnOnOffChoiceDescriptor = 
{
	{// MS_DESCRIPTOR
		sizeof(MSO_CHOICE),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			CHOICE_START_X, 
			AREA_HELLDAMN_CHOICE_Y, 
			CHOICE_WIDTH, 
			CHOICE_HEIGHT
		},
		_RestChoiceOperation,
		ChoiceFillOSDSeg,
		mpParamNull
	},
	NULL,
	S_HELL_DAMN,
	MAX_CHOICE_ONOFF_VALUES,
	(MS_CHOICE_DATA*)&aOnOffChoiceTable,
	CHOICE_NAME_TEXT_COLOR,
	CHOICE_VALUE_TEXT_COLOR,
	CHOICE_BACKGROUND_COLOR,
	CHOICE_BACKGROUND_BMP,
	_HellDamnOnOffChoiceAction
};

/***************************************************************************************
* 	The Religious On/Off choice object
****************************************************************************************/
static CONST MS_DESCRIPTOR_CHOICE oReligiousOnOffChoiceDescriptor = 
{
	{// MS_DESCRIPTOR
		sizeof(MSO_CHOICE),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			CHOICE_START_X, 
			AREA_RELIGIOUS_CHOICE_Y, 
			CHOICE_WIDTH, 
			CHOICE_HEIGHT
		},
		_RestChoiceOperation,
		ChoiceFillOSDSeg,
		mpParamNull
	},
	NULL,
	S_RELIGIOUS,
	MAX_CHOICE_ONOFF_VALUES,
	(MS_CHOICE_DATA*)&aOnOffChoiceTable,
	CHOICE_NAME_TEXT_COLOR,
	CHOICE_VALUE_TEXT_COLOR,
	CHOICE_BACKGROUND_COLOR,
	CHOICE_BACKGROUND_BMP,
	_ReligiousOnOffChoiceAction
};

/***************************************************************************************
* 	The Sexual On/Off choice object
****************************************************************************************/
static CONST MS_DESCRIPTOR_CHOICE oSexualOnOffChoiceDescriptor = 
{
	{// MS_DESCRIPTOR
		sizeof(MSO_CHOICE),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			CHOICE_START_X, 
			AREA_SEXUAL_CHOICE_Y, 
			CHOICE_WIDTH, 
			CHOICE_HEIGHT
		},
		_RestChoiceOperation,
		ChoiceFillOSDSeg,
		mpParamNull
	},
	NULL,
	S_SEXUAL,
	MAX_CHOICE_ONOFF_VALUES,
	(MS_CHOICE_DATA*)&aOnOffChoiceTable,
	CHOICE_NAME_TEXT_COLOR,
	CHOICE_VALUE_TEXT_COLOR,
	CHOICE_BACKGROUND_COLOR,
	CHOICE_BACKGROUND_BMP,
	_SexualOnOffChoiceAction
};

/***************************************************************************************
* 	The CC Mode choice object
****************************************************************************************/


static CONST MS_CHOICE_DATA aCCModeValueTable[MAX_CCMODE_VALUES] =
{
	{TVG_CC_OFF,			S_OFF				},
	{TVG_CC_ONCUSS,		S_ON_MUTE			},
	{TVG_CC_ON,			S_ON_CONTINUOUS	}

};

static CONST MS_DESCRIPTOR_CHOICE oCCModeChoiceDescriptor = 
{
	{// MS_DESCRIPTOR
		sizeof(MSO_CHOICE),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			CHOICE_START_X, 
			AREA_CCMODE_CHOICE_Y, 
			CHOICE_WIDTH, 
			CHOICE_HEIGHT
		},
		_RestChoiceOperation,
		ChoiceFillOSDSeg,
		mpParamNull
	},
	NULL,
	S_CC_MODE,
	MAX_CCMODE_VALUES,
	(MS_CHOICE_DATA*)&aCCModeValueTable,
	CHOICE_NAME_TEXT_COLOR,
	CHOICE_VALUE_TEXT_COLOR,
	CHOICE_BACKGROUND_COLOR,
	CHOICE_BACKGROUND_BMP,
	_CCModeChoiceAction
};

/***************************************************************************************
* 	The CC Channel choice object
****************************************************************************************/


static CONST MS_CHOICE_DATA aCCChannelValueTable[MAX_CCCHANNEL_VALUES] =
{
	{TVG_CC1,		S_TVG_CC_CC1	},
	{TVG_CC2,		S_TVG_CC_CC2	}

};

static CONST MS_DESCRIPTOR_CHOICE oCCChannelChoiceDescriptor = 
{
	{// MS_DESCRIPTOR
		sizeof(MSO_CHOICE),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			CHOICE_START_X, 
			AREA_CCCHANNEL_CHOICE_Y, 
			CHOICE_WIDTH, 
			CHOICE_HEIGHT
		},
		_RestChoiceOperation,
		ChoiceFillOSDSeg,
		mpParamNull
	},
	NULL,
	S_TVG_CHANNEL,
	MAX_CCCHANNEL_VALUES,
	(MS_CHOICE_DATA*)&aCCChannelValueTable,
	CHOICE_NAME_TEXT_COLOR,
	CHOICE_VALUE_TEXT_COLOR,
	CHOICE_BACKGROUND_COLOR,
	CHOICE_BACKGROUND_BMP,
	_CCChannelChoiceAction
};

/***************************************************************************************
* 	The SetupHelp button object
****************************************************************************************/
static CONST OSD_TEXT oSetupHelpText =	
{ OSDR_GetFormUniStr_OsdMessage, S_SETUP_HELP};

STATIC CONST MS_DESCRIPTOR_BUTTON oSetupHelpButtonDescriptor =
{// MS_DESCRIPTOR
	{
		{
			sizeof(MSO_BUTTON),
			MS_NAV_DISABLE_LR,
			MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
			{
				AREA_SETUP_HELP_BUTTON_X, 
				AREA_SETUP_HELP_BUTTON_Y, 
				BUTTON_WIDTH, 
				BUTTON_HEIGHT
			},
			OBUTTON_Operation,
			OBUTTON_FillOSDSeg,
			mpParamNull
		},
		(MS_X_Y_ALIGN *)&oButtonTextXYAlign,
		(MS_COLOR_SET *)&oButtonTextColorSet,
		(MS_BITMAP_SET *)&oButtonBitmapSet,
		(OSD_TEXT *)&oSetupHelpText,
		FONT_0,
		NULL,
		NULL
	},
	MS_OP_MENU_TVG_SETUP_HELP
};

/***************************************************************************************
* 	The TV Guardian setup component
****************************************************************************************/


static CONST MS_DESCRIPTOR* CONST apTVGuardianSetupContents[NBR_TVGUARDIAN_SETUP_CONTENTS] = {
	(MS_DESCRIPTOR*)&oTVGuardianSetupTitleDescriptor,
	(MS_DESCRIPTOR*)&oTVGuardianChoiceDescriptor,
	(MS_DESCRIPTOR*)&oHellDamnOnOffChoiceDescriptor,
	(MS_DESCRIPTOR*)&oReligiousOnOffChoiceDescriptor,
	(MS_DESCRIPTOR*)&oSexualOnOffChoiceDescriptor,
	(MS_DESCRIPTOR*)&oCCModeChoiceDescriptor,
	(MS_DESCRIPTOR*)&oCCChannelChoiceDescriptor,
	//(MS_DESCRIPTOR*)&oOkButtonDescriptor,
	(MS_DESCRIPTOR*)&oSetupHelpButtonDescriptor
};

CONST MS_DESCRIPTOR_TVGUARDIAN_SETUP oTVGuardianSetupDescriptor =
{
	{// MS_DESCRIPTOR_COMPONENT
		{// MS_DESCRIPTOR_CONTAINER
			{// MS_DESCRIPTOR
				sizeof(MSO_TVGUARDIAN_SETUP),
				MS_NAV_DISABLE_LR | MS_NAV_DISABLE_UD |
				MS_NAV_CONTAINER_WRAP_LR | MS_NAV_CONTAINER_WRAP_UD | MS_NAV_CONTAINER_GOTO_TOP,
				MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
				{ 
					AREA_TVGUARDIAN_SETUP_X, 
					AREA_TVGUARDIAN_SETUP_Y, 
					AREA_TVGUARDIAN_SETUP_W, 
					AREA_TVGUARDIAN_SETUP_H
				},
				_TVGuardianSetupOperation,
				_TVGuardianComponentFillOSDSeg,
				mpParamNull,
			},			
			(CONST MS_DESCRIPTOR**)apTVGuardianSetupContents,	
			NBR_TVGUARDIAN_SETUP_CONTENTS, 					
		},
		(MS_DESCRIPTOR*)&oTVGuardianChoiceDescriptor
	},
	COMPONENT_BACKGROUND_BMP,
};

/***************************************************************************************
* 	The TV Guardian Activation Component objects
****************************************************************************************/

/***************************************************************************************
* 	The TVG Activation title text object
****************************************************************************************/
static CONST OSD_TEXT oTVGuardianActivationTitleText =	
{ OSDR_GetFormUniStr_OsdMessage, S_TVGUARDIAN_ACTIVATION };

static CONST MS_DESCRIPTOR_TEXT oTVGuardianActivationTitleDescriptor =
{ // MS_DESCRIPTOR_TEXT
	{ // MS_DESCRIPTOR
        	sizeof(MSO_TEXT),
        	MS_NAV_NULL,
        	MS_ATTR_OSD_LAYER_0,
        	{
        		AREA_TITLE_TEXT_X,
			AREA_TITLE_TEXT_Y,
            		(AREA_TVGUARDIAN_ACTIVATION_W - (AREA_TITLE_TEXT_X<<1)),
            		TEXT_HEIGHT
        	},
        	OTEXT_Operation,
        	OTEXT_FillOSDSeg,
        	(UINT8*)NULL
    	},
    	(MS_X_Y_ALIGN *)&oTopCenterAlignToContainer,
	(MS_COLOR_SET *)&oTitleTextColorSet,
	NULL,
	(OSD_TEXT*)&oTVGuardianActivationTitleText,
	FONT_0,
	NULL,
	NULL
};

/***************************************************************************************
* 	The TVG Activation multiline text object
****************************************************************************************/
static CONST OSD_TEXT oTVGuardianActivationText =
{ OSDR_GetFormUniStr_OsdMessage, S_TVG_ACTIVATION_MULTILINETEXT };

CONST MS_DESCRIPTOR_MULTILINE_TEXT oTVGuardianActivationTextDescriptor =
{ // MS_DESCRIPTOR_MULTILINE_TEXT
	{// MS_DESCRIPTOR_TEXT
		{ // MS_DESCRIPTOR
			sizeof(MSO_MULTILINE_TEXT),
			MS_NAV_NULL,
			MS_ATTR_OSD_LAYER_0,
			{
				AREA_ACTIVATION_MULTILINETEXT_X,
				AREA_ACTIVATION_MULTILINETEXT_Y,
	            		AREA_ACTIVATION_MULTILINETEXT_W,
				AREA_ACTIVATION_MULTILINETEXT_H,
			},
			_TVGuardianMultiLineTextOperation,
			OMULTILINETEXT_FillOSDSeg,
			mpParamNull,
		},
		(MS_X_Y_ALIGN*)&oTopCenterAlignToContainer,
		(MS_COLOR_SET*)&oDefaultTextColorSet,
		NULL,
		(OSD_TEXT*)&oTVGuardianActivationText,
		FONT_0,
		NULL,
		NULL
	},
	MULTILINE_TEXT_LEFTRIGHT_MARGIN,
	MULTILINE_TEXT_TOPBOTTOM_MARGIN,
	MULTILINE_TEXT_LINE_MARGIN,
	TVG_ACTIVATION_MULTILINE_TEXT_LINES,
#ifdef D_GUI_DESCRIPTOR_MULTILINETEXT_EXT1
      TVG_ACTIVATION_BG_FIT_H	,					     	
      TVG_ACTIVATION_BG_FIT_V	,					     	
      TVG_ACTIVATION_PIXEL_MARGIN_BG_HORIZONTAL, 	     	
      TVG_ACTIVATION_PIXEL_MARGIN_BG_VERTICAL ,            
      TVG_ACTIVATION_PREPARE_STR_FIT 				     	
#endif//D_GUI_DESCRIPTOR_MULTILINETEXT_EXT1
};

/***************************************************************************************

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -