package org.Algy.frames;
import java.util.ArrayList;
import javax.swing.event.TreeModelListener;
import javax.swing.tree.TreeModel;
import javax.swing.tree.TreeNode;
import javax.swing.tree.TreePath;
public class MyTreeModel implements TreeModel {
public MyTreeModel(TreeNode rootNode) {
super();
this.rootNode = rootNode;
}
private TreeNode rootNode;
private ArrayList<TreeModelListener> listeners = new ArrayList<TreeModelListener>();
@Override
public void addTreeModelListener(TreeModelListener arg) {
listeners.add(arg);
}
@Override
public Object getChild(Object parent, int idx) {
TreeNode p = (TreeNode)parent;
return p.getChildAt(idx);
}
@Override
public int getChildCount(Object parent) {
TreeNode p = (TreeNode)parent;
return p.getChildCount();
}
@Override
public int getIndexOfChild(Object parent, Object child) {
TreeNode p = (TreeNode) parent;
return p.getIndex((TreeNode) child);
}
@Override
public Object getRoot() {
return rootNode;
}
@Override
public boolean isLeaf(Object node) {
TreeNode p = (TreeNode) node;
return p.isLeaf();
}
@Override
public void removeTreeModelListener(TreeModelListener arg) {
listeners.remove(arg);
}
@Override
public void valueForPathChanged(TreePath arg0, Object arg1) {
}
}