smbmusicapmainplayerstateff.cpp

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

CPP
546
字号
	}

//==============================================================================================
//
//  旕摨婜屇傃弌偟偺墳摎張棟娭楢儊僜僢僪
//
//
//==============================================================================================

/**
 * 憗憲傝夝彍墳摎張棟\n
 * 憗憲傝夋柺偐傜嵞惗夋柺傊慗堏偡傞丅
 *
 * Y: public
 *
 * @param[in] aResult 張棟寢壥
 */
void CSmbMusicAPMainPlayerStateFF::RespCancelPlayFFL(TInt aResult)
	{

// Change 2007.07.24
//	if (EFalse == aResult)
	if (KErrNone != aResult)
		{// 堎忢廔椆帪
		if (KErrNotReady != aResult)
			{
// Change End 2007.07.24
			// 枹張棟忬懺偵偡傞丅
			if (ESmbMusicAPMainPlayerPlayProcCancelFF == iView->iProc)
				{
				iView->iProc = ESmbMusicAPMainPlayerPlayProcNone;
				}
			// 儕僗僩嵞惗姰椆張棟忬懺偺応崌偼偦偺張棟偑幚峴偝傟傞偺偱丄杮張棟偼晄梫
			if (ESmbMusicAPMainPlayerPlayProcListEnd != iView->iProc)
				{
				// 嵞惗忬懺偵偡傞丅 乮掆巭張棟忬懺偺応崌傪徣偔乯
				if (ESmbMusicAPMainPlayerPlayProcStop       != iView->iProc &&
				    ESmbMusicAPMainPlayerPlayProcStopChange != iView->iProc
				   )
					{//張棟庬暿偑掆巭張棟偱偼柍偄応崌
				
					//忬懺傪乽嵞惗忬懺乿偲偡傞
					iView->ChangeState(ESmbMusicAPMainPlayerPlayPlaying);		// 2006.10.13  TRK:11446
					}
				}
			}
		// LCD忢帪揰摂忬懺僉儍儞僙儖
		PGBackLights::ApplyUserSettingL(iPropAgent);
		}
	else
		{//惓忢廔椆帪
		
		//忬懺傪(FF忬懺偐傜)嵞惗忬懺偵曄峏偡傞丅
		iView->ChangeState(ESmbMusicAPMainPlayerPlayPlaying);		// 2006.10.13  TRK:11446
		
		if (ESmbMusicAPMainPlayerPlayProcNone != iView->iProc
		     && ESmbMusicAPMainPlayerPlayProcCancelFF != iView->iProc
		     && EFalse == iView->iLowBatteryStoped)					// PTX824 TRK:513懳墳
			{//張棟庬暿偑FF僉儍儞僙儖偐傜暿偺張棟偵曄峏偵側偭偰偄傞応崌
			
			if (ESmbMusicAPMainPlayerPlayProcListEnd != iView->iProc)
				{
				// LCD忢帪揰摂忬懺僉儍儞僙儖
				PGBackLights::ApplyUserSettingL(iPropAgent);
				}
			}
		else
			{//張棟庬暿偑FF僉儍儞僙儖傑偨偼張棟柍偟傑偨偼掅揹埑掆巭偺応崌
			
			// 嵞惗宱夁帪娫傪庢摼偡傞丅
			if (EFalse != iView->iLowBatteryStoped)			// PTX824 TRK:513懳墳
				{//掅揹埑掆巭偑妡偐偭偰偄傞応崌
				
				//掆巭梫媮傪敪峴偡傞
				iView->iCmd->PlayStop();		// TRK:11141	2006.10.12
				}
			else
				{//掅揹埑掆巭偑妡偐偭偰嫃側偄応崌
				
				//嵞惗帪娫偺庢摼
				iView->iCmd->GetPlayTime();
				}

			// LCD忢帪揰摂忬懺僉儍儞僙儖
			PGBackLights::ApplyUserSettingL(iPropAgent);
			}
		}
	}//end of RespCancelPlayFFL(TBool aResult)


//==============================================================================================
//
//  嵞惗宯僀儀儞僩張棟娭楢儊僜僢僪
//
//
//==============================================================================================

/**
 * 憗憲傝嬋廔抂専弌捠抦
 *   憗憲傝拞偵嬋偺廔抂偵摓払偟偨応崌偺張棟丅
 *   師嬋偺嵞惗奐巒梫媮傪峴偆丅
 *
 * Y: public
 *
 */
void CSmbMusicAPMainPlayerStateFF::NotifyFFToSongEndL()
	{

	iView->iPlayList.iIndex = iView->iIndex;		// 2006.09.05

	iView->iDrawer->StopRedrawTimer();
	
	// LCD僶僢僋儔僀僩忢帪揰摂傪僉儍儞僙儖
	PGBackLights::ApplyUserSettingL(iPropAgent);

// Add 2007.04.04 PTX824 TRK:513懳墳
	if (EFalse == iView->iLowBatteryStoped)
// Add ENd 2007.04.04 PTX824 TRK:513懳墳
		{
		// 師嬋偺嵞惗奐巒梫媮傪敪峴偡傞丅
		iView->iCmd->PlayStart(iPlayerEnv.MannerModePlayingState());
		//張棟庬暿傪僙僢僩偡傞
		iView->iProc = ESmbMusicAPMainPlayerPlayProcPlayFFEnd;
		}
	
	//忬懺傪掆巭忬懺偵偡傞丅(嬋廔抂偵摓払帪嵞惗偼掆巭偟偰偄傞)
	iView->ChangeState(ESmbMusicAPMainPlayerPlayStop);

// PTX824懳墳
	// 婡擻僉乕柍岠  2007.03.09
	iView->ChangeFuncKeyState(EFalse);		// 2007.04.23
	}

/**
 * 儕僗僩嵞惗姰椆張棟\n
 *   憗憲傝拞偵儕僗僩偺嵟廔嬋偺廔抂偵払偟偰儕僗僩偺嵞惗傪姰椆偟偨応崌偺張棟丅
 *   嵞惗儕僗僩偺愭摢嬋偺嬋忣曬偱掆巭拞夋柺傪昞帵偡傞丅
 *
 * Y: public
 *
 */
void CSmbMusicAPMainPlayerStateFF::NotifyCompletePlayListL()
	{
	//梫媮敪峴忬嫷偺庢摼
	iView->iCmd->GetRequestKind(iView->iProckind, iView->iInfokind);
	
	if (ESmbMusicAPMainPlayerReqNone != iView->iInfokind)
		{//忣曬宯偺梫媮偑敪峴偝傟偰偄傞応崌
		
		//梫媮傪僉儍儞僙儖偡傞丅
		iView->iCmd->CancelAction();
		}

	// LCD僶僢僋儔僀僩徣揹椡儌乕僪柍岠僉儍儞僙儖
	PGBackLights::ApplyUserSettingL(iPropAgent);

	//張棟庬暿傪儕僗僩嵞惗姰椆張棟偵偣偭偲偡傞
	iView->iProc = ESmbMusicAPMainPlayerPlayProcListEnd;
	
	//忬懺傪掆巭忬懺偵偡傞
	iView->ChangeState(ESmbMusicAPMainPlayerPlayStop);

	// 掆巭夋柺傪昞帵偡傞丅
	iView->iDrawer->DrawStopPictureL(EFalse);
	
	iView->iPlayList.iIndex = iView->iIndex;

// PTX824懳墳
	// 婡擻僉乕柍岠  2007.03.09
	iView->ChangeFuncKeyState(EFalse);		// 2007.04.23

// PTX824懳墳
// Change 2007.03.07
//	// 夋憸枃悢傪庢摼
//	iView->iCmd->GetImageNumber(iView->iPlayList);
	// 嵞惗嬋忣曬傪庢摼
	iView->ReqGetPlayInfoL();
// Change End 2007.03.07

	if (EFalse != iView->iViewTop)
		{//價儏乕偑昞帵偝傟偰偄傞応崌
		
		iView->iPlayComplete = ETrue;
		}

	iView->iReqCancel = EFalse;
	
	//儕僕儏乕儉忣曬傪攋婞偡傞
	iView->iCmd->DeleteResumeInfo();
	
	// Music傾僾儕忬懺傪旕嵞惗拞偵偡傞丅
	SmbPGMusic::SetMusicAPPlayerStateL(iPropAgent, ESmbPGMusicAPPlayerStateNotPlaying);
	
	iPlayerEnv.SetMannerModePlayingStateL(EFalse);	// 2006.09.29

	iView->iBottomSong = EFalse;

// PTX824懳墳
// Add 2007.02.27
	iView->iTopSong = EFalse;
// Add End 2007.02.27
	}

// Add 2007.08.03
/**
 * 堦帪掆巭捠抦張棟
 */
void CSmbMusicAPMainPlayerStateFF::NotifyStopPlayL()
	{
	iView->iFailState = EFalse;

	delete iView->iPeriodic;
	iView->iPeriodic = NULL;

	iView->iStartPause = EFalse;

	//儅僫乕儌乕僪嵞惗僼儔僌傪儕僙僢僩偡傞
	iPlayerEnv.SetMannerModePlayingStateL(EFalse);	// 2006.10.18  TRK:11757

	if (EFalse != iView->iExtMemory)
		{// 奜晹儊儌儕乕憓敳偑偁偭偨応崌
		
		return;
		}

	iView->iBeforeIndex = iView->iPlayList.iIndex;
	iView->iPlayList.iIndex = iView->iIndex;
	
	if (ESmbMusicAPMainPlayerPlayProcListEnd == iView->iProc)
		{// 儕僗僩嵞惗姰椆張棟忬懺(嵞惗嬋偑嵞惗晄壜)
		NotifyCompletePlayListL();
		return;
		}
	
	if (ESmbMusicAPMainPlayerPlayProcPlayLowBattery == iView->iProc)
		{// 傾僾儕掅揹埑偵傛傞掆巭
		ProcNotifyStopPlayInLowBatteryL();
		}
	else
		{// 偦偺懠偺応崌
		ProcNotifyStopPlayInOtherL(iView->iPauseState/*pauseState*/);
		}
	iView->iPlayCancel = EFalse;		// TRK9304  2006.09.18
	
	}//end of NotifyStopPlayL()
	
// Add End 2007.08.03

//==============================================================================================
//
//  偦偺懠
//
//
//==============================================================================================

/**
 * 憗憲傝拞忬懺夋柺偺昤夋傪峴偆丅
 *
 * Y: public
 *
 * @param[in] aInit 弶婜夋柺昞帵乮ETrue:價僕儏傾儔僀僓乕夋柺昞帵乯
 */ 
void CSmbMusicAPMainPlayerStateFF::RedrawL(TBool /*aInit*/)
	{
	iView->iDrawer->DrawPlayFFPictureL(ETrue);
	}


SEMCJ_NAMESPACE_END

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

⌨️ 快捷键说明

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