MissingPackageList.py 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. # Copyright (c) 2022 Ultimaker B.V.
  2. # Cura is released under the terms of the LGPLv3 or higher.
  3. from typing import Optional, TYPE_CHECKING, Dict, List
  4. from .Constants import PACKAGES_URL
  5. from .PackageModel import PackageModel
  6. from .RemotePackageList import RemotePackageList
  7. from PyQt6.QtCore import pyqtSignal, QObject, pyqtProperty, QCoreApplication
  8. from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To request the package list from the API.
  9. from UM.i18n import i18nCatalog
  10. if TYPE_CHECKING:
  11. from PyQt6.QtCore import QObject, pyqtProperty, pyqtSignal
  12. catalog = i18nCatalog("cura")
  13. class MissingPackageList(RemotePackageList):
  14. def __init__(self, parent: Optional["QObject"] = None) -> None:
  15. super().__init__(parent)
  16. self._package_metadata: List[Dict[str, str]] = []
  17. # self.packageTypeFilter = None # This will be our new filter
  18. self._package_type_filter = "material"
  19. def setPackageIds(self, packages: List[Dict[str, str]]) -> None:
  20. self._package_metadata = packages
  21. search_string = ", ".join(map(lambda package: package["id"], packages))
  22. # self.setSearchString(search_string)
  23. self.setSearchString("ABS")