1 package fr.orsay.lri.varna.applications.fragseq;
3 import java.awt.Graphics;
4 import java.awt.Rectangle;
5 import java.awt.dnd.DragGestureEvent;
6 import java.awt.dnd.DragGestureListener;
7 import java.awt.dnd.DragGestureRecognizer;
8 import java.awt.dnd.DragSource;
9 import java.awt.dnd.MouseDragGestureRecognizer;
10 import java.awt.event.MouseEvent;
11 import java.awt.event.MouseListener;
12 import java.util.Enumeration;
14 import javax.swing.JComponent;
15 import javax.swing.JTree;
16 import javax.swing.plaf.basic.BasicTreeUI;
17 import javax.swing.tree.AbstractLayoutCache;
18 import javax.swing.tree.DefaultMutableTreeNode;
19 import javax.swing.tree.TreePath;
21 public class FragSeqTree extends JTree implements MouseListener {
25 public FragSeqTree(FragSeqTreeModel m)
32 public DefaultMutableTreeNode getSelectedNode()
34 TreePath t = getSelectionPath();
37 return (DefaultMutableTreeNode) t.getLastPathComponent();
42 public void mouseClicked(MouseEvent e) {
45 TreePath tp = this.getPathForLocation(x, y);
48 DefaultMutableTreeNode n = (DefaultMutableTreeNode) tp.getLastPathComponent();
53 public void switchToPath()
55 FragSeqTreeModel m = (FragSeqTreeModel) getModel();
57 m.setRoot(m.getPathViewRoot());
59 Enumeration en = m.getRoot().depthFirstEnumeration();
60 while(en.hasMoreElements())
62 FragSeqNode n = (FragSeqNode) en.nextElement();
65 expandPath(new TreePath(n.getPath()));
70 public void switchToID()
72 FragSeqTreeModel m = (FragSeqTreeModel) getModel();
74 m.setRoot(m.getIDViewRoot());
75 Enumeration en = m.getRoot().depthFirstEnumeration();
76 while(en.hasMoreElements())
78 FragSeqNode n = (FragSeqNode) en.nextElement();
81 expandPath(new TreePath(n.getPath()));
86 public void mousePressed(MouseEvent e) {
87 // TODO Auto-generated method stub
91 public void mouseReleased(MouseEvent e) {
92 // TODO Auto-generated method stub
96 public void mouseEntered(MouseEvent e) {
97 // TODO Auto-generated method stub
101 public void mouseExited(MouseEvent e) {
102 // TODO Auto-generated method stub