mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
mobile-widgets/qml: add DiveSummary.qml
Add DivePlannerSummary, a page to show in dive centers. Allow user to select period for the 2 colums in DiveSummary. Default is "Total" and "3 month", but allowing the user to change these, make it a very simple tool to view how the user progresses. Variables are taken from Backend. [Dirk Hohndel: adjusted text strings as these aren't really months] Signed-off-by: jan Iversen <jan@casacondor.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
6cd46bee06
commit
b6e86a1c70
2 changed files with 211 additions and 0 deletions
210
mobile-widgets/qml/DiveSummary.qml
Normal file
210
mobile-widgets/qml/DiveSummary.qml
Normal file
|
@ -0,0 +1,210 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.12
|
||||
import QtQuick.Controls 1.4
|
||||
import QtQuick.Layouts 1.12
|
||||
import QtQuick.Dialogs 1.3
|
||||
import org.subsurfacedivelog.mobile 1.0
|
||||
import org.kde.kirigami 2.4 as Kirigami
|
||||
|
||||
Kirigami.ScrollablePage {
|
||||
background: Rectangle { color: subsurfaceTheme.backgroundColor }
|
||||
title: qsTr("Dive summary")
|
||||
|
||||
ListModel {
|
||||
id: monthModel
|
||||
ListElement {text: qsTr("Total")}
|
||||
ListElement {text: qsTr(" 1 month [ 30 days]")}
|
||||
ListElement {text: qsTr(" 2 month [ 60 days]")}
|
||||
ListElement {text: qsTr(" 3 month [ 90 days]")}
|
||||
ListElement {text: qsTr(" 4 month [120 days]")}
|
||||
ListElement {text: qsTr(" 5 month [150 days]")}
|
||||
ListElement {text: qsTr(" 6 month [180 days]")}
|
||||
ListElement {text: qsTr(" 7 month [210 days]")}
|
||||
ListElement {text: qsTr(" 8 month [240 days]")}
|
||||
ListElement {text: qsTr(" 9 month [270 days]")}
|
||||
ListElement {text: qsTr("10 month [300 days]")}
|
||||
ListElement {text: qsTr("11 month [330 days]")}
|
||||
ListElement {text: qsTr("12 month [360 days]")}
|
||||
}
|
||||
|
||||
onVisibleChanged: {
|
||||
if (visible)
|
||||
Backend.summaryCalculation(selectionPrimary.currentIndex, selectionSecondary.currentIndex)
|
||||
}
|
||||
|
||||
GridLayout {
|
||||
columns: 3
|
||||
width: parent.width
|
||||
columnSpacing: Kirigami.Units.smallSpacing
|
||||
rowSpacing: Kirigami.Units.smallSpacing
|
||||
|
||||
TemplateLabel {
|
||||
text: qsTr("oldest/newest dive")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[0]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[1]
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
Layout.columnSpan: 3
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
text: ""
|
||||
}
|
||||
TemplateComboBox {
|
||||
id: selectionPrimary
|
||||
editable: false
|
||||
currentIndex: 0
|
||||
model: monthModel
|
||||
onActivated: {
|
||||
Backend.summaryCalculation(selectionPrimary.currentIndex, selectionSecondary.currentIndex)
|
||||
}
|
||||
}
|
||||
TemplateComboBox {
|
||||
id: selectionSecondary
|
||||
editable: false
|
||||
currentIndex: 3
|
||||
model: monthModel
|
||||
onActivated: {
|
||||
Backend.summaryCalculation(selectionPrimary.currentIndex, selectionSecondary.currentIndex)
|
||||
}
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("dives")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[2]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[3]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("- EANx")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[4]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[5]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("- depth > 39m")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[6]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[7]
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
Layout.columnSpan: 3
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
text: qsTr("dive time")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[8]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[9]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("max dive time")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[10]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[11]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("avg. dive time")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[12]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[13]
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
Layout.columnSpan: 3
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
text: qsTr("max depth")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[14]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[15]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("avg. max depth")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[16]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[17]
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
Layout.columnSpan: 3
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
text: qsTr("min. SAC")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[18]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[19]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: qsTr("avg. SAC")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[20]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[21]
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
Layout.columnSpan: 3
|
||||
}
|
||||
|
||||
TemplateLabel {
|
||||
text: qsTr("dive plan(s)")
|
||||
font.bold: true
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[22]
|
||||
}
|
||||
TemplateLabel {
|
||||
text: Backend.diveSummaryText[23]
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -24,6 +24,7 @@
|
|||
<file>DivePlannerManager.qml</file>
|
||||
<file>DivePlannerSetup.qml</file>
|
||||
<file>DivePlannerView.qml</file>
|
||||
<file>DiveSummary.qml</file>
|
||||
<file>Export.qml</file>
|
||||
<file>GpsList.qml</file>
|
||||
<file>HintsTextEdit.qml</file>
|
||||
|
|
Loading…
Add table
Reference in a new issue