Merge branch '4.0' of github.com:Ultimaker/Cura into 4.0

This commit is contained in:
Diego Prado Gesto 2019-02-15 13:40:08 +01:00
commit 21bc8d7990
4 changed files with 14 additions and 7 deletions

View file

@ -44,7 +44,7 @@ class PrinterOutputModel(QObject):
self._printer_state = "unknown"
self._is_preheating = False
self._printer_type = ""
self._buildplate_name = ""
self._buildplate = ""
self._printer_configuration.extruderConfigurations = [extruder.extruderConfiguration for extruder in
self._extruders]
@ -86,12 +86,12 @@ class PrinterOutputModel(QObject):
@pyqtProperty(str, notify = buildplateChanged)
def buildplate(self) -> str:
return self._buildplate_name
return self._buildplate
def updateBuildplateName(self, buildplate_name: str) -> None:
if self._buildplate_name != buildplate_name:
self._buildplate_name = buildplate_name
self._printer_configuration.buildplateConfiguration = self._buildplate_name
def updateBuildplate(self, buildplate: str) -> None:
if self._buildplate != buildplate:
self._buildplate = buildplate
self._printer_configuration.buildplateConfiguration = self._buildplate
self.buildplateChanged.emit()
self.configurationChanged.emit()

View file

@ -31,4 +31,10 @@ def call_on_qt_thread(func):
CuraApplication.getInstance().callLater(_handle_call, *new_args, **kwargs)
inter_call_object.finish_event.wait()
return inter_call_object.result
# If the current thread is the main thread, which is the Qt thread, directly return the function.
current_thread = threading.current_thread()
if isinstance(current_thread, threading._MainThread):
return func
return _call_on_qt_thread_wrapper

View file

@ -65,6 +65,7 @@ class CloudClusterPrinterStatus(BaseCloudModel):
model.updateName(self.friendly_name)
model.updateType(self.machine_variant)
model.updateState(self.status if self.enabled else "disabled")
model.updateBuildplate(self.build_plate.type if self.build_plate else "glass")
for configuration, extruder_output, extruder_config in \
zip(self.configuration, model.extruders, model.printerConfiguration.extruderConfigurations):

View file

@ -627,7 +627,7 @@ class ClusterUM3OutputDevice(NetworkedPrinterOutputDevice):
# Do not store the build plate information that comes from connect if the current printer has not build plate information
if "build_plate" in data and machine_definition.getMetaDataEntry("has_variant_buildplates", False):
printer.updateBuildplateName(data["build_plate"]["type"])
printer.updateBuildplate(data["build_plate"]["type"])
if not data["enabled"]:
printer.updateState("disabled")
else: