def __setstate__(self, state): self.__init__() self.id = state['id'] self.type = state['type'] self.name = state['name'] self.nodeName = state['nodeName'] self.author = state['author'] self.help = state['help'] self.internals = state['internals'] self.code = state['code'] self.includes = state['includes'] self.previewCodes = state['previewCodes'] self.inputProps = state['inputProps'] self.outputProps = state['outputProps'] # childs self.childs = set() # input links self.inputLinks = {} # output links self.outputLinks = {} for outputProp in self.outputProps: self.outputLinks[outputProp] = [] # create new gfxNode from gfx.view import GfxNode self.gfxNode = GfxNode(self) # set position pos = state['gfxNodePos'] self.gfxNode.setPos(QtCore.QPointF(pos[0], pos[1]))
def buildFrom(cls, type, name, nodeName, author, help, inputProps, outputProps, internals, code, includes, previewCodes): node = cls() # id to identify a single instance Node.id += 1 node.id = Node.id # node stuff node.type = type node.name = name node.nodeName = nodeName node.author = author node.help = help node.code = code node.includes = includes node.previewCodes = previewCodes node.childs = set() # internals node.internals = internals # input properties node.inputProps = inputProps # output properties node.outputProps = outputProps # input links node.inputLinks = {} # output links node.outputLinks = {} for outputProp in node.outputProps: node.outputLinks[outputProp] = [] # create gfxNode from gfx.view import GfxNode node.gfxNode = GfxNode(node) return node