Ejemplo n.º 1
0
        public NodeView(Node node) : base()
        {
            this.node = node;
            this.name = node.GetType().Name;

            title.text = node.view.title;

            collapse.clickable.clicked  += ToggleCollapse;
            duplicate.clickable.clicked += () => { GraphWindow.DuplicateNode(node); };
            delete.clickable.clicked    += () => { GraphWindow.RemoveNode(node); };

            SetCollapsed();
            Load();

            if (typeof(GraphPortNode).IsAssignableFrom(this.node.GetType()))
            {
                AddToClassList("GraphPort");
            }
            if (typeof(Graph).IsAssignableFrom(this.node.GetType()))
            {
                AddToClassList("SubGraph");
            }

            properties.Bind(new SerializedObject(node));

            foreach (Port item in node.ports)
            {
                CreatePortViews(item);
            }
        }