Public Methods | |
AppTreeModel (ApplicationsManager mgr) | |
void | fireNodeInserted (String name) |
void | fireNodeChanged (AppTreeNode node) |
void | fireNodeRenamed (String name) |
void | fireNodesRemoved (String[] names) |
void | addTreeModelListener (TreeModelListener l) |
void | removeTreeModelListener (TreeModelListener l) |
Object | getChild (Object parent, int index) |
int | getChildCount (Object parent) |
int | getIndexOfChild (Object parent, Object child) |
Object | getRoot () |
boolean | isLeaf (Object node) |
void | valueForPathChanged (TreePath path, Object newValue) |
TreePath | getPathOf (Object node) |
|
00031 { 00032 _manager = mgr; 00033 _root = new AppTreeNode("root", mgr); 00034 } |
|
00063 { 00064 int index = _root.getIndex(name); 00065 if(index == -1) return; 00066 00067 TreeModelEvent ev = new TreeModelEvent(this, new Object[] {_root}, 00068 new int[] { index }, new Object[] { _root.getChildAt(index) }); 00069 00070 int len = _listeners.size(); 00071 for (int i = 0; i < len; i++) 00072 ((TreeModelListener)_listeners.elementAt(i)).treeNodesInserted(ev); 00073 } |
|
00076 { 00077 TreeModelEvent ev = new TreeModelEvent(this, new Object[] {node}); 00078 00079 int len = _listeners.size(); 00080 for (int i = 0; i < len; i++) 00081 ((TreeModelListener)_listeners.elementAt(i)).treeStructureChanged(ev); 00082 } |
|
00085 { 00086 int index = _root.getIndex(name); 00087 if(index == -1) return; 00088 00089 TreeModelEvent ev = new TreeModelEvent(this, new Object[] {_root}, 00090 new int[] { index }, new Object[] { _root.getChildAt(index) }); 00091 00092 int len = _listeners.size(); 00093 for (int i = 0; i < len; i++) 00094 ((TreeModelListener)_listeners.elementAt(i)).treeStructureChanged(ev); 00095 } |
|
00098 { 00099 int[] indexes = new int[names.length]; 00100 Object[] nodes = new Object[names.length]; 00101 00102 for(int i=0; i<names.length; i++) { 00103 indexes[i] = _root.getIndex(names[i]); 00104 nodes[i] = _root.getChildAt(indexes[i]); 00105 } 00106 00107 TreeModelEvent ev = new TreeModelEvent(this, new Object[] {_root}, 00108 indexes, nodes); 00109 00110 int len = _listeners.size(); 00111 for (int i = 0; i < len; i++) 00112 ((TreeModelListener)_listeners.elementAt(i)).treeNodesRemoved(ev); 00113 00114 } |
|
00118 { 00119 _listeners.addElement(l); 00120 } |
|
00123 { 00124 _listeners.removeElement(l); 00125 } |
|
00129 { 00130 //System.out.println("getChild "+parent+" "+index); 00131 AppTreeNode node = (AppTreeNode)parent; 00132 return node.getChildAt(index); 00133 } |
|
00137 { 00138 //System.out.println("getChildCt "+parent); 00139 AppTreeNode node = (AppTreeNode)parent; 00140 return node.getChildCount(); 00141 } |
|
00145 { 00146 //System.out.println("getIndexOf "+parent); 00147 AppTreeNode node = (AppTreeNode)parent; 00148 return node.getIndex(child); 00149 } |
|
00153 { 00154 //System.out.println("getRoot"); 00155 return _root; 00156 } |
|
00160 { 00161 return false; 00162 } |
|
00167 { 00168 System.out.println("*** valueForPathChanged : "+path+" --> "+newValue); 00169 } |
|
00172 { 00173 AppTreeNode appNode = (AppTreeNode)node; 00174 AppTreeNode parent = appNode.getParent(); 00175 00176 if(parent == null) //root 00177 return new TreePath(_root); 00178 00179 TreePath parentPath = getPathOf(parent); 00180 if(parentPath == null) return null; 00181 00182 AppTreeNode newParent = (AppTreeNode)parentPath.getLastPathComponent(); 00183 int index = newParent.getIndex(appNode.getName()); 00184 if(index == -1) return null; 00185 00186 return parentPath.pathByAddingChild(newParent.getChildAt(index)); 00187 } |