📄 smbmusicapfilemgrimageview.cpp
字号:
{
ShowConfirmDialogL(R_CONFIRM_DIALOG_MP04P004);
}
break;
//TRK6980 8/25 start
case ESmbDbxReturnErrResourceEmpty: // 審悢挻夁
ShowWarningDialogL(R_WARNING_DIALOG_DBOX01P091);
break;
//TRK6980 8/25 end
//TRK7690 8/25 start
case ESmbDbxReturnErrSizeOver: // 嬻偒梕検側偟
ShowWarningDialogL(R_WARNING_DIALOG_DBOX01P066);
break;
//TRK7690 8/25 end
default:
if (iAppUi.HasUnMountedMemory()) // 奜晹儊儌儕偑敳嫀偝傟偨応崌
{
iCmd->HandleViewCommandL(ECmdShowExtMemoryView); // 奜晹儊儌儕夋柺偵慗堏偡傞
return;
}
//ADD-START PTX824
else if (iAppUi.HasMemoryModeResourceNG()) // 儊儌儕儌乕僪儕僜乕僗偑夝曻偝傟偨応崌
{
// 儊儌儕儌乕僪惂尷夋柺偵慗堏
iCmd->HandleViewCommandL(ECmdShowMemoryModeBusyView);
return;
}
else if (iAppUi.HasMTPModeResourceNG()) // MTP儌乕僪儕僜乕僗偑夝曻偝傟偨応崌
{
// MTP儌乕僪惂尷夋柺偵慗堏
iCmd->HandleViewCommandL(ECmdShowMTPModeBusyView);
return;
}
else if (iAppUi.HasResourceNG()) // SDBind儕僜乕僗夝曻偝傟偨応崌
{
// 儕僜乕僗嫞崌惂尷夋柺偵慗堏
iCmd->HandleViewCommandL(ECmdShowRequestResourceNGView);
return;
}
//ADD-END PTX824
break;
}
}
}
//TRK6845 8/23 end
}
TBool isUpdated = EFalse;
TSmbMusicAPLibImageType imageType = ESmbMusicAPLibImageTypeOther;
switch (localViewType)
{
// 夋憸昞帵/曐懚夋柺(僕儍働僢僩夋憸)偺応崌
case ETypeDbxJacketImage:
case ETypeMassJacketImage:
case ETypeMsJacketImage:
case ETypeSdJacketImage:
//ADD-START PTX824
case ETypeSdBindJacketImage:
//ADD-END PTX824
//TRK11864 10/19 start
// 庢摼偟偨憤枃悢(totalCount)偑巇條挻夁偺応崌丆巇條斖埻撪偵娵傔崬傓
if (totalCount > KSmbMusicAPFileMgrMaxNumOfJacketImages)
{
totalCount = KSmbMusicAPFileMgrMaxNumOfJacketImages;
}
//TRK11864 10/19 end
iViewType = localViewType;
imageType = ESmbMusicAPLibImageTypeJacket;
isUpdated = ETrue;
break;
//ADD-END PTX824
// WMA夋憸昞帵/曐懚夋柺(僕儍働僢僩夋憸)偺応崌
case ETypeSdWMAJacketImage:
// 庢摼偟偨憤枃悢(totalCount)偑巇條挻夁偺応崌丆巇條斖埻撪偵娵傔崬傓
if (totalCount > KSmbMusicAPFileMgrMaxNumOfWMAJacketImages)
{
totalCount = KSmbMusicAPFileMgrMaxNumOfWMAJacketImages;
}
iViewType = localViewType;
imageType = ESmbMusicAPLibImageTypeJacket;
isUpdated = ETrue;
break;
//ADD-END PTX824
// 夋憸昞帵/曐懚夋柺(壧帉夋憸)偺応崌
case ETypeDbxLyricsImage:
case ETypeMassLyricsImage:
case ETypeMsLyricsImage:
case ETypeSdLyricsImage:
//ADD-START PTX824
case ETypeSdBindLyricsImage:
//ADD-END PTX824
//TRK11864 10/19 start
// 庢摼偟偨憤枃悢(totalCount)偑巇條挻夁偺応崌丆巇條斖埻撪偵娵傔崬傓
if (totalCount > KSmbMusicAPFileMgrMaxNumOfLyricsImages)
{
totalCount = KSmbMusicAPFileMgrMaxNumOfLyricsImages;
}
//TRK11864 10/19 end
iViewType = localViewType;
imageType = ESmbMusicAPLibImageTypeLyric;
isUpdated = ETrue;
break;
default:
break;
}
if (isUpdated)
{
/// 夋憸傪庢摼偡傞儈儏乕僕僢僋傾僀僥儉傪搊榐
static_cast<CSmbMusicAPFileMgrImageCmd*>(iCmd)->SetMusicItem(musicItem, imageType);
// 僉乕僈僀僟儞僗偺乽曐懚乿僉乕傪昞帵偝偣側偄(僨僼僅儖僩)
KeyGuidance()->MakeVisibleKey(ESkonKeyGuidanceSoftKeyRight, EFalse);
// 僉乕僈僀僟儞僗偺嵍塃僉乕傪昞帵偝偣側偄(僨僼僅儖僩)
SetArrowState(0);
KeyGuidance()->Apply();
/// 嵟弶偺夋憸傪昞帵偡傞
//CQ-TRK12911 MOD-START PTX824
//僩乕僞儖悢傪旕昞帵偵偡傞偨傔
// iTotalCount = totalCount;
iTotalCount = 0;
//CQ-TRK12911 MOD-END PTX824
iAppUi.HandleCommandL(ECmdShowFirstImage);
}
}
/**
* @param[in] aKeyEvent 僉乕僀儀儞僩
* @param[in] aType 僀儀儞僩僞僀僾
* @return 僉乕儗僗億儞僗
*/
TKeyResponse CSmbMusicAPFileMgrImageView::OfferKeyEventImplL(const TKeyEvent& aKeyEvent, TEventCode /*aType*/)
{
TKeyResponse res = EKeyWasNotConsumed;
switch (aKeyEvent.iCode)
{
// 僋儕傾僉乕
case EWcdmaMpKeyClear:
// 慜夋柺偵慗堏
iAppUi.HandleCommandL(ECmdBackView);
return EKeyWasConsumed;
default:
break;
}
return res;
}
/**
* @param[in] aResult 僋儘乕僘寢壥
* @param[in] aDialog 僋儘乕僘偟偨僟僀傾儘僌
* @param[in] aDialogResourceId 僋儘乕僘偟偨僟僀傾儘僌偺儕僜乕僗ID
* @leave KErrArgument 僋儘乕僘偟偨僟僀傾儘僌偑憐掕奜偺抣偺応崌
*/
void CSmbMusicAPFileMgrImageView::HandleCloseEventImplL(TInt aResult, CSkonDialogBase* aDialog, TInt aDialogResourceId)
{
// 僋儘乕僘偟偨僟僀傾儘僌偑慖戰僟僀傾儘僌偺応崌
if (aDialog == iSelectionDialog)
{
if (aResult == 0) // 慖戰僟僀傾儘僌忋偱乽偼偄乿偑慖戰偝傟偨応崌
{
switch (aDialogResourceId)
{
case R_SELECTION_DIALOG_MP04P006:
//TRK5331 8/1 start
case R_SELECTION_DIALOG_MP04P022:
//TRK5331 8/1 end
case R_SELECTION_DIALOG_MP04P026:
iCmd->HandleViewCommandL(ECmdSaveImage);
break;
default:
__ASSERT_ALWAYS(EFalse, PANIC(KErrArgument));
break;
}
}
else // 慖戰僟僀傾儘僌忋偱乽偄偄偊乿偑慖戰偝傟偨応崌
{
// 側偵傕張棟偟側偄
}
}
//TRK9260 10/12 start
// 僋儘乕僘偟偨僟僀傾儘僌偑恑捇僟僀傾儘僌偺応崌
else if (aDialog == iProgressDialog)
{
if (aResult == EClearKey)
{
switch (aDialogResourceId)
{
case R_PROGRESS_DIALOG_MP04P028:
iAppUi.HandleCommandL(ECmdCancel);
return;
default:
return;
}
}
//CQ-TRK8108 ADD-START PTX824
// 僉乕僈僀僟儞僗偺嵍塃僉乕偺昞帵
SetArrowState(iTotalCount);
//CQ-TRK8108 ADD-END PTX824
KeyGuidance()->MakeVisibleKey(ESkonKeyGuidanceSoftKeyRight, iSoftRightKey);
KeyGuidance()->Apply();
//CQ-TRK8108 DEL-START PTX824
// KeyGuidance()->DrawNow();
//CQ-TRK8108 DEL-END PTX824
}
//TRK9260 10/12 end
// 僋儘乕僘偟偨僟僀傾儘僌偑慖戰/恑捇僟僀傾儘僌埲奜偺応崌
else
{
switch (aDialogResourceId)
{
case R_CONFIRM_DIALOG_MP04P004:
case R_WARNING_DIALOG_DBOX01P066:
case R_WARNING_DIALOG_DBOX01P091:
if (iAppUi.HasUnMountedMemory()) // 奜晹儊儌儕偑敳嫀偝傟偨応崌
{
DrawNow(); // 僟僀傾儘僌徚嫀偵傛傝塭偵側偭偨夋憸傪嵞昤夋偡傞
iCmd->HandleViewCommandL(ECmdShowExtMemoryView); // 奜晹儊儌儕夋柺偵慗堏偡傞
return;
}
//ADD-START PTX824
else if (iAppUi.HasMemoryModeResourceNG()) // 儊儌儕儌乕僪儕僜乕僗偑夝曻偝傟偨応崌
{
// 儊儌儕儌乕僪拞惂尷夋柺偵慗堏
DrawNow(); // 僟僀傾儘僌徚嫀偵傛傝塭偵側偭偨夋憸傪嵞昤夋偡傞
iCmd->HandleViewCommandL(ECmdShowMemoryModeBusyView); // 儊儌儕儌乕僪拞惂尷夋柺偵慗堏
return;
}
else if (iAppUi.HasMTPModeResourceNG()) // MTP儌乕僪儕僜乕僗偑夝曻偝傟偨応崌
{
// MTP儌乕僪拞惂尷夋柺偵慗堏
DrawNow(); // 僟僀傾儘僌徚嫀偵傛傝塭偵側偭偨夋憸傪嵞昤夋偡傞
iCmd->HandleViewCommandL(ECmdShowMTPModeBusyView); // MTP儌乕僪拞惂尷夋柺偵慗堏
return;
}
else if (iAppUi.HasResourceNG()) // SDBind儕僜乕僗夝曻偝傟偨応崌
{
// 儕僜乕僗嫞崌惂尷夋柺偵慗堏
DrawNow(); // 僟僀傾儘僌徚嫀偵傛傝塭偵側偭偨夋憸傪嵞昤夋偡傞
iCmd->HandleViewCommandL(ECmdShowRequestResourceNGView); // 儕僜乕僗嫞崌惂尷夋柺偵慗堏
return;
}
//ADD-END PTX824
break;
default:
break;
}
}
}
/**
* @retval ESkonKeyGuidanceArrowLeft 嵍栴報僉乕傪昞帵
* @retval ESkonKeyGuidanceArrowRight 塃栴報僉乕傪昞帵
*/
TInt CSmbMusicAPFileMgrImageView::CurrentArrowState(void) const
{
return iArrowState;
}
/**
* 僀儊乕僕儔儀儖偍傛傃夋憸枃悢昞帵傪徚嫀偡傞丏
*/
void CSmbMusicAPFileMgrImageView::ClearImage(void)
{
DeleteControl(iImageLabel);
iImageLabel = NULL;
iTotalCount = 0;
iIndex = 0;
}
/**
* 夋憸偺憤悢(aTotal)偐傜丆僉乕僈僀僟儞僗忋偺嵍塃栴報僉乕偺桳柍傪iArrowState偵弌椡偡傞丏
* @param[in] aTotal 夋憸偺憤悢
*/
void CSmbMusicAPFileMgrImageView::SetArrowState(TInt aTotal)
{
iArrowState = 0;
if (aTotal > 1)
{
iArrowState = ESkonKeyGuidanceArrowLeft | ESkonKeyGuidanceArrowRight;
}
}
/**
* 夋憸偺枃悢昞帵乽n/m乿偍傛傃壧帉夋憸/僕儍働僢僩夋憸傪昤夋偡傞丏
* @param[in] aRect 昤夋椞堟
*/
void CSmbMusicAPFileMgrImageView::Draw(const TRect& aRect) const
{
//MOD-START PTX824
// CAfView::Draw(aRect);
CSmbAfView::Draw(aRect);
//MOD-END PTX824
// 夋憸偺枃悢偑1埲忋偱偁傟偽丆夋柺偵乽n/m乿傪昤夋偡傞丏0埲壓偱偁傟偽昤夋偟側偄丏
if (iTotalCount > 0 && iIndex >= 0)
{
CWindowGc& gc = CCoeControl::SystemGc();
// 尰嵼昞帵拞偺夋憸枃悢帤偺昤夋
TInt iconBodyId = EMbmPhotoParts_commo_1 + (iIndex * 2);
TInt iconMaskId = iconBodyId + 1;
const CGulIcon* icon = iIconCache->Icon(iconBodyId, iconMaskId);
__ASSERT_DEBUG(icon != NULL, PANIC(KErrArgument));
gc.BitBltMasked(KDenominatorImagePos, icon->Bitmap(), TRect(TPoint(0, 0), icon->Bitmap()->SizeInPixels()), icon->Mask(), EFalse);
// 僗儔僢僔儏('/')暥帤偺昤夋
icon = iIconCache->Icon(EMbmPhotoParts_commo_slash, EMbmPhotoParts_commo_slashm);
__ASSERT_DEBUG(icon != NULL, PANIC(KErrArgument));
gc.BitBltMasked(KSlashImagePos, icon->Bitmap(), TRect(TPoint(0, 0), icon->Bitmap()->SizeInPixels()), icon->Mask(), EFalse);
// 慡夋憸枃悢帤偺昤夋
iconBodyId = EMbmPhotoParts_commo_0 + (iTotalCount * 2);
iconMaskId = iconBodyId + 1;
icon = iIconCache->Icon(iconBodyId, iconMaskId);
__ASSERT_DEBUG(icon != NULL, PANIC(KErrArgument));
gc.BitBltMasked(KDominatorImagePos, icon->Bitmap(), TRect(TPoint(0, 0), icon->Bitmap()->SizeInPixels()), icon->Mask(), EFalse);
}
}
// end of SmbMusicAPFileMgrImageView.cpp
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -