/// <summary> /// Invokes the <see cref="CreatedNode" /> event /// </summary> /// <param name="mapSquare">The <see cref="CreatedNode" />'s parameter</param> public void RegisterNewNode(MapSquare mapSquare) { if (CreatedNode != null) { CreatedNode.Invoke(mapSquare); } }
public TNode GetChild(TKey child) { CreatedNode entry; if (createdChildren.ContainsKey(child)) { entry = createdChildren[child]; entry.Marked = true; entry.AccessOrder = nextAccessOrder++; return(entry.Node); } var node = childCreator(child); entry = new CreatedNode(node) { AccessOrder = nextAccessOrder++ }; createdChildren[child] = entry; parentObject.AddChild(node); return(node); }