controlpanelui/src/cpplugins/communicationplugin/src/cpcommunicationgroupitemdata.cpp
--- a/controlpanelui/src/cpplugins/communicationplugin/src/cpcommunicationgroupitemdata.cpp Wed Jul 14 07:09:46 2010 +0800
+++ b/controlpanelui/src/cpplugins/communicationplugin/src/cpcommunicationgroupitemdata.cpp Fri Jul 23 11:04:51 2010 +0800
@@ -48,13 +48,16 @@
void CpCommunicationGroupItemData::beforeLoadingConfigPlugins(CpItemDataHelper &itemDataHelper)
{
- mAirplaneModeItem = new HbDataFormModelItem(HbDataFormModelItem::ToggleValueItem);
+ mAirplaneModeItem = new HbDataFormModelItem(HbDataFormModelItem::ToggleValueItem);
+ mAirplaneModeItem->setContentWidgetData("text", hbTrId("txt_cp_button_offline"));
+ mAirplaneModeItem->setContentWidgetData("additionalText", hbTrId("txt_cp_button_offline"));
mAirplaneModeItem->setDescription(hbTrId("txt_cp_info_in_offline_mode_all_wireless_communica"));
mAirplaneModeItem->setContentWidgetData("objectName", "airplaneModeToggle");
+ mAirplaneModeItem->setContentWidgetData("checkable", true);
itemDataHelper.addConnection(mAirplaneModeItem,
- SIGNAL(clicked()),
+ SIGNAL(toggled(bool)),
this,
- SLOT(toggleAirplaneMode()));
+ SLOT(toggleAirplaneMode(bool)));
XQCentralRepositorySettingsKey key(KCRUidCoreApplicationUIs.iUid,KCoreAppUIsNetworkConnectionAllowed);
QVariant airplaneMode = mSettingManager->readItemValue(key,XQSettingsManager::TypeInt);
@@ -68,14 +71,13 @@
}
-void CpCommunicationGroupItemData::toggleAirplaneMode()
-{
+void CpCommunicationGroupItemData::toggleAirplaneMode(bool toggled)
+{
XQCentralRepositorySettingsKey key(KCRUidCoreApplicationUIs.iUid,KCoreAppUIsNetworkConnectionAllowed);
- QVariant airplaneMode = mSettingManager->readItemValue(key,XQSettingsManager::TypeInt);
-
- airplaneMode.setValue( static_cast<int> (!airplaneMode.toBool()) );
-
- mSettingManager->writeItemValue(key,airplaneMode);
+ //toggled = true means ECoreAppUIsNetworkConnectionNotAllowed
+ //toggled = false means ECoreAppUIsNetworkConnectionAllowed
+ QVariant airplaneMode(static_cast<int>(!toggled));
+ mSettingManager->writeItemValue(key, airplaneMode);
}
void CpCommunicationGroupItemData::settingValueChanged(const XQSettingsKey &key, const QVariant &value)
@@ -83,14 +85,11 @@
if (mAirplaneModeItem
&& key.uid() == KCRUidCoreApplicationUIs.iUid
&& key.key() == KCoreAppUIsNetworkConnectionAllowed
- && value.isValid()) {
- QString text = hbTrId("txt_cp_setlabel_offline_mode_val_on");
- QString additionalText = hbTrId("txt_cp_setlabel_offline_mode_val_off");
- if (ECoreAppUIsNetworkConnectionAllowed == value.toInt()) {
- ::qSwap (text, additionalText);
- }
- mAirplaneModeItem->setContentWidgetData("text",text);
- mAirplaneModeItem->setContentWidgetData("additionalText",additionalText);
+ && value.isValid()) {
+ //value.toBool() returns
+ //true(1) if value equals ECoreAppUIsNetworkConnectionAllowed, that means offline mode off.
+ //false(0) if value equals ECoreAppUIsNetworkConnectionNotAllowed, that means offline mode on.
+ mAirplaneModeItem->setContentWidgetData("checked", !value.toBool());
}
}