summaryrefslogtreecommitdiffstats
path: root/qt-mobile/qml/Preferences.qml
blob: 575474ac82ab26e45db452c24db533e1616ff55d (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
import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
import org.subsurfacedivelog.mobile 1.0

Item {
	id: loginWindow

	signal accept

	property string username: login.text;
	property string password: password.text;
	property bool issave: savePassword.checked;

	GridLayout {
		columns: 2
		anchors.fill: parent
		anchors.margins: MobileComponents.Units.gridUnit

		MobileComponents.Heading {
			text: "Cloud credentials"
			Layout.bottomMargin: MobileComponents.Units.largeSpacing / 2
			Layout.columnSpan: 2
		}

		Label {
			text: "Email"
			Layout.alignment: Qt.AlignRight
		}

		TextField {
			id: login
			text: manager.cloudUserName
			Layout.fillWidth: true
		}

		Label {
			text: "Password"
			Layout.alignment: Qt.AlignRight
		}

		TextField {
			id: password
			text: manager.cloudPassword
			echoMode: TextInput.Password
			Layout.fillWidth: true
		}

		Label {
			text: "Show password"
			Layout.alignment: Qt.AlignRight
		}

		CheckBox {
			checked: false
			id: showPassword
			onCheckedChanged: {
				password.echoMode = checked ? TextInput.Normal : TextInput.Password
			}
		}

		Label {
			text: "Remember"
			Layout.alignment: Qt.AlignRight
		}

		CheckBox {
			checked: manager.saveCloudPassword
			id: savePassword
		}

		MobileComponents.Heading {
			text: "Subsurface GPS data webservice"
			Layout.topMargin: MobileComponents.Units.largeSpacing
			Layout.bottomMargin: MobileComponents.Units.largeSpacing / 2
			Layout.columnSpan: 2
		}

		Label {
			text: "Distance threshold (meters)"
			Layout.alignment: Qt.AlignRight
		}

		TextField {
			id: distanceThreshold
			text: manager.distanceThreshold
			Layout.fillWidth: true
		}

		Label {
			text: "Time threshold (minutes)"
			Layout.alignment: Qt.AlignRight
		}

		TextField {
			id: timeThreshold
			text: manager.timeThreshold
			Layout.fillWidth: true
		}

		Item { width: MobileComponents.Units.gridUnit; height: width }
		Item {
			height: saveButton.height
			width: saveButton.width
			Button {
				id: saveButton
				text: "Save"
				anchors.centerIn: parent
				onClicked: {
					manager.cloudUserName = login.text
					manager.cloudPassword = password.text
					manager.saveCloudPassword = savePassword.checked
					manager.distanceThreshold = distanceThreshold.text
					manager.timeThreshold = timeThreshold.text
					manager.savePreferences()
					stackView.pop()
				}
			}
		}

		Item {
			Layout.fillHeight: true
		}
	}
}