--- a/mobilemessaging/smum/src/SmumSettingsDialogGSM.cpp Thu Jul 15 18:34:37 2010 +0300
+++ b/mobilemessaging/smum/src/SmumSettingsDialogGSM.cpp Thu Aug 19 09:51:11 2010 +0300
@@ -150,6 +150,9 @@
// Prepare FeatureManager, read values to members and uninitialize FeatureManager
FeatureManager::InitializeLibL();
iHelpFeatureSupported = FeatureManager::FeatureSupported( KFeatureIdHelp );
+ // REQ:417-48417 Message forward with sender info
+ iForwardWithSenderSupported = FeatureManager::FeatureSupported(KFeatureIdMsgForwardWithSender);
+ // End REQ:417-48417
FeatureManager::UnInitializeLib();
// Read the supported settings
iEmailFeatureSupported = SmumUtil::CheckEmailOverSmsSupportL();
@@ -624,6 +627,23 @@
SetItem( index, iSettings.ReplyPath() ? ESmumSettingsYes : ESmumSettingsNo );
}
}
+
+ // REQ:417-48417 Message forward with sender info
+ if (!iTypeOfSettings && iForwardWithSenderSupported)
+ {
+ if ( !iSettingsArrayIndex->Find ( ESmumForwardWithSenderInfoLBI, key, index ) )
+ {
+ TInt forwardWithSenderInfo;
+ if ( iCentralRapository->Get( KForwardWithSenderInfo, forwardWithSenderInfo ) != KErrNone )
+ {
+ //In case of any error,set the default value to 0
+ forwardWithSenderInfo = 0;
+ }
+ SetItem(index, forwardWithSenderInfo? ESmumSettingsYes : ESmumSettingsNo);
+ }
+ }
+ // End REQ:417-48417
+
SMUMLOGGER_LEAVEFN(" CSmumMainSettingsDialogGSM::OpeningDialogL");
}
@@ -766,6 +786,17 @@
iSettings.SetReplyPath( Item( index ) == ESmumSettingsYes );
}
}
+
+ // REQ:417-48417 Message forward with sender info
+ if (!iTypeOfSettings && iForwardWithSenderSupported)
+ {
+ if (!iSettingsArrayIndex->Find ( ESmumForwardWithSenderInfoLBI, key, index ))
+ {
+ iCentralRapository->Set(KForwardWithSenderInfo , Item( index ) == ESmumSettingsYes);
+ }
+ }
+ // End REQ:417-48417
+
SMUMLOGGER_LEAVEFN(" CSmumMainSettingsDialogGSM::ClosingDialogL");
}
@@ -1091,6 +1122,15 @@
} // ServiceCentreInUseLBI are removed
}
}
+ // REQ:417-48417 Message forward with sender info
+ if (!iTypeOfSettings)
+ {
+ if (!iForwardWithSenderSupported && variatedValue >= ESmumForwardWithSenderInfoLBI)
+ {
+ variatedValue ++; // if not support this feature, ESmumForwardWithSenderInfoLBI is removed
+ }
+ }
+ // End REQ:417-48417
return variatedValue;
}
@@ -1150,6 +1190,21 @@
ESmumSendOptServiceCentreInUseLBI : ESmumServiceCentreInUseLBI );
needToBeCompressed = ETrue;
}
+
+ // REQ:417-48417 Message forward with sender info
+ if (!iForwardWithSenderSupported && !iTypeOfSettings)
+ {
+ TInt index;
+ TKeyArrayFix key(0, ECmpTInt);
+ TInt found = iSettingsArrayIndex->Find(ESmumForwardWithSenderInfoLBI, key, index);
+ if (0 == found)
+ {
+ DeleteSettingItemFromArrays(index);
+ needToBeCompressed = ETrue;
+ }
+ }
+ // End REQ:417-48417
+
if ( needToBeCompressed )
{
iSettingsArray->Compress();