mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-11-02 20:52:20 -07:00
Fix material node update for empty_material
CURA-6821
This commit is contained in:
parent
df105bc822
commit
961e1e0d7e
1 changed files with 7 additions and 3 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
# Copyright (c) 2019 Ultimaker B.V.
|
# Copyright (c) 2019 Ultimaker B.V.
|
||||||
# Cura is released under the terms of the LGPLv3 or higher.
|
# Cura is released under the terms of the LGPLv3 or higher.
|
||||||
|
|
||||||
from typing import Any, TYPE_CHECKING
|
from typing import Any, Optional, TYPE_CHECKING
|
||||||
|
|
||||||
from UM.Logger import Logger
|
from UM.Logger import Logger
|
||||||
from UM.Settings.ContainerRegistry import ContainerRegistry
|
from UM.Settings.ContainerRegistry import ContainerRegistry
|
||||||
|
|
@ -29,7 +29,10 @@ class MaterialNode(ContainerNode):
|
||||||
self.base_file = my_metadata["base_file"]
|
self.base_file = my_metadata["base_file"]
|
||||||
self.material_type = my_metadata["material"]
|
self.material_type = my_metadata["material"]
|
||||||
self.guid = my_metadata["GUID"]
|
self.guid = my_metadata["GUID"]
|
||||||
self.diameter = my_metadata["properties"]["diameter"]
|
# MaterialNode can represent an empty_material container, which has no diameter.
|
||||||
|
self.diameter = None # type: Optional[str]
|
||||||
|
if "properties" in my_metadata:
|
||||||
|
self.diameter = my_metadata["properties"]["diameter"]
|
||||||
self._loadAll()
|
self._loadAll()
|
||||||
container_registry.containerRemoved.connect(self._onRemoved)
|
container_registry.containerRemoved.connect(self._onRemoved)
|
||||||
container_registry.containerMetaDataChanged.connect(self._onMetadataChanged)
|
container_registry.containerMetaDataChanged.connect(self._onMetadataChanged)
|
||||||
|
|
@ -130,7 +133,8 @@ class MaterialNode(ContainerNode):
|
||||||
self.material_type = new_metadata["material"]
|
self.material_type = new_metadata["material"]
|
||||||
old_guid = self.guid
|
old_guid = self.guid
|
||||||
self.guid = new_metadata["GUID"]
|
self.guid = new_metadata["GUID"]
|
||||||
self.diameter = new_metadata["properties"]["diameter"]
|
if "properties" in new_metadata:
|
||||||
|
self.diameter = new_metadata["properties"]["diameter"]
|
||||||
if self.base_file != old_base_file or self.material_type != old_material_type or self.guid != old_guid: # List of quality profiles could've changed.
|
if self.base_file != old_base_file or self.material_type != old_material_type or self.guid != old_guid: # List of quality profiles could've changed.
|
||||||
self.qualities = {}
|
self.qualities = {}
|
||||||
self._loadAll() # Re-load the quality profiles for this node.
|
self._loadAll() # Re-load the quality profiles for this node.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue