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

📄 smbmusicapfilemgrcategorycmd.cpp

📁 索爱手机代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*--------------------------------------------------------------------*/
/**
 * @file  SmbMusicAPFileMgrCategoryCmd.cpp
 * @brief 儈儏乕僕僢僋僼傽僀儖娗棟Category僐儅儞僪僋儔僗
 */
/*--------------------------------------------------------------------*/
//曄峏棜楌
//擔晅          |曄峏幰     |撪梕
//--------------+-----------+-------------------------------------------
//2006/07/04    |SDNA挿旜   |怴婯嶌惉
//2006/07/11    |SDNA挿旜   |奜晹儊儌儕憓敳帪偵奺庬僟僀傾儘僌傪弌偡傛偆偵廋惓
//              |           |  - HandleViewCommandImplL()偺廋惓
//2006/07/15    |SDNA挿旜   |儘乕僇儖價儏乕愗懼屻偵儕僗僩儃僢僋僗偺僨僼僅儖僩僼僅乕僇僗傪巜掕偱偒傞傛偆偵曄峏
//              |           |  - HandleChangeLocalViewL()傪曄峏
//2006/07/28    |SDNA挿旜   |TSmbMusicAPFileMgrViewType::ETypeMsMsaGroup傪嶍彍 (ETypeMsMsaFile偵摑崌)
//              |           |  - HandleViewCommandImplL()傪曄峏
//2006/08/15    |SDNA挿旜   |MusicDB峔抸拞偵傛傞憖嶌梷惂婡擻傪捛壛
//              |           |  - HandleViewCommandImplL()傪曄峏
//2006/09/05    |SDNA挿旜   |MusicDB峔抸拞偺僟僀傾儘僌昞帵僞僀儈儞僌偺廋惓
//              |           |  - HandleViewCommandImplL()傪廋惓
//2006/09/16    |SDNA挿旜   |儘僌弌椡張棟偺曄峏
//2006/09/25    |SDNA挿旜   |僐儅儞僪ID:ECmdPrepareToExit偺張棟傪捛壛 (HandleViewCommandImplL())
//2006/09/28    |SDNA挿旜   |僐儅儞僪ID:ECmdPrepareToExit偺張棟傪嶍彍 (HandleViewCommandImplL())
//2006/09/29    |SDNA挿旜   |僼僅儖僟慖戰夋柺(SD僇乕僪)偺儕僗僩昞帵傪廋惓 (HandleViewCommandImplL()) (TRK10637)
//2006/10/01    |SDNA挿旜   |DB峔抸奐巒捠抦僐儅儞僪(ECmdNotifyUpdating*)偵懳墳
//              |           |  - HandleViewCommandImplL()傪廋惓
//2006/10/01    |SDNA挿旜   |HandleShowExtMemoryView()傪廋惓
//2006/10/03    |SDNA挿旜   |HandleShowExtMemoryView()傪嶍彍 (CSmbMusicAPFileMgrCmdBase偵堏峴)
//2006/10/11    |SDNA挿旜   |__ASSERT_DEBUG(EFalse, PANIC(KErrArgument))傪嶍彍 (HandleViewCommandImplL())
//2006/10/16    |SDNA挿旜   |儘僌僒乕僶傪僐儞僗僩儔僋僞偐傜庢摼偟側偄傛偆偵曄峏
//2006/10/25    |SDNA挿旜   |iView傪嶍彍 (僐儞僗僩儔僋僞)
//              |           |  - 昁梫偵墳偠偰iView傪CSmbMusicAPFileMgrCategoryView宆偵僗僞僥傿僢僋僉儍僗僩偡傞
//--------------+-----------+-------------------------------------------
//PTX824
//2007/03/16    |SEMC崃绮   |僼僅儖僟慖戰夋柺乮杮懱奼挘儊儌儕乯偺幚憰捛壛
//2007/03/19    |SEMC崃绮   |儕僜乕僗嫞崌庢摼幚憰/儕僜乕僗嫞崌拞偺惂尷夋柺幚憰
//2007/04/03    |SEMC崃绮   |杮懱奼挘嶍彍懳墳
//2007/04/05    |SEMC崃绮   |儊儌儕儌乕僪拞偺惂尷夋柺幚憰

#include "SmbMusicAPFileMgrCommonDef.h"
#include "SmbMusicAPFileMgrCategoryCmd.h"
#include "SmbMusicAPFileMgrDebugLog.h"
#include "SmbMusicAPFileMgr.hrh"
#include <SmbMusicAPFileMgrExternalInterface.h>

#include <SmbMusicAPFileMgr.rsg>

USING_NAMESPACE_SEMCJ


/**
 * @param[in]		aAppUi				傾僾儕働乕僔儑儞UI
 * @param[in]		aView				傾僾儕働乕僔儑儞價儏乕
 * @param[in]		aController			傾僋僔儑儞僐儞僩儘乕儔
 */
CSmbMusicAPFileMgrCategoryCmd::CSmbMusicAPFileMgrCategoryCmd(CSmbMusicAPFileMgrAppUi& aAppUi,
                                                             CSmbMusicAPFileMgrCategoryView& aView,
                                                             CSmbMusicAPFileMgrActionController& aController)
	:CSmbMusicAPFileMgrCmdBase(aAppUi, aView, aController)
	{
	//
	}


/**
 * @note 嬻幚憰偱偡
 */
CSmbMusicAPFileMgrCategoryCmd::~CSmbMusicAPFileMgrCategoryCmd()
	{
	// 傾僋僔儑儞僐儞僩儘乕儔傪儕僙僢僩偡傞
	iController.Reset();
	}


/**
 * @param[in]		aCommand	僐儅儞僪ID
 */
void CSmbMusicAPFileMgrCategoryCmd::HandleViewCommandImplL(TInt aCommand)
	{
	TSmbMusicAPFileMgrViewType viewType = iView.ViewType();
	// 乽儊儌儕堦棗夋柺乿偵偍偗傞僴儞僪儕儞僌
	if(viewType == ETypeMemoryCategory)
		{
		switch (aCommand)
			{
		case ECmdListItemIndex0:
			HandleChangeLocalView(ETypeDbxImotionFile);			// 僼儖妝嬋-僼僅儖僟&僼傽僀儖堦棗夋柺偵慗堏
			break;
		case ECmdListItemIndex1:
//MOD-START PTX824
//			HandleChangeLocalView(ETypeMassMp3File);			// MP3懠-僼僅儖僟&僼傽僀儖堦棗夋柺偵慗堏
//			HandleChangeLocalView(ETypeMassCategory);			// 僼僅儖僟慖戰夋柺乮杮懱奼挘乯偵慗堏
			HandleShowExtMemoryView();							// 奜晹儊儌儕夋柺偵慗堏
//MOD-END PTX824
			break;
//DEL-START PTX824
//		case ECmdListItemIndex2:
//			HandleShowExtMemoryView();							// 奜晹儊儌儕夋柺偵慗堏
//			break;
//DEL-START PTX824
		case ECmdNotifyMountedMs:
		case ECmdNotifyMountingMs:
		case ECmdNotifyUnMountedMs:
		case ECmdNotifyErrorMs:
		case ECmdNotifyMountedSd:
		case ECmdNotifyMountingSd:
		case ECmdNotifyUnMountedSd:
		case ECmdNotifyErrorSd:
		case ECmdNotifyUpdatingDbMass:
		case ECmdNotifyUpdatingDbMs:
		case ECmdNotifyUpdatingDbSd:
//ADD-START PTX824
		//儊儌儕儌乕僪拞捠抦
		case ECmdNotifyErrorCommsBreakSd:
//ADD-END PTX824
			break;
//ADD-START PTX824
		//儊儌儕儌乕僪儕僜乕僗妉摼OK僐儅儞僪
		case ECmdNotifyRequestMemoryModeResourceOK:
			//僉乕梷惂夝彍
			iView.EnableKeyEvent();
			HandleChangeLocalView(ETypeSdCategory);			// 僼僅儖僟慖戰夋柺(SD僇乕僪)偵慗堏
			break;
		//儊儌儕儌乕僪儕僜乕僗妉摼NG僐儅儞僪
		case ECmdNotifyRequestMemoryModeResourceNG:
			//僉乕梷惂夝彍
			iView.EnableKeyEvent();
			HandleChangeLocalView(ETypeMemoryModeBusyCategory);		//  儕僜乕僗夝曻嫞崌惂尷夋柺偵慗堏
			break;
		//儊儌儕儌乕僪儕僜乕僗夝曻僐儅儞僪
		case ECmdNotifyReleaseMemoryModeResource:
			break;
//ADD-END PTX824
		default:
			break;
			}
		}
	// 乽僼僅儖僟慖戰夋柺(儊儌儕乕僗僥傿僢僋)乿偵偍偗傞僴儞僪儕儞僌
	else if(viewType == ETypeMsCategory)
		{
		switch (aCommand)
			{
		case ECmdListItemIndex0:
			HandleChangeLocalView(ETypeMsMsaFile);				// M.S.僆乕僨傿僆-僌儖乕僾/僼傽僀儖堦棗夋柺(儊儌儕乕僗僥傿僢僋)偵慗堏
			break;
		case ECmdListItemIndex1:
			HandleChangeLocalView(ETypeMsMp3File);				// MP3懠-僼僅儖僟&僼傽僀儖堦棗夋柺(儊儌儕乕僗僥傿僢僋)偵慗堏
			break;
		case ECmdBackView:
			HandleChangeLocalView(ETypeMemoryCategory,
			                       KSmbMusicAPFileMgrMemoryCategoryIndexOfExtMemory);	// 儊儌儕堦棗夋柺偵慗堏(奜晹儊儌儕偵僼僅乕僇僗)
			break;
		case ECmdChangeMemory:
			HandleChangeLocalView(ETypeDbxImotionFile);			// 僼儖妝嬋-僼僅儖僟&僼傽僀儖堦棗夋柺(僨乕僞BOX)偵慗堏
			break;
		case ECmdShowUpdatingDbCategoryView:
		case ECmdNotifyUpdatingDbMs:
			HandleChangeLocalView(ETypeUpdatingDbCategory);		// DB峔抸拞偺惂尷夋柺偵慗堏
			break;
		case ECmdNotifyMountedMs:				// 儅僂儞僩姰椆(巊梡壜擻忬懺)
			iView.UpdateProgress(100);
			iView.CloseDialog();								// HandleCloseEventL()撪偱乽僼僅儖僟慖戰夋柺(儊儌儕乕僗僥傿僢僋)乿偵慗堏
			break;			
		case ECmdNotifyMountingMs:				// 儅僂儞僩拞
			static_cast<CSmbMusicAPFileMgrCategoryView&>(iView).ShowDialogIfErrorL();
			break;
		case ECmdNotifyUnMountedMs:				// 枹憓擖
			iView.CloseAndDeleteDialog();
			HandleChangeLocalView(ETypeNoExtMemoryCategory);	// 奜晹儊儌儕側偟夋柺偵慗堏
			break;
		case ECmdNotifyErrorMs:					// 儅僂儞僩僄儔乕
			static_cast<CSmbMusicAPFileMgrCategoryView&>(iView).ShowDialogIfErrorL();
			static_cast<CSmbMusicAPFileMgrCategoryView&>(iView).SetListBoxDisableL(ETrue);
			break;
		case ECmdNotifyUpdatingDbMass:
		case ECmdNotifyUpdatingDbSd:
			break;
		default:
			break;
			}
		}
	// 乽僼僅儖僟慖戰夋柺(SD僇乕僪)乿偵偍偗傞僴儞僪儕儞僌
	else if(viewType == ETypeSdCategory)
		{
		switch (aCommand)
			{
		case ECmdListItemIndex0:
			HandleChangeLocalView(ETypeSdMp3File);				// MP3懠-僼僅儖僟&僼傽僀儖堦棗夋柺(SD僇乕僪)偵慗堏
			break;
		case ECmdListItemIndex1:
//MOD-START PTX824
//			HandleChangeLocalView(ETypeSdImotionFile);			// 僼儖妝嬋-僼僅儖僟&僼傽僀儖堦棗夋柺(SD僇乕僪)偵慗堏
			HandleRequestAllocResourceL();						// SD-Bind儕僜乕僗庢摼
//MOD-END PTX824
			break;
//ADD-START PTX824
		case ECmdListItemIndex2:
			HandleChangeLocalView(ETypeSdWMAFile);				// WMA-僼僅儖僟&僼傽僀儖堦棗夋柺(SD僇乕僪)偵慗堏
			break;
		case ECmdListItemIndex3:
			HandleChangeLocalView(ETypeSdMsaFile);				// AAD-僌儖乕僾/僼傽僀儖堦棗夋柺(SD僇乕僪)偵慗堏
			break;
//ADD-END PTX824
//ADD-START PTX824
		//婡擻儊僯儏乕昞帵
		case ECmdShowSubMenu:
			HandleShowSubMenuL();
			break;
//ADD-END PTX824
		case ECmdBackView:
//ADD-START PTX824
			//慡儕僜乕僗夝曻
			iAppUi.ReleaseAllResourceL();
//ADD-END PTX824
			HandleChangeLocalView(ETypeMemoryCategory,
			                       KSmbMusicAPFileMgrMemoryCategoryIndexOfExtMemory);	// 儊儌儕堦棗夋柺偵慗堏(奜晹儊儌儕偵僼僅乕僇僗)
			break;
		case ECmdChangeMemory:
//ADD-START PTX824
			//慡儕僜乕僗夝曻
			iAppUi.ReleaseAllResourceL();
//ADD-END PTX824
			HandleChangeLocalView(ETypeDbxImotionFile);			// 僼儖妝嬋-僼僅儖僟&僼傽僀儖堦棗夋柺(僨乕僞BOX)偵慗堏
			break;
		case ECmdShowUpdatingDbCategoryView:
		case ECmdNotifyUpdatingDbSd:
//ADD-START PTX824
			iView.CloseDialog();
			//慡儕僜乕僗夝曻
			iAppUi.ReleaseAllResourceL();
//ADD-END PTX824
			HandleChangeLocalView(ETypeUpdatingDbCategory);		//  DB峔抸拞偺惂尷夋柺偵慗堏
			break;
		case ECmdNotifyMountedSd:				// 儅僂儞僩姰椆(巊梡壜擻忬懺)
			iView.UpdateProgress(100);
			iView.CloseDialog();								// HandleCloseEventL()撪偱乽僼僅儖僟慖戰夋柺(SD僇乕僪)乿偵慗堏
			break;
		case ECmdNotifyMountingSd:				// 儅僂儞僩拞
			static_cast<CSmbMusicAPFileMgrCategoryView&>(iView).ShowDialogIfErrorL();
			break;
		case ECmdNotifyUnMountedSd:				// 枹憓擖
//CQ-TRK9755 ADD-START PTX824
			//慡儕僜乕僗夝曻
			iAppUi.ReleaseAllResourceL();
			switch (iController.ActionStatus())
				{
			case CSmbMusicAPFileMgrActionController::ERequestFormatMusicData:
				iController.CancelAction();
				iAppUi.SetHasUnMountedMemory(ETrue);	// 奜晹儊儌儕敳嫀嵪傒僼儔僌偵僙僢僩偡傞
				break;
			default:
				iView.CloseDialog();
				HandleChangeLocalView(ETypeNoExtMemoryCategory);	// 奜晹儊儌儕側偟夋柺偵慗堏			
				break;
				}
//CQ-TRK9755 ADD-END PTX824
//CQ-TRK9755 DEL-START PTX824
//MOD-START PTX824
//			iView.CloseAndDeleteDialog();
//			iView.CloseDialog();
//MOD-END PTX824
//ADD-START PTX824
			//慡儕僜乕僗夝曻
//			iAppUi.ReleaseAllResourceL();
//ADD-END PTX824
//			HandleChangeLocalView(ETypeNoExtMemoryCategory);	// 奜晹儊儌儕側偟夋柺偵慗堏
//CQ-TRK9755 DEL-END PTX824
			break;
		case ECmdNotifyErrorSd:					// 儅僂儞僩僄儔乕
			static_cast<CSmbMusicAPFileMgrCategoryView&>(iView).ShowDialogIfErrorL();
			static_cast<CSmbMusicAPFileMgrCategoryView&>(iView).SetListBoxDisableL(ETrue);
			break;
		case ECmdNotifyUpdatingDbMass:
		case ECmdNotifyUpdatingDbMs:
			break;
//ADD-START PTX824
		//儕僜乕僗妉摼OK僐儅儞僪
		case ECmdNotifyRequestSDBindResourceOK:
			//僉乕梷惂夝彍
			iView.EnableKeyEvent();
			HandleChangeLocalView(ETypeSdImotionFile);			// 僼儖妝嬋-僼僅儖僟&僼傽僀儖堦棗夋柺(SD僇乕僪)偵慗堏
			break;
		//儕僜乕僗妉摼NG僐儅儞僪
		case ECmdNotifyRequestSDBindResourceNG:
			//僉乕梷惂夝彍
			iView.EnableKeyEvent();
			HandleChangeLocalView(ETypeRequestRecourceNGCategory);		//  儕僜乕僗夝曻嫞崌惂尷夋柺偵慗堏
			break;
		//儕僜乕僗夝曻僐儅儞僪
		case ECmdNotifyReleaseSDBindResource:
			break;
		//儊儌儕儌乕僪儕僜乕僗夝曻僐儅儞僪
		case ECmdNotifyReleaseMemoryModeResource:
//ADD-START PTX824
		//儊儌儕儌乕僪拞捠抦
		case ECmdNotifyErrorCommsBreakSd:
			iView.CloseDialog();
//ADD-END PTX824
			HandleChangeLocalView(ETypeMemoryModeBusyCategory);		//  儊儌儕儌乕僪拞偺惂尷夋柺偵慗堏
			break;
		//MTP儌乕僪儕僜乕僗夝曻僐儅儞僪
		case ECmdNotifyReleaseMTPModeResource:
			HandleChangeLocalView(ETypeMTPModeBusyCategory);		//  MTP儌乕僪拞偺惂尷夋柺偵慗堏
			break;
//ADD-END PTX824
//ADD-START PTX824
		//WMA僼僅乕儅僢僩妋擣
		case ECmdConfirmWMAFormat:
			HandleWMAFormatL(ETrue);
			break;
		//AAD僼僅乕儅僢僩妋擣
		case ECmdConfirmAADFormat:
			HandleAADFormatL(ETrue);
			break;
		//WMA僼僅乕儅僢僩幚峴
		case ECmdWMAFormat:
			HandleWMAFormatL(EFalse);
			break;
		//AAD僼僅乕儅僢僩幚峴
		case ECmdAADFormat:
			HandleAADFormatL(EFalse);
			break;
		//僼僅乕儅僢僩僉儍儞僙儖
		case ECmdCancel:
			HandleCancelFormat();
			break;
//ADD-END PTX824
		default:
			break;
			}
		}
//ADD-START PTX824
// 乽僼僅儖僟慖戰夋柺(杮懱奼挘)乿偵偍偗傞僴儞僪儕儞僌
	else if(viewType == ETypeMassCategory)
		{
		switch (aCommand)
			{
		case ECmdListItemIndex0:
			HandleChangeLocalView(ETypeMassMp3File);				// MP3懠-僼僅儖僟&僼傽僀儖堦棗夋柺(杮懱奼挘)偵慗堏
			break;
		case ECmdListItemIndex1:
			HandleChangeLocalView(ETypeMassWMAFile);				// WMA-僼僅儖僟&僼傽僀儖堦棗夋柺(杮懱奼挘)偵慗堏乮壖乯
			break;
//TBD-PTX824
		case ECmdListItemIndex2:
			HandleChangeLocalView(ETypeMassMsaFile);					// AAD-僌儖乕僾/僼傽僀儖堦棗夋柺(杮懱奼挘)偵慗堏乮壖乯
			break;
		case ECmdBackView:
			HandleChangeLocalView(ETypeMemoryCategory,
			                       KSmbMusicAPFileMgrMemoryCategoryIndexOfMassFolder);	// 儊儌儕堦棗夋柺偵慗堏(杮懱奼挘偵僼僅乕僇僗)
			break;
		case ECmdChangeMemory:
			HandleShowExtMemoryView();							// 奜晹儊儌儕夋柺偵慗堏
			break;
		case ECmdShowUpdatingDbCategoryView:
		case ECmdNotifyUpdatingDbMass:
			HandleChangeLocalView(ETypeUpdatingMassDbCategory);			//  DB峔抸拞偺惂尷夋柺偵慗堏
			break;
		case ECmdNotifyUpdatingDbSd:
		case ECmdNotifyUpdatingDbMs:
			break;
		default:
			break;
			}
		}
//ADD-END PTX824
	// 乽奜晹儊儌儕側偟夋柺乿偵偍偗傞僴儞僪儕儞僌
	else if(viewType == ETypeNoExtMemoryCategory)
		{
		switch (aCommand)
			{
		case ECmdBackView:
			HandleChangeLocalView(ETypeMemoryCategory,
			                       KSmbMusicAPFileMgrMemoryCategoryIndexOfExtMemory);	// 儊儌儕堦棗夋柺偵慗堏(奜晹儊儌儕偵僼僅乕僇僗)
			break;
		case ECmdChangeMemory:
			HandleChangeLocalView(ETypeDbxImotionFile);			// 僼儖妝嬋-僼僅儖僟&僼傽僀儖堦棗夋柺(僨乕僞BOX)偵慗堏
			break;
		case ECmdNotifyMountingMs:
		case ECmdNotifyMountedMs:
//MOD-START PTX824
//			iView.CloseAndDeleteDialog();
			iView.CloseDialog();
//MOD-END PTX824
			HandleChangeLocalView(ETypeMsCategory);				// 僼僅儖僟慖戰夋柺(儊儌儕乕僗僥傿僢僋)偵慗堏

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -