Merge pull request #11536 from Ultimaker/CURA-8834_marketplace_packages_install_status_in_list

Show install, uninstall & disable buttons in packages list
This commit is contained in:
Casper Lamboo 2022-02-24 13:39:49 +01:00 committed by GitHub
commit 9fa6698da3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 27 additions and 15 deletions

View File

@ -117,9 +117,6 @@ class RemotePackageList(PackageList):
return return
for package_data in response_data["data"]: for package_data in response_data["data"]:
package_id = package_data["package_id"]
if package_id in self._package_manager.local_packages_ids:
continue # We should only show packages which are not already installed
try: try:
package = PackageModel(package_data, parent = self) package = PackageModel(package_data, parent = self)
self._connectManageButtonSignals(package) self._connectManageButtonSignals(package)

View File

@ -19,7 +19,8 @@ Packages
bannerVisible = false; bannerVisible = false;
} }
searchInBrowserUrl: "https://marketplace.ultimaker.com/app/cura/plugins?utm_source=cura&utm_medium=software&utm_campaign=marketplace-search-plugins-browser" searchInBrowserUrl: "https://marketplace.ultimaker.com/app/cura/plugins?utm_source=cura&utm_medium=software&utm_campaign=marketplace-search-plugins-browser"
packagesManageableInListView: true showUpdateButton: true
showInstallButton: true
showDisableButton: true
model: manager.LocalPackageList model: manager.LocalPackageList
} }

View File

@ -16,7 +16,8 @@ Packages
bannerVisible = false; bannerVisible = false;
} }
searchInBrowserUrl: "https://marketplace.ultimaker.com/app/cura/materials?utm_source=cura&utm_medium=software&utm_campaign=marketplace-search-materials-browser" searchInBrowserUrl: "https://marketplace.ultimaker.com/app/cura/materials?utm_source=cura&utm_medium=software&utm_campaign=marketplace-search-materials-browser"
packagesManageableInListView: false showUpdateButton: true
showInstallButton: true
model: manager.MaterialPackageList model: manager.MaterialPackageList
} }

View File

@ -11,7 +11,9 @@ import Cura 1.6 as Cura
Rectangle Rectangle
{ {
property alias packageData: packageCardHeader.packageData property alias packageData: packageCardHeader.packageData
property alias manageableInListView: packageCardHeader.showManageButtons property alias showUpdateButton: packageCardHeader.showUpdateButton
property alias showDisableButton: packageCardHeader.showDisableButton
property alias showInstallButton: packageCardHeader.showInstallButton
height: childrenRect.height height: childrenRect.height
color: UM.Theme.getColor("main_background") color: UM.Theme.getColor("main_background")

View File

@ -15,7 +15,10 @@ Item
default property alias contents: contentItem.children default property alias contents: contentItem.children
property var packageData property var packageData
property bool showManageButtons: false property bool showDisableButton: false
property bool showInstallButton: false
property bool showUpdateButton: false
width: parent.width width: parent.width
height: UM.Theme.getSize("card").height height: UM.Theme.getSize("card").height
@ -170,7 +173,7 @@ Item
ManageButton ManageButton
{ {
id: enableManageButton id: enableManageButton
visible: showManageButtons && packageData.isInstalled && !packageData.isToBeInstalled && packageData.packageType != "material" visible: showDisableButton && packageData.isInstalled && !packageData.isToBeInstalled && packageData.packageType != "material"
enabled: !packageData.busy enabled: !packageData.busy
button_style: !packageData.isActive button_style: !packageData.isActive
@ -184,7 +187,7 @@ Item
ManageButton ManageButton
{ {
id: installManageButton id: installManageButton
visible: showManageButtons && (packageData.canDowngrade || !packageData.isBundled) visible: showInstallButton && (packageData.canDowngrade || !packageData.isBundled)
enabled: !packageData.busy enabled: !packageData.busy
busy: packageData.busy busy: packageData.busy
button_style: !(packageData.isInstalled || packageData.isToBeInstalled) button_style: !(packageData.isInstalled || packageData.isToBeInstalled)
@ -214,7 +217,7 @@ Item
ManageButton ManageButton
{ {
id: updateManageButton id: updateManageButton
visible: showManageButtons && packageData.canUpdate visible: showUpdateButton && packageData.canUpdate
enabled: !packageData.busy enabled: !packageData.busy
busy: packageData.busy busy: packageData.busy
Layout.alignment: Qt.AlignTop Layout.alignment: Qt.AlignTop

View File

@ -31,7 +31,9 @@ Rectangle
PackageCardHeader PackageCardHeader
{ {
id: packageCardHeader id: packageCardHeader
showManageButtons: true showUpdateButton: true
showInstallButton: true
showDisableButton: true
anchors.fill: parent anchors.fill: parent

View File

@ -19,7 +19,10 @@ ListView
property string bannerText property string bannerText
property string bannerReadMoreUrl property string bannerReadMoreUrl
property var onRemoveBanner property var onRemoveBanner
property bool packagesManageableInListView
property bool showUpdateButton
property bool showDisableButton
property bool showInstallButton
clip: true clip: true
@ -81,7 +84,9 @@ ListView
PackageCard PackageCard
{ {
manageableInListView: packages.packagesManageableInListView showUpdateButton: packages.showUpdateButton
showDisableButton: packages.showDisableButton
showInstallButton: packages.showInstallButton
packageData: model.package packageData: model.package
width: { width: {
if (verticalScrollBar.visible) if (verticalScrollBar.visible)

View File

@ -16,7 +16,8 @@ Packages
bannerVisible = false; bannerVisible = false;
} }
searchInBrowserUrl: "https://marketplace.ultimaker.com/app/cura/plugins?utm_source=cura&utm_medium=software&utm_campaign=marketplace-search-plugins-browser" searchInBrowserUrl: "https://marketplace.ultimaker.com/app/cura/plugins?utm_source=cura&utm_medium=software&utm_campaign=marketplace-search-plugins-browser"
packagesManageableInListView: false showUpdateButton: true
showInstallButton: true
model: manager.PluginPackageList model: manager.PluginPackageList
} }