import QtQuick 2.12 import QtQuick.Controls 2.5 import QtQuick.Layouts 1.3 Page { width: 400 height: 400 Connections { target: _qmlHandler onSignupSetStatus: { signupStatusText.text = status } onSignupEnableRegisterButton: { signupRegisterButton.enabled = true } onSignupDisableRegisterButton: { signupRegisterButton.enabled = false } onLoginSignupCheckSaveCheckbox: { signupSetDefaultCheckbox.checked = true } } ColumnLayout { anchors.fill: parent Text { Layout.alignment: Qt.AlignCenter id: signupTitle color: "#ffffff" text: qsTr("Signup") horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter font.pixelSize: 20 } TextField { Layout.alignment: Qt.AlignCenter id: signupUsernameInput selectByMouse: true focus: true text: qsTr("") placeholderText: "Username" horizontalAlignment: Text.AlignHCenter // @disable-check M222 Keys.onReturnPressed: signupRegisterButton.activate() // @disable-check M222 Keys.onEnterPressed: signupRegisterButton.activate() onTextEdited: { signupStatusText.text = "" signupRegisterButton.enabled = (signupUsernameInput.text != "" && signupPasswordOneInput.text != "" && signupPasswordTwoInput.text != "") } } TextField { Layout.alignment: Qt.AlignCenter id: signupPasswordOneInput selectByMouse: true focus: true text: qsTr("") placeholderText: "Password" horizontalAlignment: Text.AlignHCenter // @disable-check M222 Keys.onReturnPressed: signupRegisterButton.activate() // @disable-check M222 Keys.onEnterPressed: signupRegisterButton.activate() echoMode: TextInput.Password onTextEdited: { signupStatusText.text = "" signupRegisterButton.enabled = (signupUsernameInput.text != "" && signupPasswordOneInput.text != "" && signupPasswordTwoInput.text != "") } } TextField { Layout.alignment: Qt.AlignCenter id: signupPasswordTwoInput selectByMouse: true focus: true text: qsTr("") placeholderText: "Repeat Passw." horizontalAlignment: Text.AlignHCenter // @disable-check M222 Keys.onReturnPressed: signupRegisterButton.activate() // @disable-check M222 Keys.onEnterPressed: signupRegisterButton.activate() echoMode: TextInput.Password onTextEdited: { signupStatusText.text = "" signupRegisterButton.enabled = (signupUsernameInput.text != "" && signupPasswordOneInput.text != "" && signupPasswordTwoInput.text != "") } } CheckBox { id: signupSetDefaultCheckbox Layout.alignment: Qt.AlignCenter checked: false text: "Save as default user" } Text { id: signupStatusText color: "#df3f3f" text: qsTr("") horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter Layout.alignment: Qt.AlignCenter wrapMode: Text.WordWrap Layout.preferredWidth: parent.width font.pixelSize: 20 } Button { Layout.alignment: Qt.AlignCenter id: signupRegisterButton text: qsTr("Register") enabled: false font.pointSize: 16 // @disable-check M223 onClicked: { // @disable-check M222 signupRegisterButton.activate() } // @disable-check M222 function activate() { // @disable-check M223 if (signupRegisterButton.enabled) { // @disable-check M222 _qmlHandler.onSignupRegisterButton( signupUsernameInput.text, signupPasswordOneInput.text, signupPasswordTwoInput.text, signupSetDefaultCheckbox.checked) } } } } }