KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > TreeModelExample2


1
2 import java.awt.event.ActionEvent JavaDoc;
3 import java.io.File JavaDoc;
4 import java.net.MalformedURLException JavaDoc;
5 import java.util.ArrayList JavaDoc;
6 import javax.swing.AbstractAction JavaDoc;
7 import javax.swing.Action JavaDoc;
8 import javax.swing.JComponent JavaDoc;
9 import javax.swing.JDialog JavaDoc;
10 import javax.swing.JEditorPane JavaDoc;
11 import javax.swing.JFrame JavaDoc;
12 import org.netbeans.spi.viewmodel.Models;
13 import org.netbeans.spi.viewmodel.NodeModel;
14 import org.netbeans.spi.viewmodel.TreeModel;
15 import org.netbeans.spi.viewmodel.TreeModelListener;
16
17
18 public class TreeModelExample2 implements TreeModel, NodeModel {
19     
20     public Object JavaDoc[] getChildren (Object JavaDoc parent, int from, int to) {
21         if (parent == ROOT)
22             return File.listRoots ();
23         return ((File JavaDoc) parent).listFiles ();
24     }
25     
26     public Object JavaDoc getRoot () {
27         return ROOT;
28     }
29     
30     public boolean isLeaf (Object JavaDoc node) {
31         if (node == ROOT)
32             return false;
33         return ((File JavaDoc) node).isFile ();
34     }
35     
36     public void addTreeModelListener (TreeModelListener l) {}
37     public void removeTreeModelListener (TreeModelListener l) {}
38     
39     public String JavaDoc getDisplayName (Object JavaDoc node) {
40         if (node == ROOT) return "Name";
41         String JavaDoc name = ((File JavaDoc) node).getName ();
42         if (name.length () < 1) return ((File JavaDoc) node).getAbsolutePath ();
43         return name;
44     }
45     
46     public String JavaDoc getIconBase (Object JavaDoc node) {
47         if (node == ROOT) return "folder";
48         if (((File JavaDoc) node).isDirectory ()) return "folder";
49         return "file";
50     }
51     
52     public String JavaDoc getShortDescription (Object JavaDoc node) {
53         if (node == ROOT) return "Name";
54         return ((File JavaDoc) node).getAbsolutePath ();
55     }
56     
57     public static void main (String JavaDoc[] args) {
58         TreeModelExample2 tme = new TreeModelExample2 ();
59         JComponent JavaDoc ttv = Models.createView (
60             tme, // TreeModel
61
tme, // NodeModel
62
null, // TableModel
63
null, // NodeActionsProvider
64
new ArrayList JavaDoc () // list of ColumnModels
65
);
66         JFrame JavaDoc f = new JFrame JavaDoc ("Tree Model Example 2");
67         f.getContentPane ().add (ttv);
68         f.pack ();
69         f.show ();
70     }
71 }
72
Popular Tags