?? o_dvdvr_config.c
字號:
/****************************************************************************************************
* Copyright (c) 2005 ZORAN Corporation, All Rights Reserved
* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
* File: o_dvdvr_config.c
*
* Description:
* =========
****************************************************************************************************/
/****************************************************************************************************
* DEFINITION: Private constants
****************************************************************************************************/
/***************************************************************************************
* Descriptor : oCenterLeftAlignToContainer
*
* Purpose :
****************************************************************************************/
#ifndef D_CUSTOM_oCenterLeftAlignToContainer
STATIC CONST MS_X_Y_ALIGN oCenterLeftAlignToContainer =
{
4,
0,
ALIGN_H_LEFT_TO_CONTAINER,
ALIGN_V_CENTER_TO_CONTAINER
};
#endif // D_CUSTOM_oCenterLeftAlignToContainer
/***************************************************************************************
* Descriptor : oDiscNameDescriptor
*
* Purpose : The Disc Name object displays name of the DVD-VR disc in the tray.
****************************************************************************************/
#ifndef D_CUSTOM_oDiscNameText
STATIC CONST OSD_TEXT oDiscNameText = { _GetDiscName, 0};
#endif // D_CUSTOM_oDiscNameText
#ifndef D_CUSTOM_oDiscNameDescriptor
STATIC CONST MS_DESCRIPTOR_DISCNAME oDiscNameDescriptor =
{
{
sizeof(MSO_DISCNAME),
MS_NAV_NULL,
MS_ATTR_OSD_LAYER_0,
{
AREA_DISCNAME_X, AREA_DISCNAME_Y, AREA_DISCNAME_W, AREA_DISCNAME_H
},
OTEXT_Operation,
OTEXT_FillOSDSeg,
mpParamNull
},
(MS_X_Y_ALIGN*)&oCenterLeftAlignToContainer,
(MS_COLOR_SET*)&oDefaultTextColorSet,
(MS_BITMAP_SET*)&oHighlightOnlyBitmapSet,
(OSD_TEXT*)&oDiscNameText,
FONT_DISCNAME,
NULL,
NULL
};
#endif // D_CUSTOM_oDiscNameDescriptor
/***************************************************************************************
* Descriptor : oProgramChainDescriptor
*
* Purpose : The Program Chain object displays name of the current program chain.
****************************************************************************************/
#ifndef D_CUSTOM_oProgramChainText
static CONST OSD_TEXT oProgramChainText = { OSDR_GetFormUniStr_OsdMessage, S_NULL};
#endif // D_CUSTOM_oProgramChainText
#ifndef D_CUSTOM_oProgramChainDescriptor
STATIC CONST MS_DESCRIPTOR_PROGRAM_CHAIN oProgramChainDescriptor =
{
{
sizeof(MSO_PROGRAM_CHAIN),
MS_NAV_NULL,
MS_ATTR_OSD_LAYER_0,
{
AREA_PROGRAM_CHAIN_X, AREA_PROGRAM_CHAIN_Y, AREA_PROGRAM_CHAIN_W, AREA_PROGRAM_CHAIN_H
},
_ProgramChainOperation,
OTEXT_FillOSDSeg,
mpParamNull
},
(MS_X_Y_ALIGN*)&oCenterLeftAlignToContainer,
(MS_COLOR_SET*)&oDefaultTextColorSet,
(MS_BITMAP_SET*)&oHighlightOnlyBitmapSet,
(OSD_TEXT*)&oProgramChainText,
FONT_PROGRAM_CHAIN,
NULL,
NULL
};
#endif // D_CUSTOM_oProgramChainDescriptor
/***************************************************************************************
* Descriptor : oPlayTitleDescriptor
*
* Purpose : The play file object displays current, and total tracks.
****************************************************************************************/
#ifndef D_CUSTOM_oPlayTitleText
STATIC CONST OSD_TEXT oPlayTitleText = { _GetPlayTitle, 0};
#endif // D_CUSTOM_oPlayTitleText
#ifndef D_CUSTOM_oPlayTitleDescriptor
STATIC CONST MS_DESCRIPTOR_PLAYTITLE oPlayTitleDescriptor =
{
{
sizeof(MSO_PLAYTITLE),
MS_NAV_NULL,
MS_ATTR_OSD_LAYER_0,
{
AREA_PLAYFILE_X, AREA_PLAYFILE_Y, AREA_PLAYFILE_W, AREA_PLAYFILE_H
},
_PlayTitleOperation,
OTEXT_FillOSDSeg,
mpParamNull
},
(MS_X_Y_ALIGN*)&oCenterAlignToContainer,
(MS_COLOR_SET*)&oDefaultTextColorSet,
(MS_BITMAP_SET*)&oHighlightOnlyBitmapSet,
(OSD_TEXT*)&oPlayTitleText,
FONT_PLAYTITLE,
NULL,
NULL
};
#endif // D_CUSTOM_oPlayTitleDescriptor
/***************************************************************************************
* Descriptor : oNameTextDescriptor
*
* Purpose : This is the descriptor for the "Name" text
****************************************************************************************/
#ifndef D_CUSTOM_oNameText
static CONST OSD_TEXT oNameText = { OSDR_GetFormUniStr_OsdMessage, S_NAME};
#endif//D_CUSTOM_oNameText
#ifndef D_CUSTOM_oNameTextDescriptor
static CONST MS_DESCRIPTOR_TEXT oNameTextDescriptor =
{ // MS_DESCRIPTOR_TEXT
{ // MS_DESCRIPTOR
sizeof(MSO_TEXT),
MS_NAV_NULL,
MS_ATTR_OSD_LAYER_0,
{
AREA_NAME_TEXT_X,
AREA_NAME_TEXT_Y,
AREA_NAME_TEXT_W,
AREA_NAME_TEXT_H
},
OTEXT_Operation,
OTEXT_FillOSDSeg,
(UINT8*)NULL
},
(MS_X_Y_ALIGN *)&oCenterAlignToContainer,
(MS_COLOR_SET *)&oDefaultTextColorSet,
NULL,
(OSD_TEXT*)&oNameText,
FONT_NAME_TEXT,
NULL,
NULL
};
#endif //D_CUSTOM_oNameTextDescriptor
/***************************************************************************************
* Descriptor : oCreationTimeTextDescriptor
*
* Purpose : This is the descriptor for the "Creation Time" text
****************************************************************************************/
#ifndef D_CUSTOM_oCreationTimeText
static CONST OSD_TEXT oCreationTimeText = { OSDR_GetFormUniStr_OsdMessage, S_CREATION_TIME};
#endif//D_CUSTOM_oCreationTimeText
#ifndef D_CUSTOM_oCreationTimeTextDescriptor
static CONST MS_DESCRIPTOR_TEXT oCreationTimeTextDescriptor =
{ // MS_DESCRIPTOR_TEXT
{ // MS_DESCRIPTOR
sizeof(MSO_TEXT),
MS_NAV_NULL,
MS_ATTR_OSD_LAYER_0,
{
AREA_CREATION_TIME_TEXT_X,
AREA_CREATION_TIME_TEXT_Y,
AREA_CREATION_TIME_TEXT_W,
AREA_CREATION_TIME_TEXT_H
},
OTEXT_Operation,
OTEXT_FillOSDSeg,
(UINT8*)NULL
},
(MS_X_Y_ALIGN *)&oCenterAlignToContainer,
(MS_COLOR_SET *)&oDefaultTextColorSet,
NULL,
(OSD_TEXT*)&oCreationTimeText,
FONT_CREATIONTIME_TEXT,
NULL,
NULL
};
#endif //D_CUSTOM_oCreationTimeTextDescriptor
/***************************************************************************************
* Descriptor : oListItemDescriptor
*
* Purpose : Descriptor of the items that represent DVDVR titles.
****************************************************************************************/
STATIC CONST MS_COLOR_SET oListItemColorSet =
{
CIDX_LISTITEM_TEXT,
CIDX_ACTIVE_LISTITEM,
NULL,
NULL
};
STATIC CONST MS_DESCRIPTOR_DVDVR_LISTITEM oListItemDescriptor =
{
{
sizeof(MSO_DVDVR_LISTITEM),
MS_NAV_NULL,
MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_0,
{
20, 50, 120, AREA_LISTITEM_H
},
_ListItemOperation,
_ListItemFillOSDSeg,
mpParamNull
},
(MS_COLOR_SET*)&oListItemColorSet,
(MS_BITMAP_SET*)&oHighlightOnlyBitmapSet,
FONT_LISTITEM,
};
/***************************************************************************************
* Descriptor : oBrowserVListDescriptor
*
* Purpose : It's an MSO_VLIST which contains a list of MSO_CLIPS_LISTITEM.
****************************************************************************************/
STATIC CONST MS_PARAM_VLIST oBrowserVListParam = {
0, // Total number of items in the list.
0, // Index of the first item.
MAX_DVDVR_VISIBLE_LISTITEMS,
0,
0
};
STATIC CONST MS_DESCRIPTOR_VLIST oBrowserVListDescriptor =
{ // 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,
{
20, 20, 200, 264
},
VListOperation,
mpfFillOsdSegNull,
(UINT8*)&oBrowserVListParam
},// Descriptor end
maContentsNull,
mwNbrContentsNull,
};
/***************************************************************************************
* Descriptor : oBrowserVScrollListDescriptor
*
* Purpose : It's an MSO_VSCROLL_LIST which contains an MSO_VLIST, and displays a scroll bar.
****************************************************************************************/
STATIC CONST MS_DESCRIPTOR_VSCROLL_LIST oBrowserVScrollListDescriptor =
{
{ // Container descriptor start
{ // Descriptor start
sizeof(MSO_VSCROLL_LIST),
MS_NAV_NULL,
MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1,
{
AREA_SCROLL_LIST_X,
AREA_SCROLL_LIST_Y,
AREA_SCROLL_LIST_W,
AREA_SCROLL_LIST_H
},
_BrowserScrollListOperation,
VScrollListFillOSDSeg,
mpParamNull,
}, // Descriptor end
maContentsNull,
mwNbrContentsNull,
}, // Container descriptor end
(MS_DESCRIPTOR_VLIST*)&oBrowserVListDescriptor,
VSCROLL_LIST_XPADDING,
VSCROLL_LIST_YPADDING,
CIDX_BROWSER_TEXT, // Text color
BMP_BROWSER_LIST_BG, // Background bitmap
BMP_BROWSER_LIST_SCROLLBAR_BG, // Scrollbar background bitmap
BMP_BROWSER_LIST_SCROLLBAR // Scrollbar bitmap
};
/***************************************************************************************
* Descriptor : oHelpTextDescriptor
*
* Purpose : Displays "helpful" information to the user.
****************************************************************************************/
enum
{
DVDVR_MENU_KEY_HELP ,
DVDVR_TITLE_KEY_HELP ,
DVDVR_PLAYBACK_HELP ,
DVDVR_HELP_ARRAY_SIZE
};
STATIC CONST MS_DESCRIPTOR_DVDVR_HELPTEXT oHelpTextDescriptor =
{ // MS_DESCRIPTOR_HSCROLL_TEXT
{ // MS_DESCRIPTOR_MULTILINE_TEXT
{ // MS_DESCRIPTOR_TEXT
{ // MS_DESCRIPTOR
sizeof(MSO_DVDVR_HELPTEXT),
MS_NAV_NULL,
MS_ATTR_OSD_LAYER_1, // Attributes
{
AREA_HELP_TEXT_X, AREA_HELP_TEXT_Y, AREA_HELP_TEXT_W, AREA_HELP_TEXT_H
},
_HelpTextOperation,
OHSCROLLTEXT_FillOSDSeg,
mpParamNull
},
(MS_X_Y_ALIGN *)&oHelpTextXYAlign,
(MS_COLOR_SET *)&oHelpTextColorSet,
(MS_BITMAP_SET *)&oButtonBitmapSet,
(OSD_TEXT *)NULL,
FONT_HELPTEXT,
NULL,
NULL,
},
DVDVR_HELPTEXT_LEFT_RIGHT_BORDER,
DVDVR_HELPTEXT_TOP_BOTTOM_BORDER,
DVDVR_HELPTEXT_PIXEL_GAP,
DVDVR_HELP_ARRAY_SIZE,
#ifdef D_GUI_DESCRIPTOR_MULTILINETEXT_EXT1
DVDVR_HELPTEXT_BG_FIT_H,
DVDVR_HELPTEXT_BG_FIT_V,
DVDVR_HELPTEXT_PIXEL_MARGIN_BG_HORIZONTAL ,
DVDVR_HELPTEXT_PIXEL_MARGIN_BG_VERTICAL,
DVDVR_HELPTEXT_PREPARE_STR_FIT
#endif//D_GUI_DESCRIPTOR_MULTILINETEXT_EXT1
},
HSCROLL_START_RIGHT,
HSCROLL_TYPE_FINISH_BEFORE_RESCROLL_REMOVE_SCROLL, // scrolltype
DVDVR_HELPTEXT_PIXEL_COUNT,
DVDVR_HELPTEXT_HOLD_TIME
};
/***************************************************************************************
* Descriptor : oDVDVRDescriptor
*
* Purpose : Descriptor of the list (MSO_DVDVR) DVDVR component.
****************************************************************************************/
enum
{
NBR_DVDVR_DISCNAME = 0 ,
NBR_DVDVR_PROGRAM_CHAIN ,
NBR_DVDVR_PLAYTITLE ,
NBR_DVDVR_NAME_TEXT ,
NBR_DVDVR_CREATION_TIME_TEXT ,
NBR_DVDVR_BROWSER ,
NBR_DVDVR_HELP_TEXT ,
NBR_DVDVR_CONTENTS
};
STATIC CONST MS_DESCRIPTOR* CONST apDVDVRContents[NBR_DVDVR_CONTENTS] = {
(MS_DESCRIPTOR*)&oDiscNameDescriptor,
(MS_DESCRIPTOR*)&oProgramChainDescriptor,
(MS_DESCRIPTOR*)&oPlayTitleDescriptor,
(MS_DESCRIPTOR*)&oNameTextDescriptor,
(MS_DESCRIPTOR*)&oCreationTimeTextDescriptor,
(MS_DESCRIPTOR*)&oBrowserVScrollListDescriptor,
(MS_DESCRIPTOR*)&oHelpTextDescriptor,
};
CONST MS_DESCRIPTOR_DVDVR oDVDVRDescriptor =
{
{// MS_DESCRIPTOR_COMPONENT
{// MS_DESCRIPTOR_CONTAINER
{// MS_DESCRIPTOR
sizeof(MSO_DVDVR),
MS_NAV_TO_ALGINED_Y | 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_DVDVR_X,
AREA_DVDVR_Y,
AREA_DVDVR_W,
AREA_DVDVR_H
},
_DVDVROperation,
_DVDVRFillOSDSeg,
mpParamNull
},
(CONST MS_DESCRIPTOR**)apDVDVRContents, //maContentsNull,
NBR_DVDVR_CONTENTS, //mwNbrContentsNull,
},
(MS_DESCRIPTOR*)&oBrowserVListDescriptor
},
BMP_DVDVR_COMPONENT_BG,
CIDX_DVDVR_COMPONENT_TEXT
};
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -