using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.ObjectModel;
namespace Aga.Controls.Tree
{
///
/// Provides a simple ready to use implementation of . Warning: this class is not optimized
/// to work with big amount of data. In this case create you own implementation of ITreeModel, and pay attention
/// on GetChildren and IsLeaf methods.
///
public class TreeModel : ITreeModel
{
private Node _root;
public Node Root
{
get { return _root; }
}
public Collection Nodes
{
get { return _root.Nodes; }
}
public TreeModel()
{
_root = new Node();
_root.Model = this;
}
public TreePath GetPath(Node node)
{
if (node == _root)
return TreePath.Empty;
else
{
Stack