46 #include "nmipsextendedsettingsmanager.h" |
46 #include "nmipsextendedsettingsmanager.h" |
47 |
47 |
48 // CONSTANTS |
48 // CONSTANTS |
49 |
49 |
50 // Dynamic receiving schedule items. |
50 // Dynamic receiving schedule items. |
51 const IpsServices::SettingItem NmIpsSettingsReceivingScheduleItems[] = { |
51 static const IpsServices::SettingItem NmIpsSettingsReceivingScheduleItems[] = { |
52 IpsServices::ReceptionInboxSyncWindow, |
52 IpsServices::ReceptionInboxSyncWindow, |
53 IpsServices::ReceptionWeekDays, |
53 IpsServices::ReceptionWeekDays, |
54 IpsServices::ReceptionDayStartTime, |
54 IpsServices::ReceptionDayStartTime, |
55 IpsServices::ReceptionDayEndTime, |
55 IpsServices::ReceptionDayEndTime, |
56 IpsServices::ReceptionRefreshPeriodDayTime}; |
56 IpsServices::ReceptionRefreshPeriodDayTime}; |
57 |
57 |
58 // Dynamic receiving schedule item count. |
58 // Dynamic receiving schedule item count. |
59 const int NmIpsSettingsReceivingScheduleItemCount( |
59 static const int NmIpsSettingsReceivingScheduleItemCount( |
60 sizeof(NmIpsSettingsReceivingScheduleItems) / sizeof(NmIpsSettingsReceivingScheduleItems[0])); |
60 sizeof(NmIpsSettingsReceivingScheduleItems) / sizeof(NmIpsSettingsReceivingScheduleItems[0])); |
61 |
61 |
62 // Index of ReceptionDayStartTime in NmIpsSettingsReceivingScheduleItems array. |
62 // Index of ReceptionDayStartTime in NmIpsSettingsReceivingScheduleItems array. |
63 const int NmIpsSettingsIndexOfReceptionDayStartTime(2); |
63 static const int NmIpsSettingsIndexOfReceptionDayStartTime(2); |
64 |
64 |
65 // Index of user defined mode. |
65 // Index of user defined mode. |
66 const int NmIpsSettingsIndexOfUserDefinedMode(3); |
66 static const int NmIpsSettingsIndexOfUserDefinedMode(3); |
67 |
67 |
68 // Receving schedule item not found value. |
68 // Receving schedule item not found value. |
69 const int NmIpsSettingsRecevingScheduleItemNotFound(-1); |
69 static const int NmIpsSettingsRecevingScheduleItemNotFound(-1); |
70 |
70 |
71 |
71 |
72 |
72 |
73 QTM_USE_NAMESPACE |
73 QTM_USE_NAMESPACE |
74 |
74 |
90 : mCurrentLineEditChanged(false), |
90 : mCurrentLineEditChanged(false), |
91 mEmitOnline(false), |
91 mEmitOnline(false), |
92 mSettingsManager(settingsManager), |
92 mSettingsManager(settingsManager), |
93 mDataForm(dataForm), |
93 mDataForm(dataForm), |
94 mDataFormModel(dataFormModel), |
94 mDataFormModel(dataFormModel), |
95 mDeleteConfirmationDialog(0), |
95 mDeleteConfirmationDialog(NULL), |
96 mIncomingPortInputDialog(0), |
96 mIncomingPortInputDialog(NULL), |
97 mIncomingPortInputValidator(0), |
97 mIncomingPortInputValidator(NULL), |
98 mFolderPathInputDialog(0), |
98 mFolderPathInputDialog(NULL), |
99 mOutgoingPortInputDialog(0), |
99 mOutgoingPortInputDialog(NULL), |
100 mOutgoingPortInputValidator(0), |
100 mOutgoingPortInputValidator(NULL), |
101 mDestinationDialog(0), |
101 mDestinationDialog(NULL), |
102 mServerInfoDynamicItemsVisible(false), |
102 mServerInfoDynamicItemsVisible(false), |
103 mAbortDynamicRSItemHandling(false), |
103 mAbortDynamicRSItemHandling(false), |
104 mCurrentRefreshIndex(-1) |
104 mCurrentRefreshIndex(-1) |
105 { |
105 { |
106 } |
106 } |
314 refreshMailItems << hbTrId("txt_mailips_setlabel_val_keep_uptodate") |
314 refreshMailItems << hbTrId("txt_mailips_setlabel_val_keep_uptodate") |
315 << HbStringUtil::convertDigits(hbTrId("txt_mailips_setlabel_val_every_15_minutes")) |
315 << HbStringUtil::convertDigits(hbTrId("txt_mailips_setlabel_val_every_15_minutes")) |
316 << HbStringUtil::convertDigits(hbTrId("txt_mailips_setlabel_val_every_1_hour")) |
316 << HbStringUtil::convertDigits(hbTrId("txt_mailips_setlabel_val_every_1_hour")) |
317 << HbStringUtil::convertDigits(hbTrId("txt_mailips_setlabel_val_every_4_hours")); |
317 << HbStringUtil::convertDigits(hbTrId("txt_mailips_setlabel_val_every_4_hours")); |
318 formItemData->setContentWidgetData("items", refreshMailItems); |
318 formItemData->setContentWidgetData("items", refreshMailItems); |
319 |
319 formItemData->setContentWidgetData("displayMode","popup"); |
|
320 |
320 mDataForm.addConnection(formItemData, SIGNAL(finished(HbAction *)), |
321 mDataForm.addConnection(formItemData, SIGNAL(finished(HbAction *)), |
321 this, SLOT(refreshPeriodModified(HbAction *))); |
322 this, SLOT(refreshPeriodModified(HbAction *))); |
322 |
323 |
323 mDataForm.addConnection(formItemData, SIGNAL(itemSelected(int)), |
324 mDataForm.addConnection(formItemData, SIGNAL(itemSelected(int)), |
324 this, SLOT(refreshIndexModified(int))); |
325 this, SLOT(refreshIndexModified(int))); |
325 } |
326 } |
326 |
327 |
327 // Update data |
328 // Update data |
886 \return index Used to set the selected value |
887 \return index Used to set the selected value |
887 */ |
888 */ |
888 int NmIpsSettingsHelper::getCorrectIncomingPortRadioButtonIndex() |
889 int NmIpsSettingsHelper::getCorrectIncomingPortRadioButtonIndex() |
889 { |
890 { |
890 QVariant incomingPort; |
891 QVariant incomingPort; |
891 mSettingsManager.readSetting(IpsServices::IncomingPort, incomingPort); |
892 mSettingsManager.readSetting(IpsServices::IncomingPort, incomingPort); |
892 int index = 0; |
893 int index = 0; |
893 int port = mSettingsManager.determineDefaultIncomingPort(); |
894 int port = mSettingsManager.determineDefaultIncomingPort(); |
894 if (port == incomingPort.toInt()) { |
895 if (port == incomingPort.toInt()) { |
895 index = IpsServices::NmIpsSettingsDefault; |
896 index = IpsServices::NmIpsSettingsDefault; |
896 } else { |
897 } else { |
1140 void NmIpsSettingsHelper::handleReceivingScheduleSettingChange( |
1141 void NmIpsSettingsHelper::handleReceivingScheduleSettingChange( |
1141 IpsServices::SettingItem settingItem, const QVariant &settingValue) |
1142 IpsServices::SettingItem settingItem, const QVariant &settingValue) |
1142 { |
1143 { |
1143 // Check what was currently active sync mode. |
1144 // Check what was currently active sync mode. |
1144 QVariant setting; |
1145 QVariant setting; |
|
1146 bool profileChanged = false; |
1145 mSettingsManager.readSetting(IpsServices::ReceptionActiveProfile, setting); |
1147 mSettingsManager.readSetting(IpsServices::ReceptionActiveProfile, setting); |
1146 int activeProfile(setting.toInt()); |
1148 int activeProfile(setting.toInt()); |
1147 if (activeProfile != NmIpsSettingsReceivingScheduleUserDefinedProfile) { |
1149 if (activeProfile != NmIpsSettingsReceivingScheduleUserDefinedProfile) { |
1148 // Create user defined mode if needed. |
1150 // Create user defined mode if needed. |
1149 emit createUserDefinedMode(); |
1151 emit createUserDefinedMode(); |
1151 // Copy all settings from currently active mode to user defined mode |
1153 // Copy all settings from currently active mode to user defined mode |
1152 copyReceivingScheduleSettingsFromActiveProfile( |
1154 copyReceivingScheduleSettingsFromActiveProfile( |
1153 NmIpsSettingsReceivingScheduleUserDefinedProfile); |
1155 NmIpsSettingsReceivingScheduleUserDefinedProfile); |
1154 |
1156 |
1155 // select 'user defined' mode |
1157 // select 'user defined' mode |
|
1158 emit goOffline(mSettingsManager.mailboxId()); |
|
1159 mEmitOnline = true; |
|
1160 profileChanged = true; |
1156 mSettingsManager.writeSetting(IpsServices::ReceptionActiveProfile, |
1161 mSettingsManager.writeSetting(IpsServices::ReceptionActiveProfile, |
1157 NmIpsSettingsReceivingScheduleUserDefinedProfile); |
1162 NmIpsSettingsReceivingScheduleUserDefinedProfile); |
1158 } |
1163 } |
1159 |
1164 |
|
1165 if (!profileChanged) { |
|
1166 emit goOffline(mSettingsManager.mailboxId()); |
|
1167 mEmitOnline = true; |
|
1168 } |
1160 // store selected setting |
1169 // store selected setting |
1161 mSettingsManager.writeSetting(settingItem, settingValue); |
1170 mSettingsManager.writeSetting(settingItem, settingValue); |
1162 |
1171 |
1163 // update selection |
1172 // update selection |
1164 HbDataFormModelItem *syncProfile = contentItem(IpsServices::ReceptionActiveProfile); |
1173 HbDataFormModelItem *syncProfile = contentItem(IpsServices::ReceptionActiveProfile); |