mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-14 05:55:53 +08:00
Update disallowed area when object's extruder is changed
This calls _updateDisallowedAreas() but not rebuild(), so the change is not visible at this moment. Contributes to issue CURA-2625.
This commit is contained in:
parent
60c8933906
commit
2492b03c4f
@ -110,6 +110,9 @@ class BuildVolume(SceneNode):
|
||||
per_mesh_stack = node.callDecoration("getStack")
|
||||
if per_mesh_stack:
|
||||
per_mesh_stack.propertyChanged.disconnect(self._onSettingPropertyChanged)
|
||||
active_extruder_changed = node.callDecoration("getActiveExtruderChangedSignal")
|
||||
if active_extruder_changed is not None:
|
||||
node.callDecoration("getActiveExtruderChangedSignal").disconnect(self._updateDisallowedAreas)
|
||||
node.decoratorsChanged.disconnect(self._onNodeDecoratorChanged)
|
||||
|
||||
self._scene_objects = new_scene_objects
|
||||
@ -122,6 +125,10 @@ class BuildVolume(SceneNode):
|
||||
per_mesh_stack = node.callDecoration("getStack")
|
||||
if per_mesh_stack:
|
||||
per_mesh_stack.propertyChanged.connect(self._onSettingPropertyChanged)
|
||||
active_extruder_changed = node.callDecoration("getActiveExtruderChangedSignal")
|
||||
if active_extruder_changed is not None:
|
||||
active_extruder_changed.connect(self._updateDisallowedAreas)
|
||||
self._updateDisallowedAreas()
|
||||
|
||||
def setWidth(self, width):
|
||||
if width: self._width = width
|
||||
|
@ -61,6 +61,12 @@ class SettingOverrideDecorator(SceneNodeDecorator):
|
||||
def getActiveExtruder(self):
|
||||
return self._extruder_stack
|
||||
|
||||
## Gets the signal that emits if the active extruder changed.
|
||||
#
|
||||
# This can then be accessed via a decorator.
|
||||
def getActiveExtruderChangedSignal(self):
|
||||
return self.activeExtruderChanged
|
||||
|
||||
## Gets the currently active extruders position
|
||||
#
|
||||
# \return An extruder's position, or None if no position info is available.
|
||||
|
Loading…
x
Reference in New Issue
Block a user