public T GetNode <T>(int pID) where T : RelayTreeNode { RelayTreeNode result = null; _nodes.TryGetValue(pID, out result); return((T)result); }
internal void RestoreRelations() { foreach (int c in CELL_children.data) { RelayTreeNode child = _relayTreeRunner.GetNode <RelayTreeNode>(c); child.parent = this; _children.Add(child); } }
public void RemoveAndDestroyChild(RelayTreeNode pChild) { _children.Remove(pChild); pChild.parent = null; List <RelayTreeNode> c = new List <RelayTreeNode>(pChild.children); foreach (RelayTreeNode tn in c) { pChild.RemoveAndDestroyChild(tn); } _relayTreeRunner.Destroy(pChild); UpdateCELL_Children(); }
public void AddChild(RelayTreeNode pChild) { pChild.parent = this; _children.Add(pChild); UpdateCELL_Children(); }
internal void Destroy(RelayTreeNode pNode) { _table.RemoveRowAt(pNode.objectId); _nodes.Remove(pNode.objectId); }