⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setup_ui1.c

📁 Sunplus 8202S source code.
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "user_init.h"
#include "global.h"
#include "osd.h"
#include "func.h"
#include "navdata.h"
#include "kernel.h"
#include "vpp.h"
#include "user_if.h"
#include "dsp3_if.h"
#include "cchar.h"
#include "ircmd.h"
#include "auddrv.h" //2004AUDDRV oliver 20041004 for using audio driver purpose
//#include "audif.h"
#include "tvif.h"
#include "memmap.h"
#include "stdlib.h"
#include "kinf.h"

#include "setup_def.h"
#include "one_key_pass.h"
extern UINT8 setup_sel[MAX_SETUP_PAGE + MAX_CUSTM_SETUP_PAGE][MAX_PAGE_ITEM];
extern const UINT8 setup_item[MAX_SETUP_PAGE + MAX_CUSTM_SETUP_PAGE][MAX_PAGE_ITEM][MAX_ITEM_SEL];
#include "setup_page.h"

extern	UINT8	setup_page;
extern 	UINT8	setup_id;
extern  UINT8   setup_sel_item;

#define	page	setup_page
#define	id	setup_id
#define sel     setup_sel_item

extern BYTE    passwdGUI_state;//record the current state in password GUI
extern BYTE    index_y;          //item index for 1st-level page, 2nd-level page
extern BYTE    index_y2;         //item index for 3rd-level page
extern BYTE    index_y_start;
extern BYTE    index_y2_start;
extern BYTE    submenuStart;
extern BYTE    setupLevel;       //0:main menu, 1:sub-menu, 2:selection-menu(menu of sub-menu)
extern BYTE    setupItemNum[];



#if defined(BBK_NEW_SETUP)&&defined(BBK_DV961_DVD) //axel 2004/1/26 04:01 DSS555 need not OENKEYPASSPAGE         

//#ifdef BBK_NEW_SETUP//zhaoyanhua add 03-11-7 16:03
/*
 * Show main page.
 */
void ShowSetupMainPage()
{
	const char   *str;
	int fontColor = 0;
	int bgColor = 0;
	
	fontColor = 6;
	bgColor = 0;
	SetOsdCol(1,1,SETUP_HL_COLOR,0xa346ffff);
	//clear rect to show correctly.

	osd_draw_region_rect(ONE_KEY_PASS_X, ONE_KEY_PASS_Y, 20*24, 14*24,0, 1);
		
	switch(index_x)
	{
	 	case ONE_KEY_PASS_X:
			draw_setup_Btn_HL( 1, ONE_KEY_PASS_X*11, ONE_KEY_PASS_Y*4, 8* 24, 1*32,4,SETUP_HL_COLOR);	
			break;
		case SETUP_X:
		    draw_setup_Btn_HL( 1,SETUP_X*14+28, SETUP_Y*4, 8* 24, 1*32,4,SETUP_HL_COLOR);
			break;
		case EXIT_SETUP_MENU_X:
		    draw_setup_Btn_HL( 1,EXIT_SETUP_MENU_X*14+32, EXIT_SETUP_MENU_Y*4, 9* 24, 1*32,4,SETUP_HL_COLOR);		
			break;	
	}
	

	str = _OsdMessegeFont1[osd_font_mode][STR_OS_ONEKEY_SETUP];	
	osd_DrawRegionString(ONE_KEY_PASS_X, ONE_KEY_PASS_Y, str, fontColor,bgColor, 1);
	
	str = _OsdMessegeFont1[osd_font_mode][STR_OS_PROFESSION_SETUP];	
	osd_DrawRegionString(SETUP_X+1, SETUP_Y, str, fontColor,bgColor, 1);
	
	str = _OsdMessegeFont1[osd_font_mode][STR_OS_EXIT_MENU];	
	osd_DrawRegionString(EXIT_SETUP_MENU_X+2, EXIT_SETUP_MENU_Y, str, fontColor,bgColor, 1);
}

/*
**FUNC : draw a rect border to show which button is select.
**
** zhaoyanhua 
** Date: 03-11-7 15:00
*/
void draw_setup_Btn_HL(BYTE r,UINT32 xStart, UINT32 yStart,UINT32 xLen,UINT32 yLen, int LineWidth,BYTE color)
{
	//top line
	osd_draw_hline_region(xStart, xStart+xLen, yStart, color,LineWidth, r);
	//bottom Line
	osd_draw_hline_region(xStart, xStart+xLen, yStart+yLen-LineWidth, color,LineWidth, r);
	//left line
	osd_draw_vline_region(xStart, yStart, yStart+yLen, color,LineWidth, r);
	//right line
	osd_draw_vline_region(xStart+xLen-LineWidth, yStart, yStart+yLen, color,LineWidth, r);
}

/*
 * show onekey setup page
 */
void ShowOneKeyPassPage()
{
	osd_init_setup();  
    index_y=0;
    index_y_start=0;
    setupItemNum[1]= MAX_PAGE_ITEM;	// ALAN, 2003/9/9 03:32PM, to initial setupItemNum
    setupLevel=0;	// alan
	page = ONEKEYPASSPAGE;
	ShowSetupPage(2);
}

/*
 * show main
 */
void ShowProfessionalSetup()
{
	osd_init_setup();
	page = 0;
    index_y=0;
    index_y_start=0;
    setupItemNum[1]=MAX_PAGE_ITEM;	// ALAN, 2003/9/9 03:32PM, to initial setupItemNum

    setupLevel=0;	// alan
    ShowSetupPage(2);
}

/*
 *   get sel ITEM of ONEKEYPASSPAGE
 *   to make the ONEKEYPASSPAGE has the same change with special SETUP PAGE 
 */
int GetOneKeyPageSel(int index_y)
{
	int sel_item ;
	
	switch(index_y)
	{
		case 0: // audio output(MULTISPKPAGE)
			sel_item=SETUP_SPK_DOWNMIX;
			break;
		case 1:// TV format(SYSPAGE)
			sel_item = SETUP_TV_FORMAT;
			break;
		default:
			sel_item = 2;//DEFAULT VALUE ITEM
	}	
	return sel_item;
}

#endif//  end for bbk's new setup

#ifdef VIDEO_SETUP_NEW_GUI
/*
 *Function Description:
 *    get the video current value to show in SETUP VIDEO PAGE 
 * 
 *  INPUT:
 *    id ---> video osd string id type
 *    
 *  RETURN :
 *    video value.
 *  
 * zhaoyanhua 2004-1-7 17:01
 */

int GetVideoSetValue(int str_id)
{
	int iValue = 0;

	switch (str_id)
	{
		case STR_OS_BRIGHTNESS:
			iValue = SETUP_BRIGHTNESS-2;
			break;
		case STR_OS_CONTRAST:
			iValue = SETUP_CONTRAST-2;
			break;
		case STR_OS_HUE:
			iValue = SETUP_HUE-2-6;//must do like this!
			//printf("#####  ---setup_hue --%d--\n",iValue);
			break;
		case STR_OS_SATURATION:
			iValue = SETUP_SATURATION-2;
			break;
#ifdef DIP_CFG_ENABLE
		case STR_OS_DEINTLC:
			iValue = SETUP_DE_INTERLACE-2;
			break;
#endif		
	default:break;	
	}
	//printf("###### ----in GetVideoSetValue %d---\n",iValue);
	return iValue;

}
/*
 *Function Description:
 *    Draw Video Item(Brightness/hue/contrast ,ect) value in SETUP OSD.
 *   
 * INPUT:
 *    ItemIndex ---> y_postion in level 1
 *    
 * zhaoyanhua 2004-1-7 19:22
 */
void setup_VideoItemValue(int ItemIndex,int fontColor,int bgColor)
{
	BYTE buf[4];	
		
	//draw ">" between sub-mean and it's corresponding selection area
	//osd_DrawString(SETUP_SUB_XSTART-1, ItemIndex+SETUP_MENU_YSTART+1, Ch_arrorR, SFONTCOLOR, SBGCOLOR);
	id = setup_item[page][ItemIndex][1];
	psprintf(buf,"%02d",GetVideoSetValue(id));	
	//str = buf;
	//str = buf;
	osd_DrawString(SETUP_SUB_XSTART+1, ItemIndex+SETUP_MENU_YSTART+1, buf, fontColor, bgColor); 
}

/*
 * Funciton Description:
 *   
 *    draw GUI to adjust video value 
 * 
 * INPUT:
 *    id : video type :brightness/contrast/hue,ect
 *
 */
void setup_ShowVideoGUI(int id)
{
    const char   *str;
    
#define MSG_STRING_X  0//message string xstart
#define MSG_STRING_Y  11//message string ystart

	int GUI_x= 0,GUI_y= 0,GUI_h= 0,GUI_w = 0;//xstart/ystart/ylen/xlen
	int GUI_Backx = 0,GUI_Backy = 0, GUI_Backh= 0,GUI_Backw = 0;//background Rect xstart/ystart/ylen/xlen
	int GUI_Msgx= 0,GUI_Msgy= 0, GUI_Msgw =0, GUI_Msgh = 0;

	SetOsdCol(0,0,VIDEO_GUI_TRANS_COLOR,0x1e1e1e00);
	GUI_Backx = 0;
	GUI_Backy = SETUP_BUTTON_HEIGHT+24+40 - 2;
	//GUI_Backh = 9*SETUP_BUTTON_HEIGHT;
	GUI_Backh = 10*SETUP_BUTTON_HEIGHT-12;
	GUI_Backw = SETUP_MAX_WIDTH*15+40-4;
	//GUI_Backw = SETUP_MAX_WIDTH*15+40;
	//osd_draw_rect(20, SETUP_BUTTON_HEIGHT+24+40, (SETUP_MAX_WIDTH*15), 10*SETUP_BUTTON_HEIGHT-12, 10);
	//osd_draw_rect(0, SETUP_BUTTON_HEIGHT+24+40, (SETUP_MAX_WIDTH*15+40), 10*SETUP_BUTTON_HEIGHT-12, VIDEO_GUI_TRANS_COLOR);		

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -