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

📄 smbmusicapmainplayerfilterviewmodel.h

📁 symbian
💻 H
字号:
/* Copyright (C) 2005-2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
//	SmbMusicAPMainPlayerFilterViewModel.h
//
// Description:
//	儈儏乕僕僢僋儊僀儞僾儗僀儎
//	僼傿儖僞價儏乕儌僨儖僋儔僗
/*-------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅				|曄峏幰			|撪梕
//---------------------------------------------------------------------------
//2006/08/15		|SEMCJ嶳壀		|怴婯嶌惉

#ifndef __SMBMUSICAPMAINPLAYERFILTERVIEWMODEL_H__
#define __SMBMUSICAPMAINPLAYERFILTERVIEWMODEL_H__

#include <coedef.h>
#include <FjWcdmaMpDef.h>
#include <FjAfView.h>
#include <SmbCommonDef.h>
//#include "SmbMusicAPMainPlayerFilterView.h"
#include "SmbMusicAPMainPlayerFilterListView.h"

SEMCJ_NAMESPACE_BEGIN

class CSmbMusicAPMainPlayerFilterView;
class CSmbMusicAPMainPlayerFilterListView;

////////////////////////////////////////////////////////////////////////////////
// 僼傿儖僞價儏乕僋儔僗
////////////////////////////////////////////////////////////////////////////////
enum TSmbLocalListHandle
	{
	ESmbLocalListHandleInvalid,
	ESmbLocalListHandleMusicMenu,
	ESmbLocalListHandlePLType,
	ESmbLocalListHandleMemType,
	};

////////////////////////////////////////////////////////////////////////////
// 儕僗僩價儏乕娗棟
//   愑柋丗
//     儕僗僩價儏乕偺夋柺慗堏/傾僋僥傿儀乕僩/僼僅乕僇僗惂屼
//     儕僗僩價儏乕攝楍偺娗棟
//     僇儗儞僩嵞惗儕僗僩傗専嶕僷僗偺娗棟
//     僒僽僾儗僀儎偲偺夋柺楢実忣曬偺娗棟
////////////////////////////////////////////////////////////////////////////
class CSmbMusicAPMainPlayerFilterViewModel : public CBase
	{
public:
	////////////////////////////////////////////////////////////////////////////
	// 僋儔僗偺惗惉偲攋婞
	////////////////////////////////////////////////////////////////////////////
	// 僼傿儖僞價儏乕僋儔僗傪惗惉
	static CSmbMusicAPMainPlayerFilterViewModel* NewL(CSmbMusicAPMainPlayerFilterView* aView);
	// 僐儞僗僩儔僋僞
	CSmbMusicAPMainPlayerFilterViewModel(CSmbMusicAPMainPlayerFilterView* aView);
	// 僨僗僩儔僋僞
	virtual ~CSmbMusicAPMainPlayerFilterViewModel();
	// 僙僇儞僪僐儞僗僩儔僋僞
	virtual void ConstructL();

	// 傾僋僥傿僽側儕僗僩價儏乕偺庢摼
	CSmbMusicAPMainPlayerFilterListView* ActiveListView() const;
	// 傾僋僥傿僽側儕僗僩價儏乕偺愝掕
	CSmbMusicAPMainPlayerFilterListView* SetActiveChildViewL(TUid aViewUid);
	// 傾僋僥傿僽側儕僗僩價儏乕偺愝掕
	CSmbMusicAPMainPlayerFilterListView* SetActiveParentView();
	void AdjustActiveIndexL(TInt aListHandle);
	// 専嶕僷僗偺嵞峔抸
	void SetFilterListViewL(TInt aListHandle, TInt aIndex, TBool aSync=EFalse);
	void SetPlaylistViewL(TInt aCommandId);
	TInt CountListView();
	
public:
	// 儕僗僩價儏乕偺庢摼
	CSmbMusicAPMainPlayerFilterListView* ListView(TInt aIndex) const;
	CSmbMusicAPMainPlayerFilterListView* FindListViewByViewUid(TUid aViewUid) const;
	CSmbMusicAPMainPlayerFilterListView* FindListViewByListHandle(TInt aListHandle) const;
	// 儕僗僩價儏乕悢偺庢摼
	TInt ListViewCount() const;
	// 儕僗僩價儏乕偺捛壛
	void AppendListView(CSmbMusicAPMainPlayerFilterListView* aListView);
	// 儕僗僩價儏乕偺儕僙僢僩
	void ResetListView();
	
	// 専嶕僷僗偺儕僗僩價儏乕傪夋柺偵惍楍偡傞
	void AdjustFilterPathL(TBool aUpdateStatus);
	// 巜掕偝傟偨僀儞僨僢僋僗埲崀偺専嶕僷僗偺儕僗僩儃僢僋僗傪儕僙僢僩偡傞
	void ResetFilterPathL(TInt aResetIndex);
	
	// 専嶕僷僗偺儕僗僩價儏乕偺庢摼
	CSmbMusicAPMainPlayerFilterListView* FilterPath(TInt aIndex) const;
	// 専嶕僷僗偺儕僗僩價儏乕悢偺庢摼
	TInt FilterPathCount() const;
	// 専嶕僷僗儕僗僩價儏乕偺捛壛
	void InsertFilterPath(TInt aIndex, CSmbMusicAPMainPlayerFilterListView* aListView);
	void AppendFilterPath(CSmbMusicAPMainPlayerFilterListView* aListView);
	// 専嶕僷僗儕僗僩價儏乕偺嶍彍
	void DeleteFilterPath(TInt aIndex);
	
	// 夋柺楢実
	void ChildPositionSyncPath(TInt aListHandle);
	void ParentPositionSyncPath(TInt aListHandle);
	void ArrangeSyncPathByFilterPath();
	void ArrangeFilterPathBySyncPath();
//2006.09.21 TRK#9459
	void UpdateSyncPathL(TInt aListHandle);
	// 夋柺楢実偺儕僗僩僴儞僪儖偺庢摼
	TInt SyncPath(TInt aIndex) const;
	// 夋柺楢実偺儕僗僩僴儞僪儖悢偺庢摼
	TInt SyncPathCount() const;
	// 夋柺楢実儕僗僩僴儞僪儖偺捛壛
	void InsertSyncPath(TInt aIndex, TInt aListHandle);
	void AppendSyncPath(TInt aListHandle);
	// 夋柺楢実儕僗僩僴儞僪儖偺嶍彍
	void DeleteSyncPath(TInt aIndex);
//2006.09.07 SEMCJ嬥岝 TRK7077懳墳 ADD-S
	void ResetSyncPath();
//2006.09.07 SEMCJ嬥岝 TRK7077懳墳 ADD-E	
	// 僨僼僅儖僩僒儉僱僀儖偺愝掕
	void SetDefaultThumbnail(CGulIcon* aDefaultThumbnail);

	
private:
	CSmbMusicAPMainPlayerFilterView*					iView;
	// 傾僋僥傿僽側儕僗僩價儏乕偺僀儞僨僢僋僗
//	TInt												iCurrentIndex;
	// 傾僋僥傿僽側儕僗僩價儏乕
	CSmbMusicAPMainPlayerFilterListView*				iActiveView;
	// 偡傋偰偺僼傿儖僞儕僗僩價儏乕攝楍
	RPointerArray<CSmbMusicAPMainPlayerFilterListView>	iViewArray;
	// 専嶕僷僗偺僼傿儖僞儕僗僩價儏乕攝楍
	RPointerArray<CSmbMusicAPMainPlayerFilterListView>	iPathArray;
	// 僒僽僾儗僀儎偲偺楢実梡偺専嶕僷僗
	RArray<TInt>										iSyncArray;
// Add-S PTX-824 暯壀
	DCM_NAMESPACE::RLog& 								iLog;		///< 儘僌弌椡僋儔僀傾儞僩(uses)
// Add-E PTX-824 暯壀
	};

SEMCJ_NAMESPACE_END

#endif// __SMBMUSICAPMAINPLAYERFILTERVIEWMODEL_H__

⌨️ 快捷键说明

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