mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-13 17:57:55 -06:00
27 lines
768 B
Python
27 lines
768 B
Python
from typing import Optional
|
|
|
|
from PyQt5.Qt import QObject, pyqtSlot
|
|
|
|
from cura.Machines.ContainerNode import ContainerNode
|
|
|
|
|
|
class ContainerGroup(QObject):
|
|
|
|
def __init__(self, name: str, parent = None):
|
|
super().__init__(parent)
|
|
self.name = name
|
|
self.node_for_global = None # type: Optional[ContainerNode]
|
|
self.nodes_for_extruders = dict()
|
|
|
|
@pyqtSlot(result = str)
|
|
def getName(self) -> str:
|
|
return self.name
|
|
|
|
def getAllKeys(self) -> set:
|
|
result = set()
|
|
for node in [self.node_for_global] + list(self.nodes_for_extruders.values()):
|
|
if node is None:
|
|
continue
|
|
for key in node.getContainer().getAllKeys():
|
|
result.add(key)
|
|
return result
|