o_volume_control_config.c
来自「ZORAN 962/966 SOURCE CODE,DVD chip」· C语言 代码 · 共 593 行 · 第 1/2 页
C
593 行
},
S_R_SUR_VOLUME,
S_NULL,
S_NULL,
VOLUME_HSLIDER_BAR_HEIGHT,
VOLUME_HSLIDER_BAR_WIDTH,
VOLUME_HTAB_HEIGHT,
VOLUME_HTAB_WIDTH,
HS_HIGHLIGHT_ON_OBJECT,
TRUE, // bDisplayCurrentValue
TRUE, // bDisplayMinAndMaxValues
_RightSurroundChannelVolumeSliderAction
};
#endif // D_SURROUND_CHANNEL_VOLUME
#ifdef D_LT_RT_CHANNEL_VOLUME
/***************************************************************************************
* Descriptor : oLeftDownmixVolumeSliderDescriptor
*
* Purpose : The Edge control Horizontal slider control descriptor.
****************************************************************************************/
STATIC CONST MS_PARAM_HSLIDER oLeftDownmixVolumeSliderParams =
{
MIN_VOLUME_SLIDER,
(NUM_SLIDER_STEPS_CHANNEL- 1),
INIT_VOLUME_SLIDER,
STEP_INDEX_VOLUME_SLIDER
};
STATIC CONST MS_DESCRIPTOR_HSLIDER_VLIST oLeftDownmixVolumeSliderDescriptor =
{
{
sizeof(MSO_HSLIDER),
MS_NAV_NULL,
MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1,
{
AREA_VOLUME_ITEM_X, AREA_VOLUME_ITEM_Y, AREA_VOLUME_ITEM_W, AREA_VOLUME_ITEM_H
},
HSliderOperationOnVList,
HSliderFillOSDSegOnVList,
(UINT8*)&oLeftDownmixVolumeSliderParams
},
S_DML_VOLUME,
S_NULL,
S_NULL,
VOLUME_HSLIDER_BAR_HEIGHT,
VOLUME_HSLIDER_BAR_WIDTH,
VOLUME_HTAB_HEIGHT,
VOLUME_HTAB_WIDTH,
HS_HIGHLIGHT_ON_OBJECT,
TRUE, // bDisplayCurrentValue
TRUE, // bDisplayMinAndMaxValues
_LeftDownmixVolumeSliderAction
};
/***************************************************************************************
* Descriptor : oRightDownmixVolumeSliderDescriptor
*
* Purpose : The Edge control Horizontal slider control descriptor.
****************************************************************************************/
STATIC CONST MS_PARAM_HSLIDER oRightDownmixVolumeSliderParams =
{
MIN_VOLUME_SLIDER,
(NUM_SLIDER_STEPS_CHANNEL- 1),
INIT_VOLUME_SLIDER,
STEP_INDEX_VOLUME_SLIDER
};
STATIC CONST MS_DESCRIPTOR_HSLIDER_VLIST oRightDownmixVolumeSliderDescriptor =
{
{
sizeof(MSO_HSLIDER),
MS_NAV_NULL,
MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1,
{
AREA_VOLUME_ITEM_X, AREA_VOLUME_ITEM_Y, AREA_VOLUME_ITEM_W, AREA_VOLUME_ITEM_H
},
HSliderOperationOnVList,
HSliderFillOSDSegOnVList,
(UINT8*)&oRightDownmixVolumeSliderParams
},
S_DMR_VOLUME,
S_NULL,
S_NULL,
VOLUME_HSLIDER_BAR_HEIGHT,
VOLUME_HSLIDER_BAR_WIDTH,
VOLUME_HTAB_HEIGHT,
VOLUME_HTAB_WIDTH,
HS_HIGHLIGHT_ON_OBJECT,
TRUE, // bDisplayCurrentValue
TRUE, // bDisplayMinAndMaxValues
_RightDownmixVolumeSliderAction
};
#endif // D_LT_RT_CHANNEL_VOLUME
#ifdef D_LFE_CHANNEL_VOLUME
/***************************************************************************************
* Descriptor : oSubwooferChannelVolumeSliderDescriptor
*
* Purpose : The Edge control Horizontal slider control descriptor.
****************************************************************************************/
STATIC CONST MS_PARAM_HSLIDER oSubwooferChannelVolumeSliderParams =
{
MIN_VOLUME_SLIDER,
(NUM_SLIDER_STEPS_CHANNEL- 1),
INIT_VOLUME_SLIDER,
STEP_INDEX_VOLUME_SLIDER
};
STATIC CONST MS_DESCRIPTOR_HSLIDER_VLIST oSubwooferChannelVolumeSliderDescriptor =
{
{
sizeof(MSO_HSLIDER),
MS_NAV_NULL,
MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1,
{
AREA_VOLUME_ITEM_X, AREA_VOLUME_ITEM_Y, AREA_VOLUME_ITEM_W, AREA_VOLUME_ITEM_H
},
_SubWooferChannelSliderOperation,
HSliderFillOSDSegOnVList,
(UINT8*)&oSubwooferChannelVolumeSliderParams
},
S_SUBWOOFER_VOLUME,
S_NULL,
S_NULL,
VOLUME_HSLIDER_BAR_HEIGHT,
VOLUME_HSLIDER_BAR_WIDTH,
VOLUME_HTAB_HEIGHT,
VOLUME_HTAB_WIDTH,
HS_HIGHLIGHT_ON_OBJECT,
TRUE, // bDisplayCurrentValue
TRUE, // bDisplayMinAndMaxValues
_SubwooferChannelVolumeSliderAction
};
#endif // D_LFE_CHANNEL_VOLUME
#else
#ifdef D_GUI_HEADPHONE_VOLUME
/***************************************************************************************
* Descriptor : oHeadphoneVolumeSliderDescriptor
*
* Purpose : The Edge control Horizontal slider control descriptor.
****************************************************************************************/
STATIC CONST MS_PARAM_HSLIDER oHeadphoneVolumeSliderParams =
{
MIN_VOLUME_SLIDER,
NUM_SLIDER_STEPS_HEADPHONE_NON_DDX,
INIT_VOLUME_SLIDER,
STEP_INDEX_VOLUME_SLIDER
};
STATIC CONST MS_DESCRIPTOR_HSLIDER_VLIST oHeadphoneVolumeSliderDescriptor =
{
{
sizeof(MSO_HSLIDER),
MS_NAV_NULL,
MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1,
{
AREA_VOLUME_ITEM_X, AREA_VOLUME_ITEM_Y, AREA_VOLUME_ITEM_W, AREA_VOLUME_ITEM_H
},
HSliderOperationOnVList,
HSliderFillOSDSegOnVList,
(UINT8*)&oHeadphoneVolumeSliderParams
},
S_HP_VOLUME,
S_NULL,
S_NULL,
VOLUME_HSLIDER_BAR_HEIGHT,
VOLUME_HSLIDER_BAR_WIDTH,
VOLUME_HTAB_HEIGHT,
VOLUME_HTAB_WIDTH,
HS_HIGHLIGHT_ON_OBJECT,
TRUE, // bDisplayCurrentValue
TRUE, // bDisplayMinAndMaxValues
_HeadphoneVolumeSliderAction
};
#endif
#endif // D_SEPARATE_CHANNEL_VOLUME_CONTROL
/***************************************************************************************
* Descriptor : oVolumeKitVListDescriptor
*
* Purpose : Descriptor of the list (MSO_VLIST) containing the Volume settings.
****************************************************************************************/
static CONST MS_PARAM_VLIST oVolumeKitListParam = {
0, // Total number of items in the list.
0, // Index of the first item.
NBR_MSO_CHOICE_MAX_VISIBLE, // Visible
0, // offset
0
};
static CONST MS_DESCRIPTOR_VLIST oVolumeKitVListDescriptor =
{ // 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_SCROLL_SINGLE_ITEM,
{
AREA_VOLUMEKIT_X,
AREA_VOLUMEKIT_Y,
AREA_VOLUMEKIT_W,
AREA_VOLUMEKIT_H
},
_VolumekitVlistOperation,
mpfFillOsdSegNull, // VListFillOSDSeg
(UINT8*)&oVolumeKitListParam
},// Descriptor end
maContentsNull,
mwNbrContentsNull,
};
/***************************************************************************************
* Descriptor : oVolumeKitDescriptor
*
* Purpose : Descriptor of the toolkit. The toolkit is a MSO_VSCROLL_LIST object,
* that contains an MSO_VLIST (descriptor oToolKitVListDescriptor) object
* within it.
****************************************************************************************/
static CONST MS_DESCRIPTOR_VSCROLL_LIST oVolumeKitDescriptor =
{
{ // Container descriptor start
{ // Descriptor start
sizeof(MSO_VSCROLL_LIST),
MS_NAV_NULL,
MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_1 | MS_ATTR_VSLIST_DISPLAY_BG_BMP
//#ifdef D_GUI_SINGLE_LINE_COMPONENT
| MS_ATTR_VSLIST_SCROLL_ARROW | MS_ATTR_VSLIST_SCROLL_ARROW_ON_SIDE
//#endif //D_GUI_SINGLE_LINE_COMPONENT
,
{
AREA_VOLUMEKIT_X,
AREA_VOLUMEKIT_Y,
AREA_VOLUMEKIT_W,
AREA_VOLUMEKIT_H
},
_VolumeKitOperation,
VScrollListFillOSDSeg,
mpParamNull,
}, // Descriptor end
maContentsNull,
mwNbrContentsNull,
}, // Container descriptor end
(MS_DESCRIPTOR_VLIST*)&oVolumeKitVListDescriptor, // mpDescriptorVList
VOLUMEKIT_SCROLL_XPADDING,
VOLUMEKIT_SCROLL_ARROW_HEIGHT,
CIDX_8, // Text color
NULL, // Background bitmap
BMP_BG_PUSHED_1, // Scrollbar background bitmap
BMP_BG_3 // Scrollbar bitmap
};
#define NBR_PLII_MENU_CONTENTS 1
static CONST MS_DESCRIPTOR* CONST apContainerContents[NBR_PLII_MENU_CONTENTS] = {
(MS_DESCRIPTOR*)&oVolumeKitDescriptor
};
/***************************************************************************************
* Descriptor : oVolumeDescriptor
*
* Purpose :
*
****************************************************************************************/
CONST MS_DESCRIPTOR_VOLUMN_CONTROL oVolumeControl =
{
{// MS_DESCRIPTOR_COMPONENT
{// MS_DESCRIPTOR_CONTAINER
{// MS_DESCRIPTOR
sizeof(MSO_VOLUMN_CONTROL),
MS_NAV_CONTAINER_WRAP_UD | MS_NAV_TO_ALGINED_Y | MS_NAV_DISABLE_LR,
MS_ATTR_CONTAINER | MS_ATTR_FOCUSABLE | MS_ATTR_OSD_LAYER_2,
{
AREA_VOLUME_X,
AREA_VOLUME_Y,
AREA_VOLUME_W,
AREA_VOLUME_H
},
_VolumePromptOperation,
_VolumeFillOSDSeg,
mpParamNull,
},
(CONST MS_DESCRIPTOR**)apContainerContents,
NBR_PLII_MENU_CONTENTS,
},
(MS_DESCRIPTOR*)&oMainVolumeSliderDescriptor
},
BMP_BG_2
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?