mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-06-02 13:44:43 +08:00
Merge branch 'main' into PP-511-Method-5-9-Rebased
This commit is contained in:
commit
64b21e17fd
@ -127,13 +127,12 @@ class QualityManagementModel(ListModel):
|
||||
# have no container for the global stack, because "my_profile" just got renamed to "my_new_profile". This results
|
||||
# in crashes because the rest of the system assumes that all data in a QualityChangesGroup will be correct.
|
||||
#
|
||||
# Renaming the container for the global stack in the end seems to be ok, because the assumption is mostly based
|
||||
# on the quality changes container for the global stack.
|
||||
# This is why we use the "supress_signals" flag for the set name. This basically makes the change silent.
|
||||
for metadata in quality_changes_group.metadata_per_extruder.values():
|
||||
extruder_container = cast(InstanceContainer, container_registry.findContainers(id = metadata["id"])[0])
|
||||
extruder_container.setName(new_name)
|
||||
extruder_container.setName(new_name, supress_signals=True)
|
||||
global_container = cast(InstanceContainer, container_registry.findContainers(id = quality_changes_group.metadata_for_global["id"])[0])
|
||||
global_container.setName(new_name)
|
||||
global_container.setName(new_name, supress_signals=True)
|
||||
|
||||
quality_changes_group.name = new_name
|
||||
|
||||
|
@ -197,7 +197,8 @@ class CuraEngineBackend(QObject, Backend):
|
||||
self._slicing_error_message.actionTriggered.connect(self._reportBackendError)
|
||||
|
||||
self._resetLastSliceTimeStats()
|
||||
self._snapshot: Optional[QImage] = None
|
||||
self._snapshot: Optional[QImage] = None
|
||||
self._last_socket_error: Optional[Arcus.Error] = None
|
||||
|
||||
application.initializationFinished.connect(self.initialize)
|
||||
|
||||
@ -569,7 +570,19 @@ class CuraEngineBackend(QObject, Backend):
|
||||
return
|
||||
|
||||
# Preparation completed, send it to the backend.
|
||||
self._socket.sendMessage(job.getSliceMessage())
|
||||
if not self._socket.sendMessage(job.getSliceMessage()):
|
||||
if self._last_socket_error is not None and self._last_socket_error.getErrorCode() == Arcus.ErrorCode.MessageTooBigError:
|
||||
error_txt = catalog.i18nc("@info:status", "Unable to send the model data to the engine. Please try to use a less detailed model, or reduce the number of instances.")
|
||||
else:
|
||||
error_txt = catalog.i18nc("@info:status", "Unable to send the model data to the engine. Please try again, or contact support.")
|
||||
|
||||
self._error_message = Message(error_txt,
|
||||
title=catalog.i18nc("@info:title", "Unable to slice"),
|
||||
message_type=Message.MessageType.WARNING)
|
||||
self._error_message.show()
|
||||
self.setState(BackendState.Error)
|
||||
self.backendError.emit(job)
|
||||
return
|
||||
|
||||
# Notify the user that it's now up to the backend to do its job
|
||||
self.setState(BackendState.Processing)
|
||||
@ -691,6 +704,7 @@ class CuraEngineBackend(QObject, Backend):
|
||||
if error.getErrorCode() == Arcus.ErrorCode.Debug:
|
||||
return
|
||||
|
||||
self._last_socket_error = error
|
||||
self._terminate()
|
||||
self._createSocket()
|
||||
|
||||
|
@ -70,14 +70,12 @@
|
||||
"machine_max_feedrate_e": { "default_value": 45 },
|
||||
"material_bed_temperature":
|
||||
{
|
||||
"maximum_value": "140",
|
||||
"maximum_value_warning": "120",
|
||||
"maximum_value": "120",
|
||||
"minimum_value": "0"
|
||||
},
|
||||
"material_bed_temperature_layer_0":
|
||||
{
|
||||
"maximum_value": "140",
|
||||
"maximum_value_warning": "120",
|
||||
"maximum_value": "120",
|
||||
"minimum_value": "0"
|
||||
},
|
||||
"material_print_temp_wait": { "value": false },
|
||||
|
Loading…
x
Reference in New Issue
Block a user