/* blueROCK - for digital rock Copyright (C) 2019 Dorian Zedler This program 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. This program 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. You should have received a copy of the GNU General Public License along with this program. If not, see . */ import QtQuick 2.9 import QtQuick.Controls 2.4 import QtQuick.Layouts 1.0 import QtQuick.Controls.Material 2.12 import "../Components" Page { id: root title: "start" signal headerComponentChanged() BlueRockBadge { id: headerBadge anchors { horizontalCenter: parent.horizontalCenter top: parent.top topMargin: root.height * 0.03 } height: app.landscape() ? menuGr.buttonSize * 0.2:menuGr.buttonSize * 0.3 } GridLayout { id: menuGr anchors.centerIn: parent rows: app.landscape() ? 1:2 columns: app.landscape() ? 2:1 rowSpacing: app.landscape() ? parent.width * 0.1:headerBadge.anchors.topMargin columnSpacing: rowSpacing property int buttonSize: app.landscape() ? parent.width * 0.2:parent.height * 0.19 FancyButton { id: davBt Layout.preferredHeight: menuGr.buttonSize Layout.preferredWidth: menuGr.buttonSize Layout.alignment: Layout.Center image: Material.theme === Material.Dark ? "qrc:/icons/dav-dark.png":"qrc:/icons/dav.png" onClicked: { app.openWidget({nation:"GER"}) } } FancyButton { id: sacBt Layout.preferredHeight: menuGr.buttonSize Layout.preferredWidth: menuGr.buttonSize Layout.alignment: Layout.Center image: Material.theme === Material.Dark ? "qrc:/icons/sac-dark.png":"qrc:/icons/sac.png" onClicked: { app.openWidget({nation:"SUI"}) } } } Grid { id: footerMenu anchors { bottom: parent.bottom margins: headerBadge.anchors.topMargin horizontalCenter: parent.horizontalCenter } width: app.landscape() ? childrenRect.width : parent.width * 0.8 height: app.landscape() ? headerBadge.height : Math.min(headerBadge.height * 2, width * 0.27) columnSpacing: height * 0.1 columns: app.landscape() ? 4:2 rows: app.landscape() ? 1:2 Repeater { id: buttonRepeater property var buttons: [ //% "IFSC results" ["\uf059", qsTrId("#ifscResults"), ifscDisclaimerDialog.open], [ "\uf042", Material.theme === Material.Light ? //% "Dark mode" qsTrId("#darkMode"): //% "Light mode" qsTrId("#lightMode"), app.toggleDarkMode ], //% "About blueROCK" ["\uf05a", qsTrId("#aboutBluerock"), aboutBluerockDisclaimerDialog.open], ["\uf029", qsTrId("#scanQrCode"), function(){ mainStack.push("qrc:/Pages/QrCodeScanPage.qml") }], ] model: buttons delegate: Item { width: app.landscape() ? footerMenuButton.implicitWidth : footerMenu.width * 0.5 - (footerMenu.columnSpacing / 2) height: app.landscape() ? footerMenu.height : footerMenu.height * 0.5 - (footerMenu.rowSpacing / 2) Button { id: footerMenuButton property bool isLeft: index % 2 === 0 anchors { right: isLeft && !app.landscape() ? parent.right : undefined left: isLeft && !app.landscape() ? undefined : parent.left centerIn: app.landscape() ? parent : undefined } height: parent.height flat: true font.family: fa5solid.name font.pixelSize: height * 0.4 font.capitalization: Font.MixedCase //horizontalAlignment: isLeft ? Text.AlignRight : Text.AlignLeft text: isLeft && !app.landscape() ? modelData[1] + " " + modelData[0] : modelData[0] + " " + modelData[1] onClicked: buttonRepeater.buttons[index][2]() } } } } DisclaimerDialog { id: ifscDisclaimerDialog Material.theme: root.Material.theme //% "Where are the IFSC results?" title: qsTrId("#ifscDisclaimerTitle") //% "Unfortunately, the IFSC has restricted the access to their data and is not willing to share results with blueROCK anymore. Because of this, blueROCK is no longer able to access and display IFSC results.

You can find current IFSC results over here and on their website." content: qsTrId("#ifscDisclaimer") } DisclaimerDialog { id: aboutBluerockDisclaimerDialog Material.theme: root.Material.theme //% "privacy policy" title: "blueROCK v" + APP_VERSION + "
By Itsblue Development, " + qsTrId("#privacyPolicy") + "" //% "This app was built using the Qt Framework licensed under the GNU lgplV3 license.

This app is open source and licensed under the GNU agplV3 license, the source code can be found here.

Resultservice and rankings provided by digital ROCK." content: qsTrId("#aboutBluerockDisclaimer") } }