SailTuner/qml/Sailfish.qml

104 lines
2.1 KiB
QML
Raw Normal View History

2016-01-03 19:32:36 +03:00
/* Copyright 2016 (C) Louis-Joseph Fournier
* louisjoseph.fournier@gmail.com
*
* This file is part of SailTuner.
*
* SailTuner is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* SailTuner is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
import QtQuick 2.0
import Sailfish.Silica 1.0
import harbour.sailtuner.tuner 1.0
import harbour.sailtuner.objectsaver 1.0
import "."
/**
* Sailfish main page
*
*/
ApplicationWindow {
id: app
allowedOrientations: Orientation.All
property bool userRunning: true
property int dbFontSize: 100
property QtObject tuner
ObjectSaver {
2016-01-08 20:56:19 +03:00
id: saver
filename: "config.dat"
object: Config
}
initialPage: Component {
2015-12-27 17:59:32 +03:00
Page {
id: page
allowedOrientations: Orientation.All
2016-01-08 20:56:19 +03:00
signal togglePause()
2015-12-27 17:59:32 +03:00
SilicaFlickable {
anchors.fill: parent
2016-01-08 20:56:19 +03:00
PullDownMenu {
MenuItem {
text: qsTr("Configuration")
onClicked: {
2016-01-09 02:01:37 +03:00
var confpage = pageStack.push(Qt.resolvedUrl("ConfigurePageSailfish.qml"), { tuner: app.tuner })
confpage.configChanged.connect(saver.save)
2016-01-08 20:56:19 +03:00
}
}
}
TunerScreen {
anchors.fill: parent
2015-12-27 17:59:32 +03:00
theme: Theme
tuner: app.tuner
2016-01-08 20:56:19 +03:00
MouseArea {
anchors.fill: parent
onClicked: togglePause()
}
}
2016-01-09 02:01:37 +03:00
2015-12-27 17:59:32 +03:00
}
Tuner {
id: tunerObject
2016-01-10 01:33:19 +03:00
running: Qt.application.active && page.status == PageStatus.Active && app.userRunning
temperament_idx: Config.temperament_idx
la: Config.la
}
Component.onCompleted: {
app.tuner = tunerObject
togglePause.connect(app.togglePause)
}
}
}
cover: Component {
CoverBackground {
2015-12-27 17:59:32 +03:00
SimpleDisplay {
theme: Theme
tuner: app.tuner
}
}
}
function togglePause() {
app.userRunning = app.userRunning ? false : true
}
}