From 5fe812b4a42455d1f0e902a0e6603832862a0941 Mon Sep 17 00:00:00 2001 From: Mark Date: Tue, 26 Jun 2018 15:29:35 +0200 Subject: [PATCH] Add downloadnumber to model and plugin view --- plugins/Toolbox/resources/qml/ToolboxDetailPage.qml | 12 ++++++++++++ plugins/Toolbox/src/PackagesModel.py | 5 ++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/plugins/Toolbox/resources/qml/ToolboxDetailPage.qml b/plugins/Toolbox/resources/qml/ToolboxDetailPage.qml index 120a422b53..4c6c8c6ba4 100644 --- a/plugins/Toolbox/resources/qml/ToolboxDetailPage.qml +++ b/plugins/Toolbox/resources/qml/ToolboxDetailPage.qml @@ -92,6 +92,12 @@ Item font: UM.Theme.getFont("very_small") color: UM.Theme.getColor("text_medium") } + Label + { + text: catalog.i18nc("@label", "Downloads") + ":" + font: UM.Theme.getFont("very_small") + color: UM.Theme.getColor("text_medium") + } } Column { @@ -138,6 +144,12 @@ Item linkColor: UM.Theme.getColor("text_link") onLinkActivated: Qt.openUrlExternally(link) } + Label + { + text: details.download_count || catalog.i18nc("@label", "Unknown") + font: UM.Theme.getFont("very_small") + color: UM.Theme.getColor("text") + } } Rectangle { diff --git a/plugins/Toolbox/src/PackagesModel.py b/plugins/Toolbox/src/PackagesModel.py index 2a3b169e87..8694619fde 100644 --- a/plugins/Toolbox/src/PackagesModel.py +++ b/plugins/Toolbox/src/PackagesModel.py @@ -32,6 +32,7 @@ class PackagesModel(ListModel): self.addRoleName(Qt.UserRole + 15, "is_installed") # Scheduled pkgs are included in the model but should not be marked as actually installed self.addRoleName(Qt.UserRole + 16, "has_configs") self.addRoleName(Qt.UserRole + 17, "supported_configs") + self.addRoleName(Qt.UserRole + 18, "download_count") # List of filters for queries. The result is the union of the each list of results. self._filter = {} # type: Dict[str, str] @@ -76,7 +77,9 @@ class PackagesModel(ListModel): "is_enabled": package["is_enabled"] if "is_enabled" in package else False, "is_installed": package["is_installed"] if "is_installed" in package else False, "has_configs": has_configs, - "supported_configs": configs_model + "supported_configs": configs_model, + "download_count": package["download_count"] if "download_count" in package else 0 + }) # Filter on all the key-word arguments.