public void CreateAllNodeViews() { foreach (var materialNode in GetAllNodes()) { string nType = materialNode.GetType().ToString().Split('.').Last(); if (!m_NotAllowedNodes.Contains(nType)) { m_Graph.AddNode(materialNode); if (materialNode is PropertyNode propertyNode) { var tokenNode = new PropertyNodeView(propertyNode, null); } else { var materialNodeView = new MaterialNodeView { userData = materialNode }; } } } }
public void InsertBlock(MaterialNodeView nodeView) { if (!(nodeView.userData is BlockNode blockNode)) { return; } // If index is -1 the node is being added to the end of the Stack if (blockNode.index == -1) { AddElement(nodeView); return; } // Add or Insert based on index if (blockNode.index >= contentContainer.childCount) { AddElement(nodeView); } else { InsertElement(blockNode.index, nodeView); } }