diff --git a/launchers/qt/resources/qml/DisplayName.qml b/launchers/qt/resources/qml/DisplayName.qml new file mode 100644 index 0000000000..af688e549e --- /dev/null +++ b/launchers/qt/resources/qml/DisplayName.qml @@ -0,0 +1,76 @@ +// login + +import QtQuick 2.3 +import QtQuick 2.1 +import "HFControls" + +Item { + id: root + anchors.fill: parent + Text { + id: title + width: 325 + height: 26 + font.family: "Graphik" + font.pixelSize: 28 + color: "#FFFFFF" + text: "Choose a display name" + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter + anchors { + top: root.top + topMargin: 29 + horizontalCenter: root.horizontalCenter + } + } + + Text { + id: instruction + width: 425 + height: 22 + font.family: "Graphik" + font.pixelSize: 14 + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter + color: "#C4C4C4" + text: "This is the name that your teammates will see." + anchors { + left: root.left + right: root.right + top: title.bottom + topMargin: 18 + } + } + + HFTextField { + id: password + width: 306 + height: 40 + font.family: "Graphik" + font.pixelSize: 18 + placeholderText: "Display Name" + color: "#808080" + seperatorColor: Qt.rgba(1, 1, 1, 0.3) + anchors { + top: instruction.bottom + horizontalCenter: instruction.horizontalCenter + topMargin: 79 + } + } + + HFButton { + id: button + width: 122 + height: 36 + + font.family: "Graphik" + font.pixelSize: 18 + text: "NEXT" + + anchors { + top: password.bottom + horizontalCenter: instruction.horizontalCenter + topMargin: 59 + } + } +} diff --git a/launchers/qt/resources/qml/Download.qml b/launchers/qt/resources/qml/Download.qml new file mode 100644 index 0000000000..011dbbe6cf --- /dev/null +++ b/launchers/qt/resources/qml/Download.qml @@ -0,0 +1,101 @@ +import QtQuick 2.3 +import QtQuick.Controls 2.1 + +Item { + id: root + anchors.fill: parent + + Image { + id: logo + width: 150 + height: 150 + source: "../images/HiFi_Voxel.png" + + anchors { + top: root.top + topMargin: 48 + horizontalCenter: root.horizontalCenter + } + + RotationAnimator { + target: logo; + loops: Animation.Infinite + from: 0; + to: 360; + duration: 5000 + running: true + } + } + + Text { + id: firstText + width: 300 + height: 41 + font.family: "Graphik" + font.pixelSize: 28 + text: "Setup will take a moment" + color: "#FFFFFF" + + anchors { + top: logo.bottom + topMargin: 46 + horizontalCenter: logo.horizontalCenter + } + } + + Text { + id: secondText + font.family: "Graphik" + font.pixelSize: 14 + text: "We're getting your headquaters ready" + color: "#FFFFFF" + + anchors { + top: firstText.bottom + topMargin: 14 + horizontalCenter: logo.horizontalCenter + } + } + + ProgressBar { + id: progressBar + width: 394 + height: 12 + + anchors { + top: secondText.bottom + topMargin: 30 + horizontalCenter: logo.horizontalCenter + } + + background: Rectangle { + implicitWidth: progressBar.width + implicitHeight: progressBar.height + radius: 4 + color: "#252525" + } + + contentItem: Item { + implicitWidth: progressBar.width + implicitHeight: progressBar.height * 0.90 + + Rectangle { + width: progressBar.visualPosition * parent.width + height: parent.height + radius: 3 + color: "#01B2ED" + } + } + + + PropertyAnimation { + target: progressBar; + loops: Animation.Infinite + property: "value" + from: 0; + to: 1; + duration: 5000 + running: true + } + } +} diff --git a/launchers/qt/resources/qml/HFControls/HFTextField.qml b/launchers/qt/resources/qml/HFControls/HFTextField.qml index b9317451d5..77a6601fdf 100644 --- a/launchers/qt/resources/qml/HFControls/HFTextField.qml +++ b/launchers/qt/resources/qml/HFControls/HFTextField.qml @@ -9,7 +9,6 @@ TextField { verticalAlignment: TextInput.AlignVCenter horizontalAlignment: TextInput.AlignLeft placeholderText: "PlaceHolder" - echoMode: TextInput.Password property string seperatorColor: "#FFFFFF" background: Item { anchors.fill: parent diff --git a/launchers/qt/resources/qml/Login.qml b/launchers/qt/resources/qml/Login.qml new file mode 100644 index 0000000000..fb4dd2367b --- /dev/null +++ b/launchers/qt/resources/qml/Login.qml @@ -0,0 +1,109 @@ +// login + +import QtQuick 2.3 +import QtQuick 2.1 +import "HFControls" + +Item { + id: root + anchors.fill: parent + Text { + id: title + width: 325 + height: 26 + font.family: "Graphik" + font.pixelSize: 28 + color: "#FFFFFF" + text: "Please Log in" + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter + anchors { + top: root.top + topMargin: 29 + horizontalCenter: root.horizontalCenter + } + } + + Text { + id: instruction + width: 425 + height: 22 + font.family: "Graphik" + font.pixelSize: 14 + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter + color: "#C4C4C4" + text: "Be sure you've uploaded your Avatar before signing in." + anchors { + left: root.left + right: root.right + top: title.bottom + topMargin: 18 + } + } + + HFTextField { + id: organization + width: 353 + height: 40 + font.family: "Graphik" + font.pixelSize: 18 + placeholderText: "Organization name" + color: "#808080" + seperatorColor: Qt.rgba(1, 1, 1, 0.3) + anchors { + top: instruction.bottom + horizontalCenter: instruction.horizontalCenter + topMargin: 24 + } + } + + HFTextField { + id: username + width: 353 + height: 40 + font.family: "Graphik" + font.pixelSize: 18 + placeholderText: "Username" + color: "#808080" + seperatorColor: Qt.rgba(1, 1, 1, 0.3) + anchors { + top: organization.bottom + horizontalCenter: instruction.horizontalCenter + topMargin: 28 + } + } + + HFTextField { + id: password + width: 353 + height: 40 + font.family: "Graphik" + font.pixelSize: 18 + placeholderText: "Password" + color: "#808080" + seperatorColor: Qt.rgba(1, 1, 1, 0.3) + echoMode: TextInput.Password + anchors { + top: username.bottom + horizontalCenter: instruction.horizontalCenter + topMargin: 28 + } + } + + HFButton { + id: button + width: 122 + height: 36 + + font.family: "Graphik" + font.pixelSize: 18 + text: "NEXT" + + anchors { + top: password.bottom + horizontalCenter: instruction.horizontalCenter + topMargin: 48 + } + } +} diff --git a/launchers/qt/resources/qml/root.qml b/launchers/qt/resources/qml/root.qml index 5a0e9fc5a4..0ceda5b189 100644 --- a/launchers/qt/resources/qml/root.qml +++ b/launchers/qt/resources/qml/root.qml @@ -11,7 +11,6 @@ Image { source: "../images/hifi_window@2x.png" Loader { - anchors.centerIn: parent anchors.fill: parent id: loader } diff --git a/launchers/qt/src/Launcher.cpp b/launchers/qt/src/Launcher.cpp index 64a3005b28..10d30a7285 100644 --- a/launchers/qt/src/Launcher.cpp +++ b/launchers/qt/src/Launcher.cpp @@ -11,6 +11,7 @@ Launcher::Launcher(int& argc, char**argv) : QGuiApplication(argc, argv) { QString resourceBinaryLocation = QGuiApplication::applicationDirPath() + "/resources.rcc"; QResource::registerResource(resourceBinaryLocation); _launcherState = std::make_shared(); + _launcherState->setUIState(LauncherState::DOWNLOAD_SCREEN); _launcherWindow = std::make_unique(); _launcherWindow->rootContext()->setContextProperty("LauncherState", _launcherState.get()); _launcherWindow->setFlags(Qt::FramelessWindowHint);