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

📄 fsgui_new.c

📁 dvd里面的一个文件系统的代码
💻 C
📖 第 1 页 / 共 5 页
字号:
			}
			break;
#endif

#ifdef SUPPORT_MIDI
        case  CNT_AREA_MIDIBUTTON:
            {
#ifdef SUPPORT_FILE_SYSTEM_MODE
#ifdef SUPPORT_NESGAME
            DrawRect(fsArea[FS_AREA_BUTTON].xStart+108, fsArea[FS_AREA_BUTTON].yStart,
                    25, 25,
                        pFsJpeg->gifsFuncBtn == FS_FUNC_MIDI ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
            //FSGUI_FillFrameBuf(fsArea[FS_AREA_BUTTON].xStart + 3+108, fsArea[FS_AREA_BUTTON].yStart + 3, 19,19, BK_GROUNDY,BK_GROUNDCRCB);
            DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 114, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MIDIBUTTON - 2);
#else //SUPPORT_NESGAME
            DrawRect(fsArea[FS_AREA_BUTTON].xStart+81, fsArea[FS_AREA_BUTTON].yStart,
                    25, 25,
                        pFsJpeg->gifsFuncBtn == FS_FUNC_MIDI ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
            DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 87, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MIDIBUTTON - 2);
#endif //SUPPORT_NESGAME
#else //SUPPORT_FILE_SYSTEM_MODE
#ifdef SUPPORT_NESGAME
           DrawRect(fsArea[FS_AREA_BUTTON].xStart+81, fsArea[FS_AREA_BUTTON].yStart,
                    25, 25,
                        pFsJpeg->gifsFuncBtn == FS_FUNC_MIDI ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);

            DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 87, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MIDIBUTTON - 2);
#else //SUPPORT_NESGAME
            DrawRect(fsArea[FS_AREA_BUTTON].xStart+54, fsArea[FS_AREA_BUTTON].yStart,
                    25, 25,
                        pFsJpeg->gifsFuncBtn == FS_FUNC_MIDI ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
            DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 60, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MIDIBUTTON - 2);
#endif //SUPPORT_NESGAME
#endif //SUPPORT_FILE_SYSTEM_MODE
            }
            break;
#endif
#ifdef SUPPORT_PLAYLIST	//wanghaoying 2005-9-28 19:23
        case CNT_AREA_PLAYLISTBUTTON:
            DrawRect(fsArea[FS_AREA_BUTTON].xStart+81, fsArea[FS_AREA_BUTTON].yStart,
                    25, 25,
                        pFsJpeg->gifsFuncBtn == FS_FUNC_PLAYLIST ? 1 : 0, BK_GROUNDY, BK_GROUNDCRCB);
            DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 87, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_PLAYLISTBUTTON - 2);
            
            break;
#endif
#ifdef SUPPORT_MULTI_PARTITION
        case CNT_AREA_MULTI_PART:
            if(pFsJpeg->gifsState == FS_STATE_HDD)
            {
                if(HL_show == pFsJpeg->part_will)
                    ShowCurrentMultiPart();
                else
                {//2006-06-02, mimitsai add for HD ui.
                    ClearRectArea(Rect[6], DIR_STEP, 0x36, 0xc1, DIR_AREA_BKGROUND_CRCB, FS_AREA_DIRITEM, HL_show);
                    if((HL_show == max_part)&&PMP_CF_Card_IsPlugIn())//liweihua mod 2004-11-30
                       ShowHDDItem(fsArea[FS_AREA_DIRITEM].xStart,HL_show, "CF CARD",0);
                    else
                       ShowHDDItem(fsArea[FS_AREA_DIRITEM].xStart,HL_show, "LOCAL DISK",0);
                }        
            } 
            #ifdef PMP_UI //liweihua 2004-12-30 9:55      
            else if((pFsJpeg->gifsState == FS_STATE_INIT)||(pFsJpeg->gifsState == FS_STATE_MP3))//kenny 2005/6/27
            {
                #ifdef READ_FAT_LONGNAME   //linrc 2005-3-17 10:58
                dFlag = 1;
            	#endif
       			//2006-06-02, mimitsai add for HD ui.
                ClearRectArea(Rect[6], DIR_STEP, 0x36, 0xc1, DIR_AREA_BKGROUND_CRCB, FS_AREA_DIRITEM, HL_show);
                ShowItemHL(HL_show);
            }
            #endif//#ifdef PMP_UI //liweihua 2004-12-30 9:55      
            break;
    #ifdef FAT_FILE_MODE//liweihua 2004-10-10 22:10
        case CNT_AREA_DISK:
                {
                    addr1 = pFsJpeg;
                    addr2 = _fs9660_buf;
                    pFsJpeg = &(share_data.JPEG);
                    _fs9660_buf = SDRAM_BASE + HD_FS_STRUCTURE_YA * 1024;

                    //2006-06-02, mimitsai add for HD ui.
					ClearRectArea(Rect[FS_AREA_DIRITEM], DIR_STEP, 0x36, 0xc1, DIR_AREA_BKGROUND_CRCB, FS_AREA_DIRITEM, HL_show);
					
                    //draw the selected rec,liweihua add 2004-11-17
                    if(((HL_show == pFsJpeg->part_current-1)&&(pFsJpeg->gifsState == FS_STATE_HDD))
                        ||((HL_show == pFsJpeg->file_current_in_page)&&(pFsJpeg->gifsState != FS_STATE_HDD))
                        )
                        ShowPlayFrame(fsArea[FS_AREA_DIRITEM].xStart-2,fsArea[FS_AREA_DIRITEM].yStart + 16*HL_show,78,14);
                    if(pFsJpeg->gifsState == FS_STATE_HDD)
                        ShowHDDItem(fsArea[FS_AREA_DIRITEM].xStart,HL_show, "DISK",0);
                    else
                        ShowItem(HL_show);
                    pFsJpeg = addr1;
                    _fs9660_buf = addr2;
                }
             break;
        case CNT_AREA_CARD:
                {
                    BYTE width;
                    addr1 = pFsJpeg;
                    addr2 = _fs9660_buf;
                    pFsJpeg = pFsJpegbuf;
                    _fs9660_buf = iso9660buf;
                    if(pFsJpeg->gifsState == FS_STATE_HDD)//liweihua mod 2004-11-30
                        width = 94;
                    else
                        width = 78;
                    //2006-06-02, mimitsai add for HD ui.
                    ClearRectArea(Rect[FILE_RECT], FILE_STEP, 0x36, 0xc1, FILE_AREA_BKGROUND_CRCB,FS_AREA_FILEITEM, HL_show);
                    
                    //draw the selected rec,liweihua add 2004-11-17
                    if(((HL_show == pFsJpeg->part_current)&&(pFsJpeg->gifsState == FS_STATE_HDD))
                        ||((HL_show == pFsJpeg->file_current_in_page)&&(pFsJpeg->gifsState != FS_STATE_HDD))
                        )
                        ShowPlayFrame(fsArea[FS_AREA_FILEITEM].xStart-2,fsArea[FS_AREA_FILEITEM].yStart + 16*HL_show,width,14);
                    if(pFsJpeg->gifsState == FS_STATE_HDD)
                        ShowCardItem(HL_show,"CF CARD",0);
                    else
                        ShowItem(HL_show);
                    pFsJpeg = addr1;
                    _fs9660_buf = addr2;                    
                }
             break;
        case CNT_AREA_WARNING:
                {
                    //2006-06-02, mimitsai add for HD ui.
                    ClearRectArea(Rect[FS_AREA_DIRITEM], 0x36, 0xc1, DIR_STEP, DIR_AREA_BKGROUND_CRCB, FS_AREA_DIRITEM, HL_show);
                    ShowWarning("TESTTEST");
                }
             break;
    
    #endif//#ifdef FAT_FILE_MODE
#endif
#ifdef FILE_MODE_WRITE     //sunzhh 2005-01-06
        case CNT_AREA_SRCE:
                {
                    int j;
                    addr1 = pFsJpeg;
                    addr2 = _fs9660_buf;
                    pFsJpeg = &(share_data.JPEG);                    
                    _fs9660_buf = SDRAM_BASE + FS9660YA * 1024;
                    if(pFsJpeg->gifsState == FS_STATE_MEDIA)
                        j = 1;
                    else
                        j = 0;

                    //2006-06-02, mimitsai add for HD ui.
                    ClearRectArea(Rect[FS_AREA_DIRITEM], DIR_STEP, 0x36, 0xc1, DIR_AREA_BKGROUND_CRCB, FS_AREA_DIRITEM, HL_show-j);                            
                    
                    if(((HL_show == pFsJpeg->media_current)&&(pFsJpeg->gifsState == FS_STATE_MEDIA))
                    ||((HL_show == pFsJpeg->file_current_in_page)&&(pFsJpeg->gifsState != FS_STATE_MEDIA))
                    )
                        ShowPlayFrame(fsArea[FS_AREA_DIRITEM].xStart-2,fsArea[FS_AREA_DIRITEM].yStart + 16*(HL_show-j),94,14);                                                                         
                    if(pFsJpeg->gifsState == FS_STATE_MEDIA)
                            FSGUI_ShowString( FS_DIRLIST_XSTART,(FS_DIRLIST_YSTART+ FS_FILELIST_YSTEP * (HL_show-1) ), mediaStr[HL_show], FS_FONTCOLOR_FILE_Y, FS_FONTCOLOR_FILE_CrCb);        
                    else 
                        ShowFileItem(FS_DIRLIST_XSTART, HL_show);  
//                    FSShowFatIcon(fsArea[FS_AREA_DIRICON].xStart,HL_show-1); 
                }
                pFsJpeg = addr1;
                _fs9660_buf = addr2;                
             break;
        case CNT_AREA_DEST:
                {
                    addr1 = pFsJpeg;
                    addr2 = _fs9660_buf;
                    pFsJpeg = pFsJpeg_des_buf;
                    _fs9660_buf = iso9660buf_des;
                    if((!srceType_flag)&&(pFsJpeg->gifsState == FS_STATE_MEDIA))
                        j = 1;
                    else if((srceType_flag == 1)&&(pFsJpeg->gifsState == FS_STATE_MEDIA))
                        j = 2;                        
                    else
                        j = 0;          

                    //2006-06-02, mimitsai add for HD ui.
                    ClearRectArea(Rect[FILE_RECT], FILE_STEP, 0x36, 0xc1, FILE_AREA_BKGROUND_CRCB,FS_AREA_FILEITEM, HL_show-j);                    
                    
                    if(((HL_show == pFsJpeg->media_current)&&(pFsJpeg->gifsState == FS_STATE_MEDIA))
                    ||((HL_show == pFsJpeg->file_current_in_page)&&(pFsJpeg->gifsState != FS_STATE_MEDIA))
                    )
                        ShowPlayFrame(fsArea[FS_AREA_FILEITEM].xStart+2,fsArea[FS_AREA_FILEITEM].yStart + 16*(HL_show-j),94,14);                                                
                    if(pFsJpeg->gifsState == FS_STATE_MEDIA)
                        FSGUI_ShowString( fsArea[FS_AREA_FILEITEM].xStart+4,(FS_DIRLIST_YSTART+ FS_FILELIST_YSTEP * (HL_show-j) ), mediaStr[HL_show], FS_FONTCOLOR_FILE_Y, FS_FONTCOLOR_FILE_CrCb);        
//                        FSShowFatIcon(FS_AREA_FILEICON,HL_show-j); 
                    else 
                        ShowFileItem( fsArea[FS_AREA_FILEITEM].xStart+4, HL_show);  
                    pFsJpeg = addr1;
                    _fs9660_buf = addr2;                    
                }
             break;
        case  CNT_AREA_COPYBUTTON:
        case  CNT_AREA_DELETEBUTTON:
        case  CNT_AREA_NEWBUTTON:
        case  CNT_AREA_RENAMEBUTTON:
        case  CNT_AREA_FORMATBUTTON:                                                                     
        case  CNT_AREA_CAPACITYBUTTON:
            Draw_File_Mode_Button();
            break;
             
#endif
        default: break;
   }

    #ifdef PHILIPS_FSGUI//chenzhao20050613
    file_focus_y = FS_FONTCOLOR_FILE_HL_Y;
    file_focus_CrCb = FS_FONTCOLOR_FILE_HL_CrCb;
    #endif
    // draw current HL
    switch (pFsJpeg->ControlArea)
    {
        case  CNT_AREA_FILE:
                {
                    HL_show = pFsJpeg->file_will;
		 #ifdef FS_SLECTE_FONT_COLOR //qinhua,2006-3-14 03:09下午
                     char buf[20];
            psprintf(buf, "%02d.%s", HL_show+1,FS_GetFileProperty(pFsJpeg->file_array[HL_show],FILE_PROPERTY_NAME));
		    //psprintf(buf, "%02d.%s", HL_show+1,iso9660_file[pFsJpeg->file_array[HL_show]].name);
		   #ifdef MP3_DIRECT_SELECT
		       if(pFsJpeg->count_file[pFsJpeg->gifsFuncBtn - FS_FUNC_MP3] >= 1000)
            psprintf(buf, "%04d.%s", HL_show+1, FS_GetFileProperty(pFsJpeg->file_array[HL_show],FILE_PROPERTY_NAME));
		    //psprintf(buf, "%04d.%s", HL_show+1, iso9660_file[pFsJpeg->file_array[HL_show]].name);
		        else if(pFsJpeg->count_file[pFsJpeg->gifsFuncBtn - FS_FUNC_MP3] >= 100)
		   #else
			if(pFsJpeg->file_specify_in_dir >= 1000)
			    psprintf(buf, "%04d.%s", HL_show+1, FS_GetFileProperty(pFsJpeg->file_array[HL_show],FILE_PROPERTY_NAME));
				//psprintf(buf, "%04d.%s", HL_show+1, iso9660_file[pFsJpeg->file_array[HL_show]].name);
			if(pFsJpeg->file_specify_in_dir >= 100)
		    #endif
		     psprintf(buf, "%03d.%s", HL_show+1, FS_GetFileProperty(pFsJpeg->file_array[HL_show],FILE_PROPERTY_NAME));
			 //psprintf(buf, "%03d.%s", HL_show+1, iso9660_file[pFsJpeg->file_array[HL_show]].name);
			else
			   psprintf(buf, "%02d.%s", HL_show+1, FS_GetFileProperty(pFsJpeg->file_array[HL_show],FILE_PROPERTY_NAME));
		       //psprintf(buf, "%02d.%s", HL_show+1, iso9660_file[pFsJpeg->file_array[HL_show]].name);
                   #endif//#ifdef FS_SLECTE_FONT_COLOR //qinhua,2006-3-14 03:09下午
                    old_ControlArea = CNT_AREA_FILE;

                    FSGUI_FillFrameBuf(fsArea[FS_AREA_FILEITEM].xStart - 2, FS_DIRLIST_YSTART  + HL_show * FS_FILELIST_YSTEP, HL_Width, HL_Heighth, HL_Y, HL_CRCB);
                  #ifdef FS_SLECTE_FONT_COLOR //qinhua,2006-3-14 03:09下午
                   FSGUI_ShowString(fsArea[FS_AREA_FILEITEM].xStart,
			(FS_DIRLIST_YSTART+ FS_FILELIST_YSTEP * HL_show),
			buf, FS_FONTCOLOR_FILE_Y_SL, FS_FONTCOLOR_FILE_CrCb_SL );
                  #else
                    FSShowFileItem(HL_show , FS_GetFileProperty(pFsJpeg->file_array[HL_show],FILE_PROPERTY_NAME));//resume the last HL
                    //FSShowFileItem(HL_show , iso9660_file[pFsJpeg->file_array[HL_show]].name);//resume the last HL
                  #endif
				
					#ifdef SUPPORT_HL_SCROLL_DISPLAY_LFN	//yaowh 2006-11-9 11:19AM
					if ((pFsJpeg->file_page_will==0)&&(pFsJpeg->gifsFuncBtn==FS_FUNC_OTHER)&&(media_type!=MEDIA_CARD))
						Get_HL_File_Full_Name(pFsJpeg->file_will + pFsJpeg->first_mp3_entry);
					else
						Get_HL_File_Full_Name(pFsJpeg->fsnav_trk_will + pFsJpeg->first_mp3_entry);
					#endif
                    /// NOTE:
                    // These code are put here ,for they will used by FSGUI_Refresh()/FSGUI_CmdLeft/FSGUI_CmdRight()
                    // if MP3_Lyrics_Drawed is 1,then show lyrics.
                    //zhaoyanhua add 2003-9-1 17:49
                    #ifdef MP3_TXT_DISPLAY
				    if(MP3TotalNo)		//linrc for bug 2005-11-3 17:11
				    {
                    ShowLyricsWhileHL();
                	}
                    #endif    
                }
                break;
        case  CNT_AREA_DIR:
                {
					#ifdef SUPPORT_HL_SCROLL_DISPLAY_LFN	//yaowh 2006-12-19 03:53PM
					uHLScrollDispFileNameFlag = 0;
					uHLScrollDispFileNameSt = 0;
					#endif
                    HL_show = pFsJpeg->dir_current;
                  	#ifdef FS_SLECTE_FONT_COLOR  //qinhua,2006-3-14 03:09下午
                    char buf[20];
                  	if ( strcmp(iso9660_dir[pFsJpeg->dir_array[HL_show]].name, "")==0 )
                    {
	            	psprintf(buf, "%02d.\\", HL_show+1);
      	             }               
	            	else
	             	{
	        		psprintf(buf, "%02d.%s",HL_show+1, iso9660_dir[pFsJpeg->dir_array[HL_show]].name);
	              	}
                   
                  	#endif  
                    old_ControlArea = CNT_AREA_DIR;

                    FSGUI_FillFrameBuf(fsArea[FS_AREA_DIRITEM].xStart - 2, FS_DIRLIST_YSTART  + HL_show * FS_FILELIST_YSTEP, HL_Width, HL_Heighth, HL_Y, HL_CRCB);
               		#ifdef FS_SLECTE_FONT_COLOR//qinhua,2006-3-14 03:09下午
                    FSGUI_ShowString(fsArea[FS_AREA_DIRITEM].xStart,
	        		(FS_DIRLIST_YSTART+ FS_FILELIST_YSTEP * HL_show ),
					buf, FS_FONTCOLOR_FILE_Y_SL, FS_FONTCOLOR_FILE_CrCb_SL );
	        		#else
                    ShowDirItem(HL_show,iso9660_dir[pFsJpeg->dir_array[HL_show]].name);//resume the last HL
                	#endif 
                }
                break;

        case  CNT_AREA_MP3BUTTON:
                {
					#ifdef SUPPORT_HL_SCROLL_DISPLAY_LFN	//yaowh 2006-12-19 03:53PM
					uHLScrollDispFileNameFlag = 0;
					uHLScrollDispFileNameSt = 0;
					#endif
                    old_ControlArea = CNT_AREA_MP3BUTTON;
                    #ifdef PHILIPS_FSGUI//chenzhao20050613
                    FSGUI_FillFrameBuf(fsArea[FS_AREA_BUTTON].xStart , fsArea[FS_AREA_BUTTON].yStart , 25,25,BUTTOM_HL_Y,BUTTOM_HL_CRCB);
                    #else
					#ifdef INDIGO_STYLE_FSGUI
						// clear other bottom
						DrawBottomOutLine(fsArea[FS_AREA_MP3_BUTTON].xStart  ,fsArea[FS_AREA_MP3_BUTTON].yStart  , fsArea[FS_AREA_MP3_BUTTON].xSize  ,fsArea[FS_AREA_MP3_BUTTON].ySize  , HIGHLIGHT_COLOR_Y   , HIGHLIGHT_COLOR_CbCr);
					#else					
                    FSGUI_FillFrameBuf(fsArea[FS_AREA_BUTTON].xStart , fsArea[FS_AREA_BUTTON].yStart , 25,25,HL_Y,HL_CRCB);
                    #endif
                #endif

				#ifdef INDIGO_STYLE_FSGUI
					DrawFileIcon(fsArea[FS_AREA_MP3_BUTTON].xStart+BTN_XOFFSET_FROM_OUTLINE, fsArea[FS_AREA_MP3_BUTTON].yStart+BTN_YOFFSET_FROM_OUTLINE, CNT_TAB_MP3BUTTON - 2);
				#else					
                    DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 6, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_MP3BUTTON - 2);
				#endif
                }
                break;
        case  CNT_AREA_JPEGBUTTON:
                {
					#ifdef SUPPORT_HL_SCROLL_DISPLAY_LFN	//yaowh 2006-12-19 03:53PM
					uHLScrollDispFileNameFlag = 0;
					uHLScrollDispFileNameSt = 0;
					#endif
                    old_ControlArea = CNT_AREA_JPEGBUTTON;
                    #ifdef PHILIPS_FSGUI//chenzhao20050613
                    FSGUI_FillFrameBuf(fsArea[FS_AREA_BUTTON].xStart+27 , fsArea[FS_AREA_BUTTON].yStart , 25,25, BUTTOM_HL_Y,BUTTOM_HL_CRCB);
                    #else
					#ifdef INDIGO_STYLE_FSGUI
						// clear other bottom
						DrawBottomOutLine(fsArea[FS_AREA_JPG_BUTTON].xStart  ,fsArea[FS_AREA_JPG_BUTTON].yStart  , fsArea[FS_AREA_JPG_BUTTON].xSize  ,fsArea[FS_AREA_JPG_BUTTON].ySize  , HIGHLIGHT_COLOR_Y   , HIGHLIGHT_COLOR_CbCr);
					#else					
                    FSGUI_FillFrameBuf(fsArea[FS_AREA_BUTTON].xStart+27 , fsArea[FS_AREA_BUTTON].yStart , 25,25, HL_Y,HL_CRCB);
                    #endif
                #endif

				#ifdef INDIGO_STYLE_FSGUI
					DrawFileIcon(fsArea[FS_AREA_JPG_BUTTON].xStart+BTN_XOFFSET_FROM_OUTLINE, fsArea[FS_AREA_JPG_BUTTON].yStart+BTN_YOFFSET_FROM_OUTLINE, CNT_TAB_JPEGBUTTON - 2);
				#else					
                    DrawFileIcon(fsArea[FS_AREA_BUTTON].xStart + 33, fsArea[FS_AREA_BUTTON].yStart + 6, CNT_AREA_JPEGBUTTON - 2);
				#endif
                }
                break;
#ifdef SUPPORT_NESGAME
        case  CNT_AREA_GAMEBUTTON:
                {
					#ifdef SUPPORT_HL_SCROLL_DISPLAY_LFN	//yaowh 2006-12-19 03:53PM

⌨️ 快捷键说明

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