📄 smbmusicapmainplayerfilterlistitem.h
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPMainPlayerFilterListItem.h
//
// Description:
// CSmbMusicAPMainPlayerFilterListItem class header.
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+-----------+----------------------------------------------
//2006/08/13 |SDNA嶳壀 | FilterView娭楢僋儔僗偺refactoring偵敽偭偰怴婯嶌惉
//2006/08/25 |SDNA彫椦 | NoImage偺僕儍働僢僩夋憸乮強桳尃偼帩偨側偄乯傪曐帩偱偒傞傛偆偵廋惓
#ifndef __SMBMUSICAPMAINPLAYERFILTERLISTITEM_H__
#define __SMBMUSICAPMAINPLAYERFILTERLISTITEM_H__
#include <SmbCommonDef.h>
#include <GulIcon.h>
#include <SkonMusicListBoxItem.h>
// Add-S PTX-824懳墳丂暯壀
#include <SmbMusicAPSyncEngineDef.h>
// Add-E PTX-824懳墳丂暯壀
SEMCJ_NAMESPACE_BEGIN
class CSmbMusicAPMainPlayerFilterListItem;
class MSmbMusicAPMainPlayerFilterListModelObserver;
/**
* 僼傿儖僞儕僗僩傾僀僥儉僋儔僗
*/
class CSmbMusicAPMainPlayerFilterListItem
: public CBase
, public MSkonMusicListBoxItem
{
public:
/**
* 僒儉僱僀儖庢摼忬懺
*/
enum TFilterListImageState
{
ENoImage = 0,
ERequestImage,
EFetchedImage
};
public:
////////////////////////////////////////////////////////////////////////////
// 僋儔僗偺惗惉偲攋婞
////////////////////////////////////////////////////////////////////////////
// 僼傿儖僞儕僗僩傾僀僥儉僋儔僗傪惗惉
static CSmbMusicAPMainPlayerFilterListItem* NewL(TInt aCommandID, TInt aIndex, MSmbMusicAPMainPlayerFilterListModelObserver* aObserver);
// 僐儞僗僩儔僋僞
CSmbMusicAPMainPlayerFilterListItem(TInt aCommandID, TInt aIndex, MSmbMusicAPMainPlayerFilterListModelObserver* aObserver);
// 僙僇儞僪僐儞僗僩儔僋僞
virtual void ConstructL();
// 僨僗僩儔僋僞
virtual ~CSmbMusicAPMainPlayerFilterListItem();
public:
////////////////////////////////////////////////////////////////////////////
// SkonMusicListBox偺I/F
////////////////////////////////////////////////////////////////////////////
// from MSkonMusicListBoxItem
/**
* 夋憸傪庢摼偡傞
* @param[in] aImageType 夋憸偺庬椶
* @return 夋憸 夋憸僒僀僘偼傾僀僐儞丗20x20(main) 12x12(sub)丄僒儉僱僀儖(46x46)
*/
CGulIcon* Image(TImageType aImageType) const;
/**
* 暥帤楍傪庢摼偡傞
* @param[in] aTextType 僥僉僗僩偺庬椶
* @return 暥帤楍
*/
TPtrC Text(TTextType aTextType) const;
/**
* 傾僀僥儉偺嬛巭忬懺傪庢摼偡傞
* @return ETrue: 嬛巭 / EFalse:桳岠
*/
TBool IsDisabled();
/**
* 恊奒憌偺忬懺傪庢摼偡傞
* @return ETrue: 恊奒憌偁傝 / EFalse: 恊奒憌側偟
*/
TBool HasParentList();
/**
* 巕奒憌偺忬懺傪庢摼偡傞
* @return ETrue: 巕奒憌偁傝 / EFalse: 巕奒憌側偟
*/
TBool HasChildList();
////////////////////////////////////////////////////////////////////////////
// 儊儞僶乕憖嶌
////////////////////////////////////////////////////////////////////////////
/**
* 夋憸傪愝掕偡傞
* 僙僢僩偡傞夋憸偺強桳尃傪埾忳偡傞
* @param[in] aImageType 夋憸偺庬椶
* @param[in] aImage 夋憸
*/
void SetImage(TImageType aImageType, CGulIcon* aImage);
/**
* 夋憸偺愝掕
* 僨僼僅儖僩偺夋憸傪巊梡偡傞傛偆偵愝掕偡傞
* @param[in] aImageType 昞帵僞僀僾
*/
void SetImage(TImageType aImageType);
/**
* 夋憸偺儕僙僢僩
* 愝掕偝傟偰偄傞夋憸傪儕僙僢僩偡傞
* @param[in] aImageType 昞帵僞僀僾
*/
void ResetImage(TImageType aImageType);
/**
* 暥帤楍傪愝掕偡傞
* @param[in] aTextType 僥僉僗僩偺庬椶
* @param[in] aText 暥帤楍
*/
void SetTextL(TTextType aTextType, const TDesC& aText);
/**
* 傾僀僥儉偺嬛巭忬懺傪愝掕偡傞
* @param[in] aDisable ETrue: 嬛巭 / EFalse:桳岠
*/
void SetIsDisabled(TBool aDisable);
/**
* 恊奒憌偺忬懺傪愝掕偡傞
* @param[in] aHasParent ETrue: 恊奒憌偁傝 / EFalse: 恊奒憌側偟
*/
void SetParentList(TBool aHasParent);
/**
* 巕奒憌偺忬懺傪愝掕偡傞
* @param[in] aHasChild ETrue: 巕奒憌偁傝 / EFalse: 巕奒憌側偟
*/
void SetChildList(TBool aHasChild);
/**
* 僀儞僨僢僋僗斣崋傪庢摼偡傞
* @return 僀儞僨僢僋僗斣崋
*/
TInt Index() const;
/**
* 僐儅儞僪ID傪庢摼偡傞
* @return 僐儅儞僪ID
*/
TInt CommandID() const;
/**
* 僀儞僨僢僋僗斣崋傪愝掕偡傞
* @param[in] aIndex 僀儞僨僢僋僗斣崋
*/
void SetIndex(TInt aIndex);
/**
* 僐儅儞僪ID傪愝掕偡傞
* @param[in] aCommandID 僐儅儞僪ID
*/
void SetCommandID(TInt aCommandID);
/**
* 夋憸忬懺傪庢摼偡傞
* @return ENoImage: 枹庢摼 / ERequestImage:庢摼拞 / EFetchedImage:庢摼嵪
*/
TBool IsFetchedImage() const;
/**
* 庢摼幐攕帪夋憸偺僒儉僱僀儖傪僙僢僩偡傞
* 僙僢僩偡傞夋憸偺強桳尃偼埾忳偟側偄
* @param[in] aImage 庢摼幐攕帪夋憸
*/
void SetDefaultJacket(CGulIcon* aImage);
// Add-S PTX-824懳墳丂暯壀
/**
* 嵞惗惂尷庬暿傪愝掕偡傞
* @param[in] aLimitation 嵞惗惂尷庬暿
*/
void SetLimitation(TSmbMusicAPSyncEngineLimitation aLimitation);
/**
* 嵞惗惂尷庬暿傪庢摼偡傞
* @return 僐儅儞僪ID
*/
TSmbMusicAPSyncEngineLimitation Limitation() const;
// Add-E PTX-824懳墳丂暯壀
private:
// 僒儉僱僀儖夋憸
CGulIcon* iJacket;
// 庢摼幐攕帪夋憸
CGulIcon* iDefaultJacket;
// 傾僀僐儞
CGulIcon* iIcon;
// 僞僀僩儖暥帤楍
HBufC* iMainText;
// 僒僽僞僀僩儖暥帤楍
HBufC* iSubText;
// 傾僀僥儉偺嬛巭忬懺
TBool iDisable;
// 恊奒憌偺忬懺
TBool iHasParent;
// 巕奒憌偺忬懺
TBool iHasChild;
// 夋憸庢摼忬懺
TBool iFetchedImage;
// 僐儅儞僪ID
TInt iCommandID;
// 僀儞僨僢僋僗斣崋
TInt iIndex;
// 僼傿儖僞儕僗僩傾僀僥儉僆僽僓乕僶
MSmbMusicAPMainPlayerFilterListModelObserver* iObserver;
// Add-S PTX-824懳墳丂暯壀
// 嵞惗惂尷庬暿
TSmbMusicAPSyncEngineLimitation iLimitation;
// Add-E PTX-824懳墳丂暯壀
};
SEMCJ_NAMESPACE_END
#endif // __SMBMUSICAPMAINPLAYERFILTERLISTITEM_H__
// end of SmbMusicAPMainPlayerFilterListItem.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -