searchui/stateproviders/searchstateprovider/src/settingswidget.cpp
changeset 9 4a2987baf8f7
parent 3 6832643895f7
child 13 0a2ec6860a93
child 17 7d8c8d8f5eab
equal deleted inserted replaced
8:2f67eb14d003 9:4a2987baf8f7
    36 #include <qdir.h>
    36 #include <qdir.h>
    37 #include <qsql.h>
    37 #include <qsql.h>
    38 #include <qsqldatabase.h>
    38 #include <qsqldatabase.h>
    39 #include <qsqlquery.h>
    39 #include <qsqlquery.h>
    40 #include <cpixcontentinfocommon.h>
    40 #include <cpixcontentinfocommon.h>
       
    41 #include "onlinehandler.h"
    41 const char *DELIMETER_DOCML = ":/xml/delimeterscreen.docml";
    42 const char *DELIMETER_DOCML = ":/xml/delimeterscreen.docml";
    42 const char *DIALOG = "dialog";
    43 const char *DIALOG = "dialog";
    43 const char *DATAFORM = "dataForm";
    44 const char *DATAFORM = "dataForm";
    44 
    45 
    45 //----------------------------------------------------------------------------------------------------------------------------
    46 //----------------------------------------------------------------------------------------------------------------------------
    46 //SettingsWidget::SettingsWidget()
    47 //SettingsWidget::SettingsWidget()
    47 //
    48 //
    48 //----------------------------------------------------------------------------------------------------------------------------
    49 //----------------------------------------------------------------------------------------------------------------------------
    49 SettingsWidget::SettingsWidget() :
    50 SettingsWidget::SettingsWidget() :
    50     signalMapper(NULL), popup(NULL), mDocumentLoader(NULL), dataform(NULL),
    51     signalMapper(NULL), popup(NULL), mDocumentLoader(NULL), dataform(NULL),
    51             mModel(NULL),mSelectedScope(0),mSelectedProvider(0),comboBox(NULL)
    52             mModel(NULL), mSelectedScope(0), mSelectedProvider(0), comboBox(
    52     {
    53                     NULL), mInternetHandler(NULL)
       
    54     {
       
    55     setSettingsFilePath();
    53     for (int i = 0; i < 8; i++)
    56     for (int i = 0; i < 8; i++)
    54         {
    57         {
    55         mDeviceMapping.append(false);
    58         mDeviceMapping.append(false);
    56         }
    59         }
    57 
    60 
    59             << "fourth" << "fifth" << "sixth" << "seventh" << "eigth");
    62             << "fourth" << "fifth" << "sixth" << "seventh" << "eigth");
    60 
    63 
    61     mchangestate = true;
    64     mchangestate = true;
    62     mInstialize = true;
    65     mInstialize = true;
    63     isInternetSelected = false;
    66     isInternetSelected = false;
       
    67 
    64     storeDefaultSettings();
    68     storeDefaultSettings();
    65     }
    69     }
    66 //----------------------------------------------------------------------------------------------------------------------------
    70 //----------------------------------------------------------------------------------------------------------------------------
    67 //SettingsWidget::intialize()
    71 //SettingsWidget::intialize()
    68 //
    72 //
    70 void SettingsWidget::initialize()
    74 void SettingsWidget::initialize()
    71     {
    75     {
    72     bool ok = false;
    76     bool ok = false;
    73     if (!mDocumentLoader)
    77     if (!mDocumentLoader)
    74         {
    78         {
    75         mDocumentLoader = new HbDocumentLoader();        
    79         mDocumentLoader = new HbDocumentLoader();
    76         mDocumentLoader->load(DELIMETER_DOCML, &ok);
    80         mDocumentLoader->load(DELIMETER_DOCML, &ok);
    77         }
    81         }
    78     QGraphicsWidget *widget = NULL;
    82     QGraphicsWidget *widget = NULL;
    79     if (!popup)
    83     if (!popup)
    80         {
    84         {
   130 
   134 
   131     HbDataFormModelItem* themeComboGeneral = mModel->appendDataFormItem(
   135     HbDataFormModelItem* themeComboGeneral = mModel->appendDataFormItem(
   132             HbDataFormModelItem::ComboBoxItem, hbTrId(
   136             HbDataFormModelItem::ComboBoxItem, hbTrId(
   133                     "txt_search_info_select_search_scope"));
   137                     "txt_search_info_select_search_scope"));
   134 
   138 
   135     themeComboGeneral->setContentWidgetData(QString("items"), mCategoryList);
   139     themeComboGeneral->setContentWidgetData("items", mCategoryList);
   136 
   140 
   137     themeComboGeneral->setContentWidgetData(QString("currentIndex"),
   141     themeComboGeneral->setContentWidgetData("currentIndex", mSelectedScope);
   138             mSelectedScope);
       
   139 
   142 
   140     QModelIndex index = mModel->indexFromItem(themeComboGeneral);
   143     QModelIndex index = mModel->indexFromItem(themeComboGeneral);
   141 
   144 
   142     HbDataFormViewItem *formItem = static_cast<HbDataFormViewItem *> (dataform->itemByIndex(index));
   145     HbDataFormViewItem *formItem =
   143 
   146             static_cast<HbDataFormViewItem *> (dataform->itemByIndex(index));
   144       comboBox =
   147 
   145             static_cast<HbComboBox*> (formItem->dataItemContentWidget());
   148     comboBox = static_cast<HbComboBox*> (formItem->dataItemContentWidget());
   146 
   149 
   147     q_currentIndexChanged(mSelectedScope);
   150     q_currentIndexChanged(mSelectedScope);
   148 
   151 
   149     connect(comboBox, SIGNAL(currentIndexChanged(int)), this,
   152     connect(comboBox, SIGNAL(currentIndexChanged(int)), this,
   150             SLOT(q_currentIndexChanged(int)));
   153             SLOT(q_currentIndexChanged(int)));
   159     for (int i = 0; i < mModelItemList.count(); i++)
   162     for (int i = 0; i < mModelItemList.count(); i++)
   160         {
   163         {
   161         mModel->removeItem(mModelItemList.at(i));
   164         mModel->removeItem(mModelItemList.at(i));
   162         }
   165         }
   163     mModelItemList.clear();
   166     mModelItemList.clear();
   164    // int ret = mModel->rowCount();
   167     // int ret = mModel->rowCount();
   165     if (!avalue) //device category creation
   168     if (!avalue) //device category creation
   166         {
   169         {
   167         isInternetSelected = false;
   170         isInternetSelected = false;
   168         HbCheckBox *checkboxitem = NULL;
   171         HbCheckBox *checkboxitem = NULL;
   169         mDeviceCheckBoxList.clear();
   172         mDeviceCheckBoxList.clear();
   173             HbDataFormModelItem* mModelItem = mModel->appendDataFormItem(
   176             HbDataFormModelItem* mModelItem = mModel->appendDataFormItem(
   174                     HbDataFormModelItem::CheckBoxItem);
   177                     HbDataFormModelItem::CheckBoxItem);
   175             mModelItemList.append(mModelItem);
   178             mModelItemList.append(mModelItem);
   176             QModelIndex index = mModel->indexFromItem(mModelItem);
   179             QModelIndex index = mModel->indexFromItem(mModelItem);
   177 
   180 
   178             HbDataFormViewItem *formItem = static_cast<HbDataFormViewItem *> (dataform->itemByIndex(index));
   181             HbDataFormViewItem *formItem =
       
   182                     static_cast<HbDataFormViewItem *> (dataform->itemByIndex(
       
   183                             index));
   179 
   184 
   180             checkboxitem
   185             checkboxitem
   181                     = static_cast<HbCheckBox*> (formItem->dataItemContentWidget());
   186                     = static_cast<HbCheckBox*> (formItem->dataItemContentWidget());
   182 
   187 
   183             checkboxitem->setText(mDeviceListDisplay.at(i));
   188             checkboxitem->setText(mDeviceListDisplay.at(i));
   199         isInternetSelected = true;
   204         isInternetSelected = true;
   200         mDeviceCheckBoxList.clear();
   205         mDeviceCheckBoxList.clear();
   201         HbDataFormModelItem* mModelItem = mModel->appendDataFormItem(
   206         HbDataFormModelItem* mModelItem = mModel->appendDataFormItem(
   202                 HbDataFormModelItem::RadioButtonListItem);
   207                 HbDataFormModelItem::RadioButtonListItem);
   203         mModelItemList.append(mModelItem);
   208         mModelItemList.append(mModelItem);
       
   209         QStringList internetCategoryList;
       
   210         QMapIterator<int, QString> i(mServiceProviders);
       
   211         int selectedindex = 0;
       
   212         int Iterator = 0;
       
   213         while (i.hasNext())
       
   214             {
       
   215             i.next();
       
   216             if (i.key() == mSelectedProvider)
       
   217                 selectedindex = Iterator;
       
   218             Iterator++;
       
   219             internetCategoryList.append(i.value());
       
   220             qDebug() << i.value();
       
   221             }
   204         mModelItem->setContentWidgetData("items", internetCategoryList);
   222         mModelItem->setContentWidgetData("items", internetCategoryList);
   205 
   223 
       
   224         mModelItem->setContentWidgetData("previewMode",
       
   225                 HbRadioButtonList::NoPreview);
       
   226 
       
   227         mModelItem->setContentWidgetData("selected", selectedindex);
       
   228 
   206         QModelIndex index = mModel->indexFromItem(mModelItem);
   229         QModelIndex index = mModel->indexFromItem(mModelItem);
   207 
   230 
   208         HbDataFormViewItem *formItem = static_cast<HbDataFormViewItem *> (dataform->itemByIndex(index));
   231         HbDataFormViewItem *formItem =
   209 
   232                 static_cast<HbDataFormViewItem *> (dataform->itemByIndex(
       
   233                         index));
   210         mradiolist
   234         mradiolist
   211                 = static_cast<HbRadioButtonList*> (formItem->dataItemContentWidget());
   235                 = static_cast<HbRadioButtonList*> (formItem->dataItemContentWidget());
   212 
   236 
   213         mradiolist->setPreviewMode(HbRadioButtonList::NoPreview);
       
   214 
       
   215         mradiolist->setSelected(mSelectedProvider);
       
   216         connect(mradiolist, SIGNAL(itemSelected(int)), this,
   237         connect(mradiolist, SIGNAL(itemSelected(int)), this,
   217                 SLOT(q_itemSelected(int)));
   238                 SLOT(slotitemSelected(int)));
   218 
       
   219         for (int i = 0; i < mActions.count(); i++)
       
   220             popup->removeAction(mActions.at(i));
       
   221         popup->addActions(mActions);
       
   222         popup->removeAction(mActions.at(0));
       
   223         }
   239         }
   224     }
   240     }
   225 //----------------------------------------------------------------------------------------------------------------------------
   241 //----------------------------------------------------------------------------------------------------------------------------
   226 //SettingsWidget::preparecategories()
   242 //SettingsWidget::preparecategories()
   227 //
   243 //
   228 //----------------------------------------------------------------------------------------------------------------------------
   244 //----------------------------------------------------------------------------------------------------------------------------
   229 void SettingsWidget::preparecategories()
   245 void SettingsWidget::preparecategories()
   230     {
   246     {
   231     // read form database
   247     // read form database
   232 
       
   233 
       
   234     QString mConnectionName("cpixcontentinfo.sq");
   248     QString mConnectionName("cpixcontentinfo.sq");
   235     QString mDatabaseName("c:\\Private\\2001f6fb\\cpixcontentinfo.sq");
   249     QString mDatabaseName("c:\\Private\\2001f6fb\\cpixcontentinfo.sq");
   236 
   250 
   237     QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", mConnectionName);
   251     QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", mConnectionName);
   238     db.setDatabaseName(mDatabaseName);
   252     db.setDatabaseName(mDatabaseName);
   252             }
   266             }
   253         else
   267         else
   254             {
   268             {
   255             mCategoryDbMapping.insert(category_name, true);
   269             mCategoryDbMapping.insert(category_name, true);
   256             }
   270             }
   257         qDebug() <<"string db= "<<category_name;
   271         qDebug() << "string db= " << category_name;
   258         }
   272         }
   259     db.close();         
   273     db.close();
   260     
   274 
   261   /*  mCategoryDbMapping.insert("Contacts", true); 
   275     /*  mCategoryDbMapping.insert("Contacts", true); 
   262     mCategoryDbMapping.insert("Audios", true); 
   276      mCategoryDbMapping.insert("Audios", true); 
   263     mCategoryDbMapping.insert("Images", true); 
   277      mCategoryDbMapping.insert("Images", true); 
   264     mCategoryDbMapping.insert("Videos", true); 
   278      mCategoryDbMapping.insert("Videos", true); 
   265     mCategoryDbMapping.insert("Messages", true); 
   279      mCategoryDbMapping.insert("Messages", true); 
   266     mCategoryDbMapping.insert("email", true); 
   280      mCategoryDbMapping.insert("email", true); 
   267     mCategoryDbMapping.insert("Calendar", true); 
   281      mCategoryDbMapping.insert("Calendar", true); 
   268     mCategoryDbMapping.insert("Notes", true); 
   282      mCategoryDbMapping.insert("Notes", true); 
   269     mCategoryDbMapping.insert("Applications", true); 
   283      mCategoryDbMapping.insert("Applications", true); 
   270     mCategoryDbMapping.insert("Bookmarks", true); 
   284      mCategoryDbMapping.insert("Bookmarks", true); 
   271     mCategoryDbMapping.insert("Files", true); */
   285      mCategoryDbMapping.insert("Files", true); */
   272     
   286 
   273    // mCategoryDbMapping.insert("email", true); // to remove once email starts working
   287     // mCategoryDbMapping.insert("email", true); // to remove once email starts working
   274     
   288 
   275     mDeviceListDisplay.append(hbTrId("txt_search_list_select_all"));
   289     mDeviceListDisplay.append(hbTrId("txt_search_list_select_all"));
   276     mDeviceMapping.insert(0, true);
   290     mDeviceMapping.insert(0, true);
   277 
   291 
   278     if (mCategoryDbMapping.value("Contacts"))
   292     if (mCategoryDbMapping.value("Contacts"))
   279         {
   293         {
   280         mDeviceMapping.insert(1, true);
   294         mDeviceMapping.insert(1, true);
   281         mDeviceListDisplay.append(hbTrId("txt_search_list_contatcs"));
   295         mDeviceListDisplay.append(hbTrId("txt_search_list_contatcs"));
   282         }
   296         }
   283 
   297 
   284     if (mCategoryDbMapping.value("Audios")
   298     if (mCategoryDbMapping.value("Audios") || mCategoryDbMapping.value(
   285             || mCategoryDbMapping.value("Images") || mCategoryDbMapping.value(
   299             "Images") || mCategoryDbMapping.value("Videos"))
   286             "Videos"))
       
   287         {
   300         {
   288         mDeviceListDisplay.append(hbTrId("txt_search_list_media"));
   301         mDeviceListDisplay.append(hbTrId("txt_search_list_media"));
   289         mDeviceMapping.insert(2, true);
   302         mDeviceMapping.insert(2, true);
   290         }
   303         }
   291 
   304 
   318     if (mCategoryDbMapping.value("Files"))
   331     if (mCategoryDbMapping.value("Files"))
   319         {
   332         {
   320         mDeviceListDisplay.append(hbTrId("txt_search_list_all_other_files"));
   333         mDeviceListDisplay.append(hbTrId("txt_search_list_all_other_files"));
   321         mDeviceMapping.insert(7, true);
   334         mDeviceMapping.insert(7, true);
   322         }
   335         }
   323     internetCategoryList = (QStringList());
   336     // internetCategoryList = (QStringList() << "Google" << "Bing" << "Yahoo");
   324 
   337 
   325     mCategoryList = (QStringList() << hbTrId("txt_search_list_device")
   338     if (mServiceProviders.count())
   326             << hbTrId("txt_search_list_internet"));
   339         {
       
   340         mCategoryList = (QStringList() << hbTrId("txt_search_list_device")
       
   341                 << hbTrId("txt_search_list_internet"));
       
   342         }
       
   343     else
       
   344         {
       
   345         mCategoryList = (QStringList() << hbTrId("txt_search_list_device"));
       
   346         }
   327     }
   347     }
   328 
   348 
   329 //----------------------------------------------------------------------------------------------------------------------------
   349 //----------------------------------------------------------------------------------------------------------------------------
   330 //SettingsWidget::~SettingsWidget()
   350 //SettingsWidget::~SettingsWidget()
   331 //
   351 //
   340     mDeviceCheckBoxList.clear();
   360     mDeviceCheckBoxList.clear();
   341     mInternetCheckBoxList.clear();
   361     mInternetCheckBoxList.clear();
   342     mModelItemList.clear();
   362     mModelItemList.clear();
   343     mActions.clear();
   363     mActions.clear();
   344     delete mDocumentLoader;
   364     delete mDocumentLoader;
       
   365     delete mInternetHandler;
   345     //delete popup;
   366     //delete popup;
   346     }
   367     }
   347 //----------------------------------------------------------------------------------------------------------------------------
   368 //----------------------------------------------------------------------------------------------------------------------------
   348 //SettingsWidget::launchSettingWidget()
   369 //SettingsWidget::launchSettingWidget()
   349 //
   370 //
   372         if (mDeviceCheckBoxList.at(i)->checkState() == Qt::Checked)
   393         if (mDeviceCheckBoxList.at(i)->checkState() == Qt::Checked)
   373             {
   394             {
   374             noItemSelected = false;
   395             noItemSelected = false;
   375             }
   396             }
   376         }
   397         }
   377     for (int i = 0; i < mActions.count(); i++)
   398     if (!isInternetSelected)
   378         popup->removeAction(mActions.at(i));
   399         {
   379     popup->addActions(mActions);
   400         for (int i = 0; i < mActions.count(); i++)
   380     if (noItemSelected)
   401             popup->removeAction(mActions.at(i));
   381         {
   402         popup->addActions(mActions);
   382         popup->removeAction(mActions.at(0));
   403         if (noItemSelected)
       
   404             {
       
   405             popup->removeAction(mActions.at(0));
       
   406             }
   383         }
   407         }
   384     }
   408     }
   385 //----------------------------------------------------------------------------------------------------------------------------
   409 //----------------------------------------------------------------------------------------------------------------------------
   386 //SettingsWidget::itemChecked( int selectedIndex)
   410 //SettingsWidget::itemChecked( int selectedIndex)
   387 //
   411 //
   463 //
   487 //
   464 //----------------------------------------------------------------------------------------------------------------------------
   488 //----------------------------------------------------------------------------------------------------------------------------
   465 
   489 
   466 void SettingsWidget::storeSettingsToiniFile()
   490 void SettingsWidget::storeSettingsToiniFile()
   467     {
   491     {
   468     QSettings appSettings("search.ini", QSettings::IniFormat);
   492     QSettings appSettings(mSettingFileName, QSettings::IniFormat);
       
   493     isInternetSelected ? (mSelectedScope = 1) : (mSelectedScope = 0);
   469     appSettings.setValue("selectedcategory", mSelectedScope);
   494     appSettings.setValue("selectedcategory", mSelectedScope);
   470     appSettings.setValue("devicecount", mDeviceCategoryRefList.count());
   495     appSettings.setValue("devicecount", mDeviceCategoryRefList.count());
   471     if (!isInternetSelected)
   496     if (!isInternetSelected)
   472         {
   497         {
   473         int j = 0;
   498         int j = 0;
   493                 emit selectedItemCategory(i, false);
   518                 emit selectedItemCategory(i, false);
   494                 }
   519                 }
   495 
   520 
   496             }
   521             }
   497         }
   522         }
   498     appSettings.setValue("internetcount", internetCategoryList.count());
   523 
   499     appSettings.setValue("selectedprovider", mSelectedProvider);
       
   500     }
   524     }
   501 //----------------------------------------------------------------------------------------------------------------------------
   525 //----------------------------------------------------------------------------------------------------------------------------
   502 //void SettingsWidget::loadBaseSettings()
   526 //void SettingsWidget::loadBaseSettings()
   503 //
   527 //
   504 //----------------------------------------------------------------------------------------------------------------------------
   528 //----------------------------------------------------------------------------------------------------------------------------
   505 void SettingsWidget::loadBaseSettings()
   529 void SettingsWidget::loadBaseSettings()
   506     {
   530     {
   507     QSettings appSettings("search.ini", QSettings::IniFormat);
   531     QSettings appSettings(mSettingFileName, QSettings::IniFormat);
   508     int value;
   532     mSelectedScope = appSettings.value("selectedcategory", 0).toInt();
   509     if (!(appSettings.contains("selectedcategory")))
   533     mSelectedScope ? (isInternetSelected = true) : (isInternetSelected
   510         {
   534             = false);
   511         value = 0;
       
   512         }
       
   513     else
       
   514         {
       
   515         value = appSettings.value("selectedcategory").toInt();
       
   516         }
       
   517     mSelectedScope = value;
       
   518     if (mSelectedScope)
       
   519         {
       
   520         isInternetSelected = true;
       
   521         }
       
   522     else
       
   523         {
       
   524         isInternetSelected = false;
       
   525         }
       
   526     mSelectedProvider = appSettings.value("selectedprovider").toInt();
       
   527     }
   535     }
   528 
   536 
   529 //----------------------------------------------------------------------------------------------------------------------------
   537 //----------------------------------------------------------------------------------------------------------------------------
   530 //void SettingsWidget::loadDeviceSettings()
   538 //void SettingsWidget::loadDeviceSettings()
   531 //
   539 //
   532 //----------------------------------------------------------------------------------------------------------------------------
   540 //----------------------------------------------------------------------------------------------------------------------------
   533 void SettingsWidget::loadDeviceSettings()
   541 void SettingsWidget::loadDeviceSettings()
   534     {
   542     {
   535     QSettings appSettings("search.ini", QSettings::IniFormat);
   543     QSettings appSettings(mSettingFileName, QSettings::IniFormat);
   536     int value;
   544     int value;
   537     if (!isInternetSelected)
   545     if (!isInternetSelected)
   538         {
   546         {
   539         int j = 0;
   547         int j = 0;
   540         for (int i = 0; i < mDeviceCategoryRefList.count(); i++)
   548         for (int i = 0; i < mDeviceCategoryRefList.count(); i++)
   541             {
   549             {
   542             if (!(appSettings.contains(mDeviceCategoryRefList.at(i))))
   550             value
   543                 {
   551                     = appSettings.value(mDeviceCategoryRefList.at(i), 1).toInt();
   544                 value = 1;
   552 
   545                 }
       
   546             else
       
   547                 {
       
   548                 value
       
   549                         = appSettings.value(mDeviceCategoryRefList.at(i)).toInt();
       
   550                 }
       
   551             if (mDeviceMapping.count() && mDeviceCheckBoxList.count()
   553             if (mDeviceMapping.count() && mDeviceCheckBoxList.count()
   552                     && mDeviceMapping.at(i))
   554                     && mDeviceMapping.at(i))
   553                 {
   555                 {
   554                 if (value)
   556                 if (value)
   555                     {
   557                     {
   559                     {
   561                     {
   560                     mDeviceCheckBoxList.at(j)->setCheckState(Qt::Unchecked);
   562                     mDeviceCheckBoxList.at(j)->setCheckState(Qt::Unchecked);
   561                     }
   563                     }
   562                 j++;
   564                 j++;
   563                 }
   565                 }
   564             if (value) // get the setting before ui preparation
   566             value
   565                 {
   567                   ? (emit selectedItemCategory(i, true))
   566                 emit selectedItemCategory(i, true);
   568                      : (emit selectedItemCategory(i, false));
   567                 }
   569 
   568             else
       
   569                 {
       
   570                 emit selectedItemCategory(i, false);
       
   571                 }
       
   572             }
   570             }
   573         }
   571         }
   574     }
   572     }
   575 //----------------------------------------------------------------------------------------------------------------------------
   573 //----------------------------------------------------------------------------------------------------------------------------
   576 //SettingsWidget::isInternetSearchOptionSelected()
   574 //SettingsWidget::isInternetSearchOptionSelected()
   586 //void SettingsWidget::storeDefaultSettings()
   584 //void SettingsWidget::storeDefaultSettings()
   587 //
   585 //
   588 //----------------------------------------------------------------------------------------------------------------------------
   586 //----------------------------------------------------------------------------------------------------------------------------
   589 void SettingsWidget::storeDefaultSettings()
   587 void SettingsWidget::storeDefaultSettings()
   590     {
   588     {
   591     QSettings appSettings("search.ini", QSettings::IniFormat);
   589     QSettings appSettings(mSettingFileName, QSettings::IniFormat);
   592     if (!appSettings.contains("selectedcategory")) // change the settings for the first time only
   590     if (!appSettings.contains("selectedcategory")) // change the settings for the first time only
   593         {
   591         {
   594         mSelectedScope = 0;
   592         mSelectedScope = 0;
   595         mSelectedProvider = 0;
       
   596         appSettings.setValue("selectedcategory", mSelectedScope);
   593         appSettings.setValue("selectedcategory", mSelectedScope);
   597         appSettings.setValue("devicecount", mDeviceCategoryRefList.count());
   594         appSettings.setValue("devicecount", mDeviceCategoryRefList.count());
   598         for (int i = 0; i < mDeviceCategoryRefList.count(); i++)
   595         for (int i = 0; i < mDeviceCategoryRefList.count(); i++)
   599             appSettings.setValue(mDeviceCategoryRefList.at(i), 1);
   596             appSettings.setValue(mDeviceCategoryRefList.at(i), 1);
   600         appSettings.setValue("internetcount", internetCategoryList.count());
   597         }
   601         appSettings.setValue("selectedprovider", mSelectedProvider);
   598     }
   602         }
   599 void SettingsWidget::slotproviderDetails(QString name, HbIcon icon, int id)
   603     }
   600     {
       
   601     mServiceProviders.insert(id, name);
       
   602     emit ISProvidersIcon(icon, id);
       
   603     }
       
   604 void SettingsWidget::slotdefaultProvider(const int value)
       
   605     {
       
   606     mSelectedProvider = value;
       
   607     }
       
   608 void SettingsWidget::slotitemSelected(int value)
       
   609     {
       
   610     QMapIterator<int, QString> i(mServiceProviders);
       
   611     int selectedindex = 0;
       
   612     while (i.hasNext())
       
   613         {
       
   614         i.next();
       
   615         if (selectedindex == value)
       
   616             {
       
   617             mInternetHandler->setDefaultProvider(i.key());
       
   618             break;
       
   619             }
       
   620         selectedindex++;
       
   621         }
       
   622     }
       
   623 void SettingsWidget::setSettingsFilePath()
       
   624     {
       
   625     mSettingFileName.append(QDir::currentPath());
       
   626     mSettingFileName.append(QString("/searchsettings.ini"));
       
   627     }
       
   628 void SettingsWidget::loadIS()
       
   629     {
       
   630     if (!mInternetHandler)
       
   631         {
       
   632         mInternetHandler = new OnlineHandler();
       
   633         connect(mInternetHandler,
       
   634                 SIGNAL(providerDetails(QString, HbIcon, int)), this,
       
   635                 SLOT(slotproviderDetails(QString, HbIcon, int)));
       
   636 
       
   637         connect(mInternetHandler, SIGNAL(defaultProvider(const int)), this,
       
   638                 SLOT(slotdefaultProvider(const int)));
       
   639         mInternetHandler->readSettings();
       
   640         }
       
   641     }