aboutsummaryrefslogtreecommitdiffstats
path: root/qt-mobile/qml/CloudCredentials.qml
blob: 229c080caea2f0ec872e11f7c2083ca23eab4855 (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
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;

	ColumnLayout {
		width: subsurfaceTheme.columnWidth - 2 * MobileComponents.Units.gridUnit
		MobileComponents.Heading {
			text: "Cloud credentials"
			level: headingLevel
			Layout.bottomMargin: MobileComponents.Units.largeSpacing / 2
		}

		MobileComponents.Label {
			text: "Email"
		}

		TextField {
			id: login
			text: manager.cloudUserName
			Layout.fillWidth: true
			inputMethodHints: Qt.ImhEmailCharactersOnly |
					  Qt.ImhNoAutoUppercase
		}

		MobileComponents.Label {
			text: "Password"
		}

		TextField {
			id: password
			text: manager.cloudPassword
			echoMode: TextInput.Password
			inputMethodHints: Qt.ImhSensitiveData |
					  Qt.ImhHiddenText |
					  Qt.ImhNoAutoUppercase
			Layout.fillWidth: true
		}
		GridLayout {
			columns: 2

			CheckBox {
				checked: false
				id: showPassword
				onCheckedChanged: {
					password.echoMode = checked ? TextInput.Normal : TextInput.Password
				}
			}
			MobileComponents.Label {
				text: "Show password"
			}

			CheckBox {
				checked: manager.saveCloudPassword
				id: savePassword
			}
			MobileComponents.Label {
				text: "Remember"
			}
		}
		Item { width: MobileComponents.Units.gridUnit; height: width }
		Item {
			height: saveButton.height
			width: saveButton.width
			SubsurfaceButton {
				id: saveButton
				text: "Save"
				anchors.centerIn: parent
				onClicked: {
					manager.cloudUserName = login.text
					manager.cloudPassword = password.text
					manager.saveCloudPassword = savePassword.checked
					manager.saveCloudCredentials()
				}
			}
		}
		Item {
			height: backButton.height
			width: backButton.width
			visible: diveListView.count > 0 && manager.credentialStatus != QMLManager.INVALID
			SubsurfaceButton {
				id: backButton
				text: "Back to dive list"
				anchors.centerIn: parent
				onClicked: {
					manager.credentialStatus = oldStatus
				}
			}
		}

		Item {
			Layout.fillHeight: true
		}
	}
}