Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaime van Kessel <nallath@gmail.com>2021-12-13 16:15:16 +0300
committerJaime van Kessel <nallath@gmail.com>2021-12-13 16:15:16 +0300
commit62f99a28b31e1d0fec01151f3413abf36a3b9e09 (patch)
treec425031759c5d3d4c719eea123652990dd05c6e6 /plugins/Marketplace/resources
parent4b358496d916f0e99087bf11725bb05a2674abca (diff)
Simplify the update logic in the package model / card
CURA-8587
Diffstat (limited to 'plugins/Marketplace/resources')
-rw-r--r--plugins/Marketplace/resources/qml/PackageCardHeader.qml41
1 files changed, 8 insertions, 33 deletions
diff --git a/plugins/Marketplace/resources/qml/PackageCardHeader.qml b/plugins/Marketplace/resources/qml/PackageCardHeader.qml
index 55a4ae8731..96335ecc9d 100644
--- a/plugins/Marketplace/resources/qml/PackageCardHeader.qml
+++ b/plugins/Marketplace/resources/qml/PackageCardHeader.qml
@@ -207,18 +207,15 @@ Item
id: installManageButton
visible: (showManageButtons || confirmed) && ((packageData.isBundled && packageData.canDowngrade) || !packageData.isBundled) && !updateManageButton.confirmed
enabled: !updateManageButton.busy
-
- confirmed: packageData.isRecentlyInstalledChanged
-
- button_style: confirmed ? packageData.isInstalled : !packageData.isInstalled
+ busy: packageData.busy
+ button_style: !packageData.isInstalled
Layout.alignment: Qt.AlignTop
text:
{
- if (button_style)
+ if (!packageData.isInstalled)
{
if (busy) { return catalog.i18nc("@button", "Installing..."); }
- else if (confirmed) { return catalog.i18nc("@button", "Installed"); }
else { return catalog.i18nc("@button", "Install"); }
}
else
@@ -226,41 +223,19 @@ Item
if (packageData.canDowngrade)
{
if (busy) { return catalog.i18nc("@button", "Downgrading..."); }
- else if (confirmed) { return catalog.i18nc("@button", "Downgraded"); }
else { return catalog.i18nc("@button", "Downgrade"); }
}
else
{
- if (busy) { return catalog.i18nc("@button", "Uninstalling..."); }
- else if (confirmed) { return catalog.i18nc("@button", "Uninstalled"); }
- else { return catalog.i18nc("@button", "Uninstall"); }
+ return catalog.i18nc("@button", "Uninstall");
}
}
}
onClicked:
{
- busy = true
- if (packageData.isInstalled){ packageData.installPackageTriggered(packageData.packageId, packageData.downloadURL); }
- else { packageData.uninstallPackageTriggered(packageData.packageId); }
- }
-
- Connections
- {
- target: packageData
-
- function onInstalledPackagesChanged(success)
- {
- installManageButton.busy = false;
- installManageButton.confirmed = success;
- }
- function onUninstalledPackagesChanged(success)
- {
- installManageButton.busy = false;
- installManageButton.confirmed = success;
- installManageButton.button_style = !installManageButton.button_style;
- }
-
+ if (packageData.isInstalled){ packageData.uninstall() }
+ else { packageData.install()}
}
}
@@ -284,7 +259,7 @@ Item
onClicked:
{
- busy = true;
+ busy = true
packageData.updatePackageTriggered(packageData.packageId);
}
@@ -292,7 +267,7 @@ Item
{
target: packageData
- function onUpdatePackagesChanged(succes)
+ function updated(succes)
{
updateManageButton.busy = false;
updateManageButton.confirmed = succes;