mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00
PerObject tool is now disabled when group or multiple objects are selected
CURA-2287
This commit is contained in:
parent
8b4cdedd89
commit
e67f5bdd44
1 changed files with 11 additions and 1 deletions
|
@ -22,6 +22,7 @@ class PerObjectSettingsTool(Tool):
|
|||
|
||||
self._advanced_mode = False
|
||||
self._multi_extrusion = False
|
||||
self._single_model_selected = False
|
||||
|
||||
Selection.selectionChanged.connect(self.propertyChanged)
|
||||
|
||||
|
@ -30,6 +31,8 @@ class PerObjectSettingsTool(Tool):
|
|||
|
||||
Application.getInstance().globalContainerStackChanged.connect(self._onGlobalContainerChanged)
|
||||
self._onGlobalContainerChanged()
|
||||
Selection.selectionChanged.connect(self._updateEnabled)
|
||||
|
||||
|
||||
def event(self, event):
|
||||
super().event(event)
|
||||
|
@ -102,4 +105,11 @@ class PerObjectSettingsTool(Tool):
|
|||
self._updateEnabled()
|
||||
|
||||
def _updateEnabled(self):
|
||||
Application.getInstance().getController().toolEnabledChanged.emit(self._plugin_id, self._advanced_mode or self._multi_extrusion)
|
||||
selected_objects = Selection.getAllSelectedObjects()
|
||||
if len(selected_objects)> 1:
|
||||
self._single_model_selected = False
|
||||
elif len(selected_objects) == 1 and selected_objects[0].callDecoration("isGroup"):
|
||||
self._single_model_selected = False # Group is selected, so tool needs to be disabled
|
||||
else:
|
||||
self._single_model_selected = True
|
||||
Application.getInstance().getController().toolEnabledChanged.emit(self._plugin_id, (self._advanced_mode or self._multi_extrusion) and self._single_model_selected)
|
Loading…
Add table
Add a link
Reference in a new issue