📄 smbmusicaplibissettingfunc.cpp
字号:
void SmbMusicAPLibIsSettingFunc::GetSettingContentsIdsL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, RArray<TInt>& aContentsIdArray )
{
TBool ret(EFalse);
//抂枛儌乕僪偵娭學側偔弶婜壔偟側偄偲偄偗側偄偨傔
//ADD-START PTX824
//抂枛儌乕僪傪僠僃僢僋
// TIsSettingHyperMultiMode hyperMultiMode = EIsSettingHyperMultiModeNone;
// hyperMultiMode = IsSettingHyperMultiMode(aPropAgent);
// switch(hyperMultiMode)
// {
// case EIsSettingHyperMultiModeNone:
// case EIsSettingHyperMultiModeANumber:
// case EIsSettingHyperMultiModeDualNumber:
//B僫儞僶乕埲奜偼壓婰偺張棟偑懕偔
// break;
// case EIsSettingHyperMultiModeBNumber:
// default:
//B僫儞僶乕帪偼張棟側偟
// return;
// }
//ADD-END PTX824
TUid uid;
uid.iUid = KMusicAPLibUid;
//MOD-START PTX824
// CSmbSettingUtility utility;
CSmbSettingUtility* utility = new (ELeave) CSmbSettingUtility();
CleanupStack::PushL(utility);
//MOD-END PTX824
CSmbSettingUtility::TSettingContentsResult retUtil = CSmbSettingUtility::ESettingAbnormalEnd;
CSmbSettingUtility::TSettingUtilContentsStr contentInfo;
// 壒惡揹榖乗拝怣壒
// 愝掕抣庢摼
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_TelRecv, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
if(CSmbSettingUtility::ESettingNormalEnd == retUtil) // 庢摼惉岟
{
if(contentInfo.iFileType == ESmbDbxMusicFile)
{
if(contentInfo.iContensID >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentInfo.iContensID);
if(!ret)
{
aContentsIdArray.Append(contentInfo.iContensID);
}
}
}
}
// TV揹榖亅拝怣壒
// 愝掕抣庢摼
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_TvRecv, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
if(CSmbSettingUtility::ESettingNormalEnd == retUtil) // 庢摼惉岟
{
if(contentInfo.iFileType == ESmbDbxMusicFile)
{
if(contentInfo.iContensID >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentInfo.iContensID);
if(!ret)
{
aContentsIdArray.Append(contentInfo.iContensID);
}
}
}
}
// i儌乕僪儊乕儖乗庴怣拞壒
// 愝掕抣庢摼
//DEL-START PTX824
// retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_MailRecv, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
//DEL-END PTX824
//ADD-START PTX824
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_MailComplete, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
//ADD-END PTX824
if(CSmbSettingUtility::ESettingNormalEnd == retUtil) // 庢摼惉岟
{
if(contentInfo.iFileType == ESmbDbxMusicFile)
{
if(contentInfo.iContensID >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentInfo.iContensID);
if(!ret)
{
aContentsIdArray.Append(contentInfo.iContensID);
}
}
}
}
// PoC乗拝怣壒
// 愝掕抣庢摼
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_PocRecv, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
if(CSmbSettingUtility::ESettingNormalEnd == retUtil) // 庢摼惉岟
{
if(contentInfo.iFileType == ESmbDbxMusicFile)
{
if(contentInfo.iContensID >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentInfo.iContensID);
if(!ret)
{
aContentsIdArray.Append(contentInfo.iContensID);
}
}
}
}
// 儊僢僙乕僕R乗庴怣拞壒
// 愝掕抣庢摼
//DEL-START PTX824
// retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_MsgRRecv, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
//DEL-END PTX824
//ADD-START PTX824
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_MsgRComplete, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
//ADD-END PTX824
if(CSmbSettingUtility::ESettingNormalEnd == retUtil) // 庢摼惉岟
{
if(contentInfo.iFileType == ESmbDbxMusicFile)
{
if(contentInfo.iContensID >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentInfo.iContensID);
if(!ret)
{
aContentsIdArray.Append(contentInfo.iContensID);
}
}
}
}
// 儊僢僙乕僕F乗庴怣拞壒
// 愝掕抣庢摼
//DEL-START PTX824
// retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_MsgFRecv, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
//DEL-END PTX824
//ADD-START PTX824
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_MsgFComplete, uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
//ADD-END PTX824
if(CSmbSettingUtility::ESettingNormalEnd == retUtil) // 庢摼惉岟
{
if(contentInfo.iFileType == ESmbDbxMusicFile)
{
if(contentInfo.iContensID >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentInfo.iContensID);
if(!ret)
{
aContentsIdArray.Append(contentInfo.iContensID);
}
}
}
}
//ADD-START PTX824
CleanupStack::PopAndDestroy(utility);
//ADD-END PTX824
}
/**
* 揹榖挔偵愝掕偝傟偰偄傞僐儞僥儞僣ID庢摼
*
* @param[in] aContentsIdArray 僐儞僥儞僣ID堦棗
* @return 側偟
*/
void SmbMusicAPLibIsSettingFunc::GetPhonebookSettingContentsIdsL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, RArray<TInt>& aContentsIdArray )
{
// DLL儘乕僪
TFileName dll;
dll = KPAAddressbookEngDll;
RLibrary lib;
User::LeaveIfError(lib.Load(dll));
CleanupClosePushL(lib); // lib
// CPAManager僋儔僗惗惉
TLibraryFunction entry = lib.Lookup(1);
CPAManager* manager = NULL;
manager = reinterpret_cast<CPAManager*>(entry());
if(NULL == manager)
{
User::Leave(KErrAccessDenied);
}
CleanupStack::PushL(manager); // manager
CPAItemArray* array;
array = manager->CreateItemArrayL();
CleanupStack::PushL(array); // array
array->SetViewDef(CPAGroup::EMs); // 嶲徠愭巜掕
//ADD-START PTX824
//抂枛儌乕僪傪僠僃僢僋仌揹榖挔僄儞僕儞偵僙僢僩
TIsSettingHyperMultiMode hyperMultiMode = EIsSettingHyperMultiModeNone;
hyperMultiMode = IsSettingHyperMultiMode(aPropAgent);
switch(hyperMultiMode)
{
case EIsSettingHyperMultiModeNone:
array->SetHmnModeAttr(CPEContactDataBase::EMDisable);
break;
case EIsSettingHyperMultiModeANumber:
array->SetHmnModeAttr(CPEContactDataBase::EAMode);
break;
case EIsSettingHyperMultiModeDualNumber:
array->SetHmnModeAttr(CPEContactDataBase::ENMode);
break;
case EIsSettingHyperMultiModeBNumber:
array->SetHmnModeAttr(CPEContactDataBase::EBMode);
break;
default:
break;
}
//ADD-END PTX824
// 庢摼
const RArray<TInt>& contentArray = array->GetContentsIdsL(KPAContentsIdMusic, KPAContentsInAddressbook);
TBool ret(EFalse);
// 堦棗偵捛壛
for(TInt i = 0; i < contentArray.Count(); i++)
{
if(contentArray[i] > 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentArray[i]);
if(!ret)
{
aContentsIdArray.Append(contentArray[i]);
}
}
}
CleanupStack::PopAndDestroy(3); // lib, manager, array
}
/**
* 傾儔乕儉愝掕儕僙僢僩
*
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 愝掕抣曄峏桳柍乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::ResetIfSetAlermL( TInt aContentsId )
{
TBool ret(EFalse); // 愝掕忬嫷
TBool result(EFalse); // 愝掕抣曄峏寢壥
CSmbAlmsetEngAlarmContentsInterface* alarmEng;
alarmEng = SmbAlmsetEngAlarmContentsInterfaceFactory::CreateAlarmContentsInterfaceL();
CleanupStack::PushL(alarmEng);
// 愝掕忬嫷庢摼
ret = IsSettingAlermInfoL(aContentsId);
if(ret) // 愝掕偝傟偰偄傞応崌
{
result = alarmEng->ResetL(aContentsId, ESmbAlmsetEngMusic); // 愝掕抣儕僙僢僩
}
CleanupStack::PopAndDestroy(alarmEng);
return result;
}
/**
* 僗働僕儏乕儖傾儔乕儉愝掕儕僙僢僩
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 愝掕抣曄峏桳柍乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::ResetIfSetScheduleAlermL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, TInt aContentsId )
{
//DEL-START PTX824
// if(IsSettingScheduleAlermInfoL(aPropAgent, aContentsId))
// {
// SmbPGScheduler::ResetSchedulerAlarmSoundTypeL(aPropAgent);
// SmbPGScheduler::ResetSchedulerAlarmSoundL(aPropAgent);
// return ETrue;
// }
//DEL-END PTX824
//ADD-START PTX824
if(IsSettingScheduleAlermInfoL(aPropAgent, aContentsId))
{
CSmbSchEngAlarmUtility* utility = CSmbSchEngAlarmUtility::NewL(aPropAgent);
CleanupStack::PushL(utility);
utility->ResetAlarmSoundContentsL();
CleanupStack::PopAndDestroy(utility);
return ETrue;
}
//ADD-END PTX824
return EFalse;
}
/**
* 儅儖僠僫儞僶乕愝掕儕僙僢僩
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 愝掕抣曄峏桳柍乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::ResetIfSetMultiNumberL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, TInt aContentsId )
{
TBool result(EFalse); // 愝掕抣曄峏寢壥
// 愝掕抣庢摼
TPGAdditionNumberRingTonesData ringTones;
//MOD-START PTX824
TRAPD(error, PGPropAgentSound::GetAdditionNumberRingTonesL(aPropAgent, ringTones));
if(KErrNone != error)
{
_LIT(KMusicAPLibIsSettingFuncFunc4, "LEAVE::PGPropAgentSound::GetAdditionNumberRingTonesL() = %d");
SmbMusicAPLibLog(3, ELogLevelHigh, KMusicAPLibIsSettingFuncFunc4, error);
return EFalse;
}
//MOD-END PTX824
// 僒僀儗儞僩偺応崌丄EFalse
if(EFalse != ringTones.iItems[0].iRingTone)
{
// 儅儖僠僫儞僶乕拝怣壒1
if(ESmbPGAdditionNumberRingToneKindMusic == ringTones.iItems[0].iContentsKind) // 僼儖妝嬋
{
if(aContentsId == ringTones.iItems[0].iRingToneType)
{
//MOD-START PTX824
TRAPD(error, PGPropAgentSound::ResetAdditionNumberOneRingToneL(aPropAgent));
if(KErrNone != error)
{
//儘僌傪弌椡
_LIT(KMusicAPLibIsSettingFuncFunc1, "LEAVE::PGPropAgentSound::ResetAdditionNumberOneRingToneL() = %d");
SmbMusicAPLibLog(0, ELogLevelHigh, KMusicAPLibIsSettingFuncFunc1, error);
return EFalse;
}
//MOD-END PTX824
result = ETrue;
}
}
// 儅儖僠僫儞僶乕拝怣壒2
if(ESmbPGAdditionNumberRingToneKindMusic == ringTones.iItems[1].iContentsKind) // 僼儖妝嬋
{
if(aContentsId == ringTones.iItems[1].iRingToneType)
{
//MOD-START PTX824
TRAPD(error, PGPropAgentSound::ResetAdditionNumberTwoRingToneL(aPropAgent));
if(KErrNone != error)
{
//儘僌傪弌椡
_LIT(KMusicAPLibIsSettingFuncFunc5, "LEAVE::PGPropAgentSound::ResetAdditionNumberTwoRingToneL() = %d");
SmbMusicAPLibLog(4, ELogLevelHigh, KMusicAPLibIsSettingFuncFunc5, error);
return EFalse;
}
//MOD-END PTX824
result = ETrue;
}
}
}
return result;
}
/**
* 拝怣愝掕儕僙僢僩
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aSettingKind 拝怣愝掕偺拝怣壒庬暿
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 愝掕抣曄峏桳柍乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::ResetIfSettingL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, SmbMusicAPLibIsSettingFunc::TIsSettingKind aSettingKind, TInt aContentsId )
{
//MOD-START PTX824
// CSmbSettingUtility utility;
CSmbSettingUtility* utility = new (ELeave) CSmbSettingUtility();
CleanupStack::PushL(utility);
//MOD-END PTX824
TBool ret(EFalse);
switch(aSettingKind)
{
case EIsSettingKindTelRecvMelody: // 壒惡揹榖乗拝怣壒
//MOD-START PTX824
//抂枛儌乕僪偵娭學側偔儕僙僢僩偡傞昁梫偑偁傞偨傔乮A僫儞僶乕乯
if(IsSettingSetInfoL( aPropAgent, aSettingKind, aContentsId, EFalse ))
//MOD-END PTX824
{
utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_TelRecv);
ret = ETrue;
}
//ADD-START PTX824
//抂枛儌乕僪偵娭學側偔儕僙僢僩偡傞昁梫偑偁傞偨傔乮B僫儞僶乕乯
if(IsSettingBNumberSetInfoL( aPropAgent, aSettingKind, aContentsId, EFalse ))
{
utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_TelRecv, CSmbSettingUtility::ESettingHmnModeB);
ret = ETrue;
}
//ADD-END PTX824
break;
case EIsSettingKindTvRecvMelody: // TV揹榖亅拝怣壒
//MOD-START PTX824
//抂枛儌乕僪偵娭學側偔儕僙僢僩偡傞昁梫偑偁傞偨傔乮A僫儞僶乕乯
if(IsSettingSetInfoL( aPropAgent, aSettingKind, aContentsId, EFalse ))
//MOD-END PTX824
{
utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_TvRecv);
ret = ETrue;
}
//ADD-START PTX824
//抂枛儌乕僪偵娭學側偔儕僙僢僩偡傞昁梫偑偁傞偨傔乮B僫儞僶乕乯
if(IsSettingBNumberSetInfoL( aPropAgent, aSettingKind, aContentsId, EFalse ))
{
utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_TvRecv, CSmbSettingUtility::ESettingHmnModeB);
ret = ETrue;
}
//ADD-END PTX824
break;
case EIsSettingKindPocRecvMelody: // PoC亅拝怣壒
if(IsSettingSetInfoL( aPropAgent, aSettingKind, aContentsId ))
{
utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_PocRecv);
ret = ETrue;
}
break;
case EIsSettingKindMailRecvMelody: // i儌乕僪儊乕儖亅庴怣拞壒
if(IsSettingSetInfoL( aPropAgent, aSettingKind, aContentsId ))
{
//MOD-START PTX824
// utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_MailRecv);
utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_MailComplete);
//MOD-END PTX824
ret = ETrue;
}
break;
case EIsSettingKindMsgRRecvMelody: // 儊僢僙乕僕R亅庴怣拞壒
if(IsSettingSetInfoL( aPropAgent, aSettingKind, aContentsId ))
{
//MOD-START PTX824
// utility->DefaultMelodySettingL(aPropAgent, CSmbSettingUtility::ESetCKind_MsgRRecv);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -