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

📄 smbmusicapfilemgrimageview.cpp

📁 索爱手机代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
						{				
						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 + -