harbour-boxing-timer/qml/pages/js/helpers.js

75 lines
2.1 KiB
JavaScript

function pushPresetListPage() {
if (settings.presetsList().length > 0) {
pageStack.pushAttached(Qt.resolvedUrl("../PresetList.qml"))
}
}
function playPauseTimer() {
if (boxingTimer.isActive) {
boxingTimer.status = BoxingTimer.Pause
} else {
boxingTimer.restore()
}
}
function addSliderForInnerTime(value) {
if (value === undefined) value = 5
var remainingTimeForInner = settingsPage.mRoundMs
var numberOfInnerTimers = settingsPage.mListOfInnerTimers.length
for (var i = 0; i < numberOfInnerTimers; i++) {
remainingTimeForInner -= settingsPage.mListOfInnerTimers[i].value
}
if (remainingTimeForInner > 0) {
var number = parseInt(numberOfInnerTimers) + 1
var id = "innerTime_" + number
var newSlider = Qt.createQmlObject(
"import QtQuick 2.2;" +
"import Sailfish.Silica 1.0;" +
"import 'converter.js' as Converter;" +
"Slider {" +
"id: " + id + ";" +
"objectName: 'innerSlider';" +
"width: parent.width;" +
"minimumValue: Converter.sToMs(5);" +
"maximumValue: "+ remainingTimeForInner +";" +
"stepSize: Converter.sToMs(5);" +
"value: "+ value +";" +
"valueText: Converter.msToTime(value);" +
"label: qsTr('Inner time "+ number +"');" +
"}",
settingsColumn,
"dynamicInnerTimerSlider"
);
var newArray = settingsPage.mListOfInnerTimers
newArray.push(newSlider);
settingsPage.mListOfInnerTimers = newArray;
}
}
function removeLastSliderFromInnerTimers() {
var newArray = settingsPage.mListOfInnerTimers
var slider = newArray.pop()
slider.destroy()
settingsPage.mListOfInnerTimers = newArray
}
function getListOfInnerTimers() {
var list = []
var timers = settingsPage.mListOfInnerTimers.length
for (var i = 0; i < timers; i++) {
list.push(settingsPage.mListOfInnerTimers[i].value)
}
return list;
}