?? filemodegui_pub.c
字號(hào):
/*-------------------------------------------------------------------------------
| File Name : FileModeGUI_pub.c
|
| Description : Support USB/Card FAT File mode UI for copy and delete
|
| Version : 0.1
|
|
| Rev Date Author(s) Status & Comments
|---------------------------------------------------------------------------------
| 0.1 2004/12/31 sunzhonghui Creating
|--------------------------------------------------------------------------------*/
#ifdef FILE_MODE_WRITE
#include "fsNAV.h"
#include "fsGUI1.h"
#include "global.h"
//ir related
#include "iop.h"
#include "ircode.h"
extern const BYTE ir_mapcode[256];
//to save the last access meida flag : MEDIA_CD or MEDIA_CARD
BYTE last_access_media = 0;
extern void SwitchMedia(BYTE direction);
//0:no CD,1:CD exists
unsigned int detect_CD = 0;
BYTE old_hl_index = 0;//whb add 05-08-16
//input table related
BYTE Max_left_flag;
BYTE Max_input_flag;
BYTE Exit_Enter_flag;
char *Str_temp;
char *StrExit="EXIT";
char *StrEnter="ENTER";
char GetString[9] = {" "};
int input_xoffset;
int Str_Index_x,Str_Index_y;
UINT8 Item_Num[5][8] = {{ 0, 1, 2, 3, 4, 5, 6, 7},
{ 8, 9,10,11,12,13,14,15},
{16,17,18,19,20,21,22,23},
{24,25,26,27,28,29,30,31},
{32,33,34,35,36,37,38,39}};
char *Item_Str[] = {
"A","B","C","D","E","F","G","H","I","J",
"K","L","M","N","O","P","Q","R","S","T",
"U","V","W","X","Y","Z","1","2","3","4",
"5","6","7","8","9","0","~","_","-","\\"};
//others
#include "fsgui.h"
//extern const BTNAREA Rect[];
//extern const BTNAREA fsArea[];
extern void DrawFileIconX(int x, int y, int type, int mono);
#if defined (NEW_MP3_GUI) || defined (FS_BMP_GUI)
extern int old_ControlArea; //record last ControlArea.
extern int HL_show;//record HL .
#endif
BYTE *mediaStr[]={};
BYTE *functionStr[]={"COPY","DELETE","NEW","RENAME","FORMAT","CAPACITY INFO",};
BYTE srceType_flag;
BYTE file_mode_flag = 0;
extern void osd_init_periphGUI(void);
//extern void osd_DrawRegionString(UINT32 xStart, UINT32 yStart, const BYTE *str, BYTE fontColor, BYTE bkColor, BYTE r);
extern void osd_draw_region_rect(UINT32 xStart, UINT32 yStart, UINT32 xLen, UINT32 yLen, BYTE bkColor, BYTE r);
extern void osd_init_MediaswitchGUI(void);
extern int ReadCDTitle(void);
//buffer areas
UINT32 iso9660buf_src = SDRAM_BASE + FS9660YA * 1024;
UINT32 iso9660buf_des = SDRAM_BASE + FS_STRUCTURE_YA * 1024;
FSJPEGDATA *pFsJpeg_des_buf = (FSJPEGDATA *)(SDRAM_BASE + FSJPEGDATA_DES_YA*1024);
//debug related
#ifndef DVDRELEASE
#define FILE_MODE_WRITE_DBG 1
#endif
#define D printf("INFO: __%d__(%s:%s)\n",__LINE__,__FILE__,__FUNCTION__);
#ifndef FILE_MODE_WRITE_DBG
#undef printf
#undef print_block
#define printf(f, a...) do {} while (0)
#define print_block(x,y) do {} while (0)
#endif
//main functions of FileMode Write
#include "FileMode_pub.h"
#include "FileMode_pub.c"
/****************************************************************************************\
* *
* Function Name : Draw_FileMode_Menu *
* *
* Purposes : *
* *
* Descriptions : *
* *
* Arguments : (none) *
* *
* Returns : (none) *
* *
* See also : *
* *
\****************************************************************************************/
void Draw_FileMode_Menu(void)
{
refresh_dir_page=1;
refresh_file_page=1;
#if defined(MP3_LARGE_GUI) || defined(INDIGO_STYLE_LARGE_FSGUI) //2006-06-02, mimitsai add for HD ui.
set_disbuf_now(0);
#endif
#ifdef NEW_MP3_GUI
// background
#ifdef MP3_LARGE_GUI
FSGUI_FillFrameBuf(0,0, 720, 480, BK_GROUNDY,BK_CRCB);
#else
FSGUI_FillFrameBuf(0,0,352,288,BK_GROUNDY,BK_CRCB);
#endif
//draw left,right and bottom rec area
#ifdef MONO_FSGUI //FS GUI, axel 2003-12-29 23:26
//2006-06-02, mimitsai add for HD ui.
DrawRectCorner(Rect[DIR_RECT], CORNER_RAD, 1, 1, 0, 0, DIR_AREA_BKGROUND_CRCB);
DrawRectCorner(Rect[FILE_RECT], CORNER_RAD, 1, 1, 0, 0, FILE_AREA_BKGROUND_CRCB);
#else
DrawRectCorner(Rect[DIR_RECT], CORNER_RAD, 1, DIR_STEP, 0, 0, DIR_AREA_BKGROUND_CRCB);
DrawRectCorner(Rect[FILE_RECT], CORNER_RAD, 1, FILE_STEP, 0, 0, FILE_AREA_BKGROUND_CRCB);
#endif
DrawRectCorner(Rect[INFO_RECT], CORNER_RAD, 1, 40, 0, 0, DIR_AREA_BKGROUND_CRCB );
#elif defined FS_BMP_GUI
// show background
FSGUI_DrawBackGround(BG_XSTART, BG_YSTART + 0, BG_XREPEAT, BG_YREPEAT,LAY_BG_3_1);
FSGUI_DrawBackGround(BG_XSTART, BG_YSTART + 0xaa, BG_XREPEAT, BG_YREPEAT,LAY_BG_3_2);
FSGUI_DrawBackGround(BG_XSTART, BG_YSTART + 0x17d, BG_XREPEAT, BG_YREPEAT, LAY_BG_3_3);
// dir background and file background
FSGUI_ShowBmpCornerRect(DIR_AREA_XSTART, DIR_AREA_YSTART, DIR_AREA_XLEN, DIR_AREA_YLEN);
FSGUI_ShowBmpCornerRect(FILE_AREA_XSTART, FILE_AREA_YSTART, FILE_AREA_XLEN, FILE_AREA_YLEN);
//draw the left and right edge of the info area
FSGUI_LayoutBmp(LAY_PLAYING_BAR_3_1);
FSGUI_LayoutBmp(LAY_PLAYING_BAR_3_3);
//draw the info area background
FSGUI_DrawBackGround(fsArea[FS_AREA_PATHBACKGROUND].xStart ,
fsArea[FS_AREA_PATHBACKGROUND].yStart,
fsArea[FS_AREA_PATHBACKGROUND].xSize,
fsArea[FS_AREA_PATHBACKGROUND].ySize,
LAY_PLAYING_BAR_3_2);
#else //NEW_MP3_GUI
// background
FSGUI_FillFrameBuf(0,0,352,288,BK_GROUNDY,BK_GROUNDCRCB);
// high line
FSGUI_FillFrameBuf(0,Y1,352,LIGHT_WID,WHITE_Y,WHITE_CRCB);
FSGUI_FillFrameBuf(0, Y1+LIGHT_WID,
X1, SHADOW_WID,
BLACK_Y, BLACK_CRCB);
FSGUI_FillFrameBuf(X1+LIGHT_WID+SHADOW_WID, Y1+LIGHT_WID,
352-X1-LIGHT_WID-SHADOW_WID, SHADOW_WID,
BLACK_Y, BLACK_CRCB);
FSGUI_FillFrameBuf(0, Y3,
X1, LIGHT_WID,
WHITE_Y,WHITE_CRCB);
FSGUI_FillFrameBuf(X1+LIGHT_WID+SHADOW_WID, Y3,
352-X1-LIGHT_WID-SHADOW_WID, LIGHT_WID,
WHITE_Y,WHITE_CRCB);
FSGUI_FillFrameBuf(0, Y3+LIGHT_WID,
352, SHADOW_WID,
BLACK_Y,BLACK_CRCB);
FSGUI_FillFrameBuf(X1, Y1+LIGHT_WID,
LIGHT_WID, Y3-Y1,
WHITE_Y,WHITE_CRCB);
FSGUI_FillFrameBuf(X1+LIGHT_WID, Y1+LIGHT_WID,
SHADOW_WID, Y3-Y1-LIGHT_WID,
BLACK_Y,BLACK_CRCB);
DrawScroll();
#endif //NEW_MP3_GUI
#ifdef FS_BMP_GUI
FSGUI_ShowString( xStart + 46,
(FS_DIRLIST_YSTART+ FS_FILELIST_YSTEP * iItem ),
buf, file_focus_y, file_focus_CrCb);
#else
FSGUI_ShowString( Rect[SRCE_TITILE_RECT].xStart,Rect[SRCE_TITILE_RECT].yStart, "SOURCE:", FS_FONTCOLOR_FILE_Y, FS_FONTCOLOR_FILE_CrCb);
FSGUI_ShowString( Rect[DEST_TITLE_RECT].xStart,Rect[DEST_TITLE_RECT].yStart, "DESTINATION:", FS_FONTCOLOR_FILE_Y, FS_FONTCOLOR_FILE_CrCb);
#endif
MediaItem_List(FS_DIRLIST_XSTART,SRCE);
MediaItem_List(fsArea[FS_AREA_FILEITEM].xStart + 4,DEST);
ShowWarning("PLEASE SELECT TO ENTER");
old_ControlArea = CNT_AREA_SRCE;
pFsJpeg->ControlArea=CNT_AREA_SRCE;
HL_show = pFsJpeg->media_current = pFsJpeg->media_will=1;
FSGUI_FileMode_Init();
ShowHL();
Draw_File_Mode_Button();
}
/****************************************************************************************\
* *
* Function Name : Draw_File_Mode_Button *
* *
* Purposes : *
* *
* Descriptions : *
* *
* Arguments : (none) *
* *
* Returns : (none) *
* *
* See also : *
* *
\****************************************************************************************/
void Draw_File_Mode_Button(void)
{
/*
if((pFsJpeg->ControlArea==CNT_AREA_SRCE)||(pFsJpeg->gifsState == FS_STATE_MEDIA))
{
FSGUI_FillFrameBuf(fsArea[FS_AREA_BUTTON].xStart, fsArea[FS_AREA_BUTTON].yStart, 25, 25, BK_GROUNDY, BK_GROUNDCRCB);
}
else
*/
DrawRect(fsArea[FS_AREA_BUTTON].xStart, fsArea[FS_AREA_BUTTON].yStart,
25, 25,
pFsJpeg->gifsFuncBtn == FS_FUNC_COPYING ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
DrawFileIconX(fsArea[FS_AREA_BUTTON].xStart +6, fsArea[FS_AREA_BUTTON].yStart + 6, 2,0);
DrawRect(fsArea[FS_AREA_BUTTON].xStart+30, fsArea[FS_AREA_BUTTON].yStart,
25, 25,
pFsJpeg->gifsFuncBtn == FS_FUNC_DELETE ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
DrawFileIconX(fsArea[FS_AREA_BUTTON].xStart + 30 +6, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MP3BUTTON - 2,0);
DrawRect(fsArea[FS_AREA_BUTTON].xStart+60, fsArea[FS_AREA_BUTTON].yStart,
25, 25,
pFsJpeg->gifsFuncBtn == FS_FUNC_NEW ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
DrawFileIconX(fsArea[FS_AREA_BUTTON].xStart + 60 +6, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MP3BUTTON - 2,0);
DrawRect(fsArea[FS_AREA_BUTTON].xStart+90, fsArea[FS_AREA_BUTTON].yStart,
25, 25,
pFsJpeg->gifsFuncBtn==FS_FUNC_RENAME ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
DrawFileIconX(fsArea[FS_AREA_BUTTON].xStart + 90 +6, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MP3BUTTON - 2,0);
DrawRect(fsArea[FS_AREA_BUTTON].xStart+120, fsArea[FS_AREA_BUTTON].yStart,
25, 25,
pFsJpeg->gifsFuncBtn==FS_FUNC_FORMAT ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
DrawFileIconX(fsArea[FS_AREA_BUTTON].xStart + 120 +6, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MP3BUTTON - 2,0);
DrawRect(fsArea[FS_AREA_BUTTON].xStart+150, fsArea[FS_AREA_BUTTON].yStart,
25, 25,
pFsJpeg->gifsFuncBtn==FS_FUNC_CAPACITY ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
DrawFileIconX(fsArea[FS_AREA_BUTTON].xStart + 150 +6, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MP3BUTTON - 2,0);
}
/****************************************************************************************\
* *
* Function Name : FSShowFatIcon * *
* Purposes : *
* *
* Descriptions : *
* *
* Arguments : (none) *
* *
* Returns : (none) *
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -