diff -r ba76fc04e6c2 -r 6b911d05207e phoneengine/phonemodel/src/cpeprofilesettingmonitor.cpp --- a/phoneengine/phonemodel/src/cpeprofilesettingmonitor.cpp Fri Jun 04 10:19:18 2010 +0100 +++ b/phoneengine/phonemodel/src/cpeprofilesettingmonitor.cpp Wed Jun 23 18:12:20 2010 +0300 @@ -23,6 +23,7 @@ #include #include #include +#include ///////////////////////////////////////////////////////////////////////// @@ -63,7 +64,8 @@ // CPEProfileSettingMonitor::CPEProfileSettingMonitor( MPEPhoneModelInternal& aModel - ) : iModel( aModel ) + ) : CPECenRepMonitor( KProEngSilenceMode ), + iModel( aModel ) { } @@ -78,7 +80,8 @@ iProfileEngine = CreateProfileEngineL(); // Retrieve current profile settings - GetProfileSettingsL(); + + BaseConstructL( KCRUidProfileEngine ); iModel.SendMessage( MEngineMonitor::EPEMessageProfileChanged ); @@ -121,8 +124,18 @@ const TProfileToneSettings& toneSettings = activeTones.ToneSettings(); // Get ringing type and volume and keypad volume - TProfileRingingType ringingType = toneSettings.iRingingType; - iModel.DataStore()->SetRingingType( static_cast( ringingType ) ); + TProfileRingingType ringingType = toneSettings.iRingingType; + + TInt silentVolume(0); + if ( KErrNone == Get(silentVolume) && silentVolume ) + { + iModel.DataStore()->SetRingingType(EProfileRingingTypeSilent); + } + else + { + iModel.DataStore()->SetRingingType( static_cast( ringingType ) ); + } + iModel.DataStore()->SetRingingVolume( toneSettings.iRingingVolume ); iModel.DataStore()->SetTextToSpeech( toneSettings.iTextToSpeech ); @@ -150,6 +163,19 @@ } // ----------------------------------------------------------------------------- +// CPEProfileSettingMonitor::UpdateL +// Callback function - implements virtual function from CPECenRepMonitor +// This is called whenever cr settings change +// ----------------------------------------------------------------------------- +// +void CPEProfileSettingMonitor::UpdateL() + { + TEFLOGSTRING( KTAINT, "PE CPEProfileSettingMonitor::UpdateL" ); + GetProfileSettingsL(); + iModel.SendMessage( MEngineMonitor::EPEMessageProfileChanged ); + } + +// ----------------------------------------------------------------------------- // CPEProfileSettingMonitor::HandleActiveProfileEventL // Callback function - implements virtual function from MProfileChangeObserver // This is called whenever profiles settings change