亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? fsgui_osd.c

?? dvd里面的一個文件系統(tǒng)的代碼
?? C
?? 第 1 頁 / 共 3 頁
字號:
    
    if (iRes != 0)
        FSGUI_OperationInit();
	
	return iRes;
}

UINT32 FSGUI_OsdCmdDown()
{
	UINT32 iRes = 0;
	
	iRes = OSDGUI_CmdDown();
	
	if (iRes != 0)
        FSGUI_OperationInit();

    return iRes;
}

UINT32 FSGUI_OsdCmdLeft()
{
	UINT32 iRes = 0;
	
	iRes = OSDGUI_CmdLeft();
	
	if (iRes != 0)
	{	
		//set first_mp3_entry and last_mp3_entry
	    //to find the track postion correctly
		if (pFsJpeg->gifsState == FS_STATE_LIST)//preloop state.   
		    CalcDirFirstPage(pFsJpeg->fsnav_dir_now);
	    
	    FSGUI_OperationInit();
    }
		
    return iRes;
}


UINT32 FSGUI_OsdCmdRight()
{
	UINT32 iRes = 0;
	//printf("---------- FSGUI RIGHT----\n");
	iRes = OSDGUI_CmdRight();
	
	if (iRes != 0)
	{
	    //set first_mp3_entry and last_mp3_entry
	    //to find the track postion correctly
        if (pFsJpeg->gifsState == FS_STATE_LIST)//preloop state.   
            CalcDirFirstPage(pFsJpeg->fsnav_dir_now);
    
        FSGUI_OperationInit();
    }
    return iRes;
}

/*
 * Description:
 *    find root dir.
 */
UINT16 FSGUI_GetRootDir(void)
{
    int 	i = 0;
	UINT16   root_dir = 0;
	
    //get the root dir.
	for(i = 0; i < pFsJpeg->iso9660_dir_cnt; i++)
	{
		if(iso9660_dir[i].parent_dir == -1) 
		{	
			root_dir  = i;
			//printf("### root-dir == %d",root_dir);
			break;
		}
	}    
	return root_dir;
}


/*
 * Function Description:
 *
 *    refresh selection GUI(on the right ) when enter"SELECT"
 *
 * INPUT:
 *  file_index : selected file real index.
 *
 *    type --->  FS_FUNC_MP3
 *               FS_FUNC_JPEG
 *                      Other
 *
 */
void FSGUI_ShowCurrentSelection(UINT16 file_index)
{
	const char * str = "";
	BYTE filename[50];
	BYTE dirname[100]; 
    //UINT16 file_now;//file in a page
    UINT16 file_total_now;//total file in array
    UINT16 dir_total_now;//total dir in array
    BYTE type = 0;
    
    //printf("#### Show current selection ---\n");
    //file_now = pFsJpeg->file_current_in_page;
    //file_total_now = pFsJpeg->fsnav_trk_now + pFsJpeg->first_mp3_entry;//pFsJpeg->file_array_in_page[file_now];
    file_total_now = file_index;
    dir_total_now = FS_GetFileProperty(file_total_now,FILE_PROPERTY_PARENT_FOLDER);
    //dir_total_now = iso9660_file[file_total_now].parent_dir;
	type = FS_GetFileProperty(file_total_now,FILE_PROPERTY_CATEGORY);
	//type = iso9660_file[file_total_now].type;
	 //Draw line
	osd_DrawRegionLine(FS_SUB_TXT_XSTART, FS_SUB_TXT_YSTART+26, FS_SUB_TXT_XSTART+300, FS_SUB_TXT_YSTART+26, FS_SUB_LINE_COLOR, 2,0);
	osd_DrawRegionLine(FS_SUB_TXT_XSTART, FS_SUB_TXT_YSTART+126, FS_SUB_TXT_XSTART+300, FS_SUB_TXT_YSTART+126, FS_SUB_LINE_COLOR, 2,0);
	osd_DrawRegionLine(FS_SUB_TXT_XSTART, FS_SUB_TXT_YSTART+226, FS_SUB_TXT_XSTART+300, FS_SUB_TXT_YSTART+226, FS_SUB_LINE_COLOR, 2,0);
	
	//Draw pic
	osd_draw_bmp_old(FS_SUB_TXT_XSTART ,FS_SUB_TXT_YSTART+42, song1_bmp, 0);//draw song
	osd_draw_bmp_old(FS_SUB_TXT_XSTART,FS_SUB_TXT_YSTART+142, picture1_bmp, 0);//draw picture

	 //Draw string
	 //"Current Selection"
	 str = _OsdMessegeFont1[osd_font_mode][STR_OS_FSGUI_SELECTION_MSG0];
	 osd_DrawRegionString(FS_SUB_TXT_XSTART, FS_SUB_TXT_YSTART, str, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);

	if (type == FS_FUNC_MP3)
	{
		//if (GetCurrentFileType() ==CDROM_MP3)
		//{
        //show folder name
        ClearString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+50,16*16,FS_SUB_TXT_BACKGROUND_COLOR);
        //strcpy(dirname,iso9660_dir[dir_total_now].name);
        FSGUI_GetPathName(dirname, dir_total_now);
        osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+50, dirname, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
        
		//show track name
        ClearString(FS_SUB_TXT_XSTART, FS_SUB_TXT_YSTART+94,18*16,FS_SUB_TXT_BACKGROUND_COLOR);
		strcpy(filename,FS_GetFileProperty(file_total_now,FILE_PROPERTY_NAME));
		//strcpy(filename,iso9660_file[file_total_now].name);
		osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+94, filename, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);

        //show mp3 bmp
        if (GetCurrentFileType() == CDROM_WMA)
		    osd_draw_bmp_old(FS_SUB_TXT_XSTART,FS_SUB_TXT_YSTART+85, wma_bmp, 0);//draw mp3
        else 
            osd_draw_bmp_old(FS_SUB_TXT_XSTART,FS_SUB_TXT_YSTART+85, mp3_bmp, 0);//draw mp3

        if ((selected_flag & (0x01<< type)) == 0 )
	        selected_flag = selected_flag |(0x01 << type);
		//}
		
		/*if (GetCurrentFileType() ==CDROM_WMA)
		{
                    //show folder name
                        strcpy(dirname,iso9660_dir[dir_total_now].name);
                        osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+50, dirname, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
        
		        //show track name
			strcpy(filename,FS_GetFileProperty(file_total_now,FILE_PROPERTY_NAME));
			//strcpy(filename,iso9660_file[file_total_now].name);
			osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+90, filename, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);

                        //show wma bmp
			osd_draw_bmp_old(FS_SUB_TXT_XSTART,FS_SUB_TXT_YSTART+82, wma_bmp, 0);//draw wma

		}*/
	}
    else if (type== FS_FUNC_JPEG)
	{
        //show folder name
        ClearString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+150,16*16,FS_SUB_TXT_BACKGROUND_COLOR);
        //strcpy(dirname,iso9660_dir[dir_total_now].name);
        FSGUI_GetPathName(dirname, dir_total_now);
        osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+150, dirname, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
                
        //show track name
        ClearString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+194,16*16,FS_SUB_TXT_BACKGROUND_COLOR);
        strcpy(filename,FS_GetFileProperty(file_total_now,FILE_PROPERTY_NAME));
        //strcpy(filename,iso9660_file[file_total_now].name);
        osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+194, filename, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
	 
	    if ((selected_flag & (0x01<< type)) == 0 )
	    {    
	        selected_flag = selected_flag |(0x01 << type);
	        printf("##### ------selected changed --%d\n",selected_flag);
	    }   
	 }
	 //else if( (type!= FS_FUNC_JPEG)&&(type!= FS_FUNC_MP3) )
	 str = _OsdMessegeFont1[osd_font_mode][STR_OS_FSGUI_NO_SEL_MSG0];
    if (selected_flag == 0)
	{
	    //draw string "Not Selected" for MP3 and JPEG
	 	osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+50, str, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
	 	osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+150, str, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
	}
	else 
	{
	    if (selected_flag == (0x01 << FS_FUNC_MP3))//only MP3 selected,JPEG has no selection
	        osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+150, str, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
	    else if (selected_flag == (0x01 << FS_FUNC_JPEG))
	        osd_DrawRegionString(FS_SUB_TXT_XSTART+38, FS_SUB_TXT_YSTART+50, str, FS_SUB_TXT_FONT_COLOR, FS_SUB_TXT_BACKGROUND_COLOR,0);
	}
}


/*  
 * Funciton: FSGUI_GetOneDirContent() 
 *
 * Description:
 *   1)save the index of subdirs and files to CurrentFiles[]
 *   2)Get the total count : pFsJpeg->file_count_in_dir
 */
void FSGUI_GetOneDirContent(int iDir)
{
	int i = 0,j = 0;
	int iStart = 0, iEnd = 0;
	//NOTE:
	//When we read a dir, must record its subdir and files.
	//we save them in CurrentFiles[]
	
	//find its subdir
	for(i = 0; i < pFsJpeg->iso9660_dir_cnt;i++)
	{
		if((iso9660_dir[i].parent_dir == iDir) 
			&& (i != iDir))//parent dir of i can not be iDir.
		{	
			// record the index of subdir and files.
			//in order to distinguish dir and files, 
			//dir index  = index+ 400
			//file index = index;
			CurrentFiles[j] = i + SUB_FOLDER_BASE;
			j++;	
		}
	}	
	//printf("###### iDir %d -has files---%d---\n",iDir,iso9660_dir[iDir].dir);
	if(iso9660_dir[iDir].dir>0)
	{
		iStart = pFsJpeg->Dir_entry[iDir];
		iEnd = iStart + iso9660_dir[iDir].dir;
		//find its file.
		for(i = iStart; i < iEnd;i++)
		{
			if(FS_GetFileProperty(i,FILE_PROPERTY_PARENT_FOLDER) == iDir)
			//if(iso9660_file[i].parent_dir == iDir)			
			{	
				CurrentFiles[j]= i;
				j++;
			}
		}	
	}
	
	pFsJpeg->file_count_in_dir = j;//total file count.
 	//printf("#### pFsJpeg->file_count_in_dir---%d--\n",pFsJpeg->file_count_in_dir);
	//for( i = 0; i < j; i++)
 	   // printf("#### ---- CurrentFile[%d] :%d---\n",i,CurrentFiles[i]);	
	
	
}


/*
 * Description:
 *      Calculate location of the first file in Dir -> fsnav_trk_now
 *                                      and first_mp3_entry, last_mp3_entry, 
 *
 */
void CalcDirFirstPage(UINT16 iDir)
{
    pFsJpeg->fsnav_trk_now = 0;
    pFsJpeg->first_mp3_entry = pFsJpeg->Dir_entry[iDir];
        
    if (iDir < (pFsJpeg->iso9660_dir_cnt - 1))
        pFsJpeg->last_mp3_entry = pFsJpeg->first_mp3_entry + iso9660_dir[iDir].dir-1;
    else    
        pFsJpeg->last_mp3_entry = pFsJpeg->iso9660_file_cnt - 1;
    
    //printf("------ Excute CalcDirfirstPage : dir :%dfirst_mp3_entry:%d, last_mp3_entry:%d----\n",iDir,pFsJpeg->first_mp3_entry,pFsJpeg->last_mp3_entry);
	

}

/*
 * Description:
 *   Get path name (start from root dir) to show curent selection
 *
 */
void FSGUI_GetPathName(BYTE pathname[], UINT16 iDir)
{
    UINT16 root_dir = FSGUI_GetRootDir();
    UINT16 parent_dir = 0;
    UINT16 sub_dir = iDir;
    UINT16 i = 0;
    BYTE templen = 0, pathlen = 0;
    
    if (iDir == root_dir)    
        psprintf(pathname, "\\");//only show '\'
    else
    {
        psprintf(pathname, "%s\\", iso9660_dir[sub_dir].name);
        
        do
        {
            parent_dir = OSDGUI_GetParentDir(sub_dir, DIR);
            
            if (parent_dir == root_dir)
                psprintf(linebuf, "\\");
            else
                psprintf(linebuf, "%s\\", iso9660_dir[parent_dir].name);       
            
            templen = strlen(linebuf);
            pathlen = strlen(pathname);
            
            for (i = 0; i < pathlen; i++)
            {
                
                if ((templen + i) >= 44)//not exceed array range.
                    break;
                    
                linebuf[templen+i] = pathname[i];
            }
            //tempname[templen + pathlen] = ' ';
            linebuf[templen + pathlen] = '\0';
            
            strcpy(pathname, linebuf);
            sub_dir = parent_dir;
            
        }while(parent_dir != root_dir);
        
        
   }
    
}


/*
 * Description:
 *  Show operation msg for fsGUI
 *
 */
void FSGUI_ShowOperationMsg(void)
{
    int file_index = 0;
    UINT16 osd_id = 0;
    
    if (full_scrn)
        return;
    file_index = CurrentFiles[pFsJpeg->file_index_in_dir];
    
    if (file_index >=  SUB_FOLDER_BASE)//folder
    {   
        if (selected_flag == BUTTON_SELECTED)
            osd_id = STR_OS_FS_FOLDER_HAS_SEL;
        else
            osd_id = STR_OS_FS_FOLDER_NONE_SEL;
         
    }   
    else
    {
        if (selected_flag == BUTTON_SELECTED)
            osd_id = STR_OS_FS_FILE_HAS_SEL;
        else
            osd_id = STR_OS_FS_FILE_NONE_SEL;
        
    }
    
    ShowOperationMsg( osd_id, 1);
}

/*
 * Description:
 *   Confirm cd_type again to get cd_type_loaded value.
 *
 * RETURN:   
 *                 cd_type_loaded:
 *  if only has MP3 , CDMUSIC
 *     only has JPEG, CDPICTRUE
 *     MP3 & JPEG,    CDPICMUS
 *
 */
BYTE GetCDROMDiscType(void)
{
    BYTE DiscType;//terry,2005/4/1 12:00

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合久久综合亚洲| 国产a久久麻豆| 91精品国产综合久久久蜜臀图片| 性久久久久久久久久久久 | 成人自拍视频在线| 国产精品视频一二| 91在线高清观看| 亚洲在线观看免费视频| 欧美综合一区二区三区| 免费看精品久久片| 国产色产综合产在线视频| 99久久精品免费看| 夜夜嗨av一区二区三区网页 | 91丝袜呻吟高潮美腿白嫩在线观看| 国产精品的网站| 欧美视频精品在线| 美日韩黄色大片| 欧美国产一区视频在线观看| 日本黄色一区二区| 久久99热狠狠色一区二区| 欧美国产一区二区在线观看| 91精品1区2区| 久久99精品国产| 日韩毛片高清在线播放| 51久久夜色精品国产麻豆| 激情都市一区二区| 一区二区三区国产| 欧美精品一区二区三区蜜桃视频 | 精品成人在线观看| 91热门视频在线观看| 青青草成人在线观看| 国产天堂亚洲国产碰碰| 欧美日韩精品福利| 成人白浆超碰人人人人| 三级在线观看一区二区| 中文无字幕一区二区三区| 欧美亚洲日本一区| 成熟亚洲日本毛茸茸凸凹| 日韩黄色片在线观看| 国产精品热久久久久夜色精品三区 | 91在线观看污| 麻豆精品精品国产自在97香蕉 | 久久久久久久av麻豆果冻| 93久久精品日日躁夜夜躁欧美| 蜜桃av噜噜一区| 伊人一区二区三区| 国产精品欧美一区喷水| 日韩欧美亚洲另类制服综合在线 | 日日夜夜精品视频天天综合网| 国产精品嫩草99a| 26uuu国产在线精品一区二区| 欧美三级蜜桃2在线观看| 不卡一区中文字幕| 国产69精品久久久久毛片| 日本大胆欧美人术艺术动态| 亚洲一卡二卡三卡四卡| 亚洲欧美一区二区久久 | 一色屋精品亚洲香蕉网站| 日韩一区国产二区欧美三区| 色悠悠亚洲一区二区| 精品影视av免费| 欧美国产禁国产网站cc| 久久综合网色—综合色88| 欧美婷婷六月丁香综合色| 国产盗摄女厕一区二区三区| 日韩精品电影一区亚洲| 亚洲啪啪综合av一区二区三区| 久久综合999| 欧美老肥妇做.爰bbww视频| 99精品视频免费在线观看| 国产一区二区三区免费看| 日韩国产精品久久久久久亚洲| 一区二区三区成人| 亚洲色图.com| 欧美激情综合在线| 久久天堂av综合合色蜜桃网| 欧美二区乱c少妇| 欧美中文字幕久久| 久久影视一区二区| 在线亚洲人成电影网站色www| 色香蕉久久蜜桃| 成人午夜视频福利| 国产精品一区二区三区乱码| 蜜桃精品在线观看| 亚洲午夜精品17c| 亚洲午夜电影网| 亚洲午夜久久久久久久久久久| 国产精品国模大尺度视频| 国产欧美一区二区在线| 国产欧美一区二区三区沐欲| 26uuu色噜噜精品一区| 337p日本欧洲亚洲大胆精品| 日韩精品一区二区三区三区免费 | 国产日韩亚洲欧美综合| 久久久久久久久久电影| 久久精品夜夜夜夜久久| 欧美激情中文字幕| 欧美高清在线视频| 日韩视频中午一区| 欧美日韩久久一区二区| 欧美日韩一级二级三级| 91精品国产综合久久久久久漫画| 正在播放一区二区| 欧美变态凌虐bdsm| 久久精品日产第一区二区三区高清版 | 美日韩一级片在线观看| 久久99精品久久久| 成人福利视频在线看| 国产精品一区二区在线观看不卡| 国产传媒欧美日韩成人| av在线播放成人| 欧美私人免费视频| 日韩欧美国产三级| 久久久九九九九| 国产精品久久三区| 亚洲一卡二卡三卡四卡五卡| 亚洲成人1区2区| 狠狠色狠狠色综合日日91app| 成人综合激情网| 欧美日韩一级片在线观看| 日韩欧美一卡二卡| 中文字幕精品一区| 青娱乐精品视频在线| 国产激情精品久久久第一区二区| 成人av午夜电影| 欧美日韩你懂的| 欧美日韩黄色影视| 精品国产免费久久| 亚洲欧美乱综合| 久久国产精品99精品国产| 成人黄动漫网站免费app| 欧美日韩一区二区在线观看| xnxx国产精品| 一区二区三区在线免费观看| 久久精工是国产品牌吗| aaa国产一区| 日韩欧美电影一二三| 亚洲小说春色综合另类电影| 国产成人午夜99999| 欧美日韩成人在线| 国产精品久久久久婷婷二区次| 亚洲成av人片| 不卡一区在线观看| 欧美日韩大陆在线| 一区二区三区欧美日| 国产高清精品在线| 日韩天堂在线观看| 一区二区在线免费| 国产乱对白刺激视频不卡| 欧美久久久久久久久中文字幕| 国产欧美一区在线| 另类小说一区二区三区| 在线国产电影不卡| 国产精品福利影院| 国产久卡久卡久卡久卡视频精品| 欧美日韩免费在线视频| 国产精品美女www爽爽爽| 国产经典欧美精品| 欧美成人精品3d动漫h| 日韩精品视频网站| 在线亚洲+欧美+日本专区| 国产精品国产三级国产有无不卡| 久久99蜜桃精品| 91精品啪在线观看国产60岁| 亚洲精品国产高清久久伦理二区| 国产成人精品网址| 久久久美女毛片| 国内精品写真在线观看| 91精品国产综合久久精品| 一区二区三区中文字幕| 成人高清在线视频| 国产精品色婷婷久久58| 天天操天天综合网| 日韩手机在线导航| 奇米精品一区二区三区四区 | 青娱乐精品在线视频| 欧美性一二三区| 一区二区免费在线| 欧美在线观看一区二区| 亚洲精品国产a久久久久久| 激情五月激情综合网| 久久这里只有精品6| 激情成人综合网| 久久网这里都是精品| 精品写真视频在线观看| 欧美变态口味重另类| 久草精品在线观看| 国产三级久久久| 成人免费视频app| 国产精品二三区| 色猫猫国产区一区二在线视频| 中文字幕日韩精品一区| 日本韩国欧美三级| 亚洲大片精品永久免费| 日韩三级高清在线| 国产剧情在线观看一区二区| 国产精品嫩草影院com| 91亚洲精品乱码久久久久久蜜桃| 中文字幕一区免费在线观看| 欧美久久久一区|