📄 nmosd.h
字号:
/*===============================================================
*
* Copyright (C) 2003 ALi Corp. All Rights Reserved.
*
* File: NMOSD.h
*
* Contents: The Lib of normal functino show osd.
* Use the new GUI lib
*
* History:
* Date By Reason
* =========== ====== ====================
* 07/02/2003 Haiyuan Create
* 07/05/2003 Lily Ma Add
* 07/06/2003 bond add
****************************************************************/
#ifndef NMOSD_H
#define NMOSD_H
#include <gui.h>
////////////////////////////
// for 512K downsize: if undefine SOUND_SUPPORT, then console item sound will drop from project
#define SOUND_SUPPORT
//--> Gordon. used to Draw Slide Show OSD, which is used among NMOSD.c, normal.c, so i defined it here.
#include "../FileopenMenu/MediaPlayerOutlook.h"
tAuxliaryParam gAuxParam;
//<-- Gordon
#define DC_WIDTH 416
#define DC_HEIGHT 608
/*------DC START POINT-------*/
#define DC_X 0
#define DC_Y 0
//
#define CNSL_HINTBOX_STR_MAXLEN 30
#define CNSL_HBOX_DSTR_MAXNUMS 6
#define TEXTFORMAT_RIGHT DT_RIGHT|DT_VCENTER|DT_SINGLELINE|DT_CHARCLIP
#define TEXTFORMAT_LEFT DT_LEFT|DT_VCENTER|DT_SINGLELINE|DT_CHARCLIP
#define MOVE_ICON 0
#define MOVESTR 1
#define INPUT_ICON 2
#define INPUTSTR 3
#define ENTER_ICON 4
#define ENTERSTR 5
#define SELECT_ICON 6
#define SELECTSTR 7
/*------DVD CONSOLE ITEMS-------*/
#ifdef SOUND_SUPPORT
#define CNSL_BOX_NUMS_DVD 7
#else
#define CNSL_BOX_NUMS_DVD 6
#endif
#define CNSL_BOX_TITLE_DVD 0
#define CNSL_BOX_CHAPTER_DVD 1
#define CNSL_BOX_TIME_DVD 2
#define CNSL_BOX_AUDIO_DVD 3
#define CNSL_BOX_SUBTITLE_DVD 4
#define CNSL_BOX_ANGLE_DVD 5
#define CNSL_BOX_SOUND_DVD 6
/*------VCD CONSOLE ITEMS-------*/
#ifdef SOUND_SUPPORT
#define CNSL_BOX_NUMS_VCD 4
#else
#define CNSL_BOX_NUMS_VCD 3
#endif
#define CNSL_BOX_TITLE_VCD 7
#define CNSL_BOX_TIME_VCD 8
#define CNSL_BOX_AUDIO_VCD 9
#define CNSL_BOX_SOUND_VCD 10
//maggie40620
/*------SVCD CONSOLE ITEMS-------*/
#define CNSL_BOX_NUMS_SVCD 5
#define CNSL_BOX_TITLE_SVCD 7
#define CNSL_BOX_TIME_SVCD 8
#define CNSL_BOX_AUDIO_SVCD 9
#define CNSL_BOX_AUDIOCH_SVCD 11
#define CNSL_BOX_SOUND_SVCD 10
/*------DVD CONSOLE ITEMS-------*/
#define CNSL_BOX_NUMS_DVDAUDIO 7
#define CNSL_BOX_GROUP_DVDAUDIO 11
#define CNSL_BOX_TRACK_DVDAUDIO 12
#define CNSL_BOX_TIME_DVDAUDIO 13
#define CNSL_BOX_AUDIO_DVDAUDIO 14
#define CNSL_BOX_SUBTITLE_DVDAUDIO 15
#define CNSL_BOX_ANGLE_DVDAUDIO 16
#define CNSL_BOX_PAGE_DVDAUDIO 17
#define CNSL_BOX_SOUND_DVDAUDIO 18
/*------FILEOPEN MOVIE CONSOLE ITEMS-------*/ //20030929 added by jane for movie
#define CNSL_BOX_NUMS_MOVIE 5
#define CNSL_BOX_TRACK_MOVIE 19
#define CNSL_BOX_TIME_MOVIE 20
#define CNSL_BOX_AUDIO_MOVIE 21
#define CNSL_BOX_SUBTITLE_MOVIE 22
#define CNSL_BOX_SOUND_MOVIE 23
/*------DISPLAY GUI POSITION-------*/
#define DC_OFFSET_X 56
#define DC_OFFSET_Y 32
#define CNSL_BOX_UPPERLEFT 40
#define CNSL_BOX_UPPERTOP 8
#define CNSL_BOX_WIDTH 155
#define CNSL_BOX_HIGH 42
#define CNSL_BOX_AUDIO_HIGH 65
#define CNSL_HIGH 378
#define CNSL_BOX_BMP_XOFFSET 10
#define CNSL_BOX_BMP_WIDTH 34 //by gushun
#define CNSL_BOX_BMP_HEIGHT 34 //by gushun
#define CNSL_BOX_TEXT_OFFSET_X CNSL_BOX_BMP_XOFFSET+CNSL_BOX_BMP_WIDTH+1
#define CNSL_BOX_TEXT_LEFT CNSL_BOX_UPPERLEFT+CNSL_BOX_TEXT_OFFSET_X
#define CNSL_BOX_TEXT_RIGHT CNSL_BOX_UPPERLEFT+CNSL_BOX_WIDTH-16
#define CNSL_BOX_TEXT_HIGHT 20
#define CNSL_HINTBOX_RIGHT CNSL_BOX_UPPERLEFT+400-33//373-33
#define CNSL_UPHINTBOX_TOP 335
#define CNSL_DOWNHINTBOX_TOP 373
#define CNSL_DOWNHINTBOX_BOTTOM 373+38
#define XOFFSET 17
#define YOFFSET 13
#define MAX_STRBOX 3
#define NORMAL_STR_WIDTH 96// 80//bond 031013
#define SPECIAL_STR_WIDTH 28
#define HINT_TOP_STR_WIDTH 300
#define HINT_TITLE_STR_XOFFSET 18
#define HINT_TITLE_STR_YOFFSET 12
#define CNSL_LEFT_ARROW_XOFFSET 49 //BASED ON LEFT EDGE
#define CNSL_LEFT_ARROW_YOFFSET 15 //BASED ON TOP
#define CNSL_RIGHT_ARROW_XOFFSET 144 //BASED ON LEFT
#define CNSL_RIGHT_ARROW_YOFFSET 15 //BASED ON LEFT TOP
/*------CONSOLE HINT FONT DEFAUT WIDTH -------*/
#define HINT_FONT_DEFAUT_WIDTH 10
#define CNSL_TEXT_UNSELE_COLOR 233
#define CNSL_TEXT_SELE_COLOR 235
/*------CONSOLE ITEM STATE-------*/
#define EDIT_STATE 0
#define DISPLAY_STATE 1
#define WAITING_STATE 2
/*------GUI TYPE-------*/
#define GUITYPE_MODEGUI 0
#define GUITYPE_PLAYMODEGUI 1
#define GUITYPE_DISPLAYGUI 2
#define GUITYPE_SCREEN 3
#define GUITYPE_DISPLAYHINT 4
#define GUITYPE_ZOOM 5
#define GUITYPE_KARAOKE 6
#define GUITYPE_MUTE 7
#define GUITYPE_VOLUME_BRIGHT 8
/*------MODE STRING TYPE-------*/
#define MODESTR_NUMSELECT 0x0100
#define MODESTR_NUMSTR 0x0200
#define MODESTR_REPEATA 0x0300
#define MODESTR_TIME 0x0400
#define MODESTR_BMNUMSELECT 0x0500
//modyfied by gushun
/*------MODE GUI POSITION-------*/
#define MODEBOXLEFT 94-DC_OFFSET_X
#define MODEBOXTOP 66-DC_OFFSET_Y //55-DC_OFFSET_Y
#define MODEBOXWIDTH 152
#ifdef _SDRAM_4M16x1
#define MODEBOXHEIGHT 38
#else
#define MODEBOXHEIGHT 46
#endif
#define MODEBOXRIGHT MODEBOXLEFT+MODEBOXWIDTH
#define MODEBOXBOTTOM MODEBOXTOP+MODEBOXHEIGHT
#define MODEBOXWWIDTH 262
#define MODEBOXHHEIGHT 62
#define MODEBOXWRIGHT MODEBOXLEFT+MODEBOXWWIDTH
#define MODEBOXHBOTTOM MODEBOXTOP+MODEBOXHHEIGHT
#define MODEICONLEFT 100-DC_OFFSET_X
#define MODEICONTOP 68-DC_OFFSET_Y
#define MODEICONWIDTH 34
#define MODEICONHEIGHT 58
#define MODETEXTRIGHT 193-DC_X-33
#define MODELITTLEBOXLEFT 140-DC_OFFSET_X
#define MODELITTLEBOXTOP 70-DC_OFFSET_Y //55-DC_OFFSET_Y
#define MODELITTLEBOXWIDTH 100
#ifdef _SDRAM_4M16x1
#define MODELITTLEBOXHEIGHT 30
#else
#define MODELITTLEBOXHEIGHT 38
#endif
#define MODELITTLEBOXRIGHT MODELITTLEBOXLEFT+MODELITTLEBOXWIDTH
#define MODELITTLEBOXBOTTOM MODELITTLEBOXTOP+MODELITTLEBOXHEIGHT
#define MODELITTLEBOXWWIDTH 210
#define MODELITTLEBOXHHEIGHT 52
#define MODELITTLEBOXWRIGHT MODELITTLEBOXLEFT+MODELITTLEBOXWWIDTH
#define MODELITTLEBOXHBOTTOM MODELITTLEBOXTOP+MODELITTLEBOXHHEIGHT
#define MODEBOX_COLOURE_BK 253
#define MODEBOX_COLOURE_TOPEDGE 113
#define MODEBOX_COLOURE_BOTEDGE 220
#define MODEBOX_COLOURE_TEXT 233
#define MODEBOX_COLOURE_LITTLEBK 212
#if 0
#define MODEBOXLEFT 85-DC_OFFSET_X
#define MODEBOXTOP CNSL_BOX_UPPERTOP //55-DC_OFFSET_Y
#define MODEBOXWIDTH 178
#define MODEBOXHEIGHT 56
#define MODEBOXRIGHT MODEBOXLEFT+MODEBOXWIDTH
#define MODEBOXBOTTOM MODEBOXTOP+MODEBOXHEIGHT
#define MODEICONLEFT 110-DC_OFFSET_X
#define MODEICONTOP MODEBOXTOP
#define MODEICONWIDTH 36
#define MODEICONHEIGHT 56
#define MODETEXTRIGHT 193-DC_X-33
#endif
/*------MAX MARK NUMBER-------*/
#define MAXMARKNUMBER 9
/*------MARK SEARCH BOX POSITION-------*/
#define MARKSEARCHBOXRIGHT 345-DC_X
#define MARKSEARCHNUMLEFT 112-DC_X
#define MARKSEARCHNUMRIGHT 136-DC_X
#define MARKSEARCHNUMWIDTH 24
/*------PLAY MODE GUI-------*/
//right up message
#define GUIMSG_OPEN 0xe001
#define GUIMSG_PLAY 0xe002
#define GUIMSG_STOP 0xe003
#define GUIMSG_RESUMESTOP 3
#define GUIMSG_PAUSE 4
#define GUIMSG_NEXT 5
#define GUIMSG_PREVIOUS 6
#define GUIMSG_SLOW_2 7
#define GUIMSG_SLOW_4 8
#define GUIMSG_SLOW_8 9
#define GUIMSG_SLOW_16 10
#define GUIMSG_REVSLOW_2 11
#define GUIMSG_REVSLOW_4 12
#define GUIMSG_REVSLOW_8 13
#define GUIMSG_REVSLOW_16 14
#define GUIMSG_FAST_2 15
#define GUIMSG_FAST_4 16
#define GUIMSG_FAST_8 17
#define GUIMSG_FAST_16 18
#define GUIMSG_FAST_100 19
//-->modyfied by gushun
/*
#define MAXSTRLEN 10
#define MSGLEFT 528-100-DC_X//583-100-DC_X
#define MSGTOP CNSL_BOX_UPPERTOP//36-DC_Y
#define MSGBOTTOM CNSL_BOX_UPPERTOP+32//60-DC_X-11
#define MSGRIGHT 668-100-DC_Y
#define MSGIMGLEFT 454
#define MSGIMGTOP CNSL_BOX_UPPERTOP
#define MSGIMGBOTTOM CNSL_BOX_UPPERTOP+30
#define MSGIMGRIGHT 542
*/
#define MAXSTRLEN 10
#define MSGLEFT 500-DC_OFFSET_X//583-100-DC_X
#define MSGTOP 50-DC_OFFSET_Y//36-DC_Y
#define MSGBOTTOM 66-DC_OFFSET_Y+32//60-DC_X-11
#define MSGRIGHT 620-DC_OFFSET_X
#define MSGIMGLEFT 520-DC_OFFSET_X
#define MSGIMGTOP 66-DC_OFFSET_Y
#define MSGIMGBOTTOM 66-DC_OFFSET_Y+30
#define MSGIMGRIGHT 610-DC_OFFSET_X
//<--modyfied by gushun
//Multi Line Cosole Item
#define MLCSI_TXT_TOP_MG 4
#define MLCSI_TXT_HEIGHT (13+5)// 13 //bond 031011
#define MLCSI_TXT_INTERVAL 2
#define MLCSI_TXT_BOT_MG 4
#define MLCSI_BMP_LMG 10
#define MLCSI_TXT_LEFT 67
#define MLCSI_TXT_RIGHT_MG 17
#define MLCSI_ARROW_TOP (15-3)
#define MLCSI_ARROW_LEFT 49
#define MLCSI_ARROW_HEIGHT 9
#define MLCSI_ARROW_WIDTH 8
#define MLCSI_ARROW_INTERVAL 95
#define MLCSI_TXT_COLOR 30
#define MLCSI_CNS_OFFSET 17
/*------DISC ICON POSITION-------*/
#define DISC_TYPE_LEFT CNSL_BOX_UPPERLEFT
#define DISC_TYPE_TOP CNSL_BOX_UPPERTOP
#define DISC_TYPE_WIDTH 64+36
#define DISC_TYPE_HEIGHT 64
/*------INVALID ICON-------*/
//-->modyfied by gushun
#define INVALID_MSG_HEIGHT 36
#define INVALID_MSG_WIDTH 46
#define INVALID_MSG_LEFT 542-DC_OFFSET_X
#define INVALID_MSG_TOP 70-DC_OFFSET_Y
/*
#define INVALID_MSG_HEIGHT 64
#define INVALID_MSG_WIDTH 64
#define INVALID_MSG_LEFT MSGRIGHT-INVALID_MSG_WIDTH
#define INVALID_MSG_TOP MSGTOP+5
*/
//<--modyfied by gushun
/*------DISC TYPE-------*/
#define LOAD_ICON_LEFT CNSL_BOX_UPPERLEFT
#define LOAD_ICON_TOP CNSL_BOX_UPPERTOP
#define LOAD_ICON_WIDTH 64
#define LOAD_ICON_HEIGHT 64
/*------ZOOM GUI-------*/
#define ZOOM_WIDTH 154//133//maggie
#define ZOOM_UP_HEIGHT 101//40//maggie
#define ZOOM_DOWN_HEIGHT 33//88//maggie
//--> Gordon. in Slide show, the dc(which used to draw zoom) is different, i.e. (0, 0) is different, so i changed the left, top to be viaribles
//#define ZOOM_LEFT MSGRIGHT-ZOOM_WIDTH//516 - 100 - DC_X
//#define ZOOM_TOP CNSL_DOWNHINTBOX_BOTTOM-ZOOM_UP_HEIGHT-ZOOM_DOWN_HEIGHT//286 - DC_Y - 80
int ZOOM_LEFT;
int ZOOM_TOP;
//<-- Gordon
#define ZOOM_ICON_LEFT 16
#define ZOOM_ICON_TOP 4//5//maggie
#define ZOOM_ICON_HEIGHT 20//40//maggie
#define ZOOM_ICON_WIDTH 20//40//maggie
//#define ZOOM_TXT_RIGHT 116//MAGGIE
#define ZOOM_TXT_LEFT 20//MAGGIE
#define ZOOM_DIR_LEFT 0
#define ZOOM_DIR_UP 1
#define ZOOM_DIR_RIGHT 2
#define ZOOM_DIR_DOWN 3
#define ZOOM_SF_LEFT 33
#define ZOOM_SF_TOP 22
#define ZOOM_SF_WIDTH 95
#define ZOOM_SF_HEIGHT 66
#define ZOOM_SF_STAGE_N 1
#define ZOOM_SF_STAGE_W 2
#define ZOOM_SF_STAGE_H 3
//31217_01 Sean update for LA new Zoom Spec.
#define ZOOM_RANGE_4X 7//50//10 //31004_03 Sean update for Zoom AV smooth,change from 30->50
#define ZOOM_RANGE_16X 7//60//12 //31004_03 Sean update for Zoom AV smooth,change from 36->60
//31217_01 Sean update for LA new Zoom Spec.
//31218_03 Sean for LA new screenfit Spec.
#define SCREEN_FIT_SCALE_RANGE 10//9 //31004_02 Sean for screenFit AV smooth, change from 9->29
//31218_03 Sean for LA new screenfit Spec.
/*------PL PASSWORD BOX/REGION CHECK POSITION-------*/
#define PL_PASSWORD_BOX_LEFT 228-DC_OFFSET_X//162//217//180-DC_X//maggie
#define PL_PASSWORD_BOX_TOP 204-DC_OFFSET_Y//205//126-DC_Y//maggie
#define PL_PASSWORD_BOX_BOTTOM PL_PASSWORD_BOX_TOP+72
#define PL_PASSWORD_BOX_RIGHT PL_PASSWORD_BOX_LEFT+284
//-->gushun
/*
#define PL_BMP_LEFT PL_PASSWORD_BOX_LEFT+20//25//maggie
#define PL_BMP_TOP PL_PASSWORD_BOX_TOP+3//maggie
#define PL_BMP_WIDTH 50//34//maggie
#define PL_BMP_HIGHT 60//40//maggie
#define PL_PSWINPUT_BOX_LEFT PL_PASSWORD_BOX_LEFT+58//68//307-22//PL_BMP_LEFT+PL_BMP_WIDTH+21
#define PL_PSWINPUT_BOX_TOP PL_PASSWORD_BOX_TOP+6
#define PL_PSWINPUT_BOX_WIDTH 24//20//25
#define PL_PSWINPUT_BOX_HIGHT 20
#define PL_PSWINPUT_BOX_INTER 5
*/
#define PL_BMP_LEFT PL_PASSWORD_BOX_LEFT+10
#define PL_BMP_TOP PL_PASSWORD_BOX_TOP+16//maggie
#define PL_BMP_WIDTH 50
#define PL_BMP_HIGHT 60
#define PL_PSWINPUT_BOX_LEFT PL_PASSWORD_BOX_LEFT+54
#define PL_PSWINPUT_BOX_TOP PL_PASSWORD_BOX_TOP+8
#define PL_PSWINPUT_BOX_WIDTH 24
#define PL_PSWINPUT_BOX_HIGHT 25
#define PL_PSWINPUT_BOX_INTER 5
//<--gushun
#define PL_PSWOK_BOX_RIGHT PL_PASSWORD_BOX_RIGHT-9
#define PL_PSWOK_BOX_LEFT PL_PSWOK_BOX_RIGHT-60
#define PL_PSWHINT_BOX_TOP PL_PASSWORD_BOX_TOP+44//249//PL_PASSWORD_BOX_BOTTOM+1
#define PL_PSWHINT_BOX_HIGHT 37
#define PL_PSWHINT_STR_TOP PL_PASSWORD_BOX_TOP+44
#define PL_PSWHINT_STR_LEFT PL_PASSWORD_BOX_LEFT+58
#define PL_ALARMBMP_TOP CNSL_BOX_UPPERTOP+65//50
#define PL_ALARMBMP_LEFT CNSL_BOX_UPPERLEFT+430//maggie
#define PL_ALARMBMP_WIDTH 44
#define PL_ALARMBMP_HIGHT 36
#define PL_ALARMSTR_TOP PL_ALARMBMP_TOP +38//CNSL_BOX_UPPERTOP+42+40//maggie
#define PL_ALARMSTR_LEFT PL_ALARMBMP_LEFT-120//CNSL_BOX_UPPERLEFT+480//PL_ALARMBMP_LEFT+PL_ALARMBMP_WIDTH+13
#define PL_ALARMSTR_RIGHT PL_ALARMSTR_LEFT+300
#define PL_ALARMSTR_BOTTOM PL_ALARMSTR_TOP+PL_ALARMBMP_HIGHT
#define REGION_ALARMBMP_TOP CNSL_BOX_UPPERTOP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -