summaryrefslogtreecommitdiffstats
path: root/qt-mobile/qml/DiveDetails.qml
blob: e69d0e6724a9c26a88912c526780149d7a8d8c31 (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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
import org.subsurfacedivelog.mobile 1.0
import org.kde.plasma.mobilecomponents 0.2 as MobileComponents

MobileComponents.Page {
	id: diveDetailsWindow
	width: parent.width
	objectName: "DiveDetails"
	flickable: flick

	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
		anchors.fill: parent
		contentHeight: content.height
		clip: true
		Item {
			id: content
			width: flick.width
			height: contentRect.height + MobileComponents.Units.smallSpacing * 2

			ColumnLayout {
				anchors {
					left: parent.left
					right: parent.right
					top: parent.top
					margins: MobileComponents.Units.smallSpacing
				}
				spacing: MobileComponents.Units.smallSpacing


				GridLayout {
					id: editorDetails
					width: parent.width
					columns: 2

					MobileComponents.Heading {
						Layout.columnSpan: 2
						text: "Dive " + number + " (" + date + ")"
					}

					Item {
						Layout.columnSpan: 2
						Layout.fillWidth: true
						Layout.preferredHeight: qmlProfile.visible ? qmlProfile.height : profileHideButton.height
						QMLProfile {
							id: qmlProfile
							height: MobileComponents.Units.gridUnit * 25
							anchors {
								top: parent.top
								left: parent.left
								right: parent.right
							}
							//Rectangle { color: "green"; opacity: 0.4; anchors.fill: parent } // used for debugging the dive profile sizing, will be removed later
						}
						Button {
							id: profileHideButton
							anchors {
								right: parent.right
								top: parent.top
							}
							text: "Hide Dive Profile"
							onClicked: {
								qmlProfile.visible = !qmlProfile.visible
								if (qmlProfile.visible) {
									text = "Hide Dive Profile"
								} else {
									text = "Show Dive Profile"
								}
							}
						}
					}
					Label {
						text: "Location:"
					}
					TextField {
						id: txtLocation; text: location;
						Layout.fillWidth: true
					}

					Label {
						text: "Air Temp:"
					}
					TextField {
						id: txtAirTemp
						text: airtemp
						Layout.fillWidth: true
					}

					Label {
						text: "Water Temp:"
					}
					TextField {
						id: txtWaterTemp
						text: watertemp
						Layout.fillWidth: true
					}

					Label {
						text: "Suit:"

					}
					TextField {
						id: txtSuit
						text: suit
						Layout.fillWidth: true
					}

					Label {
						text: "Buddy:"
					}
					TextField {
						id: txtBuddy
						text: buddy
						Layout.fillWidth: true
					}

					Label {
						text: "Dive Master:"
					}
					TextField {
						id: txtDiveMaster
						text: divemaster
						Layout.fillWidth: true
					}

					Label {
						text: "Notes:"
					}
					TextEdit{
						id: txtNotes
						text: notes
						focus: true
						Layout.fillWidth: true
						Layout.fillHeight: true
						selectByMouse: true
						wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
					}
				}
			}
		}
	}
}