//Remove Node private void OnClickRemoveNode(ENodeBase node) { if (connections != null) { List <Connection> connectionsToRemove = new List <Connection>(); for (int i = 0; i < connections.Count; i++) { if (connections[i].inPoint == node.inPoint || connections[i].outPoint == node.outPoint) { connectionsToRemove.Add(connections[i]); } } for (int i = 0; i < connectionsToRemove.Count; i++) { connections.Remove(connectionsToRemove[i]); } connectionsToRemove = null; } Nodes.Remove(node); }
public ConnectionPoint ( ENodeBase node, ConnectionPointType type, GUIStyle style, Action <ConnectionPoint> onClickConnectionPoint, string id = null ) { //connection type Type = type; //visuals rect = new Rect(0, 0, 10f, 20f); Style = style; //parent node ParentNode = node; //Point action OnClickConnectionPoint = onClickConnectionPoint; this.id = id ?? Guid.NewGuid().ToString(); }