2022-02-10 10:06:41 +00:00
|
|
|
import QtQuick 2.14
|
|
|
|
import QtQuick.Layouts 1.14
|
|
|
|
|
|
|
|
import StatusQ.Core.Theme 0.1
|
|
|
|
import StatusQ.Core 0.1
|
|
|
|
import StatusQ.Controls 0.1
|
|
|
|
import StatusQ.Controls.Validators 0.1
|
|
|
|
|
|
|
|
Column {
|
|
|
|
id: root
|
|
|
|
spacing: 25
|
|
|
|
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
|
|
|
|
|
|
|
|
// PIN input that accepts only numbers
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Enter Keycard PIN"
|
|
|
|
font.pixelSize: 30
|
|
|
|
font.bold: true
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusPinInput {
|
|
|
|
id: numbersPinInput
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
validator: StatusIntValidator{bottom: 0; top: 999999;}
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.dangerColor1
|
|
|
|
text: "Only numbers allowed"
|
|
|
|
font.pixelSize: 16
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Introduced PIN: " + numbersPinInput.pinInput
|
|
|
|
font.pixelSize: 12
|
|
|
|
}
|
|
|
|
|
|
|
|
// PIN input that accepts input depending on the regular expression definition
|
|
|
|
StatusBaseText {
|
|
|
|
topPadding: 100
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Enter another Keycard PIN"
|
|
|
|
font.pixelSize: 30
|
|
|
|
font.bold: true
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusPinInput {
|
|
|
|
id: regexPinInput
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
validator: StatusRegularExpressionValidator { regularExpression: /[0-9A-Za-z@]+/ }
|
|
|
|
circleDiameter: 22
|
|
|
|
circleSpacing: 22
|
|
|
|
pinLen: 7
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.dangerColor1
|
|
|
|
text: "Only alphanumeric characters and '@' allowed"
|
|
|
|
font.pixelSize: 16
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Introduced PIN: " + regexPinInput.pinInput
|
|
|
|
font.pixelSize: 12
|
|
|
|
}
|
2022-09-14 08:45:36 +00:00
|
|
|
|
|
|
|
// PUK input that accepts only numbers
|
|
|
|
StatusBaseText {
|
|
|
|
topPadding: 100
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Enter Keycard PUK"
|
|
|
|
font.pixelSize: 30
|
|
|
|
font.bold: true
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusPinInput {
|
|
|
|
id: numbersPukInput
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
validator: StatusRegularExpressionValidator { regularExpression: /[0-9]+/ }
|
|
|
|
pinLen: 12
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.dangerColor1
|
|
|
|
text: "Only numbers allowed"
|
|
|
|
font.pixelSize: 16
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Introduced PUK: " + numbersPukInput.pinInput
|
|
|
|
font.pixelSize: 12
|
|
|
|
}
|
|
|
|
|
|
|
|
// PUK input that accepts only numbers
|
|
|
|
StatusBaseText {
|
|
|
|
topPadding: 100
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Enter Keycard PUK"
|
|
|
|
font.pixelSize: 30
|
|
|
|
font.bold: true
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusPinInput {
|
|
|
|
id: numbersPukInputWithSpacing
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
validator: StatusRegularExpressionValidator { regularExpression: /[0-9]+/ }
|
|
|
|
pinLen: 12
|
|
|
|
additionalSpacing: 32
|
|
|
|
additionalSpacingOnEveryNItems: 4
|
|
|
|
|
|
|
|
Component.onCompleted: {
|
|
|
|
numbersPukInputWithSpacing.statesInitialization()
|
|
|
|
numbersPukInputWithSpacing.forceFocus()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.dangerColor1
|
|
|
|
text: "Only numbers allowed"
|
|
|
|
font.pixelSize: 16
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusBaseText {
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
color: Theme.palette.directColor1
|
|
|
|
text: "Introduced PUK: " + numbersPukInputWithSpacing.pinInput
|
|
|
|
font.pixelSize: 12
|
|
|
|
}
|
2022-02-10 10:06:41 +00:00
|
|
|
}
|