Move the definition_changes fix to CuraContainerStack

CURA-5281
This commit is contained in:
Lipu Fei 2018-04-25 16:11:56 +02:00
parent 50e2db47c8
commit df1e15b1e5
2 changed files with 7 additions and 7 deletions

View file

@ -283,6 +283,13 @@ class CuraContainerStack(ContainerStack):
self._containers = new_containers self._containers = new_containers
# CURA-5281
# Some stacks can have empty definition_changes containers which will cause problems.
# Make sure that all stacks here have non-empty definition_changes containers.
if isinstance(new_containers[_ContainerIndexes.DefinitionChanges], type(self._empty_instance_container)):
from cura.Settings.CuraStackBuilder import CuraStackBuilder
CuraStackBuilder.createDefinitionChangesContainer(self, self.getId() + "_settings")
## protected: ## protected:
# Helper to make sure we emit a PyQt signal on container changes. # Helper to make sure we emit a PyQt signal on container changes.

View file

@ -302,13 +302,6 @@ class MachineManager(QObject):
## Given a global_stack, make sure that it's all valid by searching for this quality group and applying it again ## Given a global_stack, make sure that it's all valid by searching for this quality group and applying it again
def _initMachineState(self, global_stack): def _initMachineState(self, global_stack):
# Some stacks can have empty definition_changes containers which will cause problems.
# Make sure that all stacks here have non-empty definition_changes containers.
for stack in [global_stack] + list(global_stack.extruders.values()):
if isinstance(stack.definitionChanges, type(self._empty_container)):
from cura.Settings.CuraStackBuilder import CuraStackBuilder
CuraStackBuilder.createDefinitionChangesContainer(stack, stack.getId() + "_settings")
material_dict = {} material_dict = {}
for position, extruder in global_stack.extruders.items(): for position, extruder in global_stack.extruders.items():
material_dict[position] = extruder.material.getMetaDataEntry("base_file") material_dict[position] = extruder.material.getMetaDataEntry("base_file")