smbmusicapmainplayerfilterprocessdeleteone.cpp
来自「symbian」· C++ 代码 · 共 629 行 · 第 1/2 页
CPP
629 行
/* Copyright (C) 2005-2007 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPMainPlayerFilterProcessDeleteOne.cpp
//
// Description:
// 儈儏乕僕僢僋儊僀儞僾儗僀儎
// 儕僗僩庢摼乮儕僗僩偐傜乯張棟僋儔僗
/*-------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//---------------------------------------------------------------------------
//2006/08/14 |SDNA壀嶳 |怴婯嶌惉
//2006/09/05 |SDNA壀嶳 |TRK8000懳墳 僐儞僥儞僣ID庢摼僄儔乕帪偵丄嶍彍僔乕働儞僗傪宲懕偡傞傛偆廋惓
//2006/09/12 |SDNA壀嶳 |TRK6892懳墳
//2006/10/13 |SDNA壀嶳 |TRK11419懳墳
//2006/10/18 |SDNA壀嶳 |TRK11810懳墳
#include <FjAfEnv.h>
#include <SmbMusicAPMainPlayer.rsg>
#include "SmbMusicAPMainPlayer.hrh"
#include "SmbMusicAPMainPlayerFilterView.hrh"
#include "SmbMusicAPMainPlayerCommonDef.h"
#include "SmbMusicAPMainPlayerUtility.h"
#include "SmbMusicAPMainPlayerFilterProcessDeleteOne.h"
USING_NAMESPACE_DCM
SEMCJ_NAMESPACE_BEGIN
/**
僐儞僗僩儔僋僞
* @param[in] aObserver 僆僽僓乕僶偺億僀儞僞
* @param[in] aSyncServerController 摨婜僒乕僶惂屼偺嶲徠
* @return 側偟
*/
CSmbMusicAPMainPlayerFilterProcessDeleteOne::CSmbMusicAPMainPlayerFilterProcessDeleteOne(
MSmbMusicAPMainPlayerFilterProcessObserver& aObserver,
CSmbMusicAPMainPlayerFilterSyncServerController& aSyncServerController)
:CSmbMusicAPMainPlayerFilterProcess(aObserver)
, iEvent(EFilterProcessDeleteOneEventStart)
, iState(EFilterProcessDeleteOneStateIdle)
, iSyncServer(aSyncServerController)
, iLog(CAfEnv::Static()->Log())
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 00;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::CSmbMusicAPMainPlayerFilterProcessDeleteOne()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
}
/**
僨僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
CSmbMusicAPMainPlayerFilterProcessDeleteOne::~CSmbMusicAPMainPlayerFilterProcessDeleteOne()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 10;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::~CSmbMusicAPMainPlayerFilterProcessDeleteOne()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
//2006.10.01 TRK#7270
iObserver.HandleDialogCommandL( ECloseModelessDialog,
R_DL_MUSIC_MAIN_FLT_PROGRESS_MP04P001_SINGULAR);
if( EFilterProcessDeleteOneStateGetContentsId == iState ||
EFilterProcessDeleteOneStateDeleteItem == iState )
{
iSyncServer.CancelRequest(iRequestId, EFalse);
}
iIndexArray.Close();
}
/**
僷儔儊乕僞愝掕
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
* @param[in] aText 嶍彍懳徾偺僞僀僩儖暥帤楍
* @param[in] aKind 嶍彍張棟偺庬椶
* @return 愝掕偺惉斲
*/
TBool CSmbMusicAPMainPlayerFilterProcessDeleteOne::SetParam(TInt aListHandle, TInt aIndex, const TDesC& aText, TSmbMusicAPMainPlayerDeleteSongKind aKind)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 20;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::SetParam(aListHandle:0x%08x,aIndex:%d)");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, aListHandle, aIndex);
#endif
if( EFilterProcessDeleteOneStateIdle == iState ||
EFilterProcessDeleteOneStateWaitStart == iState )
{
iListHandle = aListHandle;
iIndex = aIndex;
iText = aText;
iKind = aKind;
iState = EFilterProcessDeleteOneStateWaitStart;
return ETrue;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 21;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::SetParam() Cannot Set in This State %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
return EFalse;
}
}
/**
儕僗僩僴儞僪儖庢摼
* @param 側偟
* @return 儕僗僩僴儞僪儖
*/
TInt CSmbMusicAPMainPlayerFilterProcessDeleteOne::GetParamListHandle()
{
return iListHandle;
}
/**
僀儞僨僢僋僗傪庢摼
* @param 側偟
* @return 僀儞僨僢僋僗
*/
TInt CSmbMusicAPMainPlayerFilterProcessDeleteOne::GetParamIndex()
{
return iIndex;
}
/**
師偺僔乕働儞僗傪幚峴偡傞
* @param[in] aEvent 僀儀儞僩斣崋
* @return 側偟
*/
void CSmbMusicAPMainPlayerFilterProcessDeleteOne::NextSequence(TFilterProcessDeleteOneEvent aEvent)
{
iEvent = aEvent;
DoSequence();
}
/**
* 梫媮姰椆
*
* @param[in] aKind 梫媮庬暿
* @param[in] aResult 張棟寢壥
* @param[in] aResponse 墳摎僋儔僗偺嶲徠乮忣曬庢摼梡乯
*/
void CSmbMusicAPMainPlayerFilterProcessDeleteOne::RequestComplete(TSmbMusicAPMainPlayerRequest aKind,
TInt aResult,
MSmbMusicAPMainPlayerFilterSyncServerProcessResponse& aResponse)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 30;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::RequestComplete() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
if(EEditRequestGetContentsId == aKind)
{
if(KErrNone == aResult)
{
iResultContentsId = aResponse.GetResultId();
iEvent = EFilterProcessDeleteOneEventSyncServerContentsIdComplete;
}
else
{
iResult = aResult;
iEvent = EFilterProcessDeleteOneEventSyncServerContentsIdErr;
}
DoSequence();
}
else if(EEditRequestDeleteItem == aKind)
{
if(KErrNone == aResult)
{
iEvent = EFilterProcessDeleteOneEventSyncServerDeleteComplete;
}
else
{
iResult = aResult;
iEvent = EFilterProcessDeleteOneEventSyncServerDeleteErr;
}
DoSequence();
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 31;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::RequestComplete() Unknown Event :%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, aKind);
}
}
/**
* 梫媮僉儍儞僙儖
*
* @param[in] aKind 梫媮庬暿
* @param[in] aResponse 墳摎僋儔僗偺嶲徠乮忣曬庢摼梡乯
*/
void CSmbMusicAPMainPlayerFilterProcessDeleteOne::RequestCancel(TSmbMusicAPMainPlayerRequest aKind,
MSmbMusicAPMainPlayerFilterSyncServerProcessResponse& /*aResponse*/)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 40;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::RequestCancel() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
if(EEditRequestGetContentsId == aKind)
{
iEvent = EFilterProcessDeleteOneEventSyncServerContentsIdCancel;
DoSequence();
}
else if(EEditRequestDeleteItem == aKind)
{
iEvent = EFilterProcessDeleteOneEventSyncServerDeleteCancel;
DoSequence();
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 41;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::RequestCancel() Unknown Event :%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, aKind);
}
}
/**
* 僐儅儞僪張棟傪幚峴偡傞
* @param 側偟
* @return 側偟
*/
void CSmbMusicAPMainPlayerFilterProcessDeleteOne::DoSequence()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 50;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::DoSequence() iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState, iEvent);
#endif
switch(iState)
{
//-------------------------------------------------------------------- 張棟奐巒懸偪 --------------------------------------------------------------------
case EFilterProcessDeleteOneStateWaitStart:
{
if(EFilterProcessDeleteOneEventStart == iEvent)
{
switch(iKind)
{
case ESmbMusicAPMainPlayerDelSongStd:
{
// 捠忢嶍彍帪偼丄偼偠傔偵僟僀傾儘僌傪昞帵偟側偄偨傔丄師偺張棟傊恑傓
iEvent = EFilterProcessDeleteOneEventDeleteExecute;
iState = EFilterProcessDeleteOneStateShowDialog;
NextState();
}
break;
case ESmbMusicAPMainPlayerDelSongOverCount:
{
iObserver.HandleDialogCommandL( EShowSelectionModelessDialog,
R_DL_MUSIC_MAIN_FLT_DELETESONG_OVERCOUNT_SELECT);
iState = EFilterProcessDeleteOneStateShowDialog;
}
break;
case ESmbMusicAPMainPlayerDelSongOverTimeLimit:
case ESmbMusicAPMainPlayerDelSongOverPeriod:
{
iObserver.HandleDialogCommandL( EShowSelectionModelessDialog,
R_DL_MUSIC_MAIN_FLT_DELETESONG_OVERTIME_SELECT);
iState = EFilterProcessDeleteOneStateShowDialog;
}
break;
// Add 2007.05.15 by nakai DRM忣曬側偟偺僨乕僞BOX僐儞僥儞僣
case ESmbMusicAPMainPlayerDelSongNoneCpInfo:
{
iObserver.HandleDialogCommandL( EShowSelectionModelessDialog,
R_DL_MUSIC_MAIN_FLT_DELETESONG_NOTHING_DRMINFO);
iState = EFilterProcessDeleteOneStateShowDialog;
}
break;
// Add End 2007.05.15 by nakai DRM忣曬側偟偺僨乕僞BOX僐儞僥儞僣
default:
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 50;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::DoSequence() Unmatch Event iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState, iEvent);
iResult = KErrArgument;
iState = EFilterProcessDeleteOneStateErr;
NextState();
break;
}
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDeleteOne | 51;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDeleteOne::DoSequence() Unknown Kind iKind:%d iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iKind, iState, iEvent);
}
}
break;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?