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

📄 smbmusicapmainplayerfilterlistviewplaylist.h

📁 symbian
💻 H
字号:
/* Copyright (C) 2006-2007 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
//  SmbMusicAPMainPlayerFilterListViewPlaylist.h
//
// Description: 
//  CSmbMusicAPMainPlayerFilterListViewPlaylist class header.
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅          |曄峏幰     |撪梕
//--------------+-----------+----------------------------------------------
//2006/08/16	|SDNA嶳壀	| 怴婯嶌惉
//2007/08/15	|SEMCJ暯壀丂| D_82400011208懳墳
//2007/08/30	|SEMCJ暯壀	| D_82400012340懳墳
//2007/09/04	|SEMCJ暯壀	| D_82400012386懳墳

#ifndef __SMBMUSICAPMAINPLAYERFILTERLISTVIEWPLAYLIST_H__
#define __SMBMUSICAPMAINPLAYERFILTERLISTVIEWPLAYLIST_H__

#include <SmbCommonDef.h>
#include <SmbAfCommandBase.h>
#include <SmbFep.h>
#include <CSmbExtMemWatcher.h>

#include "SmbMusicAPMainPlayerFilterListView.h"

USING_NAMESPACE_DCM

SEMCJ_NAMESPACE_BEGIN

// Add-S PTX-824懳墳丂暯壀
// 僾儗僀儕僗僩堦棗偺僒僽儊僯儏乕崁栚偺敿婸搙敾掕偵巊梡
const TInt KRenamePlaylist			= 0;		// 僾儗僀儕僗僩柤曇廤
const TInt KDuplicatePlaylist		= 1;		// 僾儗僀儕僗僩僐僺乕
const TInt KDeletePlaylist			= 2;		// 僾儗僀儕僗僩嶍彍
const TInt KShowPlayView			= 3;		// 嵞惗拞偺嬋傊
const TInt KStopPlayer				= 4;		// 嵞惗傪掆巭
const TInt KEmptyListShowPlayView	= 0;		// 嵞惗拞偺嬋傊(嬻僾儗僀儕僗僩帪)
const TInt KEmptyListStopPlayer		= 1;		// 嵞惗傪掆巭(嬻僾儗僀儕僗僩)
// 僾儗僀儕僗僩悢丒僾儗僀儕僗僩嬋悢偺嵟戝抣
//const TInt KOriginalPlaylistMaxCount		= 10;	// 僆儕僕僫儖僾儗僀儕僗僩悢
//const TInt KOriginalPlaylistSongMaxCount	= 36;	// 僆儕僕僫儖僾儗僀儕僗僩嬋悢
const TInt KOriginalPlaylistMaxCount		= 20;	// 僆儕僕僫儖僾儗僀儕僗僩悢
const TInt KOriginalPlaylistSongMaxCount	= 50;	// 僆儕僕僫儖僾儗僀儕僗僩嬋悢
//	const TInt KImportPlaylistMaxCount		= 100;	// 僀儞億乕僩僾儗僀儕僗僩悢
// Add-S PTX-824懳墳丂暯壀

/**
 * 僾儗僀儕僗僩堦棗僋儔僗
 *	KSmbMusicAPMainPlayerPLListViewUid
 */
class CSmbMusicAPMainPlayerFilterListViewPlaylist
	: public CSmbMusicAPMainPlayerFilterListView
	, public MSmbFepObserver
	, public CSmbExtMemWatcher::MObserver
	{
public:
// Del-S PTX-824懳墳丂暯壀
//	enum
//	{
////2006.09.21 TRK#10410 僆儕僕僫儖僾儗僀儕僗僩丂36嬋仏10屄
//		EOriginalPlaylistMaxCount = 10,
//		EImportPlaylistMaxCount = 100,
//		EOriginalPlaylistSongMaxCount = 36
//	};
//	const TInt KOriginalPlaylistMaxCount(10);
////	const TInt KImportPlaylistMaxCount = 100;
//	const TInt KOriginalPlaylistSongMaxCount(36);
// Del-E PTX-824懳墳丂暯壀
public:
	//////////////////////////////////////////////////////////////////////////////////////
	// 僋儔僗偺惗惉偲攋婞
	//////////////////////////////////////////////////////////////////////////////////////
	static CSmbMusicAPMainPlayerFilterListViewPlaylist* NewL(TUid aViewUid, CSmbMusicAPMainPlayerFilterView* aView);
	CSmbMusicAPMainPlayerFilterListViewPlaylist();
	void ConstructL(TUid aViewUid, CSmbMusicAPMainPlayerFilterView* aView);
	virtual ~CSmbMusicAPMainPlayerFilterListViewPlaylist();

public:
	//////////////////////////////////////////////////////////////////////////////////////
	// 弶婜愝掕
	//////////////////////////////////////////////////////////////////////////////////////
	void SetupModelL();
	void SetupControlL();
	
	////////////////////////////////////////////////////////////////////////////
	// 僼傿儖僞儕僗僩儌僨儖僀儀儞僩
	////////////////////////////////////////////////////////////////////////////
	TBool HasParentList();
	TBool HasChildList();
	
	////////////////////////////////////////////////////////////////////////////
	// 僐儅儞僪幚峴
	////////////////////////////////////////////////////////////////////////////
	// from MSmbAfCommandBase
	MSmbAfCommandBase::TSmbAfCmdIdResponse HandleCommandL(TInt aCommandId);
	MSmbAfCommandBase::TSmbAfCmdIdResponse ProcessCommandL(TInt aCommandId);

	//////////////////////////////////////////////////////////////////////////////////////
	// 旕摨婜僾儘僙僗
	//////////////////////////////////////////////////////////////////////////////////////
	void ProcessCreatePlaylistL(const TDesC* aTitle);
	void ProcessRenamePlaylistL(const TDesC* aTitle);
// Add-S PTX-824 D_82400011208懳墳 暯壀 2007.08.15
	void ProcessShowDetailInformationL();
// Add-E PTX-824 D_82400011208懳墳 暯壀 2007.08.15
	void ProcessCompleteL(TInt aResult, CSmbMusicAPMainPlayerFilterProcess& aProcess);
	void CommonMoveParentPlaylistL(TInt aProcessCommandID);

	// from MSmbMusicAPMainPlayerFilterProcessObserver
	void ProcessComplete(TInt aResult, CSmbMusicAPMainPlayerFilterProcess& aProcess);
//2006.10.10
	void ProcessProgress(TInt aResult, CSmbMusicAPMainPlayerFilterProcess& aProcess);
	void HandleDialogClosed(TInt aResourceId, TInt aResult);
	
	void AdjustTitleIconL();
	// 儕僗僩傾僀僥儉偺敿婸搙挷惍傪偡傞
	void AdjustListBoxL(TBool aState);
	// 僐儅儞僪儌乕僪傪愝掕偡傞
	virtual void SetCommandMode(TSmbMusicAPMainPlayerCommandMode aMode);
	// 儕僗僩儃僢僋僗僆儁儗乕僔儑儞儌乕僪
	void SetOperationMode(CSkonRichListBoxBase::TOperationMode aMode);
	CSkonRichListBoxBase::TOperationMode OperationMode();

	// 僒僽儊僯儏乕儕僜乕僗ID
	TInt SubMenuID();
	void AdjustSubMenuL(CSkonSubMenu *aSubMenu, TInt aResId);
	// 慖戰僉乕僐儅儞僪
	TInt SelectKeyCommand(TBool aLongPress);
	// 僉乕僈僀僟儞僗忣曬
	TBool KeyGuidanceInfo(TSkonKeyGuidanceKeyIds aKey, TBool& aVisible, TInt& aTitleResId, TInt& aCommandID);

// Add-S PTX-824 D_82400012386懳墳 暯壀 2007.09.04
	/**
	 * 僾儗僀儕僗僩搊榐夋柺梡儕僗僩僴儞僪儖傪庢摼拞僼儔僌
	 * @retval		ETrue	僾儗僀儕僗僩搊榐夋柺梡儕僗僩僴儞僪儖傪庢摼拞
	 * @retval		EFalse	僾儗僀儕僗僩搊榐夋柺梡儕僗僩僴儞僪儖傪庢摼拞偱偼側偄
	 */
	TBool GettingPLInsertList();
// Add-E PTX-824 D_82400012386懳墳 暯壀 2007.09.04

protected: // from MSmbFepObserver
	/// 暥帤楍擖椡偺奐巒
	void StartFepL(TInt aResourceId, const TDesC& aDefaultText);
	/// 暥帤楍擖椡妋掕
	void HandleFepCommitEditL(CSmbFep* aFep, TSmbFepCompletionEvent aEventType, const TDesC* aResultText);
	/// 暥帤楍擖椡庢徚偟
	void HandleFepCancelEditL(CSmbFep* aFep, TSmbFepCompletionEvent aEventType);

private:
	/**
	 * 僼傽僀儖娗棟偐傜偺婲摦帪偵恊夋柺偺僼僅乕僇僗傪愝掕偡傞
	 */
	void AdjustParentIndex();
	//////////////////////////////////////////////////////////////////////////////////////
	// 奜晹儊儌儕僂僅僢僠儍
	//////////////////////////////////////////////////////////////////////////////////////
public:	// CSmbExtMemWatcher
	// 奜晹儊儌儕巊梡忬懺
	CSmbExtMemWatcher& ExtMemWatcher(void) const;
	TBool AvailableExtMemoryL(CSmbExtMemWatcher::TType aType);
	
public:	// CSmbExtMemWatcher::MObserver
    void NotifyMountedExtMemL(CSmbExtMemWatcher::TType aType);
    void NotifyMountingExtMemL(CSmbExtMemWatcher::TType aType);
    void NotifyUnMountedExtMemL(CSmbExtMemWatcher::TType aType);
    void NotifyErrorExtMemL(CSmbExtMemWatcher::TType aType, TInt aError);

private:
	TPtrC						iListTitle;
	TInt						iEditCommand;
	TInt						iEditItemIndex;
	TInt						iScreenTopIndex;

private:
	// 奜晹儊儌儕偺巊梡忬懺丄庬暿偺幆暿
	CSmbExtMemWatcher*			iExtMemWatcher;
	
	TBool						iMusicDBUpdating;
// Add-S PTX-824 暯壀
	DCM_NAMESPACE::RLog& 		iLog;					///< 儘僌弌椡僋儔僀傾儞僩(uses)
// Add-E PTX-824 暯壀
// Add-S PTX-824 2007.08.30 D_82400012340 暯壀
	TBool						iDelComplete;			///< 嶍彍姰椆僼儔僌(惓忢帪)
// Add-E PTX-824 2007.08.30 D_82400012340 暯壀
// Add-S PTX-824 D_82400012386懳墳 暯壀 2007.09.04
	TBool						iGettingPLInsertList;	///< 僾儗僀儕僗僩搊榐夋柺儕僗僩僴儞僪儖庢摼拞僼儔僌
// Add-E PTX-824 D_82400012386懳墳 暯壀 2007.09.04
	};
	
SEMCJ_NAMESPACE_END

#endif // __SMBMUSICAPMAINPLAYERFILTERLISTVIEWPLAYLIST_H__

// end of SmbMusicAPMainPlayerFilterListViewPlaylist.h
/* Copyright (C) 2006-2007 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

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