summaryrefslogtreecommitdiffstats
path: root/qt-mobile/DiveDetails.qml
blob: 3c5120a857ac0b599ede71eba181bcb29bd774d9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
import QtQuick.Window 2.2
import org.subsurfacedivelog.mobile 1.0

Item {
	id: diveDetailsWindow
	width: parent.width

	property string location
	property string dive_id
	property string airtemp
	property string watertemp
	property string suit
	property string buddy
	property string divemaster;
	property string notes;
	property string date
	property string number

	onDive_idChanged: {
		qmlProfile.diveId = dive_id
		qmlProfile.update()
	}

	Flickable {
		id: flick
		width: parent.width
		anchors { top: parent.top; bottom: parent.bottom }
		contentHeight: parent.height
		clip: true
		ColumnLayout {
			width: parent.width
			spacing: 8
			Rectangle {
				id: topBar
				color: "#2C4882"
				Layout.fillWidth: true
				Layout.margins: 0
				Layout.minimumHeight: prefsButton.height * 1.2
				RowLayout {
					anchors.bottom: topBar.bottom
					anchors.bottomMargin: prefsButton.height * 0.1
					anchors.left: topBar.left
					anchors.leftMargin: prefsButton.height * 0.1
					anchors.right: topBar.right
					anchors.rightMargin: prefsButton.height * 0.1
					Button {
						id: backButton
						Layout.maximumHeight: prefsButton.height
						Layout.minimumHeight: prefsButton.height
						Layout.preferredWidth: Screen.width * 0.1
						text: "\u2190"
						style: ButtonStyle {
							background: Rectangle {
								color: "#2C4882"
								implicitWidth: 50
							}
							label: Text {
								id: txt
								color: "white"
								font.pointSize: 18
								font.bold: true
								text: control.text
								horizontalAlignment: Text.AlignHCenter
								verticalAlignment: Text.AlignVCenter
							}
						}
						onClicked: {
							manager.commitChanges(
										dive_id,
										suit,
										buddy,
										divemaster,
										notes
										)
							stackView.pop();
						}
					}
					Text {
						text: qsTr("Subsurface mobile")
						font.pointSize: 18
						font.bold: true
						color: "white"
						anchors.horizontalCenter: parent.horizontalCenter
						horizontalAlignment: Text.AlignHCenter
					}
				}
			}
			GridLayout {
				id: editorDetails
				width: parent.width
				columns: 2
				Text {
					Layout.columnSpan: 2
					Layout.alignment: Qt.AlignHCenter
					text: "Dive " + number + " (" + date + ")"; font.bold: true
				}
				QMLProfile {
					Layout.columnSpan: 2
					Layout.fillWidth: true
					id: qmlProfile
					height: 500
				}
				Text { text: "Location:"; font.bold: true }
				TextField { id: txtLocation; text: location; Layout.fillWidth: true }
				Text { text: "Air Temp:"; font.bold: true }
				TextField { id: txtAirTemp; text: airtemp; Layout.fillWidth: true }
				Text { text: "Water Temp:"; font.bold: true }
				TextField { id: txtWaterTemp; text: watertemp; Layout.fillWidth: true }
				Text { text: "Suit:"; font.bold: true }
				TextField { id: txtSuit; text: suit; Layout.fillWidth: true }
				Text { text: "Buddy:"; font.bold: true }
				TextField { id: txtBuddy; text: buddy; Layout.fillWidth: true }
				Text { text: "Dive Master:"; font.bold: true }
				TextField { id: txtDiveMaster; text: divemaster; Layout.fillWidth: true}
				Text { text: "Notes:"; font.bold: true }
				TextEdit{
					id: txtNotes
					text: notes
					focus: true
					Layout.fillWidth: true
					Layout.fillHeight: true
					selectByMouse: true
					wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
				}
			}
		}
	}
}