smbmusicapmainplayerfilterlistviewplsong.cpp

来自「symbian」· C++ 代码 · 共 854 行 · 第 1/3 页

CPP
854
字号
					break;
// Add-E PTX-824懳墳丂暯壀
				default:
					listType = ESmbMusicAPSyncEngineTypeOriginalPlaylist;
					break;
				}
			}
		}
	
	// 嵞惗拞偐偳偆偐傪僠僃僢僋偡傞
	TSmbPGMusicAPPlayerState playState = SmbPGMusic::MusicAPPlayerStateL(View()->PropAgent());
	
	switch(aResId)
		{
		case R_SB_MUSIC_MAIN_FLT_PLSONGLIST:
			{
			TBool itemDisabled;
			CSmbMusicAPMainPlayerFilterListItem* item = CurrentItem();
// Mod-S PTX-824 暯壀 僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳 
//			if(NULL!=item && EFalse==item->IsDisabled())
			if ( NULL != item 
				&& EFalse == ( item->IsDisabled() 
			  				& ~(ESmbMusicAPSyncEngineOverTimeLimit | ESmbMusicAPSyncEngineNoCpInfo) ) )
// Mod-E PTX-824 暯壀 僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳 
				{
				itemDisabled = EFalse;
				}
			else
				{
				itemDisabled = ETrue;
				}
			if(ESmbMusicAPSyncEngineTypeOriginalPlaylist==listType)
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 0, EFalse);
				if(1<ItemCount())
					{
					aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 1, EFalse);
					}
				else
					{
					aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 1, ETrue);
					}
				}
			else
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 0, ETrue);
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 1, ETrue);
				}
			if(ESmbPGMusicAPPlayerStatePlaying==playState)	// 嵞惗拞
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 2, EFalse);
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 3, EFalse);
				}
			else
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 2, ETrue);
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 3, ETrue);
				}
			// 徻嵶忣曬昞帵
			//2006.09.29 TRK#7935
			//aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 7, itemDisabled);
			if(EFalse!=IsUimLimited())
				{
				if(EFalse!=IsSDBinding())
					{
					aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 7, EFalse);
					}
				else
					{
					aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 7, ETrue);
					}
				}
			else
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 7, itemDisabled);
				}
			
			// 夋憸昞帵
			if(EFalse==itemDisabled && EFalse!=HasJacketImage())
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 8, EFalse);
				}
			else
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 8, ETrue);
				}
			
			// 壧帉昞帵
			if(EFalse==itemDisabled && EFalse!=HasRylicImage())
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 9, EFalse);
				}
			else
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 9, ETrue);
				}
			}
			break;
		case R_SB_MUSIC_MAIN_FLT_EMPTYLIST:
			if(ESmbPGMusicAPPlayerStatePlaying==playState)	// 嵞惗拞
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 0, EFalse);
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 1, EFalse);
				}
			else
				{
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 0, ETrue);
				aSubMenu->SetItemDisableL(aSubMenu->MenuItemArrayL(), 1, ETrue);
				}
			break;
		}
	}

// 慖戰僉乕僐儅儞僪
TInt CSmbMusicAPMainPlayerFilterListViewPLSong::SelectKeyCommand(TBool /*aLongPress*/)
	{
	if(EFilteringMode==CommandMode())
		{
		return EMainPlayerFilterViewKGCmdPlay;
		}
	else if(ESelectItemMode==CommandMode())
		{
		return EMainPlayerFilterViewKGCmdSelect;
		}
	else if(ESelectMultipleMode==CommandMode())
		{
		return EMainPlayerFilterViewKGCmdSelect;
		}
	return 0;
	}

// 僉乕僈僀僟儞僗忣曬
TBool CSmbMusicAPMainPlayerFilterListViewPLSong::KeyGuidanceInfo(TSkonKeyGuidanceKeyIds aKey, TBool& aVisible, TInt& aTitleResId, TInt& aCommandID)
	{
    aVisible = EFalse;
    aTitleResId = 0;
    aCommandID = 0;
	if(EFilteringMode==CommandMode())
		{
		//亂嬋堦棗夋柺亃
		//寛掕僉乕(ESkonKeyGuidanceSelectKey)
		// 丂仭昞帵偡傞僨乕僞偑偁傞応崌
		// 丂丂仩婸搙昞帵崁栚僼僅乕僇僗帪丂丂仺亂嵞惗亃SFT024丂嵞惗
		// 丂丂仩敿婸搙昞帵崁栚僼僅乕僇僗帪丂仺<柍岠>
		// 丂仭昞帵偡傞僨乕僞偑側偄応崌丂丂丂仺<柍岠>
		switch(aKey)
			{
			case ESkonKeyGuidanceSelectKey:
			    aVisible = EFalse;
			    aTitleResId = 0;
			    aCommandID = 0;
				if(0<ItemCount())
					{
					CSmbMusicAPMainPlayerFilterListItem* item = CurrentItem();
					if(NULL!=item && EFalse==item->IsDisabled())
						{
						aVisible = ETrue;
						aTitleResId = R_SMB_AF_STR_SFT024;
						aCommandID = 0;
						}
// Add-S PTX-824 暯壀丂2007.06.27 僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳
// 僆僼儔僀儞嬋/UIM惂尷嬋偱側偄丄僒僽僗僋儕僾僔儑儞嬋偱婜尷愗傟/CP忣曬側偟嬋偼僉乕僈僀僟儞僗偵乽嵞惗乿傪昞帵
// Mod-S PTX-824 D_82400007625懳墳丂暯壀
//					else if (NULL != item && (item->IsDisabled() & ESmbMusicAPSyncEngineUIMLimit)
//								     	  && (item->IsDisabled() & ESmbMusicAPSyncEngineOffLine))
					else if (NULL != item && ((item->IsDisabled() & ESmbMusicAPSyncEngineUIMLimit)
								     	  	|| (item->IsDisabled() & ESmbMusicAPSyncEngineOffLine)))
// Mod-E PTX-824 D_82400007625懳墳丂暯壀
						{
						// 壗傕昞帵偟側偄
						}
					else if (NULL != item && ESmbMusicAPSyncEngineLimitSubscription == item->Limitation()
										  &&  ((item->IsDisabled() & ESmbMusicAPSyncEngineNoCpInfo)
										  	|| (item->IsDisabled() & ESmbMusicAPSyncEngineOverTimeLimit)))
						{
						aVisible = ETrue;
						aTitleResId = R_SMB_AF_STR_SFT024;
						aCommandID = 0;
						}
// Add-E PTX-824 暯壀丂2007.06.27
					}
			    return ETrue;
			case ESkonKeyGuidanceSoftKeyLeft:
			    aVisible = ETrue;
			    aTitleResId = R_SMB_AF_STR_SFT021;
			    aCommandID = EMainPlayerFilterViewKGCmdFunc;
			    return ETrue;
			case ESkonKeyGuidanceSoftKeyRight:
			    aVisible = EFalse;
			    aTitleResId = 0;
			    aCommandID = 0;
			    return ETrue;
			}
		}
	//暋悢崁栚慖戰夋柺偺応崌
	else if(ESelectMultipleMode==CommandMode())
		{
		//亂暋悢崁栚慖戰夋柺(嬋堦棗)亃
		//寛掕僉乕(ESkonKeyGuidanceSelectKey)
		//	仭僼僅乕僇僗懳徾偑枹慖戰偺応崌
		//	丂仩慖戰嵪審悢偑慖戰壜擻審悢枹枮偺応崌
		//	丂丂仺亂慖戰亃丂慖戰
		//	丂仩慖戰嵪審悢偑慖戰壜擻審悢埲忋偺応崌
		//	丂丂仺亂慖戰亃丂慖戰悢僆乕僶乕丂
		//	仭僼僅乕僇僗懳徾偑慖戰嵪偺応崌
		//	丂仺亂夝彍亃丂慖戰夝彍
		//僜僼僩侾僉乕(ESkonKeyGuidanceSoftKeyLeft)
		//	仭慖戰嵪審悢偑0審偺応崌
		//	丂仺亂拞巭亃丂to慜夋柺
		//	仭慖戰嵪審悢偑1審埲忋偺応崌
		//	丂仺亂拞巭亃丂慖戰僉儍儞僙儖妋擣
		//僜僼僩俀僉乕(ESkonKeyGuidanceSoftKeyRight)
		//	仭慖戰審悢偑0審偺応崌
		//	丂仺<柍岠>
		//	仭慖戰審悢偑1審埲忋偺応崌
		//	丂仺亂姰椆亃丂慖戰姰椆
		switch(aKey)
			{
			case ESkonKeyGuidanceSoftKeyLeft:
			    aVisible = ETrue;
			    aTitleResId = R_SMB_AF_STR_SFT005;
			    aCommandID = ECmdFilterViewDeleteEntryMultipleSelectCancel;
			    return ETrue;
			case ESkonKeyGuidanceSoftKeyRight:
			    aVisible = ETrue;
			    aTitleResId = R_SMB_AF_STR_SFT004;
			    aCommandID = ECmdFilterViewDeleteEntryMultipleSelectComplete;
			    return ETrue;
			}
		}
	//暲傋懼偊夋柺偺応崌
	else if(EOrderItemMode==CommandMode())
		{
		//亂暋悢崁栚慖戰夋柺(嬋堦棗)亃
		//寛掕僉乕(ESkonKeyGuidanceSelectKey)
		//	仭亂慖戰亃丂慖戰
		//僜僼僩侾僉乕(ESkonKeyGuidanceSoftKeyLeft)
		//	仭慖戰嵪審悢偑0審偺応崌
		//	丂仺亂拞巭亃丂to慜夋柺
		//	仭慖戰嵪審悢偑1審埲忋偺応崌
		//	丂仺亂拞巭亃丂慖戰僉儍儞僙儖妋擣
		//僜僼僩俀僉乕(ESkonKeyGuidanceSoftKeyRight)
		//	仭慖戰審悢偑0審偺応崌
		//	丂仺<柍岠>
		//	仭慖戰審悢偑1審埲忋偺応崌
		//	丂仺亂姰椆亃丂慖戰姰椆
		switch(aKey)
			{
			case ESkonKeyGuidanceSoftKeyLeft:
			    aVisible = ETrue;
			    aTitleResId = R_SMB_AF_STR_SFT005;
			    aCommandID = ECmdFilterViewOrderEntryCancel;
			    return ETrue;
			case ESkonKeyGuidanceSoftKeyRight:
			    aVisible = ETrue;
			    aTitleResId = R_SMB_AF_STR_SFT004;
			    aCommandID = ECmdFilterViewOrderEntryComplete;
			    return ETrue;
			}
		}
	return EFalse;
	}
	
/**
 * 僾儘僙僗宱夁捠抦
 * @param[in] aResult	張棟寢壥
 * 						 KErrNone	:惓忢廔椆
 * 						 KErrInUse	:傾僋僙僗尃柍偟
 * 						 KErrCancel	:僉儍儞僙儖
 * @param[in] aProcess	奩摉偺僾儘僙僗偺嶲徠
 */
void CSmbMusicAPMainPlayerFilterListViewPLSong::ProcessProgress(TInt aResult, CSmbMusicAPMainPlayerFilterProcess& /*aProcess*/)
	{
	if(KErrNone==aResult)
		{
		IncrementProgress(1);
		}
	}

SEMCJ_NAMESPACE_END

// end of SmbMusicAPMainPlayerFilterListViewPLSong.cpp
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

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