📄 mapp_uimenu.h
字号:
/******************************************************************************
Copyright (c) 2006 MStar Semiconductor, Inc.
All rights reserved.
[Module Name]: MApp_UiMenu.h
[Date]: 2006/09/04
[Comment]:
OSD menu relative subroutine.
[Reversion History]:
*******************************************************************************/
#include "MApp_Return.h"
#include "MApp_Key.h"
#include "MApp_UiMenuDef.h"
#include "MApp_GlobalVar.h"
#include "MApp_DispMenu.h"
#ifndef MAPP_UI_MENU_H
#define MAPP_UI_MENU_H
#ifdef MAPP_UI_MENU_C
#define INTERFACE
#else
#define INTERFACE extern
#endif
#define CURRENT_PAGE tblMenuPages[g_u8MenuPageIndex]
#define CURRENT_MENU_ITEMS CURRENT_PAGE.MenuItems
#define CURRENT_MENU_ITEM_COUNT (CURRENT_PAGE.u8MenuItemCount)
#define CURRENT_MENU_ITEM CURRENT_MENU_ITEMS[g_u8MenuMainItemIndex]
#define CURRENT_MENU_TOUCH_ITEM CURRENT_MENU_ITEM.TouchMenuItem
#define PREV_PAGE tblMenuPages[g_u8PrevMenuPageIndex]
#define PREV_MENU_ITEMS PREV_PAGE.MenuItems
#define PREV_MENU_ITEM_COUNT (PREV_PAGE.u8MenuItemCount)
#define ScreenSaver_Update_Duration 2000 // in ms
#define MANUAL_SCAN_MONITOR_DURATION 1000
#define CC_HOTKEY_DISPLAY_TIME 3000 // in ms
#define HOTKEY_DISPLAY_TIME u32HotKeyOSD_Duration// in ms
#define EPGUI_EXIT_PERIOD 45000 // in ms
#define PCMENU_DISPLAY_TIME 40000 // in ms
#define CHLIST_DISPLAY_TIME u32InfoOSD_Duration// in ms
#define BANNER_UPDATE_TIME 1000 // in ms
#define TEN_KEY_ITEM_MAX_COUNT 5
#define DVD_PREVIEW_START_X 61
#define DVD_PREVIEW_START_Y 30
#define DVD_PREVIEW_WIDTH 358
#define DVD_PREVIEW_HEIGHT 174
typedef enum
{
STATE_UIMENU_INIT,
STATE_UIMENU_IDLE,
STATE_UIMENU_CLEAN_UP,
STATE_UIMENU_GOTO_STANDBY,
STATE_UIMENU_GOTO_END,
} EN_UIMENU_STATE;
typedef enum
{
IPLATE_PROG_INFO,
IPLATE_EVENT_INFO,
IPLATE_EXTEND_INFO,
IPLATE_TYPE_NUM
} EN_IPLATE_TYPE;
typedef enum
{
EN_SCREENSAVER_NULL,
EN_SCREENSAVER_NOSIGNAL,
EN_SCREENSAVER_NODATABASE,
EN_SCREENSAVER_AUDIOONLY,
EN_SCREENSAVER_BLOCKRATING,
EN_SCREENSAVER_SCRAMBLE,
EN_SCREENSAVER_NO_SHOW_PROGRAM,
EN_SCREENSAVER_NOCABLE,
EN_SCREENSAVER_NOSYNC,
EN_SCREENSAVER_NOSYNC_VD,
EN_SCREENSAVER_UNSUPPORT_MODE,
} EN_SCREENSAVER_TYPE;
typedef enum
{
AUDIO_TYPE_HIGH_DEC=5,
AUDIO_TYPE_HIGH_INC,
AUDIO_TYPE_MID_DEC,
AUDIO_TYPE_MID_INC,
AUDIO_TYPE_LOW_DEC,
AUDIO_TYPE_LOW_INC,
AUDIO_TYPE_BBE_DEC,
AUDIO_TYPE_BBE_INC,
AUDIO_TYPE_NUM
} EN_AUDIO_TYPE;
typedef enum
{
SPECTRUM_TYPE_BAR,
SPECTRUM_TYPE_BLOCK,
SPECTRUM_TYPE_NUM
} EN_SPECTRUM_TYPE;
typedef enum
{
SPECTRUM_MODE_BARBB,
SPECTRUM_MODE_BARGB,
SPECTRUM_MODE_BARRB,
SPECTRUM_MODE_BLKG,
SPECTRUM_MODE_BLKO,
SPECTRUM_MODE_NUM
} EN_SPECTRUM_MODE;
INTERFACE EN_UIMENU_STATE enUiMainMenuState;
INTERFACE OSDDynamicStringStruct_2 st_MenuDynamicStr;
INTERFACE U8 CHAR_BUFFER[STRBUFF_LENGTH];
INTERFACE BIT g_bPowerOnFirst;
INTERFACE BIT g_bSpeakerType;
INTERFACE BIT g_bSpeakerAnimateShow;
INTERFACE U16 g_u16SpeakerCPIndex;
INTERFACE U8 g_u8MenuPageIndex;
INTERFACE U8 g_u8MenuMainItemIndex;
INTERFACE U8 g_u8MenuSubItemIndex;
INTERFACE U8 g_u8MsgPageIndex;
INTERFACE BIT g_bDrawMenuGopSwitch;
INTERFACE U8 g_u8PrevMenuPageIndex;
INTERFACE U8 g_u8PrevMenuMainItemIndex;
INTERFACE U16 g_u16GroupXPos;
INTERFACE U16 g_u16GroupYPos;
INTERFACE U16 g_u16PageMenuWidth;
INTERFACE U16 g_u16PageMenuHeight;
INTERFACE U16 g_u16OffsetX;
INTERFACE U16 g_u16OffsetY;
INTERFACE U16 g_u16Width;
INTERFACE U16 g_u16Height;
INTERFACE BOOLEAN channelInfoDrawed;
INTERFACE BOOLEAN g_showChannelStatus; //prevent from status icon will be shown under "channel return" & "favorite" conditions
INTERFACE BOOLEAN g_bOSDShow;
INTERFACE U32 u32MainOSD_Duration, u32InfoOSD_Duration,u32HotKeyOSD_Duration, u32MonitorOsdTimer;
INTERFACE U32 u32MonitorBannerTimer,u32MenuScanMonitorTimer,u32MenuSpectrumScanTimer;
INTERFACE U32 u32MonitorSpectrumMenuTime;
INTERFACE EN_SCREENSAVER_TYPE enCurScreenSaver;
INTERFACE U32 u32ScreenSaver_UpdateTime;
INTERFACE EN_MENU_FLOW_STATE enMenuFlowState;//, enPreMenuFlowState;
INTERFACE EN_IDLE_WINDOW_TYPE enCurIdleWin;
//INTERFACE U8 fDvdMenuOnScreen;
INTERFACE void MApp_UiMenu_UIVariable(void);
INTERFACE void MApp_UiMenu_ProcessKey(ButtonType u8KeyButton);
INTERFACE BOOLEAN MApp_UiMenu_ExecuteKeyEvent(MenuItemActionType menuAction);
INTERFACE void MApp_UiMenu_Monitor(void);
INTERFACE EN_RET MApp_UiMenu_Main(void);
INTERFACE void MApp_UiMenu_DrawSpecificComponent(U16 relative_x, U16 relative_y, DrawComponentType *ComponentList, COMPONENT_STATE_TYPE ComponentState);
INTERFACE void MApp_UiMenu_RenderMainMenuItem(MenuMainItemType *mainItem,COMPONENT_STATE_TYPE state);
INTERFACE void MApp_UiMenu_DrawMenuItems(void);
INTERFACE void MApp_UiMenu_DrawMenuPage(void);
INTERFACE void MApp_UiMenu_DrawStaticPageItem(void);
INTERFACE U8 MApp_UiMenu_GetMenuItemIndex( U8 u8TargetParentMenuIdx, U8 u8SonMenuIdx );
INTERFACE void MApp_UiMenu_DisplayShortCut(EN_IDLE_WINDOW_TYPE shortcut);
INTERFACE void MApp_UiMenu_HideShortcut();
INTERFACE void MApp_UiMenu_DrawSpectrumMenuItem(MenuMainItemType* pMenuItem);
//INTERFACE void MApp_UiMenu_Show_Warning_Message_Dialog(U8 warningMenuPageIndex);
INTERFACE void MApp_UiMenu_MainMenu_Init(void);
//INTERFACE MenuItemActionType MApp_GetAspectMenuAction(U8 u8KeyValue);
//INTERFACE BOOLEAN MApp_UiMenu_ScreenSaverClear(void);
INTERFACE void MApp_UiMenu_DrawPathMenuItem(MenuMainItemType* pMenuItem);
INTERFACE void MApp_UiMenu2_ResetOSDGWin();
INTERFACE void MApp_UiMenu2_InitGWin();
INTERFACE void MApp_UiMenu2_ClearOSD(U16 x,U16 y, U16 Width, U16 Height);
//INTERFACE void MApp_UiMenu2_DrawBlackOSD(U16 x,U16 y, U16 Width, U16 Height);
INTERFACE OSDClrBtn MApp_UiMenu2_GetOSDClrBtn(U8 OSDGwinID);
INTERFACE void MApp_UiMenu2_GWIN_Enable(U8 winId, BOOLEAN bEnable);
INTERFACE void MApp_UiMenu2_SwitchToGwin(U8 OSDGwinID);
INTERFACE void MApp_UiMenu2_CreateOSDGWin(U8 OSDGwinID);
INTERFACE void MApp_UiMenu2_DeleteOSDGWin(U8 OSDGwinID);
INTERFACE void MApp_UiMenu2_DeleteALLOSDWindow(void);
INTERFACE void MApp_UiMenu2_ShowOSDGWin(U8 OSDGwinID);
INTERFACE void MApp_UiMenu2_HideOSDGwin(U8 OSDGwinID);
INTERFACE void MApp_UiMenu2_DestroyAllGWin(void);
INTERFACE void MApp_UiMenu2_ShowWarningMessageGwin(U8 warningMenuPageIndex);
INTERFACE void MApp_UiMenu2_ShowChannelInfoGwin(EN_IDLE_WINDOW_TYPE shortcut);
//INTERFACE void MApp_UiMenu2_CopyRegion(U8 CopyGwinID, U8 PasteGwinID);
INTERFACE void MApp_UiMenu_DrawSubMenuItems(U8 u8Index);
INTERFACE U8 MApp_UiMenu_GetMenuState( U8 u8MenuIdx );
INTERFACE void MApp_UiMenu2_DisplayScalingSpread(void);//(U8 inc,U16 Step)
INTERFACE void MApp_UiMenu2_DisplayScalingAnimate(void);
INTERFACE void MApp_UiMenu2_DisplayScalingDown(void);//(U8 inc,U16 Step)
INTERFACE void MApp_UiMenu2_DisplayMenuSlideShow(MenuItemActionType menuAction);
INTERFACE void MApp_UiMenu2_DisplayPopUpWindow(U16 winXstart, U16 winYstart, U16 winWidth, U16 winHeight);
INTERFACE void MApp_UiMenu_DrawUnSelSpectrumMenuItem(MenuMainItemType* pMenuItem);
INTERFACE void MApp_UiMenu_TouchPanelHandler(void);
#undef INTERFACE
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -