📄 smbmusicaplibprogressdialogex.h
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPLibProgressDialogEx.h
//
// Description
// 儈儏乕僕僢僋傾僾儕儔僀僽儔儕奼挘僾儘僌儗僗昞帵僟僀傾儘僌僋儔僗
/*-------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------------------------------------------------------------------
//2006/09/23 |SDNA挿旜 |怴婯嶌惉
#ifndef __SMBMUSICAPLIBPROGRESSDIALOGEX_H__
#define __SMBMUSICAPLIBPROGRESSDIALOGEX_H__
#include "SmbMusicAPLibProgressDialog.h"
SEMCJ_NAMESPACE_BEGIN
/**
* 奼挘僾儘僌儗僗僟僀傾儘僌僋儔僗
*
* CSmbMusicAPLibProgressDialog僋儔僗偵埲壓偺婡擻傪捛壛偡傞丏
* - 恑捇帺摦峏怴婡擻
* 僾儘僌儗僗僶乕偺乽傒側偟乿昞帵偺偨傔丆僞僀儅乕偵傛傝僾儘僌儗僗僶乕傪掕婜揑偵恑捇偝偣傞丏
*
* - 僟僀傾儘僌僋儘乕僘抶墑婡擻
* CSmbMusicAPLibProgressDialogEx::Close(TCloseTime)屇弌偟屻丆栺200ms屻偵僟僀傾儘僌偑暵偠傞丏
*
* 忋婰奼挘婡擻傪巊梡偟側偄偙偲傕壜擻偱偁傞丏偦偺偨傔丆CSmbMusicAPLibProgressDialog偺戙懼巊梡偑壜擻偱偁傞丏
*/
class CSmbMusicAPLibProgressDialogEx : public CSmbMusicAPLibProgressDialog
{
protected:
/// 恑捇僞僀儅乕僋儔僗
class CProgressTimer : public CTimer
{
public:
/// 僆僽僕僃僋僩惗惉
static CProgressTimer* NewL(TInt aPriority);
/// 僨僗僩儔僋僞
~CProgressTimer();
/// 恑捇僞僀儅乕偺奐巒
void Start(TCallBack aCallBack, TTimeIntervalMicroSeconds32 aInterval);
protected:
/// 僐儞僗僩儔僋僞
CProgressTimer(TInt aPriority);
protected: // From CActive
/// 傾僋僥傿僽僆僽僕僃僋僩偺梫媮姰椆僀儀儞僩僴儞僪儖
void RunL(void);
private:
/// 恑捇僞僀儅乕偺僀儞僞乕僶乕儖抣
TTimeIntervalMicroSeconds32 iInterval;
/// 恑捇僞僀儅乕姰椆帪偺僐乕儖僶僢僋
TCallBack iCallBack;
};
public:
///
enum TCallBackResult
{
EStopTimer = 0,
EStartTimer,
};
///
enum TCloseTime
{
ECloseNoTimer = 0,
ECloseIn200ms,
};
public:
/// 僆僽僕僃僋僩惗惉
IMPORT_C static CSmbMusicAPLibProgressDialogEx* NewL(TInt aResourceId);
/// 僨僗僩儔僋僞
IMPORT_C ~CSmbMusicAPLibProgressDialogEx();
/// 帺摦峏怴偡傞恑捇偺嵟戝抣愝掕
IMPORT_C void SetAutoProgressFinalValue(TUint aFinalValue);
/// 恑捇僟僀傾儘僌偺恑捇帺摦峏怴奐巒
IMPORT_C TInt StartAutoProgress(TTimeIntervalMicroSeconds32 aInterval,
TUint aFileSize, TUint aProcessingRate, TUint aMaxProgressValue);
/// 恑捇僟僀傾儘僌偺恑捇帺摦峏怴奐巒
IMPORT_C TInt StartAutoProgress(TTimeIntervalMicroSeconds32 aInterval, TUint aProgressValue);
/// 僟僀傾儘僌傪暵偠傞
IMPORT_C void Close(TCloseTime aCloseTime = ECloseNoTimer);
public:
///
TBool UpdateProgress(void);
protected:
/// 僐儞僗僩儔僋僞
CSmbMusicAPLibProgressDialogEx();
/// 儕僜乕僗偵傛傞僐儞僩儘乕儖弶婜壔
void PrepareLC(TInt aResourceId);
/// 僾儘僌儗僗僶乕峏怴僞僀儅乕僐乕儖僶僢僋
static TInt ProgressTimerCallBack(TAny* aObject);
/// 僟僀傾儘僌僋儘乕僘僞僀儅乕僐乕儖僶僢僋
static TInt CloseTimerCallBack(TAny* aObject);
protected:
/// 恑捇僞僀儅乕
CProgressTimer* iTimer;
/// 帺摦峏怴偡傞恑捇偺嵟戝抣
TUint iFinalProgressValue;
/// 1峏怴偁偨傝偵憹壛偡傞恑捇抣
TUint iProgressValue;
};
SEMCJ_NAMESPACE_END
#endif // __SMBMUSICAPLIBPROGRESSDIALOGEX_H__
// end of SmbMusicAPLibProgressDialogEx.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -