mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 14:37:29 -06:00
use notify to update exportedSettingModel
This commit is contained in:
parent
40bc08f482
commit
a58cd69b39
3 changed files with 8 additions and 3 deletions
|
@ -1,7 +1,7 @@
|
|||
# Copyright (c) 2024 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from PyQt6.QtCore import Qt
|
||||
from PyQt6.QtCore import Qt, pyqtSignal
|
||||
|
||||
from UM.Logger import Logger
|
||||
from UM.Settings.SettingDefinition import SettingDefinition
|
||||
|
@ -22,6 +22,8 @@ class SpecificSettingsModel(ListModel):
|
|||
self._i18n_catalog = None
|
||||
self._update()
|
||||
|
||||
modelChanged = pyqtSignal()
|
||||
|
||||
|
||||
def addSettingsFromStack(self, stack, category, settings):
|
||||
for setting, value in settings.items():
|
||||
|
@ -39,8 +41,10 @@ class SpecificSettingsModel(ListModel):
|
|||
"label": stack.getProperty(setting, "label"),
|
||||
"value": value
|
||||
})
|
||||
self.modelChanged.emit()
|
||||
|
||||
def _update(self):
|
||||
Logger.debug(f"Updating {self.__class__.__name__}")
|
||||
self.setItems([])
|
||||
self.modelChanged.emit()
|
||||
return
|
||||
|
|
|
@ -77,6 +77,7 @@ class WorkspaceDialog(QObject):
|
|||
self._is_compatible_machine = False
|
||||
self._allow_create_machine = True
|
||||
self._exported_settings_model = SpecificSettingsModel()
|
||||
self._exported_settings_model.modelChanged.connect(self.exportedSettingModelChanged.emit)
|
||||
self._current_machine_pos_index = 0
|
||||
self._is_ucp = False
|
||||
|
||||
|
@ -104,6 +105,7 @@ class WorkspaceDialog(QObject):
|
|||
missingPackagesChanged = pyqtSignal()
|
||||
isCompatibleMachineChanged = pyqtSignal()
|
||||
isUcpChanged = pyqtSignal()
|
||||
exportedSettingModelChanged = pyqtSignal()
|
||||
|
||||
@pyqtProperty(bool, notify = isPrinterGroupChanged)
|
||||
def isPrinterGroup(self) -> bool:
|
||||
|
@ -356,7 +358,7 @@ class WorkspaceDialog(QObject):
|
|||
def allowCreateMachine(self):
|
||||
return self._allow_create_machine
|
||||
|
||||
@pyqtProperty(QObject)
|
||||
@pyqtProperty(QObject, notify=exportedSettingModelChanged)
|
||||
def exportedSettingModel(self):
|
||||
return self._exported_settings_model
|
||||
|
||||
|
|
|
@ -205,7 +205,6 @@ UM.Dialog
|
|||
{
|
||||
tableModel.clear()
|
||||
tableModel.rows = modelRows
|
||||
numberOfOverrides.rightLabelText = catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.exportedSettingModel.rowCount()).arg(manager.exportedSettingModel.rowCount())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue