Refactored the onConfirmClicked function. Added the ability to auto-dismiss the incompatible packages. Changed the button text depending on the displayed list

This commit is contained in:
Dimitriovski 2020-01-24 15:39:58 +01:00
parent 05e17843c6
commit 38c7d80f82
No known key found for this signature in database
GPG Key ID: 4E62757E2B0D304D
2 changed files with 10 additions and 5 deletions

View File

@ -20,6 +20,8 @@ UM.Dialog{
maximumHeight: minimumHeight
margin: 0
property string buttonText: subscribedPackagesModel.hasIncompatiblePackages && !subscribedPackagesModel.hasCompatiblePackages ? "Dismiss" : "Next"
Rectangle
{
id: root
@ -138,7 +140,7 @@ UM.Dialog{
anchors.bottom: parent.bottom
anchors.right: parent.right
anchors.margins: UM.Theme.getSize("default_margin").height
text: catalog.i18nc("@button", "Next")
text: catalog.i18nc("@button", buttonText)
onClicked: accept()
leftPadding: UM.Theme.getSize("dialog_primary_button_padding").width
rightPadding: UM.Theme.getSize("dialog_primary_button_padding").width

View File

@ -29,9 +29,12 @@ class DiscrepanciesPresenter(QObject):
self._dialog.accepted.connect(lambda: self._onConfirmClicked(model))
def _onConfirmClicked(self, model: SubscribedPackagesModel) -> None:
# For now, all compatible packages presented to the user should be installed.
# Later, we might remove items for which the user unselected the package
# If there are incompatible packages - automatically dismiss them
if model.getIncompatiblePackages():
self._package_manager.dismissAllIncompatiblePackages(model.getIncompatiblePackages())
model.setItems(model.getCompatiblePackages())
self.packageMutations.emit(model) # #### proveri sho e ova???
# For now, all compatible packages presented to the user should be installed.
# Later, we might remove items for which the user unselected the package
if model.getCompatiblePackages():
model.setItems(model.getCompatiblePackages())
self.packageMutations.emit(model) # #### proveri sho e ova???