diff --git a/Jellyfin.qml b/Jellyfin.qml index f1d574e..c4c0170 100644 --- a/Jellyfin.qml +++ b/Jellyfin.qml @@ -3,45 +3,30 @@ import fbx.application 1.0 import "Views" as View Application { - Column { + // Liste des labels et types + property var fields: [ + {label: "Server", type: "text"}, + {label: "User", type: "text"}, + {label: "Password", type: "password"} + ] + + Row { anchors.fill: parent spacing: 10 Rectangle { - // Logo left section - width: parent.width / 2 - 5 + width: parent.width / 3 - 5 + height: parent.height + + View.Logo {} + } + Rectangle { + width: parent.width / 3 * 2 - 5 height: parent.height color: "#000B25" - Image { - anchors.centerIn: parent - source: "icon.png" - } - } - - Rectangle { - // Grid View section to log user and setup the server link - width: parent.width / 2 - 5 - height: parent.height - - color: "blue" - - Text { - color: "orange" - text: "Connect to Jellyfin" - } - /* - GridView { - anchors.centerIn: parent - width: parent.width; height: parent.height - - model: View.Login {} - delegate: Column { - Text { text: name; anchors.horizontalCenter: parent.horizontalCenter } - } - } - */ + View.Login {} } } } diff --git a/Views/Login.qml b/Views/Login.qml index 67c7c3d..b9b6501 100644 --- a/Views/Login.qml +++ b/Views/Login.qml @@ -1,13 +1,38 @@ import QtQuick 2.5 -ListModel { - ListElement { - name: "Server" - } - ListElement { - name: "Username" - } - ListElement { - name: "Password" +Column { + anchors.fill: parent + anchors.margins: 20 + spacing: 15 + + // Repeater pour générer les champs basés sur la liste des labels et types + Repeater { + model: fields + + Row { + width: parent.width + spacing: 10 + + Text { + text: modelData.label + ":" + width: 100 + color: "white" + verticalAlignment: Text.AlignVCenter + font.pixelSize: 16 + } + + // TextInput pour les champs Server et User, et mode Password pour Password + TextInput { + width: parent.width - 110 + height: 30 + font.pixelSize: 16 + color: "white" + text: modelData.label + + // Détermine le mode de saisie en fonction du type + echoMode: modelData.type === "password" ? TextInput.Password : TextInput.Normal + //echoMode: TextInput.Password + } + } } } diff --git a/Views/Logo.qml b/Views/Logo.qml new file mode 100644 index 0000000..d21787a --- /dev/null +++ b/Views/Logo.qml @@ -0,0 +1,14 @@ +import QtQuick 2.5 + +// Display the logo +Rectangle { + width: parent.width + height: parent.height + + color: "#000B25" + + Image { + anchors.centerIn: parent + source: "../icon.png" + } +} diff --git a/icon.png b/icon.png index 1135355..65095ff 100644 Binary files a/icon.png and b/icon.png differ