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

📄 smbmusicapfilemgrfileview.cpp

📁 索爱手机代码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	    || aResourceId == R_SUBMENU_MP03S005)			// SD僇乕僪僼傽僀儖僒僽儊僯儏乕
		{
//TRK6610 8/16 start
//		if ((iViewType != ETypeDbxImotionFile && iViewType != ETypeSdImotionFile)			// 僼儖妝嬋埲奜偺応崌
//		    || imageCount.iLyricCount <= 0)													// 壧帉夋憸偑側偄応崌
		if ((iViewType != ETypeDbxImotionFile && iViewType != ETypeSdImotionFile)			// 僼儖妝嬋埲奜偺応崌
		    || imageCount.iLyricCount <= 0													// 壧帉夋憸偑側偄応崌
		    || !isUimConformityFile															// UIM幚峴惂尷拞僼傽僀儖偺応崌
		    || isIncompleteFile)															// 僟僂儞儘乕僪搑拞僼傽僀儖偺応崌
//TRK6610 8/16 end
			{
			// 乽壧帉昞帵乿傪敿婸搙昞帵偡傞
			CSkonSubMenuItemArray* menuArray = subMenu->MenuItemArrayL();
			TInt index = subMenu->IndexByCommand(menuArray, ECmdShowLyrics);
			subMenu->SetItemDisableL(menuArray, index, ETrue);
			}
		}

//TRK11595 10/14 start
	// 僒僽儊僯儏乕傪嫮惂揑偵暵偠傟傞傛偆偵丆儊儞僶曄悢偵僙僢僩偡傞
	iSubMenu = subMenu;
//TRK11595 10/14 end
	
	// 僒僽儊僯儏乕傪昞帵(儌乕僟儖)
	TInt command = subMenu->ShowLD();				// command: 僐儅儞僪ID

//TRK11595 10/14 start
	iSubMenu = NULL;
	if (iIsCloseModalDialogToExitAppCalled)
		{
		User::Leave(KLeaveExit);
		}
//TRK11595 10/14 end

	// 僒僽儊僯儏乕偺傾僀僥儉偑慖戰偝傟偨応崌偼丆價儏乕僐儅儞僪偵僐儅儞僪ID傪徚旓偝偣傞丏	
	if (command != CSkonSubMenu::EClearKey)			// 僋儕傾僉乕墴壓埲奜偺応崌
		{
		iCmd->HandleViewCommandL(command);
		}
	// 僋儕傾僉乕墴壓帪偺応崌偼丆壗傕張棟偟側偄丏		
	}


/**
 * @retval			KErrNone	擣徹OK
 * @retval			KErrCancel	僉儍儞僙儖
 */
TInt CSmbMusicAPFileMgrFileView::ShowPasswordDialogL(void)
	{
	iPasswordDialog = new(ELeave) DCM_NAMESPACE::CTSUIPassword;
	
	TInt result = KErrCancel;
	TRAPD(error, result = iPasswordDialog->ShowLD());
	iPasswordDialog = NULL;
	if (error)
		{
		OUTPUT_LOG1_ERROR("DCM_NAMESPACE::CTSUIPassword::ShowLD(): %d", error);
		}

//TRK11595 10/14 start
	// 傾僾儕廔椆偵傛傝嫮惂揑偵僋儘乕僘偝傟偨応崌偼丆儕乕僽(KLeaveExit)偡傞丏
	if (iIsCloseModalDialogToExitAppCalled)
		{
		User::Leave(KLeaveExit);
		}
//TRK11595 10/14 end
	
	return result;
	}


/**
 * @note 杮娭悢偼巊梡偝傟偰偄傑偣傫丏
 */
//void CSmbMusicAPFileMgrFileView::ClosePasswordDialog(void)
//	{
//	if (iPasswordDialog)
//		{
//		iPasswordDialog->Close();
//		iPasswordDialog = NULL;
//		}
//	}


/**
 * 堦棗昞帵拞偺奜晹儊儌儕偑撉傒庢傝愱梡偺応崌丆撉傒庢傝愱梡巪偺僟僀傾儘僌傪昞帵偡傞丏
 *
 * @retval			KErrNone	僟僀傾儘僌傪昞帵偟側偄
 * @retval			KErrGeneral	僟僀傾儘僌傪昞帵偟偨 (奜晹儊儌儕偑撉傒庢傝愱梡)
 */
TInt CSmbMusicAPFileMgrFileView::ShowDialogIfErrorL(void)
	{
	// 儊儌儕庬暿傪 memoryType 偵奿擺偡傞
	CSmbExtMemWatcher::TType memoryType = CSmbExtMemWatcher::ENone;	
//CQ-TRK10172 DEL-START PTX824
#ifndef __MASS_STORAGE_DRIVE_OFF__
	if (IS_MASS_VIEWTYPE(iViewType))		// 杮懱奼挘儊儌儕偺応崌
		{
		memoryType = CSmbExtMemWatcher::EMass;		
		}
#endif
#ifndef __MS_DRIVE_OFF__
	else if (IS_MS_VIEWTYPE(iViewType))		// 儊儌儕乕僗僥傿僢僋偺応崌
		{
		memoryType = CSmbExtMemWatcher::EMs;
		}
#endif
//CQ-TRK10172 DEL-END PTX824
	if (IS_SD_VIEWTYPE(iViewType))		// SD僇乕僪偺応崌
		{
		memoryType = CSmbExtMemWatcher::ESd;
		}
	else									// 僨乕僞BOX偺応崌
		{
		return KErrNone;
		}

	// 儊儌儕忬懺傪庢摼偟丆偦偺忬懺偵懳墳偟偨僟僀傾儘僌儃僢僋僗傪昞帵偡傞
	TInt mountState = iAppUi.ExtMemWatcher().StateL(memoryType).iMountState;
	TInt resourceId = 0;
	switch (mountState)
		{
	case KErrNone:			// 惓忢巊梡壜擻(Mount姰椆)
		if (memoryType == CSmbExtMemWatcher::EMass)
			{
			if (iAppUi.CheckMemoryStateL(CSmbExtMemWatcher::EMass) == CSmbMusicAPFileMgrAppUi::EDbSyncUpdate)
				{
				resourceId = R_WARNING_DIALOG_MP03P042;
				}
			}
		else if (memoryType == CSmbExtMemWatcher::EMs || memoryType == CSmbExtMemWatcher::ESd)
			{
			switch (iAppUi.ExtMemWatcher().StateL(memoryType).iMediaInfo)
				{
			case CSmbExtMemWatcher::EReadOnly:	// ReadOnlyDevice
				resourceId = (memoryType == CSmbExtMemWatcher::EMs) ? R_WARNING_DIALOG_MS01P008 : R_WARNING_DIALOG_SD01P008;
				break;
			case CSmbExtMemWatcher::ELocked:	// 彂偒崬傒Lock
				resourceId = (memoryType == CSmbExtMemWatcher::EMs) ? R_WARNING_DIALOG_MS01P007 : 0;
				break;
			default:
				break;
				}
			}
		break;
	case KErrCorrupt:		// 枹僼僅乕儅僢僩
		resourceId = (memoryType == CSmbExtMemWatcher::EMass) ? R_WARNING_DIALOG_MAS01P028 : 0;
		break;
	case KErrGeneral:		// 堎忢忬懺
		resourceId = (memoryType == CSmbExtMemWatcher::EMass) ? R_WARNING_DIALOG_MAS01P027 : 0;
		break;
	default:
		break;
		}

	if (resourceId == 0)
		{
		return KErrNone;
		}
	else
		{
		ShowWarningDialogL(resourceId);
		return KErrGeneral;
		}
	}


/**
 * @param[in]		aVisible		ETrue: 昞帵 / EFalse: 旕昞帵
 */
void CSmbMusicAPFileMgrFileView::MakeVisibleSongInfoKey(TBool aVisible)
	{
	TInt keyId = ESkonKeyGuidanceSoftKeyRight;	// 僜僼僩2僉乕

	// 僜僼僩2僉乕偵乽儊儌儕愗懼乿僉乕偑妱傝摉偰傜傟偰偄傞応崌偼丆乽徻嵶忣曬乿偼僜僼僩4僉乕偵妱傝摉偰傜傟偰偄傞丏
//MOD-START PTX824
//	if (iNumOfHierarchy == 1 &&	(iViewType == ETypeDbxImotionFile || iViewType == ETypeMassMp3File))
	if (iNumOfHierarchy == 1 &&	(iViewType == ETypeDbxImotionFile))
//MOD-END PTX824
		{
		keyId = ESkonKeyGuidanceSoftKeyRightBottom;
		}
	
	// 僉乕僈僀僟儞僗偺乽徻嵶忣曬乿僉乕傪昞帵偝偣傞
	KeyGuidance()->MakeVisibleKey(keyId, aVisible);
	}


//TRK11595 10/14 start
/**
 * 儌乕僟儖僟僀傾儘僌(埫徹斣崋擖椡僟僀傾儘僌/僒僽儊僯儏乕)昞帵拞偵Music僼傽僀儖娗棟傾僾儕傪廔椆偡傞応崌丆
 *  廔椆慜弨旛偲偟偰杮儊僜僢僪傪屇傃弌偟儌乕僟儖僟僀傾儘僌傪僋儘乕僘偟偨屻丆Music僼傽僀儖娗棟傾僾儕傪廔椆偡傞偙偲丏
 *
 * @retval			KErrNone		奩摉僟僀傾儘僌偁傝
 * @retval			KErrNotFound	奩摉僟僀傾儘僌側偟
 *
 * @see CSmbMusicAPFileMgrFileCmd::PrepareToExit()
 */
TInt CSmbMusicAPFileMgrFileView::CloseModalDialogToExitApp(void)
	{
	iIsCloseModalDialogToExitAppCalled = ETrue;
	
	if (iSubMenu)
		{
		iSubMenu->Close();
		return KErrNone;
		}
	else if (iPasswordDialog)
		{
		iPasswordDialog->Close();
		return KErrNone;
		}
	else
		{
		return KErrNotFound;
		}
	}
//TRK11595 10/14 end

/**
 尰嵼偺TopItemIndex傪庢摼偡傞丅
 * @return 尰嵼偺TopItemIndex丅
 */
TInt CSmbMusicAPFileMgrFileView::TopIndex() const
	{
	return iListBox->TopIndex();
	}
	
/**
 尰嵼偺CurrentIndex傪庢摼偡傞丅
 * @return 尰嵼偺CurrentIndex丅
 */
TInt CSmbMusicAPFileMgrFileView::CurrentIndex() const
	{
	return iListBox->CurrentIndex();
	}
	
/**
 * 僉乕僈僀僟儞僗乽徻嵶忣曬乿傪旕昞帵偵偡傞
 */
void CSmbMusicAPFileMgrFileView::ClearSoftKeyInfo(void)
	{
//TRK10033 9/22 start
	// 僉乕僈僀僟儞僗乽徻嵶忣曬乿傪旕昞帵偵偡傞
	TInt keyId;
	if (iNumOfHierarchy == 1 &&
	    (iViewType == ETypeDbxImotionFile || iViewType == ETypeMassMp3File))
		{
		keyId = ESkonKeyGuidanceSoftKeyRightBottom;
		}
	else
		{
		keyId = ESkonKeyGuidanceSoftKeyRight;
		}
	KeyGuidance()->MakeVisibleKey(keyId, EFalse);
	KeyGuidance()->Apply();
//TRK10033 9/22 end
	}

//CQ-TRK12053 ADD-START PTX824
/**
 * 僉乕僀儀儞僩傪梷惂偟丆僼僅乕僇僗埵抲偺傾僀僥儉弨旛傪枹姰偵愝掕偡傞丏
 * @see NotifyChangeDirectoryL()
 */
void CSmbMusicAPFileMgrFileView::NotifyPreChangeDirectoryL(void)
	{
	CSmbMusicAPFileMgrListView::NotifyPreChangeDirectoryL();
	
	KeyGuidance()->MakeVisibleKey(ESkonKeyGuidanceSoftKeyRight, EFalse);	// 曐懚
	if (IsFocused())
		{
		KeyGuidance()->Apply();
		}
	}
//CQ-TRK12053 ADD-END PTX824

/**
 * @param[in]		aNumOfHierarchy		堏摦愭偺奒憌偺悢
 */
void CSmbMusicAPFileMgrFileView::NotifyChangeDirectoryL(TInt aNumOfHierarchy)
	{
	CSmbMusicAPFileMgrListView::NotifyChangeDirectoryL(aNumOfHierarchy);
	
//CQ-TRK12053 DEL-START PTX824
//	SetArrowState();
//CQ-TRK12053 DEL-END PTX824

	// 僉乕僈僀僟儞僗偺乽婡擻乿僉乕偺昞帵桳柍傪愝掕偡傞 (DB峔抸嵪傒: 昞帵偡傞 / DB峔抸拞: 昞帵偟側偄)
	TBool visible = (iViewType == ETypeSdImotionFile && iNumOfHierarchy == 1) ? EFalse : ETrue;
	KeyGuidance()->MakeVisibleKey(ESkonKeyGuidanceSoftKeyLeft, visible);

	// 僉乕僈僀僟儞僗偺僜僼僩2僉乕偵乽儊儌儕愗懼乿傕偟偔偼乽徻嵶忣曬乿傪愝掕偡傞
	SetSoftKeyRightInfoL();
	}


/**
 * @retval	ESkonKeyGuidanceArrowLeft	嵍栴報僉乕傪昞帵
 * @retval	ESkonKeyGuidanceArrowRight	塃栴報僉乕傪昞帵
 */
TInt CSmbMusicAPFileMgrFileView::CurrentArrowState(void) const
	{
	return iArrowState;
	}


/**
 * 僉乕僈僀僟儞僗偺僜僼僩2僉乕偵乽儊儌儕愗懼乿傕偟偔偼乽徻嵶忣曬乿傪愝掕偡傞丏
 *  - 埲壓偺偄偢傟偐偺忦審傪枮偨偡応崌丆乽儊儌儕愗懼

⌨️ 快捷键说明

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