TODO list update. Initial screen for pro mode
[scorecard] / src / main-window.cpp
index 0b53fd4..08e61fd 100644 (file)
@@ -233,7 +233,8 @@ void MainWindow::loadSettings(void)
     }
 #endif
 
-    userDataDir = QDir::homePath() + "/." + appName;
+    // Use MyDoc directory to get automatic backup/restore 
+    userDataDir = QDir::homePath() + "/MyDocs/." + appName;
     QDir dir(userDataDir);
     if (!dir.exists())
         if (!dir.mkpath(userDataDir)) {
@@ -251,7 +252,7 @@ void MainWindow::loadSettings(void)
     // Start of 0.19 migration
     // Copy existing user data to new location
     // 0.18 and earlier: score.xml and club.xml are in /opt/scorecard/data
-    // 0.19 and later: score.xml and club.xml are in /home/user/.scorecard
+    // 0.19 and later: score.xml and club.xml are in /home/user/MyDocs/.scorecard
     QString scoreFileOld = dataDir + "/" + scoreFileName;
     QString clubFileOld = dataDir + "/" + clubFileName;
 
@@ -274,6 +275,7 @@ void MainWindow::loadSettings(void)
     conf.hcp = settings.value(settingsHcp);
     conf.homeClub = settings.value(settingsHomeClub);
     conf.sortOrder = settings.value(settingsSortOrder);
+    conf.userMode = settings.value(settingsUserMode);
     conf.defaultCourses = settings.value(settingsDefaultCourses);
     settings.endGroup();
 
@@ -285,7 +287,11 @@ void MainWindow::loadSettings(void)
     if (!conf.sortOrder.isValid())
         conf.sortOrder = "Date";
 
-    qDebug() << "Settings: " << conf.hcp << conf.homeClub << conf.sortOrder << conf.defaultCourses;
+    // Use basic mode if no settings for that
+    if (!conf.userMode.isValid())
+        conf.userMode = "Basic";
+
+    qDebug() << "Settings: " << conf.hcp << conf.homeClub << conf.sortOrder << conf.userMode << conf.defaultCourses;
 }
 
 void MainWindow::saveSettings(void)
@@ -298,6 +304,8 @@ void MainWindow::saveSettings(void)
         settings.setValue(settingsHomeClub, conf.homeClub);
     if (conf.sortOrder.isValid())
         settings.setValue(settingsSortOrder, conf.sortOrder);
+    if (conf.userMode.isValid())
+        settings.setValue(settingsUserMode, conf.userMode);
     if (conf.defaultCourses.isValid())
         settings.setValue(settingsDefaultCourses, conf.defaultCourses);
     settings.endGroup();
@@ -459,13 +467,20 @@ void MainWindow::newScore()
 
         selectDialog->results(clubName, courseName, date);
 
-        ScoreDialog *scoreDialog = new ScoreDialog(this);
+        ScoreDialog *scoreDialog;
+        if (conf.userMode == "Basic")
+            scoreDialog = (ScoreDialog *)new ScoreDialog18(this);
+        else
+            scoreDialog = (ScoreDialog *)new ScoreDialogSingle(this);
+
         QString title = "New Score: " + courseName + ", " + date;
         scoreDialog->setWindowTitle(title);
 
+        qDebug() << clubName << courseName;
+
         Club *club = findClub(clubName);
         if (!club) {
-            showNote(tr("Error: no such club"));
+            showNote(tr("No club"));
             return;
         }
         Course *course = club->getCourse(courseName);
@@ -473,6 +488,7 @@ void MainWindow::newScore()
             showNote(tr("Error: no such course:"));
             return;
         }
+        
         scoreDialog->init(course);
         result = scoreDialog->exec();
         if (result) {
@@ -502,13 +518,13 @@ void MainWindow::editScore()
         course = findCourse(score->getClubName(), score->getCourseName());
 
     if (!course || !score) {
-        qDebug() << "No score/course to edit";
+        showNote(tr("No score or course to edit"));
         return;
     }
 
     QString date = score->getDate();
 
-    ScoreDialog *scoreDialog = new ScoreDialog(this);
+    ScoreDialog18 *scoreDialog = new ScoreDialog18(this);
     scoreDialog->init(course, score);
   
     QString title = "Edit Score: " + course->getName() + ", " + date;