1 35 36 39 package demo.swingset; 40 41 import swingwtx.swing.*; 42 import swingwtx.swing.event.*; 43 import swingwtx.swing.tree.*; 44 import javax.accessibility.*; 45 46 import swingwt.awt.*; 47 import swingwt.awt.event.*; 48 import java.beans.*; 49 import java.util.*; 50 import java.io.*; 51 import java.applet.*; 52 import java.net.*; 53 54 60 public class TreeDemo extends DemoModule { 61 62 65 public static void main(String [] args) { 66 TreeDemo demo = new TreeDemo(null); 67 demo.mainImpl(); 68 } 69 70 73 public TreeDemo(SwingSet2 swingset) { 74 super(swingset, "TreeDemo", "toolbar/JTree.gif"); 77 78 getDemoPanel().add(createTree(), BorderLayout.CENTER); 79 } 80 81 public JScrollPane createTree() { 82 DefaultMutableTreeNode top = new DefaultMutableTreeNode(getString("TreeDemo.music")); 83 DefaultMutableTreeNode catagory = null ; 84 DefaultMutableTreeNode artist = null; 85 DefaultMutableTreeNode record = null; 86 87 URL url = getClass().getResource("/resources/tree.txt"); 89 90 try { 91 InputStream is = url.openStream(); 93 InputStreamReader isr = new InputStreamReader(is); 94 BufferedReader reader = new BufferedReader(isr); 95 96 String line = reader.readLine(); 98 while(line != null) { 99 char linetype = line.charAt(0); 101 switch(linetype) { 102 case 'C': 103 catagory = new DefaultMutableTreeNode(line.substring(2)); 104 top.add(catagory); 105 break; 106 case 'A': 107 if(catagory != null) { 108 catagory.add(artist = new DefaultMutableTreeNode(line.substring(2))); 109 } 110 break; 111 case 'R': 112 if(artist != null) { 113 artist.add(record = new DefaultMutableTreeNode(line.substring(2))); 114 } 115 break; 116 case 'S': 117 if(record != null) { 118 record.add(new DefaultMutableTreeNode(line.substring(2))); 119 } 120 break; 121 default: 122 break; 123 } 124 line = reader.readLine(); 125 } 126 } catch (IOException e) { 127 } 128 129 JTree tree = new JTree(top) { 130 public Insets getInsets() { 131 return new Insets(5,5,5,5); 132 } 133 }; 134 return new JScrollPane(tree); 135 } 136 137 } 138 | Popular Tags |