public void InsertAt(int index, NodeInput inp, bool assign = false) { if (inp.Reference != null) { inp.Reference.Remove(inp); } if (assign) { inp.AssignReference(this); } else { inp.Reference = this; } if (index >= To.Count) { To.Add(inp); } else { To.Insert(index, inp); } OnOutputChanged?.Invoke(this); }
public void Remove(NodeInput inp) { if (To.Remove(inp)) { inp.Reference = null; OnOutputChanged?.Invoke(this); } }
public void Add(NodeInput inp, bool assign = false) { if (inp.Reference != null) { inp.Reference.Remove(inp); } if (assign) { inp.AssignReference(this); } else { inp.Reference = this; OnOutputChanged?.Invoke(this); } To.Add(inp); }