summaryrefslogtreecommitdiffstats
path: root/mobile-widgets/qml/DiveDetailsEdit.qml
diff options
context:
space:
mode:
Diffstat (limited to 'mobile-widgets/qml/DiveDetailsEdit.qml')
-rw-r--r--mobile-widgets/qml/DiveDetailsEdit.qml85
1 files changed, 83 insertions, 2 deletions
diff --git a/mobile-widgets/qml/DiveDetailsEdit.qml b/mobile-widgets/qml/DiveDetailsEdit.qml
index e9fdeb62c..3d1b31194 100644
--- a/mobile-widgets/qml/DiveDetailsEdit.qml
+++ b/mobile-widgets/qml/DiveDetailsEdit.qml
@@ -35,13 +35,16 @@ Item {
property alias divemasterModel: divemasterBox.model
property alias buddyModel: buddyBox.model
property alias cylinderModel: cylinderBox.model
+ property int rating
+ property int visibility
function saveData() {
// apply the changes to the dive_table
manager.commitChanges(dive_id, detailsEdit.dateText, detailsEdit.locationText, detailsEdit.gpsText, detailsEdit.durationText,
detailsEdit.depthText, detailsEdit.airtempText, detailsEdit.watertempText, suitBox.text, buddyBox.text,
divemasterBox.text, detailsEdit.weightText, detailsEdit.notesText, detailsEdit.startpressureText,
- detailsEdit.endpressureText, detailsEdit.gasmixText, cylinderBox.text)
+ detailsEdit.endpressureText, detailsEdit.gasmixText, cylinderBox.text, detailsEdit.rating,
+ detailsEdit.visibility)
// trigger the profile to be redrawn
QMLProfile.diveId = dive_id
@@ -61,6 +64,8 @@ Item {
diveDetailsListView.currentItem.modelData.divemaster = divemasterBox.currentText
diveDetailsListView.currentItem.modelData.cylinder = cylinderBox.currentText
diveDetailsListView.currentItem.modelData.notes = detailsEdit.notesText
+ diveDetailsListView.currentItem.modelData.rating = detailsEdit.rating
+ diveDetailsListView.currentItem.modelData.visibility = detailsEdit.visibility
diveDetailsPage.state = "view"
Qt.inputMethod.hide()
// now make sure we directly show the saved dive (this may be a new dive, or it may have moved)
@@ -72,7 +77,7 @@ Item {
ColumnLayout {
id: editArea
spacing: Kirigami.Units.smallSpacing
- width: parent.width - 2 * Kirigami.Units.gridUnit
+ width: parent.width
GridLayout {
id: editorDetails
@@ -86,33 +91,46 @@ Item {
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Date:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtDate;
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Location:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtLocation;
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Coordinates:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtGps
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Use current\nGPS location:")
visible: manager.locationServiceAvailable
+ font.pointSize: subsurfaceTheme.smallPointSize
}
SsrfCheckBox {
id: checkboxGPS
@@ -126,43 +144,60 @@ Item {
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Depth:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtDepth
Layout.fillWidth: true
validator: RegExpValidator { regExp: /[^-]*/ }
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Duration:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtDuration
Layout.fillWidth: true
validator: RegExpValidator { regExp: /[^-]*/ }
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Air Temp:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtAirTemp
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Water Temp:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtWaterTemp
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Suit:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
HintsTextEdit {
id: suitBox
@@ -174,6 +209,7 @@ Item {
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Buddy:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
HintsTextEdit {
id: buddyBox
@@ -185,6 +221,7 @@ Item {
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Divemaster:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
HintsTextEdit {
id: divemasterBox
@@ -196,16 +233,21 @@ Item {
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Weight:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtWeight
readOnly: text === "cannot edit multiple weight systems"
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Cylinder:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
HintsTextEdit {
id: cylinderBox
@@ -217,35 +259,74 @@ Item {
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Gas mix:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtGasMix
Layout.fillWidth: true
validator: RegExpValidator { regExp: /(EAN100|EAN\d\d|AIR|100|\d{1,2}|\d{1,2}\/\d{1,2})/i }
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("Start Pressure:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtStartPressure
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
}
Kirigami.Label {
Layout.alignment: Qt.AlignRight
text: qsTr("End Pressure:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextField {
id: txtEndPressure
Layout.fillWidth: true
+ onEditingFinished: {
+ focus = false
+ }
+ }
+
+ Kirigami.Label {
+ Layout.alignment: Qt.AlignRight
+ text: qsTr("Rating:")
+ font.pointSize: subsurfaceTheme.smallPointSize
+ }
+ SpinBox {
+ id: ratingPicker
+ from: 0
+ to: 5
+ value: rating
+ onValueChanged: rating = value
+ }
+
+ Kirigami.Label {
+ Layout.alignment: Qt.AlignRight
+ text: qsTr("Visibility:")
+ font.pointSize: subsurfaceTheme.smallPointSize
+ }
+ SpinBox {
+ id: visibilityPicker
+ from: 0
+ to: 5
+ value: visibility
+ onValueChanged: visibility = value
}
Kirigami.Label {
Layout.columnSpan: 2
Layout.alignment: Qt.AlignLeft
text: qsTr("Notes:")
+ font.pointSize: subsurfaceTheme.smallPointSize
}
TextArea {
Layout.columnSpan: 2