28 #include <calendarinternalcrkeys.h> // includes CalendarInternalCRKeys.h |
28 #include <calendarinternalcrkeys.h> // includes CalendarInternalCRKeys.h |
29 |
29 |
30 CalenSettings::CalenSettings(HbDataForm *form, QObject *parent) |
30 CalenSettings::CalenSettings(HbDataForm *form, QObject *parent) |
31 :QObject(parent), |
31 :QObject(parent), |
32 mSettingsForm(form), |
32 mSettingsForm(form), |
33 mSettingsModel(0) |
33 mSettingsModel(0), |
|
34 mShowRegionalInfoItem(NULL) |
34 { |
35 { |
35 mSettingsManager = new XQSettingsManager(this); |
36 mSettingsManager = new XQSettingsManager(this); |
36 mAlarmSnoozeCenrepKey = new XQSettingsKey( |
37 mAlarmSnoozeCenrepKey = new XQSettingsKey( |
37 XQSettingsKey::TargetCentralRepository, |
38 XQSettingsKey::TargetCentralRepository, |
38 KCRUidCalendar, KCalendarSnoozeTime); |
39 KCRUidCalendar, KCalendarSnoozeTime); |
39 mWeekNumberCenrepKey = new XQSettingsKey( |
40 mWeekNumberCenrepKey = new XQSettingsKey( |
40 XQSettingsKey::TargetCentralRepository, |
41 XQSettingsKey::TargetCentralRepository, |
41 KCRUidCalendar, KCalendarWeekViewTitle); |
42 KCRUidCalendar, KCalendarWeekViewTitle); |
|
43 mShowRegionalInfoKey = new XQSettingsKey(XQSettingsKey::TargetCentralRepository, |
|
44 KCRUidCalendar, KShowRegionalInformation); |
42 |
45 |
43 // Read the initial values from the cenrep |
46 // Read the initial values from the cenrep |
44 QVariant value = mSettingsManager->readItemValue(*mAlarmSnoozeCenrepKey); |
47 QVariant value = mSettingsManager->readItemValue(*mAlarmSnoozeCenrepKey); |
45 mAlarmSnoozeTime = value.toUInt(); |
48 mAlarmSnoozeTime = value.toUInt(); |
46 |
49 |
47 value = mSettingsManager->readItemValue(*mWeekNumberCenrepKey); |
50 value = mSettingsManager->readItemValue(*mWeekNumberCenrepKey); |
48 mShowWeekNumber = value.toUInt(); |
51 mShowWeekNumber = value.toUInt(); |
|
52 |
|
53 value = mSettingsManager->readItemValue(*mShowRegionalInfoKey); |
|
54 mShowRegionalInfo = value.toUInt(); |
49 } |
55 } |
50 |
56 |
51 CalenSettings::~CalenSettings() |
57 CalenSettings::~CalenSettings() |
52 { |
58 { |
53 // Nothing yet. |
59 // Nothing yet. |
100 // For HbPushButton type properties -- to be used for toggle value item |
106 // For HbPushButton type properties -- to be used for toggle value item |
101 mShowWeekNumberItem->setContentWidgetData(QString("text"), |
107 mShowWeekNumberItem->setContentWidgetData(QString("text"), |
102 QString(hbTrId("txt_calendar_button_no"))); |
108 QString(hbTrId("txt_calendar_button_no"))); |
103 mShowWeekNumberItem->setContentWidgetData(QString("additionalText"), |
109 mShowWeekNumberItem->setContentWidgetData(QString("additionalText"), |
104 QString(hbTrId("txt_calendar_button_yes"))); |
110 QString(hbTrId("txt_calendar_button_yes"))); |
|
111 |
105 mSettingsForm->addConnection(mShowWeekNumberItem, SIGNAL(clicked()), |
112 mSettingsForm->addConnection(mShowWeekNumberItem, SIGNAL(clicked()), |
106 this, SLOT(handleWeekNumberChange())); |
113 this, SLOT(handleWeekNumberChange())); |
107 mSettingsModel->appendDataFormItem(mShowWeekNumberItem); |
114 mSettingsModel->appendDataFormItem(mShowWeekNumberItem); |
|
115 |
|
116 // TODO: Append the regional information setting only if any regional plugins have been |
|
117 // loaded by the customisation manager |
|
118 mShowRegionalInfoItem = new HbDataFormModelItem(); |
|
119 mShowRegionalInfoItem->setType(HbDataFormModelItem::ToggleValueItem); |
|
120 mShowRegionalInfoItem->setData(HbDataFormModelItem::LabelRole, |
|
121 QString("Show regional info")); |
|
122 |
|
123 // For HbPushButton type properties -- to be used for toggle value item |
|
124 mShowRegionalInfoItem->setContentWidgetData(QString("text"), |
|
125 QString(hbTrId("txt_calendar_button_no"))); |
|
126 mShowRegionalInfoItem->setContentWidgetData(QString("additionalText"), |
|
127 QString(hbTrId("txt_calendar_button_yes"))); |
|
128 mSettingsForm->addConnection(mShowRegionalInfoItem, SIGNAL(clicked()), |
|
129 this, SLOT(handleRegionalInfoChange())); |
|
130 mSettingsModel->appendDataFormItem(mShowRegionalInfoItem); |
108 } |
131 } |
109 |
132 |
110 void CalenSettings::handleAlarmSnoozeTimeChange(int index) |
133 void CalenSettings::handleAlarmSnoozeTimeChange(int index) |
111 { |
134 { |
112 switch(index) |
135 switch(index) |
154 mShowWeekNumber = 1; |
177 mShowWeekNumber = 1; |
155 mSettingsManager->writeItemValue(*mWeekNumberCenrepKey, 1); |
178 mSettingsManager->writeItemValue(*mWeekNumberCenrepKey, 1); |
156 } |
179 } |
157 } |
180 } |
158 |
181 |
|
182 void CalenSettings::handleRegionalInfoChange() |
|
183 { |
|
184 QVariant data = mShowRegionalInfoItem->contentWidgetData(QString("text")); |
|
185 QString value = data.toString(); |
|
186 if(!value.compare(hbTrId("txt_calendar_button_no"))) { |
|
187 // User has made it OFF |
|
188 mShowRegionalInfo = 0; |
|
189 mSettingsManager->writeItemValue(*mShowRegionalInfoKey, 0); |
|
190 } else if(!value.compare(hbTrId("txt_calendar_button_yes"))) { |
|
191 // User has made it ON. |
|
192 mShowRegionalInfo = 1; |
|
193 mSettingsManager->writeItemValue(*mShowRegionalInfoKey, 1); |
|
194 } |
|
195 } |
|
196 |
159 void CalenSettings::populateSettingList() |
197 void CalenSettings::populateSettingList() |
160 { |
198 { |
161 // Read the values from cenrep |
199 // Read the values from cenrep |
162 // Read the initial values from the cenrep |
200 // Read the initial values from the cenrep |
163 QVariant value = mSettingsManager->readItemValue(*mAlarmSnoozeCenrepKey); |
201 QVariant value = mSettingsManager->readItemValue(*mAlarmSnoozeCenrepKey); |
199 { |
237 { |
200 mShowWeekNumberItem->setContentWidgetData(QString("text"), |
238 mShowWeekNumberItem->setContentWidgetData(QString("text"), |
201 QString(hbTrId("txt_calendar_button_no"))); |
239 QString(hbTrId("txt_calendar_button_no"))); |
202 mShowWeekNumberItem->setContentWidgetData(QString("additionalText"), |
240 mShowWeekNumberItem->setContentWidgetData(QString("additionalText"), |
203 QString(hbTrId("txt_calendar_button_yes"))); |
241 QString(hbTrId("txt_calendar_button_yes"))); |
204 } |
242 } |
|
243 |
|
244 value = mSettingsManager->readItemValue(*mShowRegionalInfoKey); |
|
245 mShowRegionalInfo = value.toUInt(); |
|
246 |
|
247 if (mShowRegionalInfo) { |
|
248 mShowRegionalInfoItem->setContentWidgetData(QString("text"), |
|
249 QString(hbTrId("txt_calendar_button_yes"))); |
|
250 mShowRegionalInfoItem->setContentWidgetData(QString("additionalText"), |
|
251 QString(hbTrId("txt_calendar_button_no"))); |
|
252 } else { |
|
253 mShowRegionalInfoItem->setContentWidgetData(QString("text"), |
|
254 QString(hbTrId("txt_calendar_button_no"))); |
|
255 mShowRegionalInfoItem->setContentWidgetData(QString("additionalText"), |
|
256 QString(hbTrId("txt_calendar_button_yes"))); |
|
257 } |
|
258 |
205 mSettingsForm->setModel(mSettingsModel); |
259 mSettingsForm->setModel(mSettingsModel); |
206 } |
260 } |
207 // End of file |
261 // End of file |