📄 stpmenu1.h
字号:
#endif
#ifdef PLAYER_TRIM
PAGE_TRIM,
#endif
#ifdef MTK_DELAY
PAGE_DELAY,
#endif
PAGE_VDO
};
// - Page Type
enum PAGE_TYPE
{
PAGE_TYPE_MAINMENU,
PAGE_TYPE_V_DIALOG,
PAGE_NML
};
// - Entry Type
enum ENTRY_TYPE
{
//TYPE_PAGE,
TYPE_MAINMENU,
//ENTRY_TYPE_MENU,
ENTRY_TYPE_SUBMENU,
ENTRY_TYPE_RETURN,
ENTRY_TYPE_DIALOG,
ENTRY_TYPE_EDITBOX_ORDERED,
ENTRY_TYPE_EDITBOX,
ENTRY_TYPE_GROUPBUTTON,
//ENTRY_TYPE_H_SLIDER,
ENTRY_TYPE_V_SLIDER,
ENTRY_TYPE_H_SLIDER_SIGNED,
#ifdef PLAYER_51_CHANNEL
TYPE_SPK_CONFIG,
#endif
TYPE_CLOSE,
ENTRY_TYPE_STATIC,
//ENTRY_TYPE_CODE,
// ENTRY_TYPE_TEXT,
#ifdef PLAYER_51_CHANNEL
ENTRY_TYPE_NUM,
#endif
ENTRY_TYPE_CNUM,
ENTRY_TYPE_NULL,
TYPE_USER_1
};
enum
{
MENU_TXT,
MENU_BMP
};
// - Page Order
enum
{
/* 00 */ MAIN_PAGE,
/* 01 */ GENERAL_PAGE,
/* 02 */ SPEAKER_PAGE,
#ifdef SUPPORT_8M_AUDIO_EFFECT //danvar070823
/* 04 */ EQ_PAGE,
#endif
/* 03 */ DD_PAGE,
/* 04 */ PRE_PAGE,
#ifdef ENABLE_USER_LANG_CODE
/* 05 */ LANG_PAGE,
#endif
/* 06 */ VDO_PAGE,
#if (defined(PLAYER_KARAOKE) || \
(defined(USE_EXTERNAL_KARAOKE) && defined(MANUAL_MIC_ON_OFF)))
/* 07 */ KOK_PAGE,
#endif
#ifdef PLAYER_KARAOKE
/* 08 */ MIC_PAGE,
#endif
#if (defined(PTL_PWD_MODE_SW) || defined(SET_PTL_NEED_PWD))
/* 09 */ PASS_PAGE,
#endif
/* 10 */ PASS_CHG_PAGE,
/* 11 */ PASS_CON_PAGE,
#if(defined (PLAYER_SURROUND)||defined(SUPPORT_8M_AUDIO_EFFECT)) //danvar070823
/* 17 */ THREED_PAGE,
#endif
/* 12 */ VER_PAGE,
/* 13 */ BRIGHTNESS_PAGE,
/* 14 */ CONTRAST_PAGE,
#ifdef PLAYER_51_CHANNEL
/* 15 */ ADO_PAGE,
/* 16 */ SPDIF_PAGE,
#endif
#ifdef SUPPORT_HDMI
/* 30 */ HDMI_PAGE,
#endif //#ifdef SUPPORT_HDMI
/* 17 */ MAX_PAGE
};
#define EXIT_PAGE (MAX_PAGE + 1) // dummy page
///////////////////////////////////////////////////////////////////////////////
// Setup Menu Struct
typedef struct sData
{
WORD wEntryMsg;
WORD wMsgMsg;
WORD wValMsg;
BYTE bVal;
} sData;
typedef struct sEntry
{
BYTE wType;
BYTE wBmpIdx;
WORD wEntryMsg;
WORD wMsgMsg;
WORD wEEPos; // store in see entry or Page Number
WORD wSIPos; // send to RISC share info update entry
BYTE wMaxOpt;
BYTE wDefault; // default value when reset
sData **prData;
BYTE (code *bFun)(WORD wEEPos, BYTE bValue) large;
} sEntry;
typedef struct sMenu
{
BYTE bType;
WORD wHdrMsg;
//WORD wMsgMsg;
BYTE bTotalEntry;
sEntry **prEntry;
BYTE bMenuType; //void *vFun; // per page draw function
BYTE bInvType; //void *vInvaFun; // invalid entry function
} sMenu;
typedef struct sMenuRoot
{
BYTE wType;
sMenu **prMenu;
BYTE bEntryNo;
} sMenuRoot;
typedef struct _sDlgParent
{
BYTE bDlgId;
BYTE bPage;
BYTE bEntry;
} sDlgParent;
#ifdef SETUP_USE_TAB
typedef struct sTabMsg
{
WORD wStartX;
WORD wStartY;
WORD wMsgIndex;
} sTabMsg;
#endif
///////////////////////////////////////////////////////////////////////////////
// Setup Menu Struct
#define bOptMaxEntryNum(menu, page, entry) (menu.prMenu[page]->prEntry[entry-1]->wMaxOpt)
//#define NUM_STYLE_CTRL(x) ((x == ENTRY_TYPE_H_SLIDER) || (x == ENTRY_TYPE_H_SLIDER_SIGNED))
#define NUM_STYLE_CTRL(x) (x == ENTRY_TYPE_H_SLIDER_SIGNED)
#ifdef _SETUP_C
//code void *vUsrFun[] = {vDrawDynRngBtn};
code sEntry _rEntryNull = { ENTRY_TYPE_NULL, NULL_BMP, 0, 0, NULL_EE_ITEM, 0, 0, 0, 0, 0};
code sEntry _rEntryMain = { ENTRY_TYPE_SUBMENU, NULL_BMP, OSD_MSG_MAINPAGE, OSD_MSG_BACK_TO_MAIN_PAGE, MAIN_PAGE, 0, 0, 0, 0, NULL_FUN};
///////////////////////////////////////////////////////////////////////////////
// Main Page
#ifdef SETUP_USE_TAB
code sTabMsg _rTabMag[SETUP_TAB_NUM] =
{
{SETUP_TAB_MSG_X_1,SETUP_TAB_MSG_Y_1,OSD_MSG_GENERAL},
{SETUP_TAB_MSG_X_2,SETUP_TAB_MSG_Y_2,OSD_MSG_AUDIO_SETTING},
{SETUP_TAB_MSG_X_3,SETUP_TAB_MSG_Y_3,OSD_MSG_DOLBY},
{SETUP_TAB_MSG_X_4,SETUP_TAB_MSG_Y_4,OSD_MSG_VIDEO},
{SETUP_TAB_MSG_X_5,SETUP_TAB_MSG_Y_5,OSD_MSG_PREFERENCE}
};
#endif
code sEntry _rEntryDD = { ENTRY_TYPE_SUBMENU,
#ifdef SETUP_USE_TAB
NULL_BMP,
#else
BMP_STPMN_DOLBY_ON,
#endif
OSD_MSG_DOLBY_DIGITAL, OSD_MSG_GOTO_DOLBY_DIGITAL, DD_PAGE, 0, 0, 0, 0, NULL_FUN};
code sEntry _rEntryGeneral = { ENTRY_TYPE_SUBMENU,
#ifdef SETUP_USE_TAB
NULL_BMP,
#else
BMP_STPMN_GR_ON,
#endif
OSD_MSG_GENERAL_SETUP, OSD_MSG_GOTO_GENERAL_SETUP, GENERAL_PAGE, 0, 0, 0, 0, NULL_FUN};
code sEntry _rEntryVdo = { ENTRY_TYPE_SUBMENU,
#ifdef SETUP_USE_TAB
NULL_BMP,
#else
BMP_STPMN_VDO_ON,
#endif
OSD_MSG_VIDEO_SETUP, OSD_MSG_GOTO_VDO_PAGE, VDO_PAGE, 0, 0, 0, 0, NULL_FUN};
code sEntry _rEntrySpk = { ENTRY_TYPE_SUBMENU,
#ifdef SETUP_USE_TAB
NULL_BMP,
#else
BMP_STPMN_ADO_ON,
#endif
OSD_MSG_AUDIO_SETUP, OSD_MSG_GOTO_SPEAKER, SPEAKER_PAGE, 0, 0, 0, 0, NULL_FUN};
code sEntry _rEntryPre = { ENTRY_TYPE_SUBMENU,
#ifdef SETUP_USE_TAB
NULL_BMP,
#else
BMP_STPMN_PR_ON,
#endif
OSD_MSG_PREFERENC_PAGE, OSD_MSG_GOTO_PREFERENCE, PRE_PAGE, 0, 0, 0, 0, NULL_FUN};
code sData _rOptSpOff = {OSD_MSG_SPDIF_OFF, OSD_MSG_SPDIF_OUTPUT_OFF, OSD_MSG_EMPTY, EV_AO_OFF};
code sData _rOptSpRaw = {OSD_MSG_SPDIF_RAW, OSD_MSG_RAW_DATA, OSD_MSG_EMPTY, EV_RAW};
code sData _rOptSpPcm = {OSD_MSG_SPDIF_PCM, OSD_MSG_PCM_DATA, OSD_MSG_EMPTY, EV_PCM};
code sData *_prDataSpdifGlobal[] = {&_rOptSpOff, &_rOptSpRaw, &_rOptSpPcm };
code sEntry _rEntrySpdifGlobal = { ENTRY_TYPE_GROUPBUTTON, NULL_BMP, OSD_MSG_SPDIFOUTPUT, OSD_MSG_SETUPSPDIF,
IEC958_POSITION, NULL_SI, TBL_SIZE(_prDataSpdifGlobal) - 1,
EV_RAW, _prDataSpdifGlobal, bIecConfig};
// Global SPDIF
#ifdef PLAYER_51_CHANNEL
#ifdef SPDIF_PCM_FREQ_SELECT
// IEC Max Frequency
#ifdef MLP_CERTIFICATION
code sData _rOptIec04k = {OSD_MSG_04K, OSD_MSG_04K, OSD_MSG_EMPTY, EV_04K};
code sData _rOptIec16k = {OSD_MSG_16K, OSD_MSG_16K, OSD_MSG_EMPTY, EV_16K};
#else
code sData _rOptIec48k = {OSD_MSG_48K, OSD_MSG_48K, OSD_MSG_48K, EV_48K};
code sData _rOptIec96k = {OSD_MSG_96K, OSD_MSG_96K, OSD_MSG_96K, EV_96K};
#endif
#ifdef SUPPORT_DVD_AUDIO
code sData _rOptIec192k = {OSD_MSG_192K, OSD_MSG_192K, OSD_MSG_192K, EV_192K};
#endif
code sData *_prDataIecMax[] = {
#ifdef MLP_CERTIFICATION
&_rOptIec04k, &_rOptIec16k,
#else
&_rOptIec48k, &_rOptIec96k,
#endif
#ifdef SUPPORT_DVD_AUDIO
&_rOptIec192k
#endif
};
code sEntry *_prEntrySpdif[] = {&_rEntrySpdifGlobal,
#ifndef MTK_MENU
&_rEntryNull, &_rEntryToAudio
#endif
};
code sMenu _rPageSpdif = {PAGE_NML,
OSD_MSG_SPDIF_SETUP_PAGE, TBL_SIZE(_prEntrySpdif),
_prEntrySpdif, NULL_FUN, CHK_SPDIF};
code sEntry _rEntryToAudio = { ENTRY_TYPE_SUBMENU,
#ifdef SETUP_USE_TAB
NULL_BMP,
#else
BMP_STPMN_ADO_ON,
#endif
OSD_MSG_TO_AUDIO_SETUP, OSD_MSG_GOTO_ADO_SETUP, ADO_PAGE, 0, 0, 0, 0, NULL_FUN};
#if 1//ndef SIMPLE_SPDIF_CTRL
code sEntry _rEntrySpdif = { ENTRY_TYPE_SUBMENU, NULL_BMP, OSD_MSG_SPDIF_SETUP, OSD_MSG_GOTO_SPDIF, SPDIF_PAGE, 0, 0, 0, 0, NULL_FUN};
#endif
#if (defined(PLAYER_KARAOKE) || \
(defined(USE_EXTERNAL_KARAOKE) && defined(MANUAL_MIC_ON_OFF)))
code sEntry _rEntryKok = { ENTRY_TYPE_SUBMENU, NULL_BMP, OSD_MSG_KOK_SETUP, OSD_MSG_GOTO_KOK_PAGE, KOK_PAGE, 0, 0, 0, 0, NULL_FUN};
#endif
#if(defined(PLAYER_51_CHANNEL)||defined(SUPPORT_8M_AUDIO_EFFECT))
// Audio Page
#if( defined( PLAYER_SURROUND)||defined(SUPPORT_8M_AUDIO_EFFECT))
code sEntry _rEntryEq = { ENTRY_TYPE_SUBMENU, NULL_BMP, OSD_MSG_CH_EQ_SETUP, OSD_MSG_GOTO_CH_EQU, EQ_PAGE, 0, 0, 0, 0, 0};
#endif
#if( defined( PLAYER_SURROUND)||defined(SUPPORT_8M_AUDIO_EFFECT))
code sEntry _rEntry3D = { ENTRY_TYPE_SUBMENU, NULL_BMP, OSD_MSG_3D_PROCESS, OSD_MSG_GOTO_3D_PAGE, THREED_PAGE, 0, 0, 0, 0, NULL_FUN};
#endif
// Audio Page End
#endif
code sEntry *_prEntryAdo[] = {
&_rEntrySpk,
#if 1//ndef SIMPLE_SPDIF_CTRL
&_rEntrySpdif,
#endif
#if (defined(PLAYER_KARAOKE) || \
(defined(USE_EXTERNAL_KARAOKE) && defined(MANUAL_MIC_ON_OFF)))
&_rEntryKok,
#endif
#ifdef PLAYER_TRIM
&_rEntryTrim,
#endif
#if(defined(PLAYER_SURROUND)||defined(SUPPORT_8M_AUDIO_EFFECT))
&_rEntryEq, &_rEntry3D,
#endif
#ifdef PLAYER_SEQ
&_rEntrySEQ,
#endif
#if (defined(HDCD_CERTIFICATION) || defined(HDCD_EN))
//&_rEntryHdcd,
#endif
#ifndef MTK_MENU
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -