Merge branch 'master' of /opt/src/sb1/qt/scorecard
[scorecard] / src / settings-dialog.cpp
index f3fa57f..a7e7f71 100644 (file)
@@ -56,6 +56,22 @@ void SettingsDialog::createLayout(QWidget *parent)
     homeClubButton->setPickSelector(listPickSelector2);
     homeClubButton->setText(QString::fromUtf8("Home Club"));
 
+    // Sort Order
+    sortButton = new QMaemo5ValueButton();
+    sortButton->setValueLayout(QMaemo5ValueButton::ValueBesideText);
+    QMaemo5ListPickSelector * listPickSelector4 = new QMaemo5ListPickSelector;
+    QStringList sortList;
+    sortList << "Date" << "Score";
+    sortModel = new QStandardItemModel(sortList.count(), 0);
+    for (int i = 0; i < sortList.count(); i++) {
+        item = new QStandardItem(QString("%0").arg(sortList.at(i)));
+        item->setTextAlignment(Qt::AlignCenter);
+        sortModel->setItem(i, item);
+    }
+    listPickSelector4->setModel(sortModel);
+    sortButton->setPickSelector(listPickSelector4);
+    sortButton->setText(QString::fromUtf8("Sort Order"));
+
     // Use Default Courses
     defaultCoursesButton = new QMaemo5ValueButton();
     defaultCoursesButton->setValueLayout(QMaemo5ValueButton::ValueBesideText);
@@ -72,8 +88,27 @@ void SettingsDialog::createLayout(QWidget *parent)
     defaultCoursesButton->setPickSelector(listPickSelector3);
     defaultCoursesButton->setText(QString::fromUtf8("Use Default Courses"));
 
+    // User Mode
+    userModeButton = new QMaemo5ValueButton();
+    userModeButton->setValueLayout(QMaemo5ValueButton::ValueBesideText);
+    QMaemo5ListPickSelector * listPickSelector5 = new QMaemo5ListPickSelector;
+    userModeModel = new QStandardItemModel(2, 0);
+    item = new QStandardItem(QString("Basic"));
+    item->setTextAlignment(Qt::AlignCenter);
+    userModeModel->setItem(0, item);
+    item = new QStandardItem(QString("Pro"));
+    item->setTextAlignment(Qt::AlignCenter);
+    userModeModel->setItem(1, item);
+
+    listPickSelector5->setModel(userModeModel);
+    userModeButton->setPickSelector(listPickSelector5);
+    userModeButton->setText(QString::fromUtf8("Mode"));
+
+    // Add widgets to layout
     leftLayout->addWidget(hcpButton);
     leftLayout->addWidget(homeClubButton);
+    leftLayout->addWidget(sortButton);
+    leftLayout->addWidget(userModeButton);
     leftLayout->addWidget(defaultCoursesButton);
 #endif
 
@@ -95,13 +130,14 @@ void SettingsDialog::init(AppSettings &conf, QList<Club *> &list)
     QMaemo5ListPickSelector * sel;
     clubList = list;
 
+    // HCP
     if (conf.hcp.isValid()) {
         sel = (QMaemo5ListPickSelector *)hcpButton->pickSelector();
         sel->setCurrentIndex(conf.hcp.toInt());
     }
 
+    // Home club
     QListIterator<Club *> i(clubList);
-
     while (i.hasNext()) {
         Club *club = i.next();
         QStandardItem *item = new QStandardItem(QString("%0").arg(club->getName()));
@@ -114,6 +150,21 @@ void SettingsDialog::init(AppSettings &conf, QList<Club *> &list)
         index++;
     }
 
+    // Sort order
+    if (conf.sortOrder.isValid()) {
+        int index = conf.sortOrder.toString() == "Date" ? 0 : 1;
+        sel = (QMaemo5ListPickSelector *)sortButton->pickSelector();
+        sel->setCurrentIndex(index);
+    }
+
+    // User mode
+    if (conf.userMode.isValid()) {
+        int index = conf.userMode.toString() == "Basic" ? 0 : 1;
+        sel = (QMaemo5ListPickSelector *)userModeButton->pickSelector();
+        sel->setCurrentIndex(index);
+    }
+
+    // Default courses
     if (conf.defaultCourses.isValid()) {
         int index = conf.defaultCourses.toString() == "Yes" ? 0 : 1;
         sel = (QMaemo5ListPickSelector *)defaultCoursesButton->pickSelector();
@@ -139,6 +190,16 @@ void SettingsDialog::results(AppSettings &conf)
         item = homeClubModel->item(sel->currentIndex());
         conf.homeClub = item->data(Qt::DisplayRole);
     }
+    sel = (QMaemo5ListPickSelector *)sortButton->pickSelector();
+    if (sel->currentIndex() != -1) {
+        item = sortModel->item(sel->currentIndex());
+        conf.sortOrder = item->data(Qt::DisplayRole);
+    }
+    sel = (QMaemo5ListPickSelector *)userModeButton->pickSelector();
+    if (sel->currentIndex() != -1) {
+        item = userModeModel->item(sel->currentIndex());
+        conf.userMode = item->data(Qt::DisplayRole);
+    }
     sel = (QMaemo5ListPickSelector *)defaultCoursesButton->pickSelector();
     if (sel->currentIndex() != -1) {
         item = defaultCoursesModel->item(sel->currentIndex());