Update ContentView to show selected show metadata

This commit is contained in:
2022-08-31 21:28:02 -04:00
parent 60676ffde9
commit 6b54653572
3 changed files with 65 additions and 19 deletions
+4
View File
@@ -32,6 +32,10 @@ class Show(QObject):
def year(self) -> int: def year(self) -> int:
return self._source["year"] return self._source["year"]
@pyqtProperty("QString")
def description(self) -> str:
return self._source["description"]
@pyqtProperty(int) @pyqtProperty(int)
def episodes(self) -> int: def episodes(self) -> int:
return self._source["episodes"] return self._source["episodes"]
+48 -13
View File
@@ -30,20 +30,55 @@ TabView {
width: 40 width: 40
} }
Column { Column {
spacing: 20 Row {
Element { Item {
title: "In Progress" height: parent.height
provider: modelData width: 16
repeaterModel: modelData.inProgress }
elemSelected: viewSelected && (0 == ySelect) Column {
xIndex: xSelect spacing: 20
Item {
height: 20
width: parent.width
}
Text {
text: elementColumn.children[ySelect].provider.getShow(xSelect).title
font.pointSize: 30
color: "#cdd7d9"
}
Text {
text: elementColumn.children[ySelect].provider.getShow(xSelect).year
font.pointSize: 15
color: "#99afb4"
}
Text {
text: elementColumn.children[ySelect].provider.getShow(xSelect).description
font.pointSize: 13
color: "#cdd7d9"
}
}
} }
Element { Item {
title: "Recently Added" height: 40
provider: modelData width: parent.width
repeaterModel: modelData.recentlyAdded }
elemSelected: viewSelected && (1 == ySelect) Column {
xIndex: xSelect id: elementColumn
spacing: 20
Element {
title: "In Progress"
provider: modelData
repeaterModel: modelData.inProgress
elemSelected: viewSelected && (0 == ySelect)
xIndex: xSelect
}
Element {
title: "Recently Added"
provider: modelData
repeaterModel: modelData.recentlyAdded
elemSelected: viewSelected && (1 == ySelect)
xIndex: xSelect
}
} }
} }
} }
+13 -6
View File
@@ -10,19 +10,26 @@ Column {
property int xIndex property int xIndex
Item { Item {
width: 10 width: 10
height: 40 height: 20
} }
Text { Row {
text: title Item {
font.pointSize: 30 height: parent.height
color: "white" width: 16
}
Text {
text: title
font.pointSize: 15
color: "#cdd7d9"
}
} }
Item { Item {
width: 10 width: 10
height: 40 height: 15
} }
Row { Row {
Repeater { Repeater {
id: repeater
property var provider: modelData property var provider: modelData
model: repeaterModel model: repeaterModel
Show { Show {