mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-15 10:47:49 -06:00
Only show Footer when the packagelist is paginated
It doesn't make sense to show a footer when items are retrieved in one go. Except when an error occurs. Contributes to CURA-8558
This commit is contained in:
parent
c4c99f6657
commit
3f700e5d0c
3 changed files with 9 additions and 1 deletions
|
@ -5,6 +5,7 @@ from PyQt5.QtCore import pyqtSlot, Qt
|
|||
from typing import TYPE_CHECKING
|
||||
|
||||
from UM.i18n import i18nCatalog
|
||||
from UM.Logger import Logger
|
||||
|
||||
from cura.CuraApplication import CuraApplication
|
||||
|
||||
|
@ -23,6 +24,7 @@ class LocalPackageList(PackageList):
|
|||
def __init__(self, parent: "QObject" = None) -> None:
|
||||
super().__init__(parent)
|
||||
self._application = CuraApplication.getInstance()
|
||||
self._has_footer = False
|
||||
|
||||
@pyqtSlot()
|
||||
def updatePackages(self) -> None:
|
||||
|
|
|
@ -22,6 +22,7 @@ class PackageList(ListModel):
|
|||
self.addRoleName(self.PackageRole, "package")
|
||||
self._is_loading = False
|
||||
self._has_more = False
|
||||
self._has_footer = True
|
||||
|
||||
@pyqtSlot()
|
||||
def updatePackages(self) -> None:
|
||||
|
@ -85,3 +86,7 @@ class PackageList(ListModel):
|
|||
:return: An error message, if any, or an empty string if everything went okay.
|
||||
"""
|
||||
return self._error_message
|
||||
|
||||
@pyqtProperty(bool, constant = True)
|
||||
def hasFooter(self) -> bool:
|
||||
return self._has_footer
|
||||
|
|
|
@ -71,7 +71,8 @@ ScrollView
|
|||
footer: Item
|
||||
{
|
||||
width: parent.width
|
||||
height: UM.Theme.getSize("card").height + packagesListview.spacing
|
||||
height: model.hasFooter || packages.model.errorMessage != "" ? UM.Theme.getSize("card").height + packagesListview.spacing : 0
|
||||
visible: model.hasFooter || packages.model.errorMessage != ""
|
||||
Button
|
||||
{
|
||||
id: loadMoreButton
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue