?? smbmusicapfilemgrviewbase.cpp
字號:
void CSmbMusicAPFileMgrViewBase::CloseDialog(CSmbMusicAPLibProgressDialogEx::TCloseTime aCloseTime /*= ECloseNoTimer*/)
{
if (iSelectionDialog)
{
iSelectionDialog->Close();
}
if (iConfirmDialog)
{
iConfirmDialog->Close();
}
if (iWarningDialog)
{
iWarningDialog->Close();
}
if (iProgressDialog)
{
iIsActiveProgressDialog = EFalse; // 昞帵忬懺傪乽旕昞帵乿偵愝掕偡傞
iProgressDialog->Close(aCloseTime);
}
//ADD-START PTX824
if (iSelectionCancelDialog)
{
iSelectionCancelDialog->Close();
}
if (iPasswordDialog)
{
iPasswordDialog->Close();
iPasswordDialog = NULL;
}
//ADD-END PTX824
}
/**
* @param[in] aDialog 嶍彍偡傞僟僀傾儘僌
*/
void CSmbMusicAPFileMgrViewBase::DeleteDialog(CSkonDialogBase* aDialog)
{
if (aDialog == iSelectionDialog)
{
iSelectionDialog = NULL;
}
else if (aDialog == iConfirmDialog)
{
iConfirmDialog = NULL;
}
else if (aDialog == iWarningDialog)
{
iWarningDialog = NULL;
}
else if (aDialog == iProgressDialog)
{
iProgressDialog = NULL;
}
//ADD-START PTX824
else if (aDialog == iSelectionCancelDialog)
{
iSelectionCancelDialog = NULL;
}
//ADD-END PTX824
else
{
__ASSERT_DEBUG(EFalse, PANIC(KErrArgument));
}
delete aDialog;
}
//ADD-START PTX824
//810TRK12786-START
/**
* 昞帵偟偰偄傞慖戰僟僀傾儘僌傪暵偠傞丏
*
* @param側偟
*/
void CSmbMusicAPFileMgrViewBase::CloseSelectionDialog()
{
if (iSelectionDialog)
{
iSelectionDialog->Close();
// iDialogResourceId = 0;
}
}
/**
* 昞帵偟偰偄傞慖戰僟僀傾儘僌傪暵偠偰嶍彍偡傞丏
*
* @param側偟
*/
void CSmbMusicAPFileMgrViewBase::CloseAndDeleteSelectionDialog()
{
if (iSelectionDialog)
{
iSelectionDialog->Close();
DeleteDialog(iSelectionDialog);
iDialogResourceId = 0;
}
}
//810TRK12786-END
//ADD-END PTX824
/**
* 僟僀傾儘僌僋儘乕僘帪偺嫟捠張棟傪峴偆丏
* 奺價儏乕偼昁梫偵墳偠偰 HandleCloseEventImplL() 傪嵞掕媊偡傞偙偲丏
*
* @param[in] aResult 僋儘乕僘寢壥
* @param[in] aDialog 僋儘乕僘偟偨僟僀傾儘僌
*
* @note HandleCloseEventL() 撪偱 aDialog 傪嶍彍(delete aDialog)偟側偄偙偲丏(摦嶌晄埨掕偺尨場)
*/
void CSmbMusicAPFileMgrViewBase::HandleCloseEventL(TInt aResult, CSkonDialogBase* aDialog)
{
// 儊儞僶曄悢偵偁傞僟僀傾儘僌庬暿傪儘乕僇儖曄悢偵僐僺乕屻丆儕僙僢僩偡傞丏
TInt dialogResourceId = iDialogResourceId;
iDialogResourceId = 0;
if (aDialog == iProgressDialog)
{
// Close()埲奜偱暵偠傜傟偨(僋儕傾僉乕側偳偱)恑捇僟僀傾儘僌偼丆傾僯儊乕僔儑儞傪掆巭偟側偗傟偽側傜側偄丏
CSkonImageLabel* imageLabel = static_cast<CSkonImageLabel*>(iProgressDialog->ProgressLabel()->ComponentControl(CSkonCompoundProgressLabel::EImageLabel));
if (imageLabel != NULL && imageLabel->IsPaused() == EFalse)
{
//傾僯儊乕僔儑儞傪掆巭偡傞
imageLabel->PauseL();
}
}
HandleCloseEventImplL(aResult, aDialog, dialogResourceId);
}
/**
* @param[in] aResult 僋儘乕僘寢壥
* @param[in] aDialog 僋儘乕僘偟偨僟僀傾儘僌
* @param[in] aDialogResourceId 僋儘乕僘偟偨僟僀傾儘僌偺儕僜乕僗ID
*
* @note 杮娭悢偼嬻幚憰偱偡丏昁梫偵墳偠偰丆杮捠抦傪巊梡偡傞攈惗僋儔僗偱幚憰偟偰偔偩偝偄丏
*/
void CSmbMusicAPFileMgrViewBase::HandleCloseEventImplL(TInt /*aResult*/, CSkonDialogBase* /*aDialog*/, TInt /*aDialogResourceId*/)
{
// 僟僀傾儘僌傪巊梡偡傞攈惗僋儔僗偱幚憰偟偰偔偩偝偄
}
/**
* 僉乕僀儀儞僩偍傛傃價儏乕僐儅儞僪偺梷惂傪夝彍偡傞丏
*/
void CSmbMusicAPFileMgrViewBase::EnableKeyEvent(void)
{
iInhibitsKeyEvent = EFalse;
iCmd->EnableViewCommand();
}
/**
* 僉乕僀儀儞僩偍傛傃價儏乕僐儅儞僪傪梷惂偡傞丏
*/
void CSmbMusicAPFileMgrViewBase::DisableKeyEvent(void)
{
iInhibitsKeyEvent = ETrue;
iCmd->DisableViewCommand();
}
/**
* @param[in] aBaseMessage 婎偲側傞儊僢僙乕僕
* @param[in] aType 傾僀僐儞庬暿
* @param[in] aString 屄暿偺儊僢僙乕僕(暥帤楍)
* @return 僟僀傾儘僌偵昞帵偡傞暋崌暥帤楍
*/
CSkonCombinedText* CSmbMusicAPFileMgrViewBase::CreateDialogMessageLC(const TDesC& aBaseMessage,
TSmbMusicAPFileMgrIconType aType,
const TDesC& aString)
{
// 傾僀僐儞庬暿偵懳墳偟偨傾僀僐儞傪庢摼偡傞
TInt iconBodyId = KMinTInt;
TInt iconMaskId = KMinTInt;
TPtrC resourcePath;
TBool isMusicIcon = ETrue;
_LIT(KMusicResourcePath, "Z:\\WcdmaMp\\Media\\Image\\Music.mbm");
_LIT(KDataBoxResourcePath, "Z:\\WcdmaMp\\Media\\Image\\DataBox.mbm");
switch (aType)
{
case ETypeDbxMusicFolder:
iconBodyId = EMbmDataboxDb_com_music;
iconMaskId = EMbmDataboxDb_com_musicm;
isMusicIcon = EFalse;
break;
case ETypeDbxUserFolder:
iconBodyId = EMbmDataboxUser_folder;
iconMaskId = EMbmDataboxUser_folderm;
isMusicIcon = EFalse;
break;
//DEL-START PTX824
// case ETypeMassUserFolder:
// iconBodyId = EMbmDataboxUser_folder_mass;
// iconMaskId = EMbmDataboxUser_folder_massm;
// isMusicIcon = EFalse;
// break;
//DEL-START PTX824
//DEL-START PTX824
// case ETypeMsUserFolder:
// iconBodyId = EMbmDataboxUser_folder_ms;
// iconMaskId = EMbmDataboxUser_folder_msm;
// isMusicIcon = EFalse;
// break;
//DEL-START PTX824
case ETypeSdUserFolder:
iconBodyId = EMbmDataboxUser_folder_sd;
iconMaskId = EMbmDataboxUser_folder_sdm;
isMusicIcon = EFalse;
break;
//DEL-START PTX824
// case ETypeMsIcon:
// iconBodyId = EMbmDataboxMs_icon;
// iconMaskId = EMbmDataboxMs_iconm;
// isMusicIcon = EFalse;
// break;
//DEL-START PTX824
case ETypeSdIcon:
iconBodyId = EMbmDataboxSd_icon;
iconMaskId = EMbmDataboxSd_iconm;
isMusicIcon = EFalse;
break;
case ETypeUimRestrictedFile:
iconBodyId = EMbmDataboxDb_com_uimrestrict;
iconMaskId = EMbmDataboxDb_com_uimrestrictm;
isMusicIcon = EFalse;
break;
case ETypeCompleteImotionFile:
iconBodyId = EMbmMusicMc_full_dl_no_redistribute_icon;
iconMaskId = EMbmMusicMc_full_dl_no_redistribute_iconm;
break;
case ETypeIncompleteImotionFile:
iconBodyId = EMbmMusicMc_full_dl_mid_flow_icon;
iconMaskId = EMbmMusicMc_full_dl_mid_flow_iconm;
break;
case ETypeMp3File:
iconBodyId = EMbmMusicMc_mp3;
iconMaskId = EMbmMusicMc_mp3m;
break;
case EType3gppFile:
iconBodyId = EMbmMusicMc_3gpp;
iconMaskId = EMbmMusicMc_3gppm;
break;
case ETypeMsaFile:
//MOD-START PTX824
// iconBodyId = EMbmMusicMc_ms_ad_distribution;
// iconMaskId = EMbmMusicMc_ms_ad_distributionm;
iconBodyId = EMbmMusicMc_atrac;
iconMaskId = EMbmMusicMc_atracm;
//MOD-END PTX824
break;
//ADD-START PTX824
case ETypeWMAFile:
iconBodyId = EMbmMusicMc_wma;
iconMaskId = EMbmMusicMc_wmam;
break;
//ADD-END PTX824
case ETypeUnknown:
default:
// 傾僀僐儞偼昞帵偟側偄傕偺偲偡傞
break;
}
if (isMusicIcon)
{
resourcePath.Set(KMusicResourcePath);
}
else
{
resourcePath.Set(KDataBoxResourcePath);
}
CSkonCombinedText* text = new(ELeave) CSkonCombinedText();
CleanupStack::PushL(text);
text->ConstructL();
HBufC* icon;
if (iconBodyId != KMinTInt) // 傾僀僐儞庬暿偑懚嵼偡傞応崌
{
CArrayPtr<CGulIcon>* array = new(ELeave) CArrayPtrFlat<CGulIcon>(1);
CleanupStack::PushL(array);
array->AppendL(CSmbMusicAPLibIconCache::LoadImagePairL(resourcePath, iconBodyId, iconMaskId));
CleanupStack::Pop(array);
text->SetIconArrayL(array);
_LIT(KFormat, "%c%04d");
icon = SmbMusicAPFileMgrUtility::SPrintfLC(KFormat, KCombinedTextIdCode, 0);
}
else // 傾僀僐儞庬暿偑晄柧偺応崌
{
icon = HBufC::New(0);
}
HBufC* message = SmbAfWordingFormatter::FormatLC(aBaseMessage, icon, &aString);
text->SetTextL(*message);
CleanupStack::PopAndDestroy(message);
CleanupStack::PopAndDestroy(icon);
return text;
}
/**
*
* @param[in,out] aTitleBar 僞僀僩儖僶乕
* @param[in] aTitleResourceId 僞僀僩儖暥帤楍偺儕僜乕僗ID
* @param[in] aAddtionalResourceId 晅壛暥帤楍偺儕僜乕僗ID
*/
void CSmbMusicAPFileMgrViewBase::SetTitleBarL(CSkonTitleBar* aTitleBar, TInt aTitleResourceId, TInt aAddtionalResourceId/* = 0*/)
{
// 僞僀僩儖暥帤楍偺愝掕
HBufC* titleBuf = NULL; // 僞僀僩儖暥帤楍
titleBuf = CEikonEnv::Static()->AllocReadResourceLC(aTitleResourceId);
aTitleBar->SetTextL(*titleBuf, CSkonTitleBar::ETitle);
CleanupStack::PopAndDestroy(titleBuf);
// 晅壛暥帤楍偺愝掕
CSkonCombinedText* additional = new(ELeave) CSkonCombinedText(); // 晅壛暥帤楍
CleanupStack::PushL(additional);
if (aAddtionalResourceId != 0) // 晅壛暥帤楍傪愝掕偡傞応崌
{
TResourceReader reader; // 儕僜乕僗儕乕僟惗惉
CEikonEnv::Static()->CreateResourceReaderLC(reader, aAddtionalResourceId);
additional->ConstructFromResourceL(reader);
CleanupStack::PopAndDestroy(); // buffer of reader
}
else // 晅壛暥帤楍傪愝掕偟側偄応崌
{
// 嬻偺暥帤楍傪愝掕偡傞
_LIT(KEmptyText, "");
additional->ConstructL();
additional->SetTextL(KEmptyText);
}
aTitleBar->SetCombinedTextL((const CSkonCombinedText*)additional, CSkonTitleBar::EAdditional);
additional->SetIconOwnedExternally(ETrue);
CleanupStack::PopAndDestroy(additional);
aTitleBar->DrawNow();
}
//ADD-START PTX824
/**
* 儕僜乕僗ID偐傜儚乕僨傿儞僌ID傪庢摼
*/
#if 0
TInt CSmbMusicAPFileMgrViewBase::WordingID(TInt aResourceId)
{
switch (aResourceId)
{
//慖戰僟僀傾儘僌(嶍彍妋擣(慖戰))
case R_SELECTION_DIALOG_MP03P009:
return R_SMB_AF_STR_MSG168;
// 慖戰僟僀傾儘僌(慖戰堏摦妋擣)
case R_SELECTION_DIALOG_MP03P027:
return R_SMB_AF_STR_MSG096;
// 慖戰僟僀傾儘僌(嶍彍妋擣(1審))
case R_SELECTION_DIALOG_MP04P012:
return R_SMB_AF_STR_MSG011;
// 妋擣僟僀傾儘僌(儐乕僓僼僅儖僟堏摦姰椆)
case R_CONFIRM_DIALOG_MP03P031:
return R_SMB_AF_STR_MSG009;
// 妋擣僟僀傾儘僌(SD僇乕僪堏摦姰椆)
case R_CONFIRM_DIALOG_SD01P085:
return R_SMB_AF_STR_MSG1542;
// 妋擣僟僀傾儘僌(堏摦拞巭)
case R_CONFIRM_DIALOG_MP03P022:
return R_SMB_AF_STR_MSG101;
// 妋擣僟僀傾儘僌(堏摦晄壜僼傽僀儖偁傝(1審埲忋堏摦))
case R_CONFIRM_DIALOG_MP03P030:
return R_SMB_AF_STR_MSG153;
// 妋擣僟僀傾儘僌(嶍彍拞巭)
case R_CONFIRM_DIALOG_MP04P014:
return R_SMB_AF_STR_MSG102;
// 妋擣僟僀傾儘僌(嶍彍晄壜僼傽僀儖偁傝(1審埲忋嶍彍))
case R_CONFIRM_DIALOG_MP04P016:
return R_SMB_AF_STR_MSG1417;
#ifdef __PTX825MUSICAP__ // 825_katsu 伀
// 妋擣僟僀傾儘僌(儐乕僓僼僅儖僟堏摦姰椆)
case R_CONFIRM_DIALOG_MP03P031_1:
return R_SMB_AF_STR_MSG009;
#endif // __PTX825MUSICAP__ katsu 仾
default:
__ASSERT_DEBUG(EFalse, PANIC(EInvalidStatus));
return KErrNotFound;
}
}
//ADD-END PTX824
#endif
//ADD-START PTX824
/**
* @retval KErrNone 擣徹OK
* @retval KErrCancel 僉儍儞僙儖
*/
TInt CSmbMusicAPFileMgrViewBase::ShowPasswordDialogL(void)
{
iPasswordDialog = new(ELeave) DCM_NAMESPACE::CTSUIPassword;
TInt result = KErrCancel;
result = iPasswordDialog->ShowLD();
iPasswordDialog = NULL;
return result;
}
/**
* @note 杮娭悢偼巊梡偝傟偰偄傑偣傫丏
*/
void CSmbMusicAPFileMgrViewBase::ClosePasswordDialog(void)
{
if (iPasswordDialog)
{
iPasswordDialog->Close();
iPasswordDialog = NULL;
}
//ADD-END PTX824
// end of SmbMusicAPFileMgrViewBase.cpp
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -