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