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

📄 o_program_config.c

📁 Zoran V966 DVD 解码 Soc芯片的源程序
💻 C
字号:
/****************************************************************************************************
*  Copyright (c) 2005 ZORAN Corporation, All Rights Reserved
*  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
*  File: o_program_config.c
*
* Description:
* =========
****************************************************************************************************/

/***************************************************************************************
*	Descriptor 	: 	oProgramTrackDescriptor
*
*	Purpose	 	:	The Program Track object.
****************************************************************************************/

STATIC CONST MS_DESCRIPTOR_PROGRAM_TRACK oProgramTrackDescriptor =
{
	{// MS_DESCRIPTOR
		sizeof(MSO_PROGRAM_TRACK),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			0,
			0,
			0,
			AREA_ITEM_HEIGHT
		},
		_TrackOperation,
		_TrackFillOSDSeg,
		mpParamNull
	},
	CIDX_8
};

/***************************************************************************************
*	Descriptor 	: 	oProgramTitleDescriptor
*
*	Purpose	 	:	The Program Title object.
****************************************************************************************/
STATIC CONST MS_DESCRIPTOR_PROGRAM_TRACK oProgramTitleDescriptor =
{
	{// MS_DESCRIPTOR
		sizeof(MSO_PROGRAM_TRACK),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			0,
			0,
			0,
			AREA_ITEM_HEIGHT
		},
		_TitleOperation,
		_TitleFillOSDSeg,
		mpParamNull
	},
	CIDX_8
};

/***************************************************************************************
*	Descriptor 	: 	oProgramChapterDescriptor
*
*	Purpose	 	:	The Program Chapter object.
****************************************************************************************/
STATIC CONST MS_DESCRIPTOR_PROGRAM_TRACK oProgramChapterDescriptor =
{
	{// MS_DESCRIPTOR
		sizeof(MSO_PROGRAM_TRACK),
		MS_NAV_TO_ALGINED_Y,
		MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
		{
			0,
			0,
			0,
			AREA_ITEM_HEIGHT
		},
		_ChapterOperation,
		_ChapterFillOSDSeg,
		mpParamNull
	},
	CIDX_8
};

/***************************************************************************************
*	Descriptor 	: 	oProgramComponentTitleDescriptor
*
*	Purpose	 	:	
****************************************************************************************/
STATIC CONST MS_COLOR_SET oProgramComponentTitleColorSet = {
	CIDX_6,
	NULL,
	NULL,
	NULL
};

STATIC CONST OSD_TEXT oProgramComponentTitleText = {OSDR_GetFormUniStr_OsdMessage, S_PROGRAM};

STATIC CONST MS_DESCRIPTOR_TEXT oProgramComponentTitleDescriptor =
{ // MS_DESCRIPTOR_TEXT
	{ // MS_DESCRIPTOR
        	sizeof(MSO_TEXT),
        	MS_NAV_NULL,
        	MS_ATTR_OSD_LAYER_0,
        	{
        		AREA_PROGRAM_TITLE_X,
			AREA_PROGRAM_TITLE_Y,
            		AREA_PROGRAM_TITLE_W,
            		AREA_PROGRAM_TITLE_H
        	},
        	OTEXT_Operation,
        	OTEXT_FillOSDSeg,
        	mpParamNull
    	},
    	(MS_X_Y_ALIGN *)&oCenterAlignToContainer,
	(MS_COLOR_SET *)&oProgramComponentTitleColorSet, //oDefaultTextColorSet,
	NULL,
	(OSD_TEXT*)&oProgramComponentTitleText,
	FONT_0,
	NULL,
	NULL
};

/***************************************************************************************
*	Descriptor 	: 	oTrackVListDescriptor
*
*	Purpose	 	:	Descriptor of the list (MSO_VLIST) containing the track, title or chapter objects.
 ****************************************************************************************/
 
STATIC CONST MS_PARAM_VLIST oTrackListParam = {
	0, // Total number of items in the list.
	0,// Index of the first item.
	NBR_MAX_VISIBLE_TRACK_ITEMS, // Number of visible items.
	4, // mcItemOffset
	0
};

STATIC CONST MS_DESCRIPTOR_VLIST oTrackVListDescriptor = 
{ // Container descriptor start
	{// Descriptor start
		sizeof(MSO_VLIST),
		MS_NAV_CONTAINER_WRAP_UD | MS_NAV_CONTAINER_GOTO_PREV_FOCUS | MS_NAV_CONTAINER_GOTO_TOP,
		MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0 | MS_ATTR_VLIST_OFFSET_FIRSTITEM, 
		{
			AREA_TRACK_LIST_X,
			AREA_TRACK_LIST_Y,
			AREA_TRACK_LIST_W,
			AREA_TRACK_LIST_H
		},
		_TrackVListOperation,	
		mpfFillOsdSegNull, // VListFillOSDSeg
		(UINT8*)&oTrackListParam
	},// Descriptor end
	maContentsNull,
	mwNbrContentsNull,
};

/***************************************************************************************
*	Descriptor 	: 	oTrackVScrollListDescriptor
*
*	Purpose	 	:	The MSO_VSCROLL_LIST object which contains an MSO_VLIST (descriptor oTrackVListDescriptor) object 
*					within it.
 ****************************************************************************************/
STATIC CONST MS_DESCRIPTOR_VSCROLL_LIST oTrackVScrollListDescriptor =
{
	{ // Container descriptor start
		{ // Descriptor start
			sizeof(MSO_VSCROLL_LIST),
			MS_NAV_NULL,
			MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0 | MS_ATTR_VSLIST_DISPLAY_BG_BMP |MS_ATTR_VSLIST_SCROLL_ARROW,
			{
				AREA_TRACK_SCROLL_LIST_X,
				AREA_TRACK_SCROLL_LIST_Y,
				AREA_TRACK_SCROLL_LIST_W,
				AREA_TRACK_SCROLL_LIST_H
			},
			_TrackVScrollListOperation,
			VScrollListFillOSDSeg,
			mpParamNull,
		}, // Descriptor end
		maContentsNull,
		mwNbrContentsNull,
	}, // Container descriptor end
	(MS_DESCRIPTOR_VLIST*)&oTrackVListDescriptor, // mpDescriptorVList
	0,
	TRACK_SCROLL_ARROW_HEIGHT,
	CIDX_8, 				// Text color
	BMP_BG_3, 			// Background bitmap
	BMP_BG_PUSHED_1, 	// Scrollbar background bitmap
	BMP_BG_3 			// Scrollbar bitmap
};

/***************************************************************************************
*	Descriptor 	: 	oProgramListDisplayDescriptor
*
*	Purpose	 	:	The object is used to display the program list.
 ****************************************************************************************/
STATIC CONST MS_DESCRIPTOR_PROGRAM_LIST_DISPLAY oProgramListDisplayDescriptor =
{
	{// MS_DESCRIPTOR
		sizeof(MSO_OBJECT),
		MS_NAV_NULL,
		MS_ATTR_OSD_LAYER_0,
		{
			AREA_PROGRAM_LIST_DISPLAY_X,
			AREA_PROGRAM_LIST_DISPLAY_Y,
			AREA_PROGRAM_LIST_DISPLAY_W,
			AREA_PROGRAM_LIST_DISPLAY_H
		},
		_ProgramListDisplayOperation,
		_ProgramListDisplayFillOSDSeg,
		mpParamNull
	},
	BMP_BG_3,
	CIDX_4,
	CIDX_8
};

/***************************************************************************************
*	Descriptor 	: 	oPlayButtonDescriptor
*
*	Purpose	 	:	
 ****************************************************************************************/
 
STATIC CONST MS_COLOR_SET oPlayButtonColorSet = {
	CIDX_8,
	NULL,
	NULL,
	NULL
};

STATIC CONST OSD_TEXT oPlayButtonText = {OSDR_GetFormUniStr_OsdMessage, S_PLAY_PROGRAM};

STATIC CONST MS_BITMAP_SET oPlayButtonBitmapSet =
{
	BMP_BG_3,
	BMP_FG_FOCUS,
	BMP_BG_2,
	BMP_BG_PUSHED_1
};

STATIC CONST MS_DESCRIPTOR_BUTTON oPlayButtonDescriptor =
{// MS_DESCRIPTOR
	{
		{
			sizeof(MSO_BUTTON),
			MS_NAV_TO_ALGINED_X,
			MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
			{
				AREA_PLAY_BUTTON_X,
				AREA_PLAY_BUTTON_Y,
				AREA_PLAY_BUTTON_W,
				AREA_PLAY_BUTTON_H
			},
			_PlayButtonOperation,
			OBUTTON_FillOSDSeg,
			mpParamNull
		},
		(MS_X_Y_ALIGN *)&oCenterAlignToContainer,
		(MS_COLOR_SET *)&oPlayButtonColorSet, //oDefaultTextColorSet,
		(MS_BITMAP_SET *)&oPlayButtonBitmapSet,
		(OSD_TEXT*)&oPlayButtonText,
		FONT_0,
		NULL,
		NULL
	},
	MS_OP_NONE
};

/***************************************************************************************
*	Descriptor 	: 	oClearButtonDescriptor
*
*	Purpose	 	:	
 ****************************************************************************************/
 
STATIC CONST OSD_TEXT oClearButtonText = {OSDR_GetFormUniStr_OsdMessage, S_CLEAR};

STATIC CONST MS_DESCRIPTOR_BUTTON oClearButtonDescriptor =
{// MS_DESCRIPTOR
	{
		{
			sizeof(MSO_BUTTON),
			MS_NAV_TO_ALGINED_X,
			MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
			{
				AREA_CLEAR_BUTTON_X,
				AREA_CLEAR_BUTTON_Y,
				AREA_CLEAR_BUTTON_W,
				AREA_CLEAR_BUTTON_H
			},
			_ClearButtonOperation,
			OBUTTON_FillOSDSeg,
			mpParamNull
		},
		(MS_X_Y_ALIGN *)&oCenterAlignToContainer,
		(MS_COLOR_SET *)&oPlayButtonColorSet, //oDefaultTextColorSet,
		(MS_BITMAP_SET *)&oPlayButtonBitmapSet,
		(OSD_TEXT*)&oClearButtonText,
		FONT_0,
		NULL,
		NULL
	},
	MS_OP_NONE
};

/***************************************************************************************
*	Descriptor 	: 	oClearAllButtonDescriptor
*
*	Purpose	 	:	
 ****************************************************************************************/
 
STATIC CONST OSD_TEXT oClearAllButtonText = {OSDR_GetFormUniStr_OsdMessage, S_CLEAR_ALL};

STATIC CONST MS_DESCRIPTOR_BUTTON oClearAllButtonDescriptor =
{// MS_DESCRIPTOR
	{
		{
			sizeof(MSO_BUTTON),
			MS_NAV_TO_ALGINED_X,
			MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
			{
				AREA_CLEAR_ALL_BUTTON_X,
				AREA_CLEAR_ALL_BUTTON_Y,
				AREA_CLEAR_ALL_BUTTON_W,
				AREA_CLEAR_ALL_BUTTON_H
			},
			_ClearAllButtonOperation,
			OBUTTON_FillOSDSeg,
			mpParamNull
		},
		(MS_X_Y_ALIGN *)&oCenterAlignToContainer,
		(MS_COLOR_SET *)&oPlayButtonColorSet, //oDefaultTextColorSet,
		(MS_BITMAP_SET *)&oPlayButtonBitmapSet,
		(OSD_TEXT*)&oClearAllButtonText,
		FONT_0,
		NULL,
		NULL
	},
	MS_OP_NONE
};

/***************************************************************************************
*	Descriptor 	: 	oProgramDescriptor
*
*	Purpose	 	:	Descriptor of the program component.
 ****************************************************************************************/
STATIC CONST MS_DESCRIPTOR* CONST apProgramComponentContents[NBR_PROGRAM_COMPONENT_CONTENTS] = {	
	(MS_DESCRIPTOR*)&oProgramComponentTitleDescriptor,
	(MS_DESCRIPTOR*)&oTrackVScrollListDescriptor,	
	(MS_DESCRIPTOR*)&oProgramListDisplayDescriptor,	
	(MS_DESCRIPTOR*)&oPlayButtonDescriptor,	
	(MS_DESCRIPTOR*)&oClearButtonDescriptor,
	(MS_DESCRIPTOR*)&oClearAllButtonDescriptor
};

CONST MS_DESCRIPTOR_PROGRAM oProgramDescriptor =
{
	{// MS_DESCRIPTOR_COMPONENT
		{// MS_DESCRIPTOR_CONTAINER
			{// MS_DESCRIPTOR
				sizeof(MSO_PROGRAM),
				MS_NAV_TO_ALGINED_X | MS_NAV_TO_ALGINED_Y |MS_NAV_CONTAINER_WRAP_LR,
				MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
				{
					AREA_PROGRAM_X,
					AREA_PROGRAM_Y, 
					AREA_PROGRAM_W, 
					AREA_PROGRAM_H
				},
				_ProgramComponentOperation,
				_ProgramComponentFillOSDSeg,
				mpParamNull
			},
			(CONST MS_DESCRIPTOR**)apProgramComponentContents,	//maContentsNull,
			NBR_PROGRAM_COMPONENT_CONTENTS, 	
		},
		NULL,
	},
	BMP_BG_2,
	CIDX_6
};

⌨️ 快捷键说明

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