📄 smbmusicaplibissettingfunc.cpp
字号:
CSmbAlmsetEngAlarmContentsInterface* alarmEng;
alarmEng = SmbAlmsetEngAlarmContentsInterfaceFactory::CreateAlarmContentsInterfaceL();
CleanupStack::PushL(alarmEng);
TBool ret(EFalse);
ret = alarmEng->IsUsedL(aContentsId, ESmbAlmsetEngMusic);
CleanupStack::PopAndDestroy(alarmEng);
return ret;
}
/**
* 僗働僕儏乕儖傾儔乕儉偵愝掕偝傟偰偄傞偐
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 僗働僕儏乕儖傾儔乕儉愝掕忬嫷乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::IsSettingScheduleAlermInfoL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, TInt aContentsId )
{
//DEL-START PTX824
// 僐儞僥儞僣庬暿
// TSmbPGSchedulerAlarmSoundType alarmType = SmbPGScheduler::SchedulerAlarmSoundTypeL(aPropAgent);
// 寢壥敾掕
// TBool ret(EFalse);
// if(ESmbPGScheduleAlarmMusic == alarmType) // 僐儞僥儞僣庬暿敾掕
// {
// 僐儞僥儞僣ID
// TInt contentId = SmbPGScheduler::SchedulerAlarmSoundL(aPropAgent);
// if(aContentsId == contentId) // 僐儞僥儞僣ID敾掕
// {
// ret = ETrue;
// }
// }
//DEL-END PTX824
//ADD-START PTX824
CSmbSchEngAlarmUtility* utility = CSmbSchEngAlarmUtility::NewL(aPropAgent);
CleanupStack::PushL(utility);
// 寢壥敾掕
TBool ret(EFalse);
// 僐儞僥儞僣庬暿
TSmbSchEngAlarmSoundType alarmType = utility->SchedulerAlarmSoundTypeL();
if(ESmbSchEngAlarmSoundTypeMusic == alarmType)
{
// 僐儞僥儞僣ID
TInt contentId = utility->SchedulerAlarmSoundL();
if(aContentsId == contentId) // 僐儞僥儞僣ID敾掕
{
ret = ETrue;
}
}
CleanupStack::PopAndDestroy(utility);
//ADD-END PTX824
return ret;
}
/**
* 儅儖僠僫儞僶乕拝怣偵愝掕偝傟偰偄傞
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 儅儖僠僫儞僶乕拝怣愝掕忬嫷乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::IsSettingMultiNumberInfoL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, TInt aContentsId )
{
// 愝掕抣庢摼
TPGAdditionNumberRingTonesData ringTones;
//MOD-START PTX824
TRAPD(error, PGPropAgentSound::GetAdditionNumberRingTonesL(aPropAgent, ringTones));
if(KErrNone != error)
{
//儘僌傪弌椡
_LIT(KMusicAPLibIsSettingFuncFunc2, "LEAVE::PGPropAgentSound::GetAdditionNumberRingTonesL() = %d");
SmbMusicAPLibLog(1, ELogLevelHigh, KMusicAPLibIsSettingFuncFunc2, error);
return EFalse;
}
//MOD-END PTX824
for(TInt i = 0; i < 2; i++)
{
// 僒僀儗儞僩偺応崌丄EFalse
if(EFalse != ringTones.iItems[i].iRingTone)
{
// 儅儖僠僫儞僶乕拝怣壒
if(ESmbPGAdditionNumberRingToneKindMusic == ringTones.iItems[i].iContentsKind) // 僼儖妝嬋
{
if(aContentsId == ringTones.iItems[i].iRingToneType)
{
return ETrue;
}
}
}
}
return EFalse;
}
/**
* 拝怣愝掕偵愝掕偝傟偰偄傞偐
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aSettingKind 拝怣愝掕偺拝怣壒庬暿
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 拝怣愝掕忬嫷乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::IsSettingSetInfoL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, SmbMusicAPLibIsSettingFunc::TIsSettingKind aSettingKind, TInt aContentsId, TBool aMode /*= ETrue*/ )
{
TBool ret(EFalse);
//ADD-START PTX824
//CQ-TRK11494 MOD-START PTX824
//抂枛儌乕僪偑桳岠側応崌
// if(aMode)
//抂枛儌乕僪偑桳岠側応崌偐偮壒惡拝怣傑偨偼TV揹榖拝怣壒偺応崌
if((aMode) && ((EIsSettingKindTelRecvMelody == aSettingKind) || (EIsSettingKindTvRecvMelody == aSettingKind)))
//CQ-TRK11494 MOD-END PTX824
{
//抂枛儌乕僪傪僠僃僢僋
TIsSettingHyperMultiMode hyperMultiMode = EIsSettingHyperMultiModeNone;
hyperMultiMode = IsSettingHyperMultiMode(aPropAgent);
switch(hyperMultiMode)
{
case EIsSettingHyperMultiModeNone:
case EIsSettingHyperMultiModeANumber:
case EIsSettingHyperMultiModeDualNumber:
//B僫儞僶乕埲奜偼壓婰偺張棟偑懕偔
break;
case EIsSettingHyperMultiModeBNumber:
default:
//B僫儞僶乕帪偼張棟側偟
return ret;
}
}
//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;
switch(aSettingKind)
{
case EIsSettingKindTelRecvMelody: // 壒惡揹榖乗拝怣壒
{
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_TelRecv,
uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
break;
}
case EIsSettingKindTvRecvMelody: // TV揹榖亅拝怣壒
{
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_TvRecv,
uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
break;
}
case EIsSettingKindPocRecvMelody: // PoC乗拝怣壒
{
retUtil = utility->GetMelodyIDL(aPropAgent, CSmbSettingUtility::ESetCKind_PocRecv,
uid, contentInfo, CSmbSettingUtility::ESettingCheckKindNone);
break;
}
case EIsSettingKindMailRecvMelody: // 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
break;
}
case EIsSettingKindMsgRRecvMelody: // 儊僢僙乕僕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
break;
}
case EIsSettingKindMsgFRecvMelody: // 儊僢僙乕僕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
break;
}
default:
{
retUtil = CSmbSettingUtility::ESettingAbnormalEnd;
break;
}
}
// 愝掕抣庢摼惉岟
if(CSmbSettingUtility::ESettingNormalEnd == retUtil)
{
// 僐儞僥儞僣庬暿敾掕
if(ESmbDbxMusicFile == contentInfo.iFileType)
{
// 僐儞僥儞僣ID敾掕
if(aContentsId == contentInfo.iContensID)
{
ret = ETrue;
}
}
}
//ADD-START PTX824
CleanupStack::PopAndDestroy(utility);
//ADD-END PTX824
return ret;
}
/**
* 揹榖挔偵愝掕偝傟偰偄傞偐
*
* @param[in] aContentsId 僐儞僥儞僣ID
* @return 揹榖挔愝掕忬嫷乮桳丗ETrue丆柍丗EFalse乯
*/
TBool SmbMusicAPLibIsSettingFunc::IsSettingPhonebookInfoL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, const TInt& aContentsId, TBool aMode /*= ETrue*/ )
{
// CPAManager僋儔僗惗惉
TFileName dll;
dll = KPAAddressbookEngDll;
RLibrary lib;
User::LeaveIfError(lib.Load(dll));
CleanupClosePushL(lib);
TLibraryFunction entry = lib.Lookup(1);
CPAManager* manager = NULL;
manager = reinterpret_cast<CPAManager*>(entry());
if(NULL == manager)
{
User::Leave(KErrAccessDenied);
}
CleanupStack::PushL(manager);
CPAItemArray* array;
array = manager->CreateItemArrayL();
CleanupStack::PushL(array);
array->SetViewDef(CPAGroup::EMs); // 杮懱巜掕
// 巊梡桳柍僠僃僢僋
TBool ret(EFalse);
//ADD-START PTX824
//CQ-TRK7538-START PTX824
if(aMode)
{
//抂枛儌乕僪傪僠僃僢僋仌揹榖挔僄儞僕儞偵僙僢僩
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;
}
}
else
{
//儌乕僪偵娭學側偄応崌偼僨儏傾儖儌乕僪偱庢摼
array->SetHmnModeAttr(CPEContactDataBase::ENMode);
}
//CQ-TRK7538-END PTX824
//ADD-END PTX824
ret = array->IsUseContents(KPAContentsIdMusic, aContentsId, KPAContentsInAddressbook);
CleanupStack::PopAndDestroy(3);
return ret;
}
/**
* 傾儔乕儉偵愝掕偝傟偰偄傞僐儞僥儞僣ID庢摼
*
* @param[in] aContentsIdArray 僐儞僥儞僣ID堦棗
* @return 側偟
*/
void SmbMusicAPLibIsSettingFunc::GetAlermSettingContentsIdsL( RArray<TInt>& aContentsIdArray )
{
// 僄儞僕儞惗惉
CSmbAlmsetEngAlarmContentsInterface* alarmEng;
alarmEng = SmbAlmsetEngAlarmContentsInterfaceFactory::CreateAlarmContentsInterfaceL();
CleanupStack::PushL(alarmEng);
// 堦棗庢摼
const RArray<TInt>& contentId = alarmEng->GetContentsTypesL(ESmbAlmsetEngMusic);
TBool ret(EFalse);
// 堦棗偵捛壛
for(TInt i = 0; i < contentId.Count(); i++)
{
if(contentId[i] >= 0) // 僐儞僥儞僣ID偑桳岠偐偳偆偐
{
ret = SearchArray(aContentsIdArray, contentId[i]);
if(!ret)
{
aContentsIdArray.Append(contentId[i]);
}
}
}
CleanupStack::PopAndDestroy(alarmEng);
}
/**
* 僗働僕儏乕儖傾儔乕儉偵愝掕偝傟偰偄傞僐儞僥儞僣ID庢摼
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsIdArray 僐儞僥儞僣ID堦棗
* @return 側偟
*/
void SmbMusicAPLibIsSettingFunc::GetScheduleAlermSettingContentsIdsL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, RArray<TInt>& aContentsIdArray )
{
//DEL-START PTX824
// 僐儞僥儞僣庬暿
// TSmbPGSchedulerAlarmSoundType alarmType = SmbPGScheduler::SchedulerAlarmSoundTypeL(aPropAgent);
// if(ESmbPGScheduleAlarmMusic == alarmType)
// {
// TBool ret(EFalse);
// 僐儞僥儞僣ID
// TInt contentId = SmbPGScheduler::SchedulerAlarmSoundL(aPropAgent);
// if(contentId > 0) // 僐儞僥儞僣ID敾掕
// {
// ret = SearchArray(aContentsIdArray, contentId);
// if(!ret)
// {
// aContentsIdArray.Append(contentId);
// }
// }
// }
//DEL-END PTX824
//ADD-START PTX824
CSmbSchEngAlarmUtility* utility = CSmbSchEngAlarmUtility::NewL(aPropAgent);
CleanupStack::PushL(utility);
// 僐儞僥儞僣庬暿
TSmbSchEngAlarmSoundType alarmType = utility->SchedulerAlarmSoundTypeL();
if(ESmbSchEngAlarmSoundTypeMusic == alarmType)
{
// 寢壥敾掕
TBool ret(EFalse);
// 僐儞僥儞僣ID
TInt contentId = utility->SchedulerAlarmSoundL();
if(contentId >= 0) // 僐儞僥儞僣ID敾掕
{
ret = SearchArray(aContentsIdArray, contentId);
if(!ret)
{
aContentsIdArray.Append(contentId);
}
}
}
CleanupStack::PopAndDestroy(utility);
//ADD-END PTX824
}
/**
* 儅儖僠僫儞僶乕偵愝掕偝傟偰偄傞僐儞僥儞僣ID庢摼
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsIdArray 僐儞僥儞僣ID堦棗
* @return 側偟
*/
void SmbMusicAPLibIsSettingFunc::GetMultiNumberSettingContentsIdsL( DCM_NAMESPACE::RPGPropAgent& aPropAgent, RArray<TInt>& aContentsIdArray )
{
// 愝掕抣庢摼
TPGAdditionNumberRingTonesData ringTones;
//MOD-START PTX824
TRAPD(error, PGPropAgentSound::GetAdditionNumberRingTonesL(aPropAgent, ringTones));
if(KErrNone != error)
{
_LIT(KMusicAPLibIsSettingFuncFunc3, "LEAVE::PGPropAgentSound::GetAdditionNumberRingTonesL() = %d");
SmbMusicAPLibLog(2, ELogLevelHigh, KMusicAPLibIsSettingFuncFunc3, error);
return;
}
//MOD-END PTX824
TBool ret(EFalse);
// 僒僀儗儞僩偺応崌丄EFalse
if(EFalse != ringTones.iItems[0].iRingTone)
{
for(TInt i = 0; i < 2; i++)
{
// 儅儖僠僫儞僶乕拝怣壒
if(ESmbPGAdditionNumberRingToneKindMusic == ringTones.iItems[i].iContentsKind) // 僼儖妝嬋
{
ret = SearchArray(aContentsIdArray, ringTones.iItems[i].iRingToneType);
if(!ret)
{
aContentsIdArray.Append(ringTones.iItems[i].iRingToneType);
}
}
}
}
}
/**
* 拝怣愝掕偵愝掕偝傟偰偄傞僐儞僥儞僣ID庢摼
*
* @param[in] aPropAgent 僾儘僷僥傿僄乕僕僃儞僩
* @param[in] aContentsIdArray 僐儞僥儞僣ID堦棗
* @return 側偟
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -