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

📄 smbmusicapsonginfoeditresource.cpp

📁 索爱手机代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		}
		break;

	case EEditArtist:
		{
		resetPattern = ESmbMusicMWLibEditPatternArtist;
		}
		break;

	case EEditAlbum:
		{
		resetPattern = ESmbMusicMWLibEditPatternAlbum;
		}
		break;

	case EEditGenre:
		{
		resetPattern = ESmbMusicMWLibEditPatternGenre;
		}
		break;

	case EEditComment:
		{
		resetPattern = ESmbMusicMWLibEditPatternComment;
		}
		break;

	case EEditYear:
		{
		resetPattern = ESmbMusicMWLibEditPatternYear;
		}
		break;

	case EEditTrackNumber:
		{
		resetPattern = ESmbMusicMWLibEditPatternTrackNumber;
		}
		break;

	case EEditTotalNumber :
		{
		resetPattern = ESmbMusicMWLibEditPatternTotalTrackNumber;
		}
		break;

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

	return iModel.ResetEditInfo(resetPattern);
	}

/**
 * 巜掕偟偨崁栚庬暿偺弶婜僥僉僗僩傪庢摼偡傞
 *
 * @param[in]	aControlIndex 	庢摼偡傞崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @return 巜掕偟偨崁栚偵昞帵偡傞僥僉僗僩
 * @leave	  error抣	曇廤椞堟偺弶婜壔偑幐攕偟偨応崌
 * @leave KErrArgument	崁栚偺摑堦僀儞僨僢僋僗偑憐掕奜偺抣偺応崌
 */
TPtr CSmbMusicAPSongInfoEditResource::ResetTextL(const TInt aControlIndex)
	{
	TRAPD(error, ResetEditInfoL(aControlIndex));
	if(KErrNone != error)
		{
		//儘僌弌椡
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo273, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResourceResetEditInfoLErr);
		//儕乕僽張棟
		User::Leave(error);	
		}

	TInt itemID = ItemID(aControlIndex);

	switch(itemID)
		{
	case EEditMgrTitle:
		{
		*iText = iEditInfo->iMgrTitle;
		}
		break;

	case EEditMusicTitle:
		{
		*iText = iEditInfo->iTitle;
		}
		break;

	case EEditArtist:
		{
		*iText = iEditInfo->iArtist;
		}
		break;

	case EEditAlbum:
		{
		*iText = iEditInfo->iAlbum;
		}
		break;

	case EEditGenre:
		{
		*iText = iEditInfo->iGenre;
		}
		break;

	case EEditComment:
		{
		*iText = iEditInfo->iComment;
		}
		break;

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

	return iText->Des();
	}

/**
 * 巜掕偟偨崁栚庬暿偺悢帤乮signed type乯傪庢摼偡傞
 *
 * @param[in]	aControlIndex 	庢摼偡傞崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @return 巜掕偟偨崁栚偵昞帵偡傞弶婜悢帤
 * @leave	  error抣	曇廤椞堟偺弶婜壔偑幐攕偟偨応崌
 */
TInt CSmbMusicAPSongInfoEditResource::SignedResetNumL(const TInt aControlIndex)
	{
	TRAPD(error, ResetEditInfoL(aControlIndex));
	if(KErrNone != error)
		{
		//儘僌弌椡
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo274, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResourceResetEditInfoLErr);
		//儕乕僽張棟
		User::Leave(error);	
		}

	TInt itemID = ItemID(aControlIndex);
	TInt num = 0;
	switch(itemID)
		{
	case EEditYear :
		{
		num = iEditInfo->iYear;
		}
		break;

	default :
		{
		//偙偙偵偼偙側偄
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo275, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResetNumItemErr);
		//儕乕僽張棟
		User::Leave(KErrArgument);	
		}
		break;	
		}
	return num;
	}

/**
 * 巜掕偟偨崁栚庬暿偺悢帤乮unsigned type乯傪庢摼偡傞
 *
 * @param[in]	aControlIndex 	庢摼偡傞崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @return 巜掕偟偨崁栚偵昞帵偡傞弶婜悢帤
 * @leave	  error抣	曇廤椞堟偺弶婜壔偑幐攕偟偨応崌
 */
TUint CSmbMusicAPSongInfoEditResource::UnsignedResetNumL(const TInt aControlIndex)
	{
	TRAPD(error, ResetEditInfoL(aControlIndex));
	if(KErrNone != error)
		{
		//儘僌弌椡
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo276, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResourceResetEditInfoLErr);
		//儕乕僽張棟
		User::Leave(error);	
		}

	TInt itemID = ItemID(aControlIndex);
	TUint num = 0;
	switch(itemID)
		{
	case EEditTrackNumber :
		{
		num = iEditInfo->iTrackNumber;
		}
		break;

	case EEditTotalNumber :
		{
		num = iEditInfo->iTotalTrackNumber;
		}
		break;

	default :
		{
		//偙偙偵偼偙側偄
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo277, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResetNumItemErr);
		//儕乕僽張棟
		User::Leave(KErrArgument);	
		}
		break;	
		}
	return num;
	}

/**
 * 巜掕偟偨崁栚庬暿偺斖埻撪偺弶婜抣傪庢摼偡傞
 *
 * @param[in]	aControlIndex 	庢摼偡傞崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @return 巜掕偟偨崁栚偵昞帵偡傞弶婜悢帤
 * @leave	  error抣	曇廤椞堟偺弶婜壔偑幐攕偟偨応崌
 */
TInt CSmbMusicAPSongInfoEditResource::LimitResetNumL(const TInt aControlIndex)
	{
	TRAPD(error, ResetEditInfoL(aControlIndex));
	if(KErrNone != error)
		{
		//儘僌弌椡
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo234, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResourceResetEditInfoLErr);
		//儕乕僽張棟
		User::Leave(error);	
		}

	TInt itemID = ItemID(aControlIndex);
	TInt num = 0;
	switch(itemID)
		{
	case EEditYear :
		{
		num = LimitYearValue(iEditInfo->iYear);
		}
		break;

	case EEditTrackNumber :
		{
		num = LimitTrackValue(iEditInfo->iTrackNumber);
		}
		break;

	case EEditTotalNumber :
		{
		num = LimitTrackValue(iEditInfo->iTotalTrackNumber);
		}
		break;

	default :
		{
		//儘僌弌椡
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo267, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditResetNumItemErr);
		//儕乕僽張棟
		User::Leave(KErrArgument);	
		}
		break;	
		}
	return num;
	}

/**
 * 巜掕偟偨崁栚庬暿偺僥僉僗僩傪僙僢僩偡傞
 *
 * @param[in]	aControlIndex 	僙僢僩崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @param[in] aText 巜掕偟偨崁栚偵僙僢僩偡傞僥僉僗僩
 * @leave KErrArgument	崁栚偺摑堦僀儞僨僢僋僗偑憐掕奜偺抣偺応崌
 */
void CSmbMusicAPSongInfoEditResource::SetEditTextL(const TInt aControlIndex, const TDesC& aText)
	{
	TInt itemID = ItemID(aControlIndex);
	switch(itemID)
		{
	case EEditMgrTitle :
		iEditInfo->iMgrTitle = aText;
		break;

	case EEditMusicTitle :
		iEditInfo->iTitle = aText;
		break;

	case EEditArtist :
		iEditInfo->iArtist = aText;	
		break;

	case EEditAlbum :
		iEditInfo->iAlbum = aText;
		break;

	case EEditGenre :
		iEditInfo->iGenre = aText;
		break;

	case EEditComment :
		iEditInfo->iComment = aText;
		break;

	default :
		{
		//偙偙偵偼偙側偄
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo235, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditSetTextItemErr);
		User::Leave(KErrArgument);
		}
		break;	
		}
	}

/**
 * 巜掕偟偨崁栚庬暿偺悢帤乮signed type乯傪僙僢僩偡傞
 *
 * @param[in]	aControlIndex 	僙僢僩崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @param[in] aNumValue 巜掕偟偨崁栚偵僙僢僩偡傞悢帤
 * @leave KErrArgument	崁栚偺摑堦僀儞僨僢僋僗偑憐掕奜偺抣偺応崌
 */
void CSmbMusicAPSongInfoEditResource::SetSignedEditNumL(const TInt aControlIndex, TInt aNumValue)
	{
	TInt itemID = ItemID(aControlIndex);
	switch(itemID)
		{
	case EEditYear:
		iEditInfo->iYear = aNumValue;
		break;

	default :
		{
		//偙偙偵偼偙側偄
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo236, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditSetNumItemErr);
		User::Leave(KErrArgument);
		}
		break;	
		}
	}

/**
 * 巜掕偟偨崁栚庬暿偺悢帤乮unsigned type乯傪僙僢僩偡傞
 *
 * @param[in]	aControlIndex 	僙僢僩崁栚偺僐儞僩儘乕儖偺僀儞僨僢僋僗
 * @param[in] aNumValue 巜掕偟偨崁栚偵僙僢僩偡傞悢帤
 * @leave KErrArgument	崁栚偺摑堦僀儞僨僢僋僗偑憐掕奜偺抣偺応崌
 */
void CSmbMusicAPSongInfoEditResource::SetUnsignedEditNumL(const TInt aControlIndex, TUint aNumValue)
	{
	TInt itemID = ItemID(aControlIndex);
	switch(itemID)
		{
	case EEditTrackNumber:
		iEditInfo->iTrackNumber = aNumValue;
		break;

	case EEditTotalNumber:
		iEditInfo->iTotalTrackNumber = aNumValue;
		break;

	default :
		{
		//偙偙偵偼偙側偄
		SmbMusicAPSongInfoLog::OutputLog(iLog, ESongInfoLogNo278, ELogLevelLow, KErrArgument, KSmbMusicAPSongInfoLogEditSetNumItemErr);
		User::Leave(KErrArgument);
		}
		break;	
		}
	}

/**
 * 巜掕偟偨崁栚偺摑堦ID傪庢摼偡傞
 *
 * @param[in] aControlIndex 庢摼偡傞崁栚偺僀儞僨僢僋僗
 * @return 崁栚偵懳墳偺摑堦ID
 * @panic	KPanicCategory 		EInvalidArgument		僐儞僩儘乕儖偺僀儞僨僢僋僗偑憐掕奜偺抣偺応崌
 */
TInt CSmbMusicAPSongInfoEditResource::ItemID(const TInt aControlIndex) const
	{
	__ASSERT_DEBUG(aControlIndex >= 0 && aControlIndex < iItemNum, User::Panic(KPanicCategory, EInvalidArgument));
	return iItemIdArray[aControlIndex];
	}

/**
 * 儌僨儖曄峏捠抦張棟
 *
 * @param[in]		aReason			儌僨儖曄峏棟桼
 */
void CSmbMusicAPSongInfoEditResource::HandleChangeModelL(TSmbMusicAPSongInfoChangeModelReason aReason)
	{
	switch(aReason)
		{
	//曇廤椞堟偑嶍彍偝傟偨
	case EDeleteEditInfo:
		{
		iEditInfo = NULL;
		}
		break;

	//徻嵶忣曬偑曄峏偝傟偨
	case EGetDetailInfo:
		{
		InitInGetDetailInfo();
		}
		break;

	default:
		{
		// 枹懳墳偺曄峏捠抦偵懳偟偰丄張棟偑壗傕偟側偄
		}
		break;
		}
	}

/**
 * 曇廤崁栚偺敾掕價僢僩梡掕悢傪庢摼偡傞
 *
 * @param[in] aControlIndex 庢摼偡傞崁栚偺僀儞僨僢僋僗
 * @return	曇廤崁栚偺敾掕價僢僩梡掕悢
 * @panic	KPanicCategory 		EInvalidArgument		崁栚偺摑堦僀儞僨僢僋僗偑憐掕奜偺抣偺応崌
 */	
TSmbMusicAPSongInfoEditPattern CSmbMusicAPSongInfoEditResource::EditItemPatternL(const TInt aControlIndex) const
	{
	TInt itemID = ItemID(aControlIndex);
	TSmbMusicAPSongInfoEditPattern result = ESmbMusicAPSongInfoEditNone;

	switch(itemID)
		{
	case EEditMgrTitle:
		{
		result = ESmbMusicAPSongInfoEditPatternMgrTitle;
		}
		break;

	case EEditMusicTitle:
		{
		result = ESmbMusicAPSongInfoEditPatternTitle;
		}
		break;

	case EEditArtist:
		{
		result = ESmbMusicAPSongInfoEditPatternArtist;
		}
		break;

	case EEditAlbum:
		{
		result = ESmbMusicAPSongInfoEditPatternAlbum;
		}
		break;

	case EEditGenre:
		{
		result = ESmbMusicAPSongInfoEditPatternGenre;
		}
		break;

	case EEditComment:
		{
		result = ESmbMusicAPSongInfoEditPatternComment;
		}
		break;

	case EEditYear:
		{
		result = ESmbMusicAPSongInfoEditPatternYear;
		}
		break;

	case EEditTrackNumber:
		{
		result = ESmbMusicAPSongInfoEditPatternTrackNumber;
		}
		break;

	case EEditTotalNumber :
		{
		result = ESmbMusicAPSongInfoEditPatternTotalTrackNumber;
		}
		break;

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

	return result;
	}
SEMCJ_NAMESPACE_END
// end of SmbMusicAPSongInfoEditResource.cpp
/* Copyright (C) 2007 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

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