phonebookui/pbkcommonui/src/cntsettingsmodel.cpp
changeset 46 efe85016a067
parent 37 fd64c38c277d
child 47 7cbcb2896f0e
equal deleted inserted replaced
40:b46a585f6909 46:efe85016a067
    12 * Contributors:
    12 * Contributors:
    13 *
    13 *
    14 * Description:  
    14 * Description:  
    15 *
    15 *
    16 */
    16 */
    17 #include "cntsettingsview.h"
       
    18 #include <hbdataformmodelitem.h>
       
    19 #include <hbglobal.h>
       
    20 
    17 
    21 CntDefaultSettingsModel::CntDefaultSettingsModel()
    18 #include "cntsettingsmodel.h"
       
    19 #include <cntuids.h>
       
    20 #include <qstringlist.h>
       
    21 #include <xqsettingskey.h>
       
    22 #include "cntdebug.h"
       
    23 
       
    24 CntSettingsModel::CntSettingsModel() :
       
    25 HbDataFormModel()
    22 {
    26 {
       
    27     //create a model class    
       
    28     HbDataFormModelItem* ord = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem, hbTrId("txt_phob_setlabel_name_display_order"));
       
    29     
    23     QStringList orderList;
    30     QStringList orderList;
       
    31     // This order should be maintained as per the UI spec
    24     orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_last_name") );
    32     orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_last_name") );
    25     orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_last_name_separator") );
    33     orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_last_name_separator") );
    26     orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_first_nam") );
    34     orderList.append( hbTrId("txt_phob_setlabel_name_display_order_val_first_nam") );
    27     /*
    35     
    28     QStringList showList;
    36     ord->setContentWidgetData( "items", orderList );
    29     showList.append(hbTrId("txt_phob_setlabel_show_val_status_update"));
    37     appendDataFormItem(ord, invisibleRootItem());
    30     showList.append(hbTrId("txt_phob_setlabel_show_val_name_and_phonenumber"));
    38     mNameOrderkey = new XQSettingsKey(XQSettingsKey::TargetCentralRepository,
    31     showList.append(hbTrId("txt_phob_setlabel_show_val_name_only"));
    39                              KCRUiContacts.iUid,
    32     */
    40                              KCntNameOrdering);
    33     mOrder = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem,  hbTrId("txt_phob_setlabel_name_display_order"));
    41     int settingValue = mSettings.readItemValue(*mNameOrderkey, XQSettingsManager::TypeInt).toInt();
    34     mOrder->setContentWidgetData( "items", orderList );
       
    35 
    42 
    36     /*
    43     if (settingValue == CntOrderLastFirst) {
    37     HbDataFormModelItem* show = new HbDataFormModelItem( HbDataFormModelItem::ComboBoxItem, hbTrId("txt_phob_setlabel_show") );
    44         ord->setContentWidgetData("currentIndex", 0 );
    38     show->setContentWidgetData( "items", showList );
    45     } else if (settingValue == CntOrderLastCommaFirst) {
    39     */
    46         ord->setContentWidgetData("currentIndex", 1 );
       
    47     } else if (settingValue == CntOrderFirstLast) {
       
    48         ord->setContentWidgetData("currentIndex", 2 );
       
    49     }
    40     
    50     
    41     appendDataFormItem( mOrder, invisibleRootItem() );
    51     connect(this, SIGNAL(dataChanged(QModelIndex , QModelIndex)), this, SLOT(handleDataChanged(QModelIndex , QModelIndex)));
    42     /* appendDataFormItem( show, invisibleRootItem() );
       
    43      */
       
    44 }
    52 }
    45 
    53 
    46 CntDefaultSettingsModel::~CntDefaultSettingsModel()
    54 CntSettingsModel::~CntSettingsModel()
    47 {
    55 {
    48     
    56     delete mNameOrderkey;
    49 }
    57 }
    50 
    58 
    51 void CntDefaultSettingsModel::saveSettings()
    59 void CntSettingsModel::handleDataChanged(QModelIndex topLeft, QModelIndex bottomRight)
    52 {
    60 {
    53     QString selected = mOrder->contentWidgetData( "currentText" ).toString();
    61     Q_UNUSED(bottomRight)
    54     
    62     bool written(true);
       
    63             
       
    64     if (topLeft.row() == 0) {
       
    65         int selected = itemFromIndex(topLeft)->contentWidgetData( "currentIndex" ).toInt();
       
    66         if (selected == 0) {
       
    67             written = mSettings.writeItemValue(*mNameOrderkey, QVariant(CntOrderLastFirst));
       
    68         } else if (selected == 1) {
       
    69             written = mSettings.writeItemValue(*mNameOrderkey, QVariant(CntOrderLastCommaFirst));
       
    70         } else if (selected == 2) {
       
    71             written = mSettings.writeItemValue(*mNameOrderkey, QVariant(CntOrderFirstLast));
       
    72         }
       
    73         if (!written) {
       
    74             CNT_LOG_ARGS(QString("failed writting cenrep key"))
       
    75         }
       
    76     }
    55 }
    77 }
    56 
       
    57 void CntDefaultSettingsModel::loadSettings()
       
    58 {
       
    59     mOrder->setContentWidgetData("currentText", hbTrId("txt_phob_setlabel_name_display_order_val_last_name_separator") );
       
    60 }
       
    61 // End of File