📄 smbmusicapfilemgractioncontroller.cpp
字号:
// 嶍彍懳徾偺僼僅儖僟傪搊榐偡傞
iTargetItemArray = aTargetFolders;
// 儕僗僩儃僢僋僗儌僨儖傪愝掕偡傞
iListBoxModel = aListBoxModel;
//
iTotalItemCount = iTargetItemArray->Count();
iProcessedItemCount = 0;
iProcessFailedItemCount = 0;
//CQ-TRK15750 ADD-START PTX824
iSettingFaileItemCount = 0;
//CQ-TRK15750 ADD-END PTX824
//
return StartActionL();
}
/**
* @param[in] aTargetFolders 嶍彍懳徾偺僼僅儖僟
* @param[in] aListBoxModel 嶍彍懳徾偺僼僅儖僟偑偁傞儕僗僩儃僢僋僗儌僨儖
* @return StartActionL()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮儊僜僢僪傪幚峴偡傞偙偲偱丆aTargetFolders 偺娗棟偼傾僋僔儑儞僐儞僩儘乕儔偵堏忳偝傟傞丏
* 偦偺偨傔丆屇傃弌偟尦偺僨僗僩儔僋僞摍偱 aTargetFolders 傪delete偟側偄偙偲丏
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestDeleteAllFoldersCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestDeleteAllFoldersL(CSmbMusicAPFileSystemComMusicItem* aTargetFolders,
MSmbMusicAPFileSystemComListBoxModel* aListBoxModel)
{
__ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = EDeleteAllFolders;
// 傾僋僔儑儞偺姰椆傪NotifyRequestDeleteAllFoldersCompleteL()偱捠抦偡傞
iNotifyActionCompleteL = &MObserver::NotifyRequestDeleteAllFoldersCompleteL;
// 嶍彍懳徾偺僼僅儖僟傪搊榐偡傞
iTargetItem = aTargetFolders;
// 儕僗僩儃僢僋僗儌僨儖傪愝掕偡傞
iListBoxModel = aListBoxModel;
//
iTargetItem->GetListItemCount(iTotalItemCount);
iProcessedItemCount = 0;
iProcessFailedItemCount = 0;
//CQ-TRK15750 ADD-START PTX824
iSettingFaileItemCount = 0;
//CQ-TRK15750 ADD-END PTX824
//
return StartActionL();
}
/**
* @param[in] aFolderName 怴婯僼僅儖僟柤
* @param[in] aParentFolder 恊僼僅儖僟
* @param[in,out] aNewFolder 怴婯僼僅儖僟
* @return CSmbMusicAPFileSystemComEngine::CreateFolderL()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestCreateFolderCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestCreateFolderL(const TDesC& aFolderName,
CSmbMusicAPFileSystemComMusicItem* aParentFolder,
CSmbMusicAPFileSystemComMusicItem& aNewFolder)
{
__ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = ECreateFolder;
// 恊僼僅儖僟傪搊榐偡傞
iTargetItem = aParentFolder;
/*
* 僄儞僕儞偵僼僅儖僟怴婯嶌惉傪埶棅偡傞丏
* 旕摨婜墳摎屻丆aNewFolder偵偼怴婯嶌惉偟偨僼僅儖僟偑奿擺偝傟偰偄傞丏
*/
TInt result = iEngine->CreateFolderL(aFolderName, *aParentFolder, aNewFolder, iStatus);
if (result == KErrNone)
{
SetActive();
}
else
{
Reset(); // 旕摨婜張棟奐巒慜偵栠偡
}
return result;
}
/**
* @param[in] aFolderName 曄峏偡傞僼僅儖僟柤
* @param[in,out] aTargetFolder 曄峏懳徾偺僼僅儖僟
* @return CSmbMusicAPFileSystemComEngine::RenameFolderL()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestRenameFolderCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestRenameFolderL(const TDesC& aFolderName, CSmbMusicAPFileSystemComMusicItem& aTargetFolder)
{
//MOD-START PTX824
// __ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
if(EIdle != iActionStatus)
{
return KErrServerBusy;
}
//MOD-END PTX824
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = ERenameFolder;
// 僄儞僕儞偵僼僅儖僟柤曄峏傪埶棅偡傞
TInt result = iEngine->RenameFolderL(const_cast<TDesC&>(aFolderName), aTargetFolder, iStatus);
if (result == KErrNone)
{
SetActive();
}
else
{
Reset(); // 旕摨婜張棟奐巒慜偵栠偡
}
return result;
}
/**
* @param[in] aMusicItem 庢摼懳徾偺僼傽僀儖
* @param[in,out] aImageCount 夋憸枃悢
* @return CSmbMusicAPFileSystemComMusicItem::GetImageCount()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestImageCountCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestImageCount(CSmbMusicAPFileSystemComMusicItem* aMusicItem,
TSmbMusicAPFileSystemComImageCount& aImageCount)
{
//MOD-START PTX824
// __ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
if(EIdle != iActionStatus)
{
delete aMusicItem;
aMusicItem = NULL;
return KErrServerBusy;
}
//MOD-END PTX824
if (aMusicItem == NULL)
{
return KErrArgument;
}
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = ERequestImageCount;
// 張棟懳徾偺僼傽僀儖傪搊榐偡傞
iTargetItem = aMusicItem;
// 夋憸枃悢庢摼傪埶棅偡傞
TInt result = aMusicItem->GetImageCount(aImageCount, iStatus);
if (result == KErrNone)
{
SetActive();
}
else
{
Reset(); // 旕摨婜張棟奐巒慜偵栠偡
}
return result;
}
/**
* @param[in] aMusicItem 庢摼懳徾偺僼傽僀儖
* @param[in,out] aImageInfo 夋憸忣曬
* @return CSmbMusicAPFileSystemComMusicItem::GetImageInfo()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestImageInfoCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestImageInfo(CSmbMusicAPFileSystemComMusicItem& aMusicItem,
TSmbMusicAPLibImageInfo& aImageInfo)
{
//MOD-START PTX824
// __ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
if(EIdle != iActionStatus)
{
return KErrServerBusy;
}
//MOD-END PTX824
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = ERequestImageInfo;
// 張棟懳徾偺僼傽僀儖傪搊榐偡傞(強桳尃偼曐帩偟側偄)
iMusicItemOwnedExternally = &aMusicItem;
// 夋憸忣曬庢摼傪埶棅偡傞
TInt result = aMusicItem.GetImageInfo(aImageInfo, iStatus);
if (result == KErrNone)
{
SetActive();
}
else
{
Reset(); // 旕摨婜張棟奐巒慜偵栠偡
}
return result;
}
//ADD-START PTX824
/**
* @param[in] aMusicItem 庢摼懳徾偺僼傽僀儖
* @param[in] aImageType 夋憸庬暿
* @param[in,out] aImageInfo 夋憸忣曬
* @return CSmbMusicAPFileSystemComMusicItem::GetImageInfo()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestImageInfoCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestImageTypeInfo(CSmbMusicAPFileSystemComMusicItem& aMusicItem, TSmbMusicAPLibImageType aImageType, TSmbMusicAPLibImageTypeInfo& aImageTypeInfo)
{
OUTPUT_FUNC;
//MOD-START PTX824
// __ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
if(EIdle != iActionStatus)
{
return KErrServerBusy;
}
//MOD-END PTX824
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = ERequestImageTypeInfo;
// 張棟懳徾偺僼傽僀儖傪搊榐偡傞(強桳尃偼曐帩偟側偄)
iMusicItemOwnedExternally = &aMusicItem;
// 夋憸忣曬庢摼傪埶棅偡傞
TInt result = aMusicItem.GetImageTypeInfo(aImageType, aImageTypeInfo, iStatus);
if (result == KErrNone)
{
SetActive();
}
else
{
Reset(); // 旕摨婜張棟奐巒慜偵栠偡
}
return result;
}
//ADD-END PTX824
/**
* @param[in] aMusicItem 庢摼懳徾偺僼傽僀儖
* @param[in] aImageType 夋憸忣曬
* @param[in] aIndex 夋憸偺僀儞僨僢僋僗斣崋(奐巒:1)
* @param[in] aFileName 夋憸偺曐懚僼傽僀儖柤
* @return CSmbMusicAPFileSystemComMusicItem::GetImage()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestImageFileCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestImageFile(CSmbMusicAPFileSystemComMusicItem& aMusicItem,
TSmbMusicAPLibImageType aImageType, TInt aIndex, const TDesC& aFileName)
{
//MOD-START PTX824
// __ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
if(EIdle != iActionStatus)
{
return KErrServerBusy;
}
//MOD-END PTX824
// 僐儞僩儘乕儔張棟忬懺傪愝掕偡傞
iActionStatus = ERequestImageFile;
// 張棟懳徾偺僼傽僀儖傪搊榐偡傞(強桳尃偼曐帩偟側偄)
iMusicItemOwnedExternally = &aMusicItem;
// 夋憸忣曬庢摼傪埶棅偡傞
TInt result = aMusicItem.GetImage(aImageType, aIndex, const_cast<TDesC&>(aFileName), iStatus);
if (result == KErrNone)
{
SetActive();
}
else
{
Reset(); // 旕摨婜張棟奐巒慜偵栠偡
}
return result;
}
//TRK6799 8/25 start
/**
* @param[in] aFileName 夋憸偺曐懚僼傽僀儖柤
* @param[in] aSize 夋憸偺嵟戝昤夋僒僀僘
* @param[in,out] aBitmap 夋憸偺Bitmap僨乕僞
* @return CSmbMusicAPLibImageFunc::ConvertImage()偺栠傝抣
* @panic EActionControllerBusy CSmbMusicAPFileMgrActionController::iActionStatus偑 CSmbMusicAPFileMgrActionController::EIdle埲奜偺応崌
* @note 杮梫媮偺姰椆偼 MObserver::NotifyRequestBitmapDataCompleteL() 偵偰捠抦偝傟傞丏
*/
TInt CSmbMusicAPFileMgrActionController::RequestBitmapDataL(const TDesC& /*aFileName*/, RArray<TSize>& /*aSize*/,
RPointerArray<TSmbMusicAPLibImageBitmap>& /*aBitmap*/)
{
//枹僒億乕僩API
#if 0
__ASSERT_ALWAYS(iActionStatus == EIdle, PANIC(EActionControllerBusy));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -