public void Draw(NTree node, Node parent, TreeDraw visitor) { visitor(node.Node, node.Node.Parent != null ? node.Node.Parent.Node : null, node.Node.Direction); foreach (NTree kid in node.children) Draw(kid, this.Node, visitor); }