mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-07 06:57:28 -06:00
Use API endpoint for requesting package_ids
Use new api endpoint for requesting specific package_ids so we don't have to filter ourselves. CURA-6990
This commit is contained in:
parent
b015617e13
commit
9c02f6500d
3 changed files with 6 additions and 12 deletions
|
@ -26,8 +26,7 @@ class InstallMissingPackageDialog(QObject):
|
||||||
self._restart_needed = False
|
self._restart_needed = False
|
||||||
self._package_metadata: List[Dict[str, str]] = packages_metadata
|
self._package_metadata: List[Dict[str, str]] = packages_metadata
|
||||||
|
|
||||||
self._package_model = MissingPackageList()
|
self._package_model = MissingPackageList(packages_metadata)
|
||||||
self._package_model.setPackageIds(packages_metadata)
|
|
||||||
|
|
||||||
def show(self):
|
def show(self):
|
||||||
plugin_path = self._plugin_registry.getPluginPath("Marketplace")
|
plugin_path = self._plugin_registry.getPluginPath("Marketplace")
|
||||||
|
|
|
@ -17,16 +17,10 @@ if TYPE_CHECKING:
|
||||||
catalog = i18nCatalog("cura")
|
catalog = i18nCatalog("cura")
|
||||||
|
|
||||||
class MissingPackageList(RemotePackageList):
|
class MissingPackageList(RemotePackageList):
|
||||||
def __init__(self, parent: Optional["QObject"] = None) -> None:
|
def __init__(self, packages: List[Dict[str, str]], parent: Optional["QObject"] = None) -> None:
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
self._package_metadata: List[Dict[str, str]] = []
|
self._package_metadata: List[Dict[str, str]] = []
|
||||||
# self.packageTypeFilter = None # This will be our new filter
|
# self.packageTypeFilter = None # This will be our new filter
|
||||||
self._package_type_filter = "material"
|
self._package_type_filter = "material"
|
||||||
|
self._search_type = "package_ids"
|
||||||
def setPackageIds(self, packages: List[Dict[str, str]]) -> None:
|
self._requested_search_string = ",".join(map(lambda package: package["id"], packages))
|
||||||
self._package_metadata = packages
|
|
||||||
search_string = ", ".join(map(lambda package: package["id"], packages))
|
|
||||||
# self.setSearchString(search_string)
|
|
||||||
self.setSearchString("ABS")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,7 @@ class RemotePackageList(PackageList):
|
||||||
self._package_type_filter = ""
|
self._package_type_filter = ""
|
||||||
self._requested_search_string = ""
|
self._requested_search_string = ""
|
||||||
self._current_search_string = ""
|
self._current_search_string = ""
|
||||||
|
self._search_type = "search"
|
||||||
self._request_url = self._initialRequestUrl()
|
self._request_url = self._initialRequestUrl()
|
||||||
self._ongoing_requests["get_packages"] = None
|
self._ongoing_requests["get_packages"] = None
|
||||||
self.isLoadingChanged.connect(self._onLoadingChanged)
|
self.isLoadingChanged.connect(self._onLoadingChanged)
|
||||||
|
@ -100,7 +101,7 @@ class RemotePackageList(PackageList):
|
||||||
if self._package_type_filter != "":
|
if self._package_type_filter != "":
|
||||||
request_url += f"&package_type={self._package_type_filter}"
|
request_url += f"&package_type={self._package_type_filter}"
|
||||||
if self._current_search_string != "":
|
if self._current_search_string != "":
|
||||||
request_url += f"&search={self._current_search_string}"
|
request_url += f"&{self._search_type}={self._current_search_string}"
|
||||||
return request_url
|
return request_url
|
||||||
|
|
||||||
def _parseResponse(self, reply: "QNetworkReply") -> None:
|
def _parseResponse(self, reply: "QNetworkReply") -> None:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue