📄 smbmusicapmainplayerfilterprocess.h
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPMainPlayerFilterProcess.h
//
// Description:
// SmbMusicAPMainPlayerFilterProcess class header.
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+-----------+----------------------------------------------
//2006/08/?? |SEMCJ嶳壀 |怴婯嶌惉
//2006/08/11 |SDNA壀嶳 |張棟傪娙棯壔
#ifndef __SMBMUSICAPMAINPLAYERFilterProcess_H__
#define __SMBMUSICAPMAINPLAYERFilterProcess_H__
#ifndef __SMBCOMMONDEF_H__
#include <SmbCommonDef.h>
#endif
#ifndef __E32BASE_H__
#include <e32base.h>
#endif
#include <SkonCombinedText.h>
SEMCJ_NAMESPACE_BEGIN
enum TSmbMusicAPMainPlayerDialogActionType
{
EShowConfirmModelessDialog = 0,
EShowWarningModelessDialog,
EShowSelectionModelessDialog,
EShowProgressModelessDialog,
EShowProgressModelessDialogEx, //傒側偟恑捇僟僀傾儘僌
ECloseModelessDialog,
};
class CSkonCombinedText;
class CSmbMusicAPMainPlayerFilterProcess;
class MSmbMusicAPMainPlayerFilterProcessObserver
{
public:
/**
* 僾儘僙僗姰椆捠抦
* @param[in] aResult 張棟寢壥
* KErrNone :惓忢廔椆
* KErrPermissionDenied :傾僋僙僗尃柍偟
* KErrCancel :僉儍儞僙儖
* @param[in] aProcess 奩摉偺僾儘僙僗偺嶲徠
*/
virtual void ProcessComplete(TInt aResult, CSmbMusicAPMainPlayerFilterProcess& aProcess) = 0;
/**
* 僟僀傾儘僌昞帵僐儅儞僪
*
* @param aType [in] 僟僀傾儘僌僞僀僾
* @param aResId [in] 儕僜乕僗ID
*/
virtual void HandleDialogCommandL(TSmbMusicAPMainPlayerDialogActionType aType,
TInt aResId,
const TDesC* aText = NULL,
CSkonCombinedText* aCombinedText = NULL) = 0;
/**
* 僾儘僙僗宱夁捠抦
* @param[in] aResult 張棟寢壥
* KErrNone :惓忢廔椆
* KErrPermissionDenied :傾僋僙僗尃柍偟
* KErrCancel :僉儍儞僙儖
* @param[in] aProcess 奩摉偺僾儘僙僗偺嶲徠
*/
virtual void ProcessProgress(TInt aResult, CSmbMusicAPMainPlayerFilterProcess& aProcess) = 0;
};
class CSmbMusicAPMainPlayerFilterProcess : public CActive
{
public:
enum TSmbMusicAPMainPlayerFilterProcessType
{
EProcessTypeUnknown = 0,
EProcessTypeMoveView,
EProcessTypeGetListFromSearchTop,
EProcessTypeGetListFromSearchCurrentList,
EProcessTypeGetListItems,
EProcessTypeGetThumbnail,
EProcessTypeMakeThumbnail,
EProcessTypeDeleteOne,
EProcessTypeCreatePlayList,
EProcessTypeEditPlaylistTitle,
EProcessTypeDuplicatePlayList, // Add PTX-824懳墳丂暯壀
EProcessTypeRegisterToPlaylist,
EProcessTypeRemoveItems,
EProcessTypeDeleteItems,
EProcessTypeCommitOrderItems
};
public:
/**
僐儞僗僩儔僋僞
* @param[in] aObserver 僆僽僓乕僶偺億僀儞僞
* @param[in] aTargetModel 儌僨儖偺嶲徠
* @param[in] aSyncServerController 摨婜僒乕僶惂屼偺嶲徠
* @return 側偟
*/
CSmbMusicAPMainPlayerFilterProcess( MSmbMusicAPMainPlayerFilterProcessObserver& aObserver);
/**
僨僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
virtual ~CSmbMusicAPMainPlayerFilterProcess();
/**
傾僋僥傿僽僆僽僕僃僋僩偺RunL娭悢傪幚憰偡傞
* @param 側偟
* @return 側偟
*/
void RunL();
/**
傾僋僥傿僽僆僽僕僃僋僩偺僉儍儞僙儖張棟傪峴偆
* @param 側偟
* @return 側偟
*/
void DoCancel();
/**
* 僾儘僙僗幚峴
* @return 側偟
*/
void StartProcess();
/**
* 僾儘僙僗幚峴
* @param [in,out] aStatus 旕摨婜墳摎梡偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗
* @return 側偟
*/
void StartProcess(TRequestStatus* aStatus);
/**
* 僾儘僙僗偺僉儍儞僙儖
* @return 僉儍儞僙儖偺惉斲(ETrue:僉儍儞僙儖張棟幚巤 EFalse:僉儍儞僙儖枹懳墳)
*/
TBool CancelProcess();
/**
* 僾儘僙僗幚峴拞偐偳偆偐偺庢摼
* @param 側偟
* @return 幚峴忬懺乮ETrue:幚峴拞丄EFalse:枹幚峴乯
*/
TBool InService();
/**
* 僾儘僙僗庬暿庢摼
* @param 側偟
* @return 僾儘僙僗庬暿
*/
virtual TSmbMusicAPMainPlayerFilterProcessType GetProcessType() = 0;
/**
* 梫媮尦忣曬庢摼
* @param 側偟
* @return 梫媮尦忣曬
*/
TInt GetRequestOwnerInfo(){return iRequestOwnerInfo;};
/**
* 梫媮尦忣曬愝掕
* @param[in] aObserver 梫媮尦忣曬
* @return 側偟
*/
void SetRequestOwnerInfo(TInt aRequestOwnerInfo){iRequestOwnerInfo = aRequestOwnerInfo;};
private:
/**
* 僐儅儞僪張棟傪幚峴偡傞
* @param 側偟
* @return 側偟
*/
virtual void DoSequence() = 0;
/**
* 僐儅儞僪張棟傪僉儍儞僙儖偡傞
* @param 側偟
* @return 僉儍儞僙儖偺惉斲(ETrue:僉儍儞僙儖張棟幚巤 EFalse:僉儍儞僙儖枹懳墳)
*/
virtual TBool CancelSequence(){return EFalse;};
/**
* 偡傋偰偺僐儅儞僪幚峴偑廔傢偭偨偐偳偆偐妋擣偡傞
* @param aCurrentSequnce 尰嵼偺僔乕働儞僗俬俢
* @return 側偟
*/
virtual TBool IsSequenceFinished() = 0;
/**
* 偡傋偰偺僐儅儞僪幚峴傪姰椆偡傞
* @param 側偟
* @return 側偟
*/
void FinishSequence();
protected:
/**
* 撪晹忬懺傪儕僙僢僩偡傞
* @param 側偟
* @return 側偟
*/
void Reset();
/**
* 傾僋僥傿僽僆僽僕僃僋僩偺忬懺慗堏傪峴偆
* @param 側偟
* @return 側偟
*/
void NextState();
/**
傾僋僥傿僽僆僽僕僃僋僩傪姰椆偟偰傾僋僥傿僽偵偡傞
* @param 側偟
* @return 側偟
*/
void CompleteSelf();
protected:
// 僆僽僓乕僶乮僐儅儞僪幚峴晹乯
MSmbMusicAPMainPlayerFilterProcessObserver& iObserver;
// 幚峴寢壥
TInt iResult;
private:
enum TSmbMusicAPMainPlayerFilterProcessState
{
EStateIdling,
EStateRequesting,
EStateCompleted
};
// 忬懺慗堏曄悢
TSmbMusicAPMainPlayerFilterProcessState iState;
// 梫媮尦傾僋僥傿僽僆僽僕僃僋僩偺僗僥乕僞僗
TRequestStatus* iClientStatus;
// 梫媮尦忣曬
TInt iRequestOwnerInfo;
// Add-S PTX-824 暯壀
DCM_NAMESPACE::RLog& iLog; ///< 儘僌弌椡僋儔僀傾儞僩(uses)
// Add-E PTX-824 暯壀
};
SEMCJ_NAMESPACE_END
#endif // __SMBMUSICAPMAINPLAYERFILTERSYNCSERVERPROCESS_H__
// end of SmbMusicAPMainPlayerFilterSyncServerProcess.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -