Move settings into a separate window, prepare YouAds component for a native rewrite
This commit is contained in:
279
ViewSettings.qml
279
ViewSettings.qml
@@ -4,170 +4,175 @@ import QtQuick.Controls.Basic 6.8
|
||||
import QtQuick.Layouts 6.8
|
||||
import QYRComponents 1.0
|
||||
|
||||
RowLayout {
|
||||
// Layout.leftMargin: parent.width * 2
|
||||
// Layout.rightMargin: parent.width * 2
|
||||
ApplicationWindow {
|
||||
width: 840
|
||||
height: 560
|
||||
visible: true
|
||||
title: qsTr("Settings")
|
||||
RowLayout {
|
||||
anchors.fill: parent
|
||||
|
||||
Container {
|
||||
id: settingsCategory
|
||||
Layout.fillWidth: false
|
||||
Layout.fillHeight: true
|
||||
Layout.rightMargin: 15
|
||||
Container {
|
||||
id: settingsCategory
|
||||
Layout.fillWidth: false
|
||||
Layout.fillHeight: true
|
||||
Layout.rightMargin: 15
|
||||
|
||||
implicitWidth: 240
|
||||
clip: true
|
||||
implicitWidth: 240
|
||||
clip: true
|
||||
|
||||
contentItem: ListView {
|
||||
spacing: 7.5
|
||||
model: settingsCategory.contentModel
|
||||
snapMode: ListView.SnapOneItem
|
||||
orientation: ListView.Vertical
|
||||
}
|
||||
contentItem: ListView {
|
||||
spacing: 7.5
|
||||
model: settingsCategory.contentModel
|
||||
snapMode: ListView.SnapOneItem
|
||||
orientation: ListView.Vertical
|
||||
}
|
||||
|
||||
|
||||
Button {
|
||||
text: qsTr("Appearance")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 0
|
||||
}
|
||||
Button {
|
||||
text: qsTr("Appearance")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 0
|
||||
}
|
||||
|
||||
Button {
|
||||
text: qsTr("Language")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 1
|
||||
}
|
||||
Button {
|
||||
text: qsTr("Language")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 1
|
||||
}
|
||||
|
||||
Button {
|
||||
text: qsTr("Playback Settings")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 2
|
||||
}
|
||||
Button {
|
||||
text: qsTr("Playback Settings")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 2
|
||||
}
|
||||
|
||||
Button {
|
||||
text: qsTr("About")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 3
|
||||
}
|
||||
}
|
||||
|
||||
SwipeView {
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: true
|
||||
orientation: Qt.Vertical
|
||||
interactive: false
|
||||
currentIndex: tabbar.currentIndex
|
||||
|
||||
Loader {
|
||||
active: tabbar.currentIndex == 0
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "Appearance"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
Button {
|
||||
text: qsTr("About")
|
||||
width: 240
|
||||
outlined: true
|
||||
onClicked: settingsCategory.currentIndex = 3
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
active: tabbar.currentIndex == 1
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "Language"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
SwipeView {
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: true
|
||||
orientation: Qt.Vertical
|
||||
interactive: true
|
||||
currentIndex: tabbar.currentIndex
|
||||
|
||||
Loader {
|
||||
// active: tabbar.currentIndex == 0
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "Appearance"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
active: tabbar.currentIndex == 2
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "Playback Settings"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
Loader {
|
||||
// active: tabbar.currentIndex == 1
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "Language"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
active: tabbar.currentIndex == 3
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "About"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
Loader {
|
||||
// active: tabbar.currentIndex == 2
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "Playback Settings"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "YouRadio"
|
||||
heading: "h2"
|
||||
font.bold: true
|
||||
}
|
||||
Loader {
|
||||
// active: tabbar.currentIndex == 3
|
||||
asynchronous: true
|
||||
visible: status == Loader.Ready
|
||||
sourceComponent: ColumnLayout {
|
||||
Label {
|
||||
text: "About"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "by Youpiter"
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "YouRadio"
|
||||
heading: "h2"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "Music source"
|
||||
heading: "base"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "by Youpiter"
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "QYouRadio"
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "by Ghostfox"
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "Music source"
|
||||
heading: "base"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "Client development"
|
||||
heading: "base"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "QYouRadio"
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "by Ghostfox"
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "Attribution"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "Client development"
|
||||
heading: "base"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "Qt"
|
||||
heading: "h2"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "Attribution"
|
||||
heading: "h1"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "by Qt Group Inc."
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
Label {
|
||||
text: "Qt"
|
||||
heading: "h2"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "Open-Source library on which QYouRadio is built uppon, licensed under LGPL-3.0"
|
||||
heading: "base"
|
||||
font.bold: true
|
||||
Label {
|
||||
text: "by Qt Group Inc."
|
||||
heading: "h3"
|
||||
font.bold: true
|
||||
}
|
||||
|
||||
Label {
|
||||
text: "Open-Source library on which QYouRadio is built uppon, licensed under LGPL-3.0"
|
||||
heading: "base"
|
||||
font.bold: true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user