10 * Nokia Corporation - initial contribution. |
10 * Nokia Corporation - initial contribution. |
11 * |
11 * |
12 * Contributors: |
12 * Contributors: |
13 * |
13 * |
14 * Description: Container for MUSSettingsPlugin. |
14 * Description: Container for MUSSettingsPlugin. |
15 * Version : %version: 20 % << Don't touch! Updated by Synergy at check-out. |
15 * Version : %version: 21 % << Don't touch! Updated by Synergy at check-out. |
16 * |
16 * |
17 */ |
17 */ |
18 |
18 |
19 |
19 |
20 |
20 |
21 #include "mussettingscontainer.h" |
21 #include "mussettingscontainer.h" |
22 #include "mussettingsplugin.h" |
22 #include "mussettingsplugin.h" |
23 #include "mussettingsmodel.h" |
23 #include "mussettingsmodel.h" |
24 #include "gslistbox.h" |
24 #include "gslistbox.h" |
25 #include "mussettingsplugin.hrh" |
25 #include "mussettingsplugin.hrh" |
26 #include <mussettingsuirsc.rsg> |
26 #include <mussettingsuirsc.rsg> |
27 #include <aknlists.h> |
27 #include <aknlists.h> |
28 #include <akntitle.h> |
28 #include <akntitle.h> |
29 #include <aknnotewrappers.h> |
29 #include <aknnotewrappers.h> |
30 #include <csxhelp/msh.hlp.hrh> |
30 #include <csxhelp/msh.hlp.hrh> |
31 #include <gsfwviewuids.h> |
31 #include <gsfwviewuids.h> |
32 #include <StringLoader.h> |
32 #include <StringLoader.h> |
33 #include <sipmanagedprofile.h> |
33 #include <sipmanagedprofile.h> |
34 #include <ctsydomainpskeys.h> |
34 #include <ctsydomainpskeys.h> |
35 #include <e32property.h> |
35 #include <e32property.h> |
36 #include <pathinfo.h> |
36 #include <pathinfo.h> |
37 |
37 |
38 |
38 |
39 #ifdef RD_MULTIPLE_DRIVE |
39 #ifdef RD_MULTIPLE_DRIVE |
40 #include <CAknMemorySelectionDialogMultiDrive.h> |
40 #include <CAknMemorySelectionDialogMultiDrive.h> |
41 |
41 |
84 |
84 |
85 CMusSettingsContainer::~CMusSettingsContainer() |
85 CMusSettingsContainer::~CMusSettingsContainer() |
86 { |
86 { |
87 MUS_LOG( "[MUSSET] -> CMusSettingsContainer::~CMusSettingsContainer()" ) |
87 MUS_LOG( "[MUSSET] -> CMusSettingsContainer::~CMusSettingsContainer()" ) |
88 delete iActivationItems; |
88 delete iActivationItems; |
89 delete iProfileItems; |
89 delete iProfileItems; |
90 delete iAutoRecordItems; |
90 delete iAutoRecordItems; |
91 delete iListboxItemArray; |
91 delete iListboxItemArray; |
92 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::~CMusSettingsContainer()" ) |
92 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::~CMusSettingsContainer()" ) |
93 } |
93 } |
94 |
94 |
95 |
95 |
96 // ----------------------------------------------------------------------------- |
96 // ----------------------------------------------------------------------------- |
104 iListboxItemArray = CGSListBoxItemTextArray::NewL( |
104 iListboxItemArray = CGSListBoxItemTextArray::NewL( |
105 aResLbxId, *iListBox, *iCoeEnv ); |
105 aResLbxId, *iListBox, *iCoeEnv ); |
106 iListBox->Model()->SetItemTextArray( iListboxItemArray ); |
106 iListBox->Model()->SetItemTextArray( iListboxItemArray ); |
107 iListBox->Model()->SetOwnershipType( ELbmDoesNotOwnItemArray ); |
107 iListBox->Model()->SetOwnershipType( ELbmDoesNotOwnItemArray ); |
108 |
108 |
109 // OCC: removed "Automatic in home network" choice |
109 // OCC: removed "Automatic in home network" choice |
110 iActivationItems = |
110 iActivationItems = |
111 iCoeEnv->ReadDesC16ArrayResourceL( |
111 iCoeEnv->ReadDesC16ArrayResourceL( |
112 R_OPERATOR_ACTIVATION_SETTING_PAGE_LBX ); |
112 R_OPERATOR_ACTIVATION_SETTING_PAGE_LBX ); |
113 |
113 |
114 iAutoRecordItems = iCoeEnv->ReadDesC16ArrayResourceL( |
114 iAutoRecordItems = iCoeEnv->ReadDesC16ArrayResourceL( |
115 R_VS_VIDEO_SAVING_SETTING_PAGE_LBX ); |
115 R_VS_VIDEO_SAVING_SETTING_PAGE_LBX ); |
116 |
116 |
117 iProfileItems = iCoeEnv->ReadDesC16ArrayResourceL( |
117 iProfileItems = iCoeEnv->ReadDesC16ArrayResourceL( |
175 } |
175 } |
176 else |
176 else |
177 { |
177 { |
178 MakeOperatorActivationItemL(); |
178 MakeOperatorActivationItemL(); |
179 } |
179 } |
180 break; |
180 break; |
181 case KGSSettIdSIPProfile: |
181 case KGSSettIdSIPProfile: |
182 MakeSIPProfileItemL(); |
182 MakeSIPProfileItemL(); |
183 break; |
183 break; |
184 case KGSSettIdAutoRecord: |
184 case KGSSettIdAutoRecord: |
185 MakeAutoRecordItemL(); |
185 MakeAutoRecordItemL(); |
186 break; |
186 break; |
187 case KGSSettIdRecordedVideoSaving: |
187 case KGSSettIdRecordedVideoSaving: |
188 MakeRecordedVideoSavingItemL(); |
188 MakeRecordedVideoSavingItemL(); |
189 break; |
189 break; |
190 case KGSSettIdNote: |
190 case KGSSettIdNote: |
191 MakeNoteItemL(); |
191 MakeNoteItemL(); |
192 break; |
192 break; |
193 default: |
193 default: |
194 break; |
194 break; |
195 } |
195 } |
196 |
196 |
197 iListBox->HandleItemAdditionL(); |
197 iListBox->HandleItemAdditionL(); |
202 // ----------------------------------------------------------------------------- |
202 // ----------------------------------------------------------------------------- |
203 // Generic method to add an item to listbox and make it visible. |
203 // Generic method to add an item to listbox and make it visible. |
204 // ----------------------------------------------------------------------------- |
204 // ----------------------------------------------------------------------------- |
205 // |
205 // |
206 void CMusSettingsContainer::AddItemL( TInt aId, const TPtrC aText ) |
206 void CMusSettingsContainer::AddItemL( TInt aId, const TPtrC aText ) |
207 { |
207 { |
208 MUS_LOG( "[MUSSET] -> CMusSettingsContainer::AddItemL()" ) |
208 MUS_LOG( "[MUSSET] -> CMusSettingsContainer::AddItemL()" ) |
209 iListboxItemArray->SetDynamicTextL( aId, aText ); |
209 iListboxItemArray->SetDynamicTextL( aId, aText ); |
210 iListboxItemArray->SetItemVisibilityL( aId, |
210 iListboxItemArray->SetItemVisibilityL( aId, |
211 CGSListBoxItemTextArray::EVisible ); |
211 CGSListBoxItemTextArray::EVisible ); |
212 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::AddItemL()" ) |
212 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::AddItemL()" ) |
213 } |
213 } |
214 |
214 |
215 |
215 |
216 // ----------------------------------------------------------------------------- |
216 // ----------------------------------------------------------------------------- |
217 // Adds activation setting item to listbox. |
217 // Adds activation setting item to listbox. |
218 // ----------------------------------------------------------------------------- |
218 // ----------------------------------------------------------------------------- |
229 // We make sure that if someone has written to CenRep value bigger |
229 // We make sure that if someone has written to CenRep value bigger |
230 // than 1 (which after OCC changes means 'Off') we treat it as 'Off'. |
230 // than 1 (which after OCC changes means 'Off') we treat it as 'Off'. |
231 activation = MusSettingsKeys::EActiveInHomeNetworks; |
231 activation = MusSettingsKeys::EActiveInHomeNetworks; |
232 } |
232 } |
233 |
233 |
234 AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ activation ] ); |
234 AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ activation ] ); |
235 |
235 |
236 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeActivationItemL()" ) |
236 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeActivationItemL()" ) |
237 } |
237 } |
238 |
238 |
239 |
239 |
242 // ----------------------------------------------------------------------------- |
242 // ----------------------------------------------------------------------------- |
243 // |
243 // |
244 void CMusSettingsContainer::MakeOperatorActivationItemL() |
244 void CMusSettingsContainer::MakeOperatorActivationItemL() |
245 { |
245 { |
246 MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeOperatorActivationItemL()" ) |
246 MUS_LOG( "[MUSSET] -> CMusSettingsContainer::MakeOperatorActivationItemL()" ) |
247 MUS_LOG1( "Activation item( %d )", |
247 |
248 iModel.ActivationItem() ) |
248 //sync with real value, if op specifig |
249 AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ iModel.ActivationItem() ] ); |
249 iModel.InitializeProfileEnablerL(); |
|
250 |
|
251 MUS_LOG1( "Activation item=%d (0=VS enabled, 1=VS disabled)", iModel.ActivationItem() ) |
|
252 AddItemL( KGSSettIdVSActivation, ( *iActivationItems )[ iModel.ActivationItem() ] ); |
250 |
253 |
251 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeOperatorActivationItemL()" ) |
254 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeOperatorActivationItemL()" ) |
252 } |
255 } |
253 |
256 |
254 |
257 |
264 |
267 |
265 TInt profile = MultimediaSharingSettings::SipProfileSettingL(); |
268 TInt profile = MultimediaSharingSettings::SipProfileSettingL(); |
266 |
269 |
267 if ( profile != KDefaultSipProfile && profile != KNoSipProfileSelected ) |
270 if ( profile != KDefaultSipProfile && profile != KNoSipProfileSelected ) |
268 { |
271 { |
269 // profile id defined, get profile name |
272 // profile id defined, get profile name |
270 HBufC* name = iModel.ProfileNameL( profile ); |
273 HBufC* name = iModel.ProfileNameL( profile ); |
271 |
274 |
272 if ( name ) |
275 if ( name ) |
273 { |
276 { |
274 CleanupStack::PushL( name ); |
277 CleanupStack::PushL( name ); |
275 AddItemL( KGSSettIdSIPProfile, *name ); |
278 AddItemL( KGSSettIdSIPProfile, *name ); |
276 CleanupStack::PopAndDestroy( name ); |
279 CleanupStack::PopAndDestroy( name ); |
277 } |
280 } |
278 else |
281 else |
279 { |
282 { |
280 // show profile value not selected |
283 // show profile value not selected |
281 AddItemL( KGSSettIdSIPProfile, |
284 AddItemL( KGSSettIdSIPProfile, |
282 ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); |
285 ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); |
283 } |
286 } |
284 } |
287 } |
285 else if ( profile == KNoSipProfileSelected ) |
288 else if ( profile == KNoSipProfileSelected ) |
286 { |
289 { |
287 AddItemL( KGSSettIdSIPProfile, |
290 AddItemL( KGSSettIdSIPProfile, |
288 ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); |
291 ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileSelectNone ] ); |
289 } |
292 } |
290 else |
293 else |
291 { |
294 { |
292 AddItemL( |
295 AddItemL( |
293 KGSSettIdSIPProfile, |
296 KGSSettIdSIPProfile, |
294 ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileDefault ] ); |
297 ( *iProfileItems )[ CMusSettingsModel::KVsSipProfileDefault ] ); |
295 } |
298 } |
296 |
299 |
297 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeSIPProfileItemL()" ) |
300 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeSIPProfileItemL()" ) |
298 } |
301 } |
299 |
302 |
300 |
303 |
377 MUS_LOG1( "[MUSSET] -> CMusSettingsContainer::Mode:%d()", |
380 MUS_LOG1( "[MUSSET] -> CMusSettingsContainer::Mode:%d()", |
378 auditoryNotification ) |
381 auditoryNotification ) |
379 |
382 |
380 // If unset, use and set default value |
383 // If unset, use and set default value |
381 if ( auditoryNotification < 0 || auditoryNotification > 1 ) |
384 if ( auditoryNotification < 0 || auditoryNotification > 1 ) |
382 { |
385 { |
383 auditoryNotification = MusSettingsKeys::EAuditoryNotificationOff; |
386 auditoryNotification = MusSettingsKeys::EAuditoryNotificationOff; |
384 MultimediaSharingSettings::SetAuditoryNotificationSettingL( |
387 MultimediaSharingSettings::SetAuditoryNotificationSettingL( |
385 MusSettingsKeys::EAuditoryNotificationOff ); |
388 MusSettingsKeys::EAuditoryNotificationOff ); |
386 } |
389 } |
387 |
390 |
388 AddItemL( KGSSettIdNote, ( *iActivationItems )[ auditoryNotification ] ); |
391 AddItemL( KGSSettIdNote, ( *iActivationItems )[ auditoryNotification ] ); |
389 |
392 |
390 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeNoteItemL()" ) |
393 MUS_LOG( "[MUSSET] <- CMusSettingsContainer::MakeNoteItemL()" ) |
391 } |
394 } |
392 |
395 |
393 |
396 |
422 // |
425 // |
423 void CMusSettingsContainer::ShowNewProfileActiveAfterCallL() |
426 void CMusSettingsContainer::ShowNewProfileActiveAfterCallL() |
424 { |
427 { |
425 MUS_LOG( |
428 MUS_LOG( |
426 "[MUSSET] -> CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) |
429 "[MUSSET] -> CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) |
427 TPSCTsyCallState callState; |
430 TPSCTsyCallState callState; |
428 User::LeaveIfError( RProperty::Get( KPSUidCtsyCallInformation, |
431 User::LeaveIfError( RProperty::Get( KPSUidCtsyCallInformation, |
429 KCTsyCallState, |
432 KCTsyCallState, |
430 (TInt&)callState) ); |
433 (TInt&)callState) ); |
431 if ( callState == EPSCTsyCallStateAlerting || |
434 |
432 callState == EPSCTsyCallStateRinging || |
435 if ( callState == EPSCTsyCallStateAlerting || |
433 callState == EPSCTsyCallStateDialling || |
436 callState == EPSCTsyCallStateRinging || |
434 callState == EPSCTsyCallStateAnswering || |
437 callState == EPSCTsyCallStateDialling || |
435 callState == EPSCTsyCallStateDisconnecting || |
438 callState == EPSCTsyCallStateAnswering || |
436 callState == EPSCTsyCallStateConnected || |
439 callState == EPSCTsyCallStateDisconnecting || |
437 callState == EPSCTsyCallStateHold) |
440 callState == EPSCTsyCallStateConnected || |
438 { |
441 callState == EPSCTsyCallStateHold) |
439 HBufC* infoTxt = StringLoader::LoadLC( R_QTN_MSH_SET_PROFILE_NOTE ); |
442 { |
440 CAknInformationNote* note = new ( ELeave ) CAknInformationNote( ETrue ); |
443 HBufC* infoTxt = StringLoader::LoadLC( R_QTN_MSH_SET_PROFILE_NOTE ); |
441 note->ExecuteLD( infoTxt->Des() ); |
444 CAknInformationNote* note = new ( ELeave ) CAknInformationNote( ETrue ); |
442 CleanupStack::PopAndDestroy( infoTxt ); |
445 note->ExecuteLD( infoTxt->Des() ); |
443 MUS_LOG( |
446 CleanupStack::PopAndDestroy( infoTxt ); |
444 "[MUSSET] <- CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) |
447 } |
445 } |
448 |
|
449 MUS_LOG( |
|
450 "[MUSSET] <- CMusSettingsContainer::ShowNewProfileActiveAfterCallL()" ) |
446 } |
451 } |
447 |
452 |
448 // ----------------------------------------------------------------------------- |
453 // ----------------------------------------------------------------------------- |
449 // void CMusSettingsContainer::HideItemsL(TInt aItemIndex) |
454 // void CMusSettingsContainer::HideItemsL(TInt aItemIndex) |
450 // Some items are unwanted by operators.Hide those items from listbox item |
455 // Some items are unwanted by operators.Hide those items from listbox item |
453 void CMusSettingsContainer::HideItemsL(TInt aItemIndex) |
458 void CMusSettingsContainer::HideItemsL(TInt aItemIndex) |
454 { |
459 { |
455 MUS_LOG1("[MUSSET] -> CMusSettingsContainer::HideItemsL() %d",aItemIndex ) |
460 MUS_LOG1("[MUSSET] -> CMusSettingsContainer::HideItemsL() %d",aItemIndex ) |
456 iListboxItemArray->SetItemVisibilityL( aItemIndex, |
461 iListboxItemArray->SetItemVisibilityL( aItemIndex, |
457 CGSListBoxItemTextArray::EInvisible ); |
462 CGSListBoxItemTextArray::EInvisible ); |
458 MUS_LOG("[MUSSET] <- CMusSettingsContainer::HideItemsL()" ) |
463 MUS_LOG("[MUSSET] <- CMusSettingsContainer::HideItemsL()" ) |
459 } |
464 } |
|
465 |