diff -r 33a5d2bbf6fc -r 73a1feb507fb mmshplugins/mmshsettingsuiplugin/src/mussettingscontainer.cpp --- a/mmshplugins/mmshsettingsuiplugin/src/mussettingscontainer.cpp Thu Aug 19 09:51:39 2010 +0300 +++ b/mmshplugins/mmshsettingsuiplugin/src/mussettingscontainer.cpp Tue Aug 31 15:12:07 2010 +0300 @@ -12,34 +12,31 @@ * Contributors: * * Description: Container for MUSSettingsPlugin. -* Version : %version: be1sipx1#22 % << Don't touch! Updated by Synergy at check-out. * */ -#include "mussettingscontainer.h" -#include "mussettingsplugin.h" -#include "mussettingsmodel.h" -#include "gslistbox.h" -#include "mussettingsplugin.hrh" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include "mussettingscontainer.h" +#include "mussettingsplugin.h" +#include "mussettingsmodel.h" +#include "gslistbox.h" +#include "mussettingsplugin.hrh" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include -#ifdef RD_MULTIPLE_DRIVE #include -#endif /** default SIP profile is selected */ const TInt KDefaultSipProfile = 0; @@ -65,7 +62,7 @@ { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::ConstructL()" ) - iOperatorVariant = MultimediaSharingSettings::OperatorVariantSettingL(); + iOperatorVariant = iModel.VSSettingsOperatorVariantL(); iListBox = new( ELeave ) CAknSettingStyleListBox; @@ -86,17 +83,17 @@ { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::~CMusSettingsContainer()" ) delete iActivationItems; - delete iProfileItems; - delete iAutoRecordItems; - delete iNoteItems; - delete iListboxItemArray; + delete iProfileItems; + delete iAutoRecordItems; + delete iListboxItemArray; + delete iNoteItems; MUS_LOG( "[MUSSET] <- CMusSettingsContainer::~CMusSettingsContainer()" ) } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Constructs a listbox from a specified resource id. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::ConstructListBoxL( TInt aResLbxId ) { @@ -107,10 +104,17 @@ iListBox->Model()->SetItemTextArray( iListboxItemArray ); iListBox->Model()->SetOwnershipType( ELbmDoesNotOwnItemArray ); - // OCC: removed "Automatic in home network" choice - iActivationItems = - iCoeEnv->ReadDesC16ArrayResourceL( - R_OPERATOR_ACTIVATION_SETTING_PAGE_LBX ); + if ( iOperatorVariant == MusSettingsKeys::EStandard ) + { + iActivationItems = iCoeEnv->ReadDesC16ArrayResourceL( + R_ACTIVATION_SETTING_PAGE_LBX ); + } + else + { + iActivationItems = + iCoeEnv->ReadDesC16ArrayResourceL( + R_OPERATOR_ACTIVATION_SETTING_PAGE_LBX ); + } iAutoRecordItems = iCoeEnv->ReadDesC16ArrayResourceL( R_VS_VIDEO_SAVING_SETTING_PAGE_LBX ); @@ -118,9 +122,17 @@ iProfileItems = iCoeEnv->ReadDesC16ArrayResourceL( R_SIP_PROFILE_SETTING_PAGE_LBX ); - iNoteItems = iCoeEnv->ReadDesC16ArrayResourceL( - R_VS_AUDIO_SETTING_PAGE_LBX ); - + if ( iOperatorVariant == MusSettingsKeys::EStandard ) + { + iNoteItems = iCoeEnv->ReadDesC16ArrayResourceL( + R_VS_AUDIO_SETTING_PAGE_LBX ); + } + else + { + iNoteItems = iCoeEnv->ReadDesC16ArrayResourceL( + R_VS_NOTE_SETTING_PAGE_LBX ); + } + CreateListBoxItemsL(); // Operator variant mode needs some item should not be visible to user. @@ -129,8 +141,7 @@ { // Hide VS Activation Settings. If needed in future it can be made // visible. - // - //HideItemsL( KGSSettIdVSActivation ); + HideItemsL( KGSSettIdVSActivation ); // Hide SIP Profile choosing option.If needed in future it can be made // visible. HideItemsL( KGSSettIdSIPProfile ); @@ -139,9 +150,9 @@ } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Populates listbox items. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::CreateListBoxItemsL() { @@ -162,9 +173,9 @@ } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Updates a specified feature (item in listbox). -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::UpdateListBoxL( TInt aFeatureId ) { @@ -181,19 +192,19 @@ { MakeOperatorActivationItemL(); } - break; + break; case KGSSettIdSIPProfile: MakeSIPProfileItemL(); break; case KGSSettIdAutoRecord: MakeAutoRecordItemL(); - break; + break; case KGSSettIdRecordedVideoSaving: - MakeRecordedVideoSavingItemL(); - break; + MakeRecordedVideoSavingItemL(); + break; case KGSSettIdNote: - MakeNoteItemL(); - break; + MakeNoteItemL(); + break; default: break; } @@ -203,116 +214,109 @@ } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Generic method to add an item to listbox and make it visible. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::AddItemL( TInt aId, const TPtrC aText ) - { - MUS_LOG( "[MUSSET] -> CMusSettingsContainer::AddItemL()" ) + { + MUS_LOG( "[MUSSET] -> CMusSettingsContainer::AddItemL()" ) iListboxItemArray->SetDynamicTextL( aId, aText ); iListboxItemArray->SetItemVisibilityL( aId, - CGSListBoxItemTextArray::EVisible ); - MUS_LOG( "[MUSSET] <- CMusSettingsContainer::AddItemL()" ) - } + CGSListBoxItemTextArray::EVisible ); + MUS_LOG( "[MUSSET] <- CMusSettingsContainer::AddItemL()" ) + } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Adds activation setting item to listbox. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::MakeActivationItemL() { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeActivationItemL()" ) - MusSettingsKeys::TActivation activation = - MultimediaSharingSettings::ActivationSettingL(); - - if ( activation != MusSettingsKeys::EAlwaysActive ) - { - // We make sure that if someone has written to CenRep value bigger - // than 1 (which after OCC changes means 'Off') we treat it as 'Off'. - activation = MusSettingsKeys::EActiveInHomeNetworks; - } - - AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ activation ] ); + iVSActication = iModel.VSSettingsActivationL(); + AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ iVSActication ] ); MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeActivationItemL()" ) } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Adds operator specific activation setting item to listbox. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::MakeOperatorActivationItemL() { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeOperatorActivationItemL()" ) - - //sync with real value, if op specifig - iModel.InitializeProfileEnablerL(); - - MUS_LOG1( "Activation item=%d (0=VS enabled, 1=VS disabled)", iModel.ActivationItem() ) - AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ iModel.ActivationItem() ] ); + + iVSActication = iModel.VSSettingsActivationL(); + if ( iVSActication == MusSettingsKeys::ENever ) // ==2 + { // operator specific one is different from usual one + iVSActication = MusSettingsKeys::EActiveInHomeNetworks; //==1 + } + + AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ iVSActication ] ); MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeOperatorActivationItemL()" ) } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Adds SIP profile setting item to settings listbox. Item will contain // indication of [no SIP profile selected], [using default SIP profile] or // [name of SIP profile specified to be used] -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::MakeSIPProfileItemL() { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeSIPProfileItemL()" ) - TInt profile = MultimediaSharingSettings::SipProfileSettingL(); + TInt profile = iModel.VSSettingsProfileL(); if ( profile != KDefaultSipProfile && profile != KNoSipProfileSelected ) { - // profile id defined, get profile name - HBufC* name = iModel.ProfileNameL( profile ); + // profile id defined, get profile name + HBufC* name = iModel.ProfileNameL( profile ); - if ( name ) - { - CleanupStack::PushL( name ); - AddItemL( KGSSettIdSIPProfile, *name ); - CleanupStack::PopAndDestroy( name ); - } + if ( name ) + { + CleanupStack::PushL( name ); + AddItemL( KGSSettIdSIPProfile, *name ); + CleanupStack::PopAndDestroy( name ); + } else - { - // show profile value not selected - AddItemL( KGSSettIdSIPProfile, - ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); - } - } + { + // show profile value not selected + AddItemL( KGSSettIdSIPProfile, + ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); + } + } else if ( profile == KNoSipProfileSelected ) { AddItemL( KGSSettIdSIPProfile, ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); - } + } else { - AddItemL( - KGSSettIdSIPProfile, - ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileDefault ] ); - } + AddItemL( + KGSSettIdSIPProfile, + ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileDefault ] ); + } MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeSIPProfileItemL()" ) } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Adds autorecord item to listbox. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::MakeAutoRecordItemL() { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeAutoRecordItemL()" ) - TInt autoRecordMode = MultimediaSharingSettings::AutoRecordSettingL(); + TInt autoRecordMode = iModel.VSSettingsAutoRecordL(); MUS_LOG1( "[MUSSET] autoRecordMode: %d", autoRecordMode ) MUS_LOG1( "[MUSSET] iAutoRecordItems.Count: %d", iAutoRecordItems->Count() ) @@ -330,9 +334,9 @@ } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Adds recorded video saving item to listbox. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::MakeRecordedVideoSavingItemL() { @@ -348,12 +352,12 @@ if ( index == KErrNotFound ) { - MUS_LOG( "[MUSSET] Preferred drive doesn't exist anymore, " ) - MUS_LOG( "[MUSSET] e.g. remote drive deleted, using system drive" ) + MUS_LOG( "[MUSSET] -> preferred drive doesn't exist anymore \ +(e.g. remote drive deleted), taking system drive..." ) driveNumber = RFs::GetSystemDrive(); index = dlg->FindIndexByDrive( driveNumber ); - MultimediaSharingSettings::SetVideoLocationSettingL( driveNumber ); + iModel.SetVSSettingsRecordedVideoSavingL( driveNumber ); } TFileName item( KNullDesC ); @@ -369,38 +373,38 @@ } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Adds note item to listbox. (Alerts setting). Present only with operator // variant set. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::MakeNoteItemL() { - MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeNoteItemL()" ) + MUS_LOG( + "[MUSSET] -> CMusSettingsContainer::MakeNoteItemL()" ) - MusSettingsKeys::TAuditoryNotification auditoryNotification = - MultimediaSharingSettings::AuditoryNotificationSettingL(); + TInt savingMode = iModel.VSSettingsNoteL(); - MUS_LOG1( "[MUSSET] -> CMusSettingsContainer::Mode:%d()", - auditoryNotification ) + MUS_LOG1( "[MUSSET] -> CMusSettingsContainer::Mode:%d()", savingMode ); // If unset, use and set default value - if ( auditoryNotification < 0 || auditoryNotification > 1 ) - { - auditoryNotification = MusSettingsKeys::EAuditoryNotificationOff; - MultimediaSharingSettings::SetAuditoryNotificationSettingL( - MusSettingsKeys::EAuditoryNotificationOff ); - } + if ( savingMode < 0 || savingMode > 1 ) + { + savingMode = 0; + iModel.SetVSSettingsNoteL( + MusSettingsKeys::EAuditoryNotificationOff ); + } - AddItemL( KGSSettIdNote, ( *iNoteItems )[ auditoryNotification ] ); - - MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeNoteItemL()" ) + AddItemL( KGSSettIdNote, ( *iNoteItems )[ savingMode ] ); + + MUS_LOG( + "[MUSSET] <- CMusSettingsContainer::MakeNoteItemL()" ) } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Gets help context. -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // void CMusSettingsContainer::GetHelpContext( TCoeHelpContext& aContext ) const { @@ -411,9 +415,9 @@ } -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // Returns currently selected feature (listbox item). -// ----------------------------------------------------------------------------- +// --------------------------------------------------------------------------- // TInt CMusSettingsContainer::CurrentFeatureId() const { @@ -422,48 +426,45 @@ } -// ----------------------------------------------------------------------------- +// ---------------------------------------------------------------------------- // If call is on, informs user with note that new profile is going to be active // after current call. -// ----------------------------------------------------------------------------- +// ---------------------------------------------------------------------------- // void CMusSettingsContainer::ShowNewProfileActiveAfterCallL() { MUS_LOG( "[MUSSET] -> CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) - TPSCTsyCallState callState; - User::LeaveIfError( RProperty::Get( KPSUidCtsyCallInformation, - KCTsyCallState, - (TInt&)callState) ); - - if ( callState == EPSCTsyCallStateAlerting || - callState == EPSCTsyCallStateRinging || - callState == EPSCTsyCallStateDialling || - callState == EPSCTsyCallStateAnswering || - callState == EPSCTsyCallStateDisconnecting || - callState == EPSCTsyCallStateConnected || - callState == EPSCTsyCallStateHold) - { - HBufC* infoTxt = StringLoader::LoadLC( R_QTN_MSH_SET_PROFILE_NOTE ); - CAknInformationNote* note = new ( ELeave ) CAknInformationNote( ETrue ); - note->ExecuteLD( infoTxt->Des() ); - CleanupStack::PopAndDestroy( infoTxt ); - } - - MUS_LOG( - "[MUSSET] <- CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) + TPSCTsyCallState callState; + User::LeaveIfError( RProperty::Get( KPSUidCtsyCallInformation, + KCTsyCallState, + (TInt&)callState) ); + if ( callState == EPSCTsyCallStateAlerting || + callState == EPSCTsyCallStateRinging || + callState == EPSCTsyCallStateDialling || + callState == EPSCTsyCallStateAnswering || + callState == EPSCTsyCallStateDisconnecting || + callState == EPSCTsyCallStateConnected || + callState == EPSCTsyCallStateHold) + { + HBufC* infoTxt = StringLoader::LoadLC( R_QTN_MSH_SET_PROFILE_NOTE ); + CAknInformationNote* note = new ( ELeave ) CAknInformationNote( ETrue ); + note->ExecuteLD( infoTxt->Des() ); + CleanupStack::PopAndDestroy( infoTxt ); + MUS_LOG( + "[MUSSET] <- CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) + } } -// ----------------------------------------------------------------------------- +// ---------------------------------------------------------------------------- // void CMusSettingsContainer::HideItemsL(TInt aItemIndex) // Some items are unwanted by operators.Hide those items from listbox item -// ----------------------------------------------------------------------------- +// ---------------------------------------------------------------------------- // void CMusSettingsContainer::HideItemsL(TInt aItemIndex) { MUS_LOG1("[MUSSET] -> CMusSettingsContainer::HideItemsL() %d",aItemIndex ) iListboxItemArray->SetItemVisibilityL( aItemIndex, CGSListBoxItemTextArray::EInvisible ); - MUS_LOG("[MUSSET] <- CMusSettingsContainer::HideItemsL()" ) + MUS_LOG("[MUSSET] <- CMusSettingsContainer::HideItemsL()" ) } -