-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.qml
165 lines (142 loc) · 4.26 KB
/
main.qml
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
163
164
import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Layouts 1.1
ApplicationWindow {
property int margin: 18
property int inner_spacing: 9
property int contentHeight: 120
width: 400
minimumWidth: 400
// property alias password : passwordField.text
// property alias email : emailField.text
property Component firstStep : Column {
spacing: inner_spacing
GridLayout {
id: credentialsLayout
columns: 2
anchors.left: parent.left
anchors.right: parent.right
rowSpacing: inner_spacing
columnSpacing: inner_spacing
Label {
text: "E-Mail:"
anchors.baseline: emailField.baseline
}
TextField {
id: emailField
Layout.fillWidth: true
placeholderText: "[email protected]"
width: 40
}
Label {
text: "Passwort:"
anchors.baseline: passwordField.baseline
}
TextField {
id: passwordField
Layout.fillWidth: true
echoMode: TextInput.Password
}
}
Button {
id: loginButton
text: "Login"
isDefault: true
anchors.horizontalCenter: parent.horizontalCenter
onClicked: stackView.push({item: secondStep})
BusyIndicator {
anchors.right: parent.left
anchors.rightMargin: inner_spacing
anchors.verticalCenter: parent.verticalCenter
height: parent.height * 0.6
width: height
}
}
}
property Component secondStep : Column {
spacing: inner_spacing
Row {
Label {
text: "< zurück"
color: "steelblue"
MouseArea {
anchors.fill: parent
onClicked: stackView.pop()
}
}
Item {
width: 20
height:1
}
Label {
text: "Eingeloggt als Muster Meier"
}
}
RowLayout {
anchors.left: parent.left
anchors.right: parent.right
Label {
text: "Gruppe:"
anchors.baseline: groupComboBox.baseline
}
ComboBox {
id: groupComboBox
Layout.fillWidth: true
model: ["Abteilung Stern", "Abteilung Chuuz"]
}
}
Button {
id: printButton
text: "Drucken"
isDefault: true
anchors.horizontalCenter: parent.horizontalCenter
BusyIndicator {
anchors.right: parent.left
anchors.rightMargin: inner_spacing
anchors.verticalCenter: parent.verticalCenter
height: parent.height * 0.6
width: height
}
}
}
StackView {
anchors.fill: parent
anchors.margins: margin
id: stackView
initialItem: { item: firstStep }
delegate: StackViewDelegate {
function transitionFinished(properties)
{
properties.exitItem.y = -contentHeight;
}
pushTransition: StackViewTransition {
PropertyAnimation {
target: enterItem
property: "y"
from: +contentHeight
to: 0
}
PropertyAnimation {
target: exitItem
property: "y"
from: 0
to: -contentHeight
}
}
popTransition: StackViewTransition {
PropertyAnimation {
target: enterItem
property: "y"
from: -contentHeight
to: 0
}
PropertyAnimation {
target: exitItem
property: "y"
from: 0
to: +contentHeight
}
}
}
}
}