--- a/phonebookui/pbkcommonui/src/cntsettingsmodel.cpp Fri Jun 11 13:29:23 2010 +0300
+++ b/phonebookui/pbkcommonui/src/cntsettingsmodel.cpp Wed Jun 23 18:02:44 2010 +0300
@@ -14,48 +14,64 @@
* Description:
*
*/
-#include "cntsettingsview.h"
-#include <hbdataformmodelitem.h>
-#include <hbglobal.h>
+
+#include "cntsettingsmodel.h"
+#include <cntuids.h>
+#include <qstringlist.h>
+#include <xqsettingskey.h>
+#include "cntdebug.h"
-CntDefaultSettingsModel::CntDefaultSettingsModel()
+CntSettingsModel::CntSettingsModel() :
+HbDataFormModel()
{
+ //create a model class
+ HbDataFormModelItem* ord = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem, hbTrId("txt_phob_setlabel_name_display_order"));
+
QStringList orderList;
+ // This order should be maintained as per the UI spec
orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_last_name") );
orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_last_name_separator") );
orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_first_nam") );
- /*
- QStringList showList;
- showList.append(hbTrId("txt_phob_setlabel_show_val_status_update"));
- showList.append(hbTrId("txt_phob_setlabel_show_val_name_and_phonenumber"));
- showList.append(hbTrId("txt_phob_setlabel_show_val_name_only"));
- */
- mOrder = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem, hbTrId("txt_phob_setlabel_name_display_order"));
- mOrder->setContentWidgetData( "items", orderList );
+
+ ord->setContentWidgetData( "items", orderList );
+ appendDataFormItem(ord, invisibleRootItem());
+ mNameOrderkey = new XQSettingsKey(XQSettingsKey::TargetCentralRepository,
+ KCRUiContacts.iUid,
+ KCntNameOrdering);
+ int settingValue = mSettings.readItemValue(*mNameOrderkey, XQSettingsManager::TypeInt).toInt();
- /*
- HbDataFormModelItem* show = new HbDataFormModelItem( HbDataFormModelItem::ComboBoxItem, hbTrId("txt_phob_setlabel_show") );
- show->setContentWidgetData( "items", showList );
- */
+ if (settingValue == CntOrderLastFirst) {
+ ord->setContentWidgetData("currentIndex", 0 );
+ } else if (settingValue == CntOrderLastCommaFirst) {
+ ord->setContentWidgetData("currentIndex", 1 );
+ } else if (settingValue == CntOrderFirstLast) {
+ ord->setContentWidgetData("currentIndex", 2 );
+ }
- appendDataFormItem( mOrder, invisibleRootItem() );
- /* appendDataFormItem( show, invisibleRootItem() );
- */
+ connect(this, SIGNAL(dataChanged(QModelIndex , QModelIndex)), this, SLOT(handleDataChanged(QModelIndex , QModelIndex)));
}
-CntDefaultSettingsModel::~CntDefaultSettingsModel()
+CntSettingsModel::~CntSettingsModel()
{
-
+ delete mNameOrderkey;
}
-void CntDefaultSettingsModel::saveSettings()
+void CntSettingsModel::handleDataChanged(QModelIndex topLeft, QModelIndex bottomRight)
{
- QString selected = mOrder->contentWidgetData( "currentText" ).toString();
-
+ Q_UNUSED(bottomRight)
+ bool written(true);
+
+ if (topLeft.row() == 0) {
+ int selected = itemFromIndex(topLeft)->contentWidgetData( "currentIndex" ).toInt();
+ if (selected == 0) {
+ written = mSettings.writeItemValue(*mNameOrderkey, QVariant(CntOrderLastFirst));
+ } else if (selected == 1) {
+ written = mSettings.writeItemValue(*mNameOrderkey, QVariant(CntOrderLastCommaFirst));
+ } else if (selected == 2) {
+ written = mSettings.writeItemValue(*mNameOrderkey, QVariant(CntOrderFirstLast));
+ }
+ if (!written) {
+ CNT_LOG_ARGS(QString("failed writting cenrep key"))
+ }
+ }
}
-
-void CntDefaultSettingsModel::loadSettings()
-{
- mOrder->setContentWidgetData("currentText", hbTrId("txt_phob_setlabel_name_display_order_val_last_name_separator") );
-}
-// End of File