From: Heli Hyvättinen Date: Tue, 4 Oct 2011 11:08:55 +0000 (+0300) Subject: Using QTime for saving the time settings X-Git-Tag: v1.9.1~8^2~4 X-Git-Url: http://vcs.maemo.org/git/?a=commitdiff_plain;h=4a875f0b371217e4e7467a62d5deee21be5aaa7e;p=chessclock Using QTime for saving the time settings 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. --- diff --git a/classes/settings.cpp b/classes/settings.cpp index cfb37ae..6214c38 100644 --- a/classes/settings.cpp +++ b/classes/settings.cpp @@ -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)); diff --git a/classes/settings.h b/classes/settings.h index bfefb4f..ba12a92 100644 --- a/classes/settings.h +++ b/classes/settings.h @@ -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 diff --git a/qml/NewGameDialogPage.qml b/qml/NewGameDialogPage.qml index b24c78a..94c02b7 100644 --- a/qml/NewGameDialogPage.qml +++ b/qml/NewGameDialogPage.qml @@ -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) }