53 /*! |
54 /*! |
54 Constructor of NmIpsSettingsPlugin. |
55 Constructor of NmIpsSettingsPlugin. |
55 */ |
56 */ |
56 NmIpsSettingsPlugin::NmIpsSettingsPlugin() |
57 NmIpsSettingsPlugin::NmIpsSettingsPlugin() |
57 : mSettingsHelper(0), |
58 : mSettingsHelper(0), |
58 mSettingsManager(0), |
59 mSettingsManager(0) |
59 mTranslator(0) |
60 { |
60 { |
|
61 QScopedPointer<QTranslator> translator(new QTranslator()); |
|
62 |
|
63 #ifdef Q_OS_SYMBIAN |
|
64 QString lang = QLocale::system().name(); |
61 QString lang = QLocale::system().name(); |
|
62 QString path = "Z:/resource/qt/translations/"; |
65 QString appName = "mailips_"; |
63 QString appName = "mailips_"; |
66 QString path = "Z:/resource/qt/translations/"; |
64 QString commonName = "common_"; |
67 #else |
65 |
68 QString lang; |
66 |
69 QString appName = "mailips"; |
67 // Load common strings |
70 QString path = ":/translations"; |
68 QScopedPointer<QTranslator> commonTranslator(new QTranslator(this)); |
71 #endif |
69 commonTranslator->load(commonName + lang, path); |
72 |
70 QCoreApplication::installTranslator(commonTranslator.data()); |
|
71 (void)commonTranslator.take(); |
|
72 |
|
73 // Load IPS settings specific strings |
|
74 QScopedPointer<QTranslator> translator(new QTranslator(this)); |
73 translator->load(appName + lang, path); |
75 translator->load(appName + lang, path); |
74 |
|
75 QCoreApplication::installTranslator(translator.data()); |
76 QCoreApplication::installTranslator(translator.data()); |
76 mTranslator = translator.take(); |
77 (void)translator.take(); |
77 |
|
78 } |
78 } |
79 |
79 |
80 /*! |
80 /*! |
81 Destructor of NmIpsSettingsPlugin. |
81 Destructor of NmIpsSettingsPlugin. |
82 */ |
82 */ |
83 NmIpsSettingsPlugin::~NmIpsSettingsPlugin() |
83 NmIpsSettingsPlugin::~NmIpsSettingsPlugin() |
84 { |
84 { |
85 delete mSettingsManager; |
85 delete mSettingsManager; |
86 delete mSettingsHelper; |
86 delete mSettingsHelper; |
87 delete mTranslator; |
|
88 } |
87 } |
89 |
88 |
90 /*! |
89 /*! |
91 Populates the form items into model. |
90 Populates the form items into model. |
92 \param model Reference to the model. |
91 \param model Reference to the model. |
141 /*! |
140 /*! |
142 This slot can be used in cases when plugin needs to handle stuff before settingsview is closed. |
141 This slot can be used in cases when plugin needs to handle stuff before settingsview is closed. |
143 */ |
142 */ |
144 void NmIpsSettingsPlugin::aboutToClose() |
143 void NmIpsSettingsPlugin::aboutToClose() |
145 { |
144 { |
146 if (mSettingsHelper->isOffline()) { |
145 QVariant profileIndex; |
|
146 mSettingsManager->readSetting(IpsServices::ReceptionActiveProfile, profileIndex); |
|
147 if ((mSettingsHelper->isOffline()) && (profileIndex.toInt() != IpsServices::EmailSyncProfileManualFetch)) { |
147 emit goOnline(mSettingsManager->mailboxId()); |
148 emit goOnline(mSettingsManager->mailboxId()); |
148 } |
149 } |
149 } |
150 } |
150 |
151 |
151 /*! |
152 /*! |
152 Appends the group items to the group item. |
153 Appends the group items to the model. |
153 \param model Reference to the model. |
|
154 \param form Reference to the form. |
|
155 */ |
154 */ |
156 void NmIpsSettingsPlugin::initGroupItems() |
155 void NmIpsSettingsPlugin::initGroupItems() |
157 { |
156 { |
158 HbDataFormModelItem *rootItem = mModel->invisibleRootItem(); |
157 HbDataFormModelItem *rootItem = mModel->invisibleRootItem(); |
159 |
158 |
178 |
177 |
179 HbDataFormModelItem *serverInfoItem = |
178 HbDataFormModelItem *serverInfoItem = |
180 mModel->appendDataFormItem(HbDataFormModelItem::GroupItem, |
179 mModel->appendDataFormItem(HbDataFormModelItem::GroupItem, |
181 hbTrId("txt_mailips_subhead_server_info"), |
180 hbTrId("txt_mailips_subhead_server_info"), |
182 rootItem); |
181 rootItem); |
|
182 mSettingsHelper->setServerInfoGroupItem(serverInfoItem); |
183 initServerInfoItems(*serverInfoItem); |
183 initServerInfoItems(*serverInfoItem); |
184 |
184 |
185 // Create the delete mailbox button. |
185 // Create the delete mailbox button. |
186 HbDataFormModelItem::DataItemType buttonItem = |
186 HbDataFormModelItem::DataItemType buttonItem = |
187 static_cast<HbDataFormModelItem::DataItemType>( |
187 static_cast<HbDataFormModelItem::DataItemType>( |
201 Appends the preferences items to the group item. |
201 Appends the preferences items to the group item. |
202 \param item Reference to the parent group item. |
202 \param item Reference to the parent group item. |
203 */ |
203 */ |
204 void NmIpsSettingsPlugin::initPreferenceItems(HbDataFormModelItem &item) const |
204 void NmIpsSettingsPlugin::initPreferenceItems(HbDataFormModelItem &item) const |
205 { |
205 { |
206 // My Name |
206 // 1. My Name |
207 QVariant myName; |
207 QVariant myName; |
208 mSettingsManager->readSetting(IpsServices::EmailAlias, myName); |
208 mSettingsManager->readSetting(IpsServices::EmailAlias, myName); |
209 CpSettingFormItemData *myNameItem = new CpSettingFormItemData( |
209 CpSettingFormItemData *myNameItem = new CpSettingFormItemData( |
210 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_my_name")); |
210 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_my_name")); |
211 mSettingsHelper->insertContentItem(IpsServices::EmailAlias, myNameItem); |
211 mSettingsHelper->insertContentItem(IpsServices::EmailAlias, myNameItem); |
214 mSettingsHelper, SLOT(saveMyName())); |
214 mSettingsHelper, SLOT(saveMyName())); |
215 mForm->addConnection(myNameItem, SIGNAL(textChanged(QString)), |
215 mForm->addConnection(myNameItem, SIGNAL(textChanged(QString)), |
216 mSettingsHelper, SLOT(myNameTextChange(QString))); |
216 mSettingsHelper, SLOT(myNameTextChange(QString))); |
217 item.appendChild(myNameItem); |
217 item.appendChild(myNameItem); |
218 |
218 |
219 // Mailbox Name |
219 // 2. Mailbox Name |
220 QVariant mailboxName; |
220 QVariant mailboxName; |
221 mSettingsManager->readSetting(IpsServices::MailboxName, mailboxName); |
221 mSettingsManager->readSetting(IpsServices::MailboxName, mailboxName); |
222 CpSettingFormItemData *mailboxNameItem = new CpSettingFormItemData( |
222 CpSettingFormItemData *mailboxNameItem = new CpSettingFormItemData( |
223 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_mailbox_name")); |
223 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_mailbox_name")); |
224 mSettingsHelper->insertContentItem(IpsServices::MailboxName, mailboxNameItem); |
224 mSettingsHelper->insertContentItem(IpsServices::MailboxName, mailboxNameItem); |
331 Appends the user info items to the group item. |
331 Appends the user info items to the group item. |
332 \param item Reference to the parent group item. |
332 \param item Reference to the parent group item. |
333 */ |
333 */ |
334 void NmIpsSettingsPlugin::initUserInfoItems(HbDataFormModelItem &item) const |
334 void NmIpsSettingsPlugin::initUserInfoItems(HbDataFormModelItem &item) const |
335 { |
335 { |
336 // Mail address |
336 // 1. Mail address |
337 QVariant mailAddress; |
337 QVariant mailAddress; |
338 mSettingsManager->readSetting(IpsServices::EmailAddress, mailAddress); |
338 mSettingsManager->readSetting(IpsServices::EmailAddress, mailAddress); |
339 CpSettingFormItemData *mailAddressItem = new CpSettingFormItemData( |
339 CpSettingFormItemData *mailAddressItem = new CpSettingFormItemData( |
340 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_mail_address")); |
340 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_mail_address")); |
341 mSettingsHelper->insertContentItem(IpsServices::EmailAddress, mailAddressItem); |
341 mSettingsHelper->insertContentItem(IpsServices::EmailAddress, mailAddressItem); |
344 mSettingsHelper, SLOT(saveMailAddress())); |
344 mSettingsHelper, SLOT(saveMailAddress())); |
345 mForm->addConnection(mailAddressItem, SIGNAL(textChanged(QString)), |
345 mForm->addConnection(mailAddressItem, SIGNAL(textChanged(QString)), |
346 mSettingsHelper, SLOT(mailAddressTextChange(QString))); |
346 mSettingsHelper, SLOT(mailAddressTextChange(QString))); |
347 item.appendChild(mailAddressItem); |
347 item.appendChild(mailAddressItem); |
348 |
348 |
349 // Username (Never visible in Yahoo!) |
349 // 2. Username |
350 QVariant username; |
350 QVariant username; |
351 mSettingsManager->readSetting(IpsServices::IncomingLoginName, username); |
351 mSettingsManager->readSetting(IpsServices::IncomingLoginName, username); |
352 CpSettingFormItemData *usernameItem = new CpSettingFormItemData( |
352 CpSettingFormItemData *usernameItem = new CpSettingFormItemData( |
353 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_username")); |
353 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_username")); |
354 mSettingsHelper->insertContentItem(IpsServices::IncomingLoginName, usernameItem); |
354 mSettingsHelper->insertContentItem(IpsServices::IncomingLoginName, usernameItem); |
355 usernameItem->setContentWidgetData(QString("text"), username); |
355 usernameItem->setContentWidgetData(QString("text"), username); |
356 mForm->addConnection(usernameItem, SIGNAL(editingFinished()), |
356 mForm->addConnection(usernameItem, SIGNAL(editingFinished()), |
357 mSettingsHelper, SLOT(saveUserName())); |
357 mSettingsHelper, SLOT(saveIncomingUserName())); |
358 mForm->addConnection(usernameItem, SIGNAL(textChanged(QString)), |
358 mForm->addConnection(usernameItem, SIGNAL(textChanged(QString)), |
359 mSettingsHelper, SLOT(userNameTextChange(QString))); |
359 mSettingsHelper, SLOT(incomingUserNameTextChange(QString))); |
360 item.appendChild(usernameItem); |
360 item.appendChild(usernameItem); |
361 |
361 |
362 // Password |
362 // 3. Password |
363 QVariant password; |
363 QVariant password; |
364 mSettingsManager->readSetting(IpsServices::IncomingPassword, password); |
364 mSettingsManager->readSetting(IpsServices::IncomingPassword, password); |
365 CpSettingFormItemData *passwordItem = new CpSettingFormItemData( |
365 CpSettingFormItemData *passwordItem = new CpSettingFormItemData( |
366 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_password")); |
366 HbDataFormModelItem::TextItem, hbTrId("txt_mailips_setlabel_password")); |
367 mSettingsHelper->insertContentItem(IpsServices::IncomingPassword, passwordItem); |
367 mSettingsHelper->insertContentItem(IpsServices::IncomingPassword, passwordItem); |
368 passwordItem->setContentWidgetData(QString("text"), password); |
368 passwordItem->setContentWidgetData(QString("text"), password); |
369 passwordItem->setContentWidgetData(QString("echoMode"), HbLineEdit::PasswordEchoOnEdit); |
369 passwordItem->setContentWidgetData(QString("echoMode"), HbLineEdit::PasswordEchoOnEdit); |
370 mForm->addConnection(passwordItem, SIGNAL(editingFinished()), |
370 mForm->addConnection(passwordItem, SIGNAL(editingFinished()), |
371 mSettingsHelper, SLOT(savePassword())); |
371 mSettingsHelper, SLOT(saveIncomingPassword())); |
372 item.appendChild(passwordItem); |
372 item.appendChild(passwordItem); |
373 |
373 |
374 // Reply to address |
374 // Reply to address |
375 QVariant replyToAddress; |
375 QVariant replyToAddress; |
376 mSettingsManager->readSetting(IpsServices::ReplyAddress, replyToAddress); |
376 mSettingsManager->readSetting(IpsServices::ReplyAddress, replyToAddress); |
424 incomingSecureConnectionItem->setContentWidgetData(QString("selected"), |
424 incomingSecureConnectionItem->setContentWidgetData(QString("selected"), |
425 incomingSecureConnectionItemIndex); |
425 incomingSecureConnectionItemIndex); |
426 mForm->addConnection(incomingSecureConnectionItem, SIGNAL(itemSelected(int)), |
426 mForm->addConnection(incomingSecureConnectionItem, SIGNAL(itemSelected(int)), |
427 mSettingsHelper, SLOT(incomingSecureConnectionItemChange(int))); |
427 mSettingsHelper, SLOT(incomingSecureConnectionItemChange(int))); |
428 mForm->addConnection(incomingSecureConnectionItem, SIGNAL(pressed(const QModelIndex &)), |
428 mForm->addConnection(incomingSecureConnectionItem, SIGNAL(pressed(const QModelIndex &)), |
429 mSettingsHelper, SLOT(incomingSecureConnectionPressed(const QModelIndex &))); |
429 mSettingsHelper, SLOT(incomingSecureConnectionPress(const QModelIndex &))); |
430 item.appendChild(incomingSecureConnectionItem); |
430 item.appendChild(incomingSecureConnectionItem); |
431 |
431 |
432 // 3. Incoming mail server port |
432 // 3. Incoming mail server port |
433 QVariant incomingPort; |
433 QVariant incomingPort; |
434 mSettingsManager->readSetting(IpsServices::IncomingPort, incomingPort); |
434 mSettingsManager->readSetting(IpsServices::IncomingPort, incomingPort); |
437 "txt_mailips_setlabel_incoming_port")); |
437 "txt_mailips_setlabel_incoming_port")); |
438 mSettingsHelper->insertContentItem(IpsServices::IncomingPort, incomingPortItem); |
438 mSettingsHelper->insertContentItem(IpsServices::IncomingPort, incomingPortItem); |
439 mForm->addConnection(incomingPortItem, SIGNAL(itemSelected(int)), |
439 mForm->addConnection(incomingPortItem, SIGNAL(itemSelected(int)), |
440 mSettingsHelper, SLOT(incomingPortChange(int))); |
440 mSettingsHelper, SLOT(incomingPortChange(int))); |
441 mForm->addConnection(incomingPortItem, SIGNAL(pressed(const QModelIndex &)), |
441 mForm->addConnection(incomingPortItem, SIGNAL(pressed(const QModelIndex &)), |
442 mSettingsHelper, SLOT(incomingPortPressed(const QModelIndex &))); |
442 mSettingsHelper, SLOT(incomingPortPress(const QModelIndex &))); |
443 QStringList incomingPortItems; |
443 QStringList incomingPortItems; |
444 incomingPortItems << hbTrId("txt_mailips_setlabel_incoming_port_default") |
444 incomingPortItems << hbTrId("txt_mailips_setlabel_incoming_port_default") |
445 << hbTrId("txt_mailips_setlabel_incoming_port_user_defined"); |
445 << hbTrId("txt_mailips_setlabel_incoming_port_user_defined"); |
446 incomingPortItem->setContentWidgetData(QString("items"), incomingPortItems); |
446 incomingPortItem->setContentWidgetData(QString("items"), incomingPortItems); |
447 int incomingPortItemIndex = |
447 int incomingPortItemIndex = |
460 mSettingsHelper, SLOT(saveOutgoingMailServer())); |
460 mSettingsHelper, SLOT(saveOutgoingMailServer())); |
461 mForm->addConnection(outgoingMailServerItem, SIGNAL(textChanged(QString)), |
461 mForm->addConnection(outgoingMailServerItem, SIGNAL(textChanged(QString)), |
462 mSettingsHelper, SLOT(outgoingMailServerTextChange(QString))); |
462 mSettingsHelper, SLOT(outgoingMailServerTextChange(QString))); |
463 item.appendChild(outgoingMailServerItem); |
463 item.appendChild(outgoingMailServerItem); |
464 |
464 |
465 // 5. Outgoing Secure connection |
465 // 5. Outgoing secure connection |
466 QVariant outgoingSecureSockets; |
466 QVariant outgoingSecureSockets; |
467 QVariant outgoingSSLWrapper; |
467 QVariant outgoingSSLWrapper; |
468 mSettingsManager->readSetting(IpsServices::OutgoingSecureSockets, outgoingSecureSockets); |
468 mSettingsManager->readSetting(IpsServices::OutgoingSecureSockets, outgoingSecureSockets); |
469 mSettingsManager->readSetting(IpsServices::OutgoingSSLWrapper, outgoingSSLWrapper); |
469 mSettingsManager->readSetting(IpsServices::OutgoingSSLWrapper, outgoingSSLWrapper); |
470 CpSettingFormItemData *outgoingSecureConnectionItem = |
470 CpSettingFormItemData *outgoingSecureConnectionItem = |
483 outgoingSecureConnectionItem->setContentWidgetData(QString("selected"), |
483 outgoingSecureConnectionItem->setContentWidgetData(QString("selected"), |
484 outgoingSecureConnectionItemIndex); |
484 outgoingSecureConnectionItemIndex); |
485 mForm->addConnection(outgoingSecureConnectionItem, SIGNAL(itemSelected(int)), |
485 mForm->addConnection(outgoingSecureConnectionItem, SIGNAL(itemSelected(int)), |
486 mSettingsHelper, SLOT(outgoingSecureConnectionItemChange(int))); |
486 mSettingsHelper, SLOT(outgoingSecureConnectionItemChange(int))); |
487 mForm->addConnection(outgoingSecureConnectionItem, SIGNAL(pressed(const QModelIndex &)), |
487 mForm->addConnection(outgoingSecureConnectionItem, SIGNAL(pressed(const QModelIndex &)), |
488 mSettingsHelper, SLOT(outgoingSecureConnectionPressed(const QModelIndex &))); |
488 mSettingsHelper, SLOT(outgoingSecureConnectionPress(const QModelIndex &))); |
489 item.appendChild(outgoingSecureConnectionItem); |
489 item.appendChild(outgoingSecureConnectionItem); |
490 |
490 |
491 // 6. Outgoing mail server port |
491 // 6. Outgoing mail server port |
492 QVariant outgoingPort; |
492 QVariant outgoingPort; |
493 mSettingsManager->readSetting(IpsServices::OutgoingPort, outgoingPort); |
493 mSettingsManager->readSetting(IpsServices::OutgoingPort, outgoingPort); |
496 "txt_mailips_setlabel_outgoing_port")); |
496 "txt_mailips_setlabel_outgoing_port")); |
497 mSettingsHelper->insertContentItem(IpsServices::OutgoingPort, outgoingPortItem); |
497 mSettingsHelper->insertContentItem(IpsServices::OutgoingPort, outgoingPortItem); |
498 mForm->addConnection(outgoingPortItem, SIGNAL(itemSelected(int)), |
498 mForm->addConnection(outgoingPortItem, SIGNAL(itemSelected(int)), |
499 mSettingsHelper, SLOT(outgoingPortChange(int))); |
499 mSettingsHelper, SLOT(outgoingPortChange(int))); |
500 mForm->addConnection(outgoingPortItem, SIGNAL(pressed(const QModelIndex &)), |
500 mForm->addConnection(outgoingPortItem, SIGNAL(pressed(const QModelIndex &)), |
501 mSettingsHelper, SLOT(outgoingPortPressed(const QModelIndex &))); |
501 mSettingsHelper, SLOT(outgoingPortPress(const QModelIndex &))); |
502 QStringList outgoingPortItems; |
502 QStringList outgoingPortItems; |
503 outgoingPortItems << hbTrId("txt_mailips_setlabel_incoming_port_default") |
503 outgoingPortItems << hbTrId("txt_mailips_setlabel_incoming_port_default") |
504 << hbTrId("txt_mailips_setlabel_incoming_port_user_defined"); |
504 << hbTrId("txt_mailips_setlabel_incoming_port_user_defined"); |
505 outgoingPortItem->setContentWidgetData(QString("items"), outgoingPortItems); |
505 outgoingPortItem->setContentWidgetData(QString("items"), outgoingPortItems); |
506 int outgoingPortItemIndex = |
506 int outgoingPortItemIndex = |
507 mSettingsHelper->getCorrectOutgoingPortRadioButtonIndex(outgoingPort.toInt()); |
507 mSettingsHelper->getCorrectOutgoingPortRadioButtonIndex(outgoingPort.toInt()); |
508 outgoingPortItem->setContentWidgetData(QString("selected"), outgoingPortItemIndex); |
508 outgoingPortItem->setContentWidgetData(QString("selected"), outgoingPortItemIndex); |
509 item.appendChild(outgoingPortItem); |
509 item.appendChild(outgoingPortItem); |
|
510 |
|
511 // 7. Outgoing authentication. |
|
512 CpSettingFormItemData *outgoingAuthenticationItem = |
|
513 new CpSettingFormItemData(HbDataFormModelItem::RadioButtonListItem, hbTrId( |
|
514 "txt_mailips_setlabel_outgoing_mail_authentication")); |
|
515 mSettingsHelper->insertContentItem(IpsServices::SMTPAuthentication, outgoingAuthenticationItem); |
|
516 mForm->addConnection(outgoingAuthenticationItem, SIGNAL(itemSelected(int)), |
|
517 mSettingsHelper, SLOT(outgoingAuthenticationChange(int))); |
|
518 mForm->addConnection(outgoingAuthenticationItem, SIGNAL(pressed(const QModelIndex &)), |
|
519 mSettingsHelper, SLOT(outgoingAuthenticationPress(const QModelIndex &))); |
|
520 QStringList outgoingAuthenticationItems; |
|
521 outgoingAuthenticationItems << hbTrId("txt_mailips_setlabel_outgoing_authentication_none") |
|
522 << hbTrId("txt_mailips_setlabel_outgoing_authentication_same") |
|
523 << hbTrId("txt_mailips_setlabel_outgoing_authentication_user"); |
|
524 outgoingAuthenticationItem->setContentWidgetData(QString("items"), outgoingAuthenticationItems); |
|
525 int outgoingAuthenticationIndex = |
|
526 mSettingsHelper->getCorrectOutgoingAuthenticationRadioButtonIndex(); |
|
527 outgoingAuthenticationItem->setContentWidgetData(QString("selected"), outgoingAuthenticationIndex); |
|
528 item.appendChild(outgoingAuthenticationItem); |
|
529 if (outgoingAuthenticationIndex == IpsServices::EMailAuthUserAuthentication) { |
|
530 mSettingsHelper->createServerInfoGroupDynamicItems(); |
|
531 } |
510 |
532 |
511 // 8. Folder path |
533 // 8. Folder path |
512 // This item is only shown for IMAP4 account. |
534 // This item is only shown for IMAP4 account. |
513 if (mSettingsManager->accountType() == IpsServices::EMailImap) { |
535 if (mSettingsManager->accountType() == IpsServices::EMailImap) { |
514 QVariant folderPath; |
536 QVariant folderPath; |
516 CpSettingFormItemData *folderPathItem = |
538 CpSettingFormItemData *folderPathItem = |
517 new CpSettingFormItemData(HbDataFormModelItem::RadioButtonListItem, hbTrId( |
539 new CpSettingFormItemData(HbDataFormModelItem::RadioButtonListItem, hbTrId( |
518 "txt_mailips_setlabel_folder_path")); |
540 "txt_mailips_setlabel_folder_path")); |
519 mSettingsHelper->insertContentItem(IpsServices::FolderPath, folderPathItem); |
541 mSettingsHelper->insertContentItem(IpsServices::FolderPath, folderPathItem); |
520 mForm->addConnection(folderPathItem, SIGNAL(itemSelected(int)), |
542 mForm->addConnection(folderPathItem, SIGNAL(itemSelected(int)), |
521 mSettingsHelper, SLOT(inboxPathChange(int))); |
543 mSettingsHelper, SLOT(folderPathChange(int))); |
522 mForm->addConnection(folderPathItem, SIGNAL(pressed(const QModelIndex &)), |
544 mForm->addConnection(folderPathItem, SIGNAL(pressed(const QModelIndex &)), |
523 mSettingsHelper, SLOT(inboxPathPressed(const QModelIndex &))); |
545 mSettingsHelper, SLOT(folderPathPress(const QModelIndex &))); |
524 QStringList folderPathItems; |
546 QStringList folderPathItems; |
525 folderPathItems << hbTrId("txt_mailips_setlabel_folder_path_val_default") |
547 folderPathItems << hbTrId("txt_mailips_setlabel_folder_path_val_default") |
526 << hbTrId("txt_mailips_setlabel_folder_path_user_defined"); |
548 << hbTrId("txt_mailips_setlabel_folder_path_user_defined"); |
527 folderPathItem->setContentWidgetData(QString("items"), folderPathItems); |
549 folderPathItem->setContentWidgetData(QString("items"), folderPathItems); |
528 int folderPathItemIndex = mSettingsHelper->getCorrectInboxPathRadioButtonIndex(folderPath); |
550 int folderPathItemIndex = mSettingsHelper->getCorrectInboxPathRadioButtonIndex(folderPath); |
537 void NmIpsSettingsPlugin::createUserDefinedMode() |
559 void NmIpsSettingsPlugin::createUserDefinedMode() |
538 { |
560 { |
539 QVariant userDefineMode; |
561 QVariant userDefineMode; |
540 mSettingsManager->readSetting(IpsServices::ReceptionUserDefinedProfile, userDefineMode); |
562 mSettingsManager->readSetting(IpsServices::ReceptionUserDefinedProfile, userDefineMode); |
541 |
563 |
542 // If user defined mode do not already exist, create it |
564 // If user defined mode do not already exist, create it. |
543 if (!userDefineMode.toInt()) { |
565 if (!userDefineMode.toInt()) { |
544 // Add 'user defined' mode to combobox |
566 // Add 'user defined' mode to combobox. |
545 HbDataFormModelItem *syncProfile = |
567 HbDataFormModelItem *syncProfile = |
546 mSettingsHelper->contentItem(IpsServices::ReceptionActiveProfile); |
568 mSettingsHelper->contentItem(IpsServices::ReceptionActiveProfile); |
547 |
569 |
548 QVariant contentWidgetData = syncProfile->contentWidgetData(NmIpsSettingsComboItems); |
570 QVariant contentWidgetData = syncProfile->contentWidgetData(NmIpsSettingsComboItems); |
549 QStringList modeList = contentWidgetData.value<QStringList>(); |
571 QStringList modeList = contentWidgetData.value<QStringList>(); |
550 modeList << hbTrId("txt_mailips_setlabel_selected_mode_val_user_define"); |
572 modeList << hbTrId("txt_mailips_setlabel_selected_mode_val_user_define"); |
551 |
573 |
552 // Add 'user defined' explanation text to label text |
574 // Add 'user defined' explanation text to label text. |
553 contentWidgetData = syncProfile->contentWidgetData(NmIpsSettingsLabelTexts); |
575 contentWidgetData = syncProfile->contentWidgetData(NmIpsSettingsLabelTexts); |
554 QStringList infoList = contentWidgetData.value<QStringList>(); |
576 QStringList infoList = contentWidgetData.value<QStringList>(); |
555 infoList << hbTrId("txt_mailips_list_the_mailbox_is_refreshed_as_defin"); |
577 infoList << hbTrId("txt_mailips_list_the_mailbox_is_refreshed_as_defin"); |
556 |
578 |
557 // disconnect |
579 // Disconnect signal temporarily so that by setting content widget data will |
|
580 // not cause any unnecessary actions in helper. |
558 mForm->removeConnection(syncProfile, SIGNAL(currentIndexChanged(int)), |
581 mForm->removeConnection(syncProfile, SIGNAL(currentIndexChanged(int)), |
559 mSettingsHelper, SLOT(receivingScheduleChange(int))); |
582 mSettingsHelper, SLOT(receivingScheduleChange(int))); |
560 |
583 |
561 syncProfile->setContentWidgetData(NmIpsSettingsComboItems, modeList); |
584 syncProfile->setContentWidgetData(NmIpsSettingsComboItems, modeList); |
562 syncProfile->setContentWidgetData(NmIpsSettingsLabelTexts, infoList); |
585 syncProfile->setContentWidgetData(NmIpsSettingsLabelTexts, infoList); |
563 |
586 |
564 // reconnect |
587 // Reconnect signal, so that helper is aware of data modifications. |
565 mForm->addConnection(syncProfile, SIGNAL(currentIndexChanged(int)), |
588 mForm->addConnection(syncProfile, SIGNAL(currentIndexChanged(int)), |
566 mSettingsHelper, SLOT(receivingScheduleChange(int))); |
589 mSettingsHelper, SLOT(receivingScheduleChange(int))); |
567 |
590 |
568 // Mark that user defined mode exists |
591 // Mark that user defined mode exists. |
569 userDefineMode.setValue(1); |
592 userDefineMode.setValue(1); |
570 mSettingsManager->writeSetting(IpsServices::ReceptionUserDefinedProfile, userDefineMode); |
593 mSettingsManager->writeSetting(IpsServices::ReceptionUserDefinedProfile, userDefineMode); |
571 } |
594 } |
572 } |
595 } |
573 |
596 |
574 /*! |
597 /*! |
575 |
598 Handles mail in inbox modifications. |
|
599 |
|
600 \param index Selected value index. |
576 */ |
601 */ |
577 void NmIpsSettingsPlugin::showMailInInboxModified(int index) |
602 void NmIpsSettingsPlugin::showMailInInboxModified(int index) |
578 { |
603 { |
579 HbDataFormModelItem* item = mSettingsHelper->contentItem(IpsServices::ReceptionInboxSyncWindow); |
604 HbDataFormModelItem* item = mSettingsHelper->contentItem(IpsServices::ReceptionInboxSyncWindow); |
580 QVariant itemData = item->data(HbDataFormModelItem::HbDataFormModelItem::DescriptionRole + 1); |
605 QVariant itemData = item->data(HbDataFormModelItem::HbDataFormModelItem::DescriptionRole + 1); |