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

📄 smbmusicapsonginfodetailresource.cpp

📁 索爱手机代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		case ESongInfoComposer :		//嶌嬋幰
		case ESongInfoLyricist :		//嶌帉幰
		case ESongInfoRightsHolder :	//尃棙幰
		case ESongInfoSellingAgency :	//斕攧尦
		case ESongInfoRightsInfo :		//尃棙忣曬
		case ESongInfoLabel :			//儗乕儀儖柤
//MODIFY-S 汭弐 乽僆儕僕僫儖僞僀僩儖乿傪乽娗棟梡僞僀僩儖乿偵廋惓
// 		case ESongInfoOrgTitle :		//僆儕僕僫儖僞僀僩儖
		case 	ESongInfoMgrTitle:		//娗棟梡僞僀僩儖
//MODIFY-E 汭弐
		case ESongInfoFileName :		//僼傽僀儖柤
			{
			//徻嵶忣曬傪嶲徠偟丄偦偺崁栚傪偦偺傑傑庢摼偡傞
			DetailItemTextL(itemId);
			}
			break;

		case ESongInfoURL :				//URL忣曬
			{
			//URL忣曬偲AltString忣曬傪嶲徠偟丄揔愗側儚乕僨傿儞僌傪嶌惉偡傞
			URLItemTextL();
			}
			break;

		case ESongInfoYear :			//擭
			{
			//偦偺崁栚偵擖偭偰偄傞悢帤傪暥帤楍偵曄姺偡傞
			NumItemTextL(itemId);	
			}
			break;

		case ESongInfoTrackNum :		//僩儔僢僋斣崋
			{
			//偦偺崁栚偵擖偭偰偄傞悢帤傪暥帤楍偵曄姺偡傞	
			TrackNumTextL();
			}
			break;

		case ESongInfoPlayLimit :		//嵞惗惂尷忣曬
			{
			//嵞惗惂尷忣曬傪嶲徠偟丄愝掕偝傟偰偄傞嵞惗惂尷忣曬傪嶌惉偡傞
			LimitItemTextL();
			}
			break;

		case ESongInfoSaveimotion :		//拝儌乕僔儑儞愗傝弌偟曐懚壜斲(僆僗僗儊)
		case ESongInfoSetPartSelect :	//擟堄売強慖戰拝怣壒愝掕壜斲(偍偙偺傒)
//DEL-S MAEJI
//		case ESongInfoRedistribute :	//嵞攝晍壜斲
//DEL-E
		case ESongInfoSetRingTone :		//拝怣壒愝掕壜斲
//DEL-S MAEJI
//		case ESongInfoSaveJacket :		//僕儍働僢僩夋憸曐懚壜斲
//		case ESongInfoSaveDesktop :		//懸偪庴偗梡夋憸曐懚壜斲
//		case ESongInfoSaveLyric :		//壧帉忣曬曐懚壜斲
//DEL-E
			{
			//徻嵶忣曬傪嶲徠偟丄壜斲偵墳偠偨儚乕僨傿儞僌傪嶌惉偡傞
			BoolItemTextL(itemId);
			}
			break;

//ADD-S MAEJI		
		case ESongInfoRedistribute :	//嵞攝晍壜斲
		case ESongInfoSaveJacket :		//僕儍働僢僩夋憸曐懚壜斲
		case ESongInfoSaveDesktop :		//懸偪庴偗梡夋憸曐懚壜斲
		case ESongInfoSaveLyric :		//壧帉忣曬曐懚壜斲
			{
			//徻嵶忣曬傪嶲徠偟丄桳柍偵墳偠偨儚乕僨傿儞僌傪嶌惉偡傞
			IsExistenceItemTextL(itemId);
			}
			break;
//ADD-E		

		case ESongInfoCodec :			//壒
			{
			//壒傪嶲徠偟丄抣偵墳偠偨儚乕僨傿儞僌傪嶌惉偡傞
			CodecItemTextL();
			}
			break;

		case ESongInfoAcquisition :		//庢摼尦
			{
			//庢摼尦傪嶲徠偟丄抣偵墳偠偨儚乕僨傿儞僌傪嶌惉偡傞
			AcquisitionItemTextL();
			}
			break;

		case ESongInfoFileFormat :		//僼傽僀儖庬暿
			{
			//僼傽僀儖庬暿傪嶲徠偟丄抣偵墳偠偨儚乕僨傿儞僌傪嶌惉偡傞
			FormatItemTextL();
			}
			break;

		case ESongInfoSaveMemory :		//miniSD傊偺曐懚丒杮懱傊偺曐懚
			{
			//miniSD傊偺曐懚丒杮懱傊偺曐懚傪嶲徠偟丄抣偵墳偠偨儚乕僨傿儞僌傪嶌惉偡傞
			MemoryItemTextL();
			}
			break;

		case ESongInfoPlayTime :		//嵞惗帪娫
			{
			//嵞惗帪娫偺僥僉僗僩傪嶌惉偡傞
			PlayTimeItemTextL();
			}
			break;

		case ESongInfoFileSize :		//僼傽僀儖僒僀僘
			{
			//僼傽僀儖僒僀僘偺僥僉僗僩傪嶌惉偡傞
			FileSizeItemTextL();
			}
			break;

		case ESongInfoLastUpdate :		//曐懚擔帪
			{
			//曐懚擔帪偺僥僉僗僩傪嶌惉偡傞
			DateTimeItemTextL();
			}
			break;

		case ESongInfoIsSetting :		//愝掕忬嫷
			{
			//愝掕忬嫷偺僥僉僗僩傪嶌惉偡傞
			IsSettingItemTextL();
			}
			break;

//ADD-S 汭弐 乽挊嶌尃娗棟乿傪捛壛
		case ESongInfoRightsManagement :		//挊嶌尃娗棟
			{
			//挊嶌尃娗棟偺僥僉僗僩傪嶌惉偡傞
			RightsManagementItemTextL();
			}
			break;
//ADD-E

		default :
			{
			//儘僌弌椡
			SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo174, ELogLevelHighest, KErrArgument, KSmbMusicAPSongInfoLogSongItemErr);
			//儕乕僽張棟
			User::Leave(KErrArgument);	
			}
			break;
		}

	return iText->Des();
	}

/**
 * 崁栚悢傪庢摼偡傞
 *
 * @return		僼傽僀儖僼僅乕儅僢僩偵墳偠偨昞帵偡傞崁栚悢
 */
TInt CSmbMusicAPSongInfoDetailResource::DetailItemCount() const
	{
	return iItemNum;
	}

/**
 * [杮懱傊偺曐懚]僥僉僗僩傪庢摼偡傞
 *
 * @return		巜掕偟偨崁栚偵昞帵偡傞僥僉僗僩
 */
TPtr CSmbMusicAPSongInfoDetailResource::SavePhoneTextL() const
	{
	TResourceReader reader;
	CEikonEnv::Static()->CreateResourceReaderLC(reader, R_SONGINFO_DETAIL_INFO_SAVEPHONEITEM);
	TPtr buf(iText->Des());
	buf.Copy(reader.ReadTPtrC());
	CleanupStack::PopAndDestroy();	//reader
	return iText->Des();
	}

/**
 * [杮懱傊偺曐懚]僥僉僗僩傪昞帵偡傞傋偒僀儞僨僢僋僗傪曉媝偡傞
 *
 * @return		僀儞僨僢僋僗
 */
TInt CSmbMusicAPSongInfoDetailResource::SavePhoneIndex() const
	{
	return iSavePhoneIndex;
	}

/**
 * 徻嵶忣曬傪嶲徠偟丄昞帵梡崁栚傪嶌惉偡傞
 *
 * @param[in]	aItemId		崁栚庬暿
 */
void CSmbMusicAPSongInfoDetailResource::DetailItemTextL(const TInt aItemId) const
	{
	TPtr buf(iText->Des());
	switch(aItemId)
		{
		case ESongInfoTitle :			//僞僀僩儖
			{
//MODIFY-S MAEJI PlayingDispInfo仺DetailSongInfo			
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicTitle);
//MODIFY-E 			
			}
			break;

		case ESongInfoArtist :			//傾乕僥傿僗僩柤
			{
//MODIFY-S MAEJI PlayingDispInfo仺DetailSongInfo			
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicArtist);	
//MODIFY-E 
			}
			break;

		case ESongInfoAlbum :			//傾儖僶儉柤
			{
//MODIFY-S MAEJI PlayingDispInfo仺DetailSongInfo
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicAlbum);
//MODIFY-E 
			}
			break;

		case ESongInfoGenre :			//僕儍儞儖
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicGenre);
			}
			break;

		case ESongInfoComment :			//僐儊儞僩
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicComment);
			}
			break;

		case ESongInfoComposer :		//嶌嬋幰
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicComposer);
			}
			break;

		case ESongInfoLyricist :		//嶌帉幰
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicLyricist);
			}
			break;

		case ESongInfoRightsHolder :	//尃棙幰
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicRightsHolder);
			}
			break;

		case ESongInfoSellingAgency :	//斕攧尦
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicSellingAgency);
			}
			break;

		case ESongInfoRightsInfo :		//尃棙忣曬
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicRightsInformation);
			}
			break;

		case ESongInfoLabel :			//儗乕儀儖柤
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMusicLabel);
			}
			break;

//MODIFY-S 汭弐 乽僆儕僕僫儖僞僀僩儖乿傪乽娗棟梡僞僀僩儖乿偵廋惓
// 		case ESongInfoOrgTitle :		//僆儕僕僫儖僞僀僩儖
// 			{
// 			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iOriginalTitle);
// 			}
// 			break;
		case ESongInfoMgrTitle:		//娗棟梡僞僀僩儖
			{
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iMgrTitle);
			}
			break;
//MODIFY- E 汭弐

		case ESongInfoFileName :		//僼傽僀儖柤
			{
//MODIFY-S MAEJI
//MODIFY-S 汭弐 SmbMusicAPLibFileInfoFunc::GetName偺乽暥帤楍偺挿偝乿偺堷悢傪default抣偵廋惓
// 			if(EFalse == SmbMusicAPLibFileInfoFunc::GetName(
// 							iInfo.iDetailSongInfo->DetailSongInfo()->iFileName,
// 							buf, 256)) 
			if(EFalse == SmbMusicAPLibFileInfoFunc::GetName(iInfo.iDetailSongInfo->DetailSongInfo()->iFileName,	buf)) 
//MODIFY-E 汭弐
				{
				buf.Zero();
				}
//			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iFileName);
//MODIFY-E MAEJI			
			}
			break;
			
//ADD-S MAEJI 06/09/06丂QAC懳墳
		default :
			{
			//偙偙偵偼偙側偄
			SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo175, ELogLevelHighest, KErrArgument, KSmbMusicAPSongInfoLogDetaiItemErr);
			User::Leave(KErrArgument);
			}
			break;
//ADD-E			
		}

	//奿擺偟偨暥帤楍偺挿偝傪僠僃僢僋偟丄0偺応崌偼乽晄柧乿偵曄峏偡傞
	if(0 == buf.Length())
		{
		UnknownItemTextL();
		}
	}

/**
 * URL忣曬偲AltString忣曬傪嶲徠偟丄昞帵梡崁栚傪嶌惉偡傞
 */
void CSmbMusicAPSongInfoDetailResource::URLItemTextL() const
	{
//ADD-S 憊 TRK4227
	//SD_Bind僼僅儖僟撪偺UIM幚峴惂尷僼傽僀儖偺応崌丄忢偵乽晄柧乿偲偡傞
	if(EFalse != SetTextForUIMNotConform(R_SONGINFO_DETAIL_INFO_UNKNOWN))
		{
		return;
		}
//ADD-E	
	
	TPtr buf(iText->Des());

	//URL柍岠偺応崌偼旕昞帵偲偡傞
	CSmbBrurlchURLCheckInterface* urlCheck = SmbBrurlchInterfaceFactory::CreateSmbBrurlchURLCheckInterfaceL();
	CleanupStack::PushL(urlCheck);
	
//MODIFY-S MAEJI  僒僀僘僠僃僢僋捛壛丄URL僠僃僢僋傪Unicode巜掕偵曄峏
	if(EFalse == urlCheck->CheckURLL(iInfo.iDetailSongInfo->DetailSongInfo()->iUrlInfo, 
						ESmbBrowserURLCheckUnicode, ESmbBrowserURLCheckSizeWebto, ETrue)
			|| (iInfo.iDetailSongInfo->DetailSongInfo()->iUrlInfo.Length() > 512 ))
//MODIFY-E
		{
		//URL柍岠偺偨傔旕昞帵偵偡傞
		UnknownItemTextL();
		}
	else
		{
		if(0 != iInfo.iDetailSongInfo->DetailSongInfo()->iAltInfo.Length())
			{
			//AltString偑懚嵼偡傞偨傔丄AltString傪昞帵崁栚偲偡傞
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iAltInfo);
			}
		else
			{
			//AltString偑懚嵼偟側偄偨傔丄URL傪昞帵崁栚偲偡傞
			buf.Copy(iInfo.iDetailSongInfo->DetailSongInfo()->iUrlInfo);
			}		
		}
	CleanupStack::PopAndDestroy();	//urlCheck	
	}

/**
 * 崁栚偵擖偭偰偄傞悢帤傪暥帤楍偵曄姺偟丄昞帵梡崁栚傪嶌惉偡傞
 *
 * @param[in]	aItemId		崁栚庬暿
 */
void CSmbMusicAPSongInfoDetailResource::NumItemTextL(const TInt aItemId) const
	{
	//悢抣傪曄悢偵奿擺偡傞
	TInt num = 0;
	if(ESongInfoYear == aItemId)
		{
		num = iInfo.iDetailSongInfo->DetailSongInfo()->iMusicYear;
	
//ADD-S MAEJI
		//昞帵寘僠僃僢僋	
		if(num > 9999)
			{
			num = 9999;
			}
//ADD-E
		}
	else
		{
//DEL-S MAEJI  TrackNumTextL偵幚憰偡傞
//		num = iInfo.iDetailSongInfo->DetailSongInfo()->iMusicTrackNumber;
//DEL-E
		}
		
	TPtr buf(iText->Des());
//ADD-S MAEJI
	if(num <= 0)
		{
		UnknownItemTextL();
		return;
		}
//ADD-E
	TResourceReader reader;
	CEikonEnv::Static()->CreateResourceReaderLC(reader, R_SONGINFO_DETAIL_INFO_NUM);
	TPtrC text = SmbAfWordingFormatter::FormatLC(reader.ReadTPtrC(), num)->Des();	//LC娭悢偼TRAP偱偒側偄
	buf.Copy(text);
	CleanupStack::PopAndDestroy();	//FormatLC	
	CleanupStack::PopAndDestroy();	//reader
	}

/**
 * 嵞惗惂尷忣曬傪嶲徠偟丄愝掕偝傟偰偄傞嵞惗惂尷忣曬傪曉媝偡傞
 */
void CSmbMusicAPSongInfoDetailResource::LimitItemTextL() const
	{
//ADD-S 憊 TRK4227
	//SD_Bind僼僅儖僟撪偺UIM幚峴惂尷僼傽僀儖偺応崌丄昞帵撪梕傪

⌨️ 快捷键说明

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