Using QTime for saving the time settings
authorHeli Hyvättinen <heli.hyvattinen@kymp.net>
Tue, 4 Oct 2011 11:08:55 +0000 (14:08 +0300)
committerHeli Hyvättinen <heli.hyvattinen@kymp.net>
Tue, 4 Oct 2011 11:08:55 +0000 (14:08 +0300)
Compatible with the Maemo version now, helps if backporting. Also
clearer code when reading the settings from QML. Default values work,
does not save settings yet.

classes/settings.cpp
classes/settings.h
qml/NewGameDialogPage.qml

index cfb37ae..6214c38 100644 (file)
@@ -71,33 +71,34 @@ return groupString;
 
     }
 
-   int Settings::getInitialTime(int timeControl, bool isWhite)
+   QTime Settings::getInitialTime(int timeControl, bool isWhite)
    {
        QSettings settings;
        settings.beginGroup(getGroupName(timeControl));
 
-       int defaultTime;
+       QTime defaultTime(0,30);
+
+       QTime hourGlassTime(0,1);
 
        if (timeControl == WrappedClocksWidget::HourGlass)
-           defaultTime = 60*1000; // 1 min
-       else
-           defaultTime = 30*60*1000; //30 min
+            defaultTime = hourGlassTime;
 
        if (isWhite)
-           return settings.value("WhiteInitial",defaultTime).toInt();
+           return settings.value("WhiteInitial",defaultTime).toTime();
         else
-           return settings.value("BlackInitial",defaultTime).toInt();
+           return settings.value("BlackInitial",defaultTime).toTime();
    }
 
-   int Settings::getAdditionalTime(int timeControl, bool isWhite)
+   QTime Settings::getAdditionalTime(int timeControl, bool isWhite)
    {
        QSettings settings;
        settings.beginGroup(getGroupName(timeControl));
 
+       QTime defaultTime(0,0,30);
        if (isWhite)
-           return settings.value("WhiteAddition",30*1000).toInt();
+           return settings.value("WhiteAddition",defaultTime).toTime();
        else
-           return settings.value("BlackAddition",30*1000).toInt();
+           return settings.value("BlackAddition",defaultTime).toTime();
    }
 
    bool Settings::isEqualTimes(int timeControl)
@@ -119,7 +120,7 @@ return groupString;
             settings.setValue("BlackPerTurns",turns);
    }
 
-   void Settings::setInitialTime(int timeControl, bool isWhite, int time)
+   void Settings::setInitialTime(int timeControl, bool isWhite, QTime time)
    {
        QSettings settings;
        settings.beginGroup(getGroupName(timeControl));
@@ -130,7 +131,7 @@ return groupString;
            settings.setValue("BlackItnitial",time);
    }
 
-   void Settings::setAdditionalTime(int timeControl, bool isWhite, int time)
+   void Settings::setAdditionalTime(int timeControl, bool isWhite, QTime time)
    {
        QSettings settings;
        settings.beginGroup(getGroupName(timeControl));
index bfefb4f..ba12a92 100644 (file)
@@ -37,14 +37,14 @@ public:
    @param timeControl Time control for which the setting is queried
    @param isWhite true for white player, false for black
    */
-    Q_INVOKABLE int getInitialTime(int timeControl, bool isWhite);
+    Q_INVOKABLE QTime getInitialTime(int timeControl, bool isWhite);
 
     /*!
    Returns additional time (in milliseconds) from settings.
    @param timeControl Time control for which the setting is queried
    @param isWhite true for white player, false for black
    */
-    Q_INVOKABLE int getAdditionalTime(int timeControl, bool isWhite);
+    Q_INVOKABLE QTime getAdditionalTime(int timeControl, bool isWhite);
 
     /*!
       Returns whether the equal times is set in the settings
@@ -72,7 +72,7 @@ public slots:
    @param isWhite true for white player, false for black
    @param time The time to be saved, in milliseconds
    */
-    void setInitialTime(int timeControl, bool isWhite, int time);
+    void setInitialTime(int timeControl, bool isWhite, QTime time);
 
     /*!
     Sets additional time in settings.
@@ -81,7 +81,7 @@ public slots:
    @param time The time to be saved, in milliseconds
    */
 
-    void setAdditionalTime(int timeControl, bool isWhite, int time);
+    void setAdditionalTime(int timeControl, bool isWhite, QTime time);
 
     /*! Sets the equal times setting
       @param timeControl Time control for which the setting is set
index b24c78a..94c02b7 100644 (file)
@@ -43,34 +43,35 @@ Page
     Settings
     {
         id: settings
+
     }
     onTimeControlChanged:
     {
         equalTimesSwitch = settings.isEqualTimes(timeControl)
 
         var whiteInitial = settings.getInitialTime(timeControl,true)
-        whiteInitialTime.hours = whiteInitial/(60*60*1000)
-        whiteInitialTime.minutes = (whiteInitial%(60*60*1000))/(60*1000)
-        whiteInitialTime.seconds = whiteInitial%(60*1000)/1000
+        whiteInitialTime.hours = Qt.formatTime(whiteInitial,"h")
+        whiteInitialTime.minutes = Qt.formatTime(whiteInitial,"m")
+        whiteInitialTime.seconds = Qt.formatTime(whiteInitial,"s")
 
         var blackInitial = settings.getInitialTime(timeControl,false)
-        blackInitialTime.hours = blackInitial/(60*60*1000)
-        blackInitialTime.minutes = (blackInitial%(60*60*1000))/(60*1000)
-        blackInitialTime.seconds = blackInitial%(60*1000)/1000
+        blackInitialTime.hours = Qt.formatTime(blackInitial,"h")
+        blackInitialTime.minutes = Qt.formatTime(blackInitial,"m")
+        blackInitialTime.seconds = Qt.formatTime(blackInitial,"s")
 
         var whiteAdditional = settings.getAdditionalTime(timeControl,true)
-        whiteAdditionalTime.hours = whiteAdditional/(60*60*1000)
-        whiteAdditionalTime.minutes = (whiteAdditional%(60*60*1000))/(60*1000)
-        whiteAdditionalTime.seconds = whiteAdditional%(60*1000)/1000
+        whiteAdditionalTime.hours = Qt.formatTime(whiteAdditional,"h")
+        whiteAdditionalTime.minutes = Qt.formatTime(whiteAdditional,"m")
+        whiteAdditionalTime.seconds = Qt.formatTime(whiteAdditional,"s")
 
         var blackAdditional = settings.getAdditionalTime(timeControl,false)
-        blackAdditionalTime.hours = blackAdditional/(60*60*1000)
-        blackAdditionalTime.minutes = (blackAdditional%(60*60*1000))/(60*1000)
-        blackAdditionalTime.seconds = blackAdditional%(60*1000)/1000
+        blackAdditionalTime.hours = Qt.formatTime(blackAdditional,"h")
+        blackAdditionalTime.minutes = Qt.formatTime(blackAdditional,"m")
+        blackAdditionalTime.seconds = Qt.formatTime(blackAdditional,"s")
 
 
-        whiteTurnsPerAddition.text = whiteInitial/(60*60*1000) // settings.getTurnsPerAddition(timeControl,true)
-        blackTurnsPerAddition.text = 3%2//settings.getTurnsPerAddition(timeControl,false)
+        whiteTurnsPerAddition.text = settings.getTurnsPerAddition(timeControl,true)
+        blackTurnsPerAddition.text = settings.getTurnsPerAddition(timeControl,false)
     }
 
     tools: ToolBarLayout
@@ -372,12 +373,12 @@ Page
 
 
 
-                //Save settings for white
-                settings.setInitialTime(timeControl,true,clocksPage.whiteInitialTime)
-                settings.setAdditionalTime(timeControl,true,clocksPage.whiteAdditionalTime)
-                settings.setTurnsPerAddition(timeControl,true,clocksPage.whiteTurnsPerAddition)
+//                //Save settings for white
+//                settings.setInitialTime(timeControl,true,clocksPage.whiteInitialTime)
+//                settings.setAdditionalTime(timeControl,true,clocksPage.whiteAdditionalTime)
+//                settings.setTurnsPerAddition(timeControl,true,clocksPage.whiteTurnsPerAddition)
 
-                settings.setEqualTimes(timeControl,equalTimesSwitch.checked) //save equal times setting
+//                settings.setEqualTimes(timeControl,equalTimesSwitch.checked) //save equal times setting
 
                 if (equalTimesSwitch.checked)
                 {
@@ -394,10 +395,10 @@ Page
                     clocksPage.blackAdditionalTime = 60*60*1000*blackAdditionalTime.hours+60*1000*blackAdditionalTime.minutes+1000*blackAdditionalTime.seconds
                     clocksPage.blackTurnsPerAddition = blackTurnsPerAddition.text
 
-                    //Save settings for black
-                    settings.setInitialTime(timeControl,false,clocksPage.blackInitialTime)
-                    settings.setAdditionalTime(timeControl,false,clocksPage.blackAdditionalTime)
-                    settings.setTurnsPerAddition(timeControl,false,clocksPage.blackTurnsPerAddition)
+//                    //Save settings for black
+//                    settings.setInitialTime(timeControl,false,clocksPage.blackInitialTime)
+//                    settings.setAdditionalTime(timeControl,false,clocksPage.blackAdditionalTime)
+//                    settings.setTurnsPerAddition(timeControl,false,clocksPage.blackTurnsPerAddition)
                 }