X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=srcjar%2Ffr%2Forsay%2Flri%2Fvarna%2Fapplications%2Ffragseq%2FFragSeqTree.java;fp=srcjar%2Ffr%2Forsay%2Flri%2Fvarna%2Fapplications%2Ffragseq%2FFragSeqTree.java;h=d9bed27d1a9318463d1b2177ebdd0f6bbf9f5e8b;hb=ec8f3cedf60fb1feed6d34de6b49f6bfa78b9dd8;hp=0000000000000000000000000000000000000000;hpb=056dad85a910551cc95e44d451a61f6b8c4dd35d;p=jalview.git diff --git a/srcjar/fr/orsay/lri/varna/applications/fragseq/FragSeqTree.java b/srcjar/fr/orsay/lri/varna/applications/fragseq/FragSeqTree.java new file mode 100644 index 0000000..d9bed27 --- /dev/null +++ b/srcjar/fr/orsay/lri/varna/applications/fragseq/FragSeqTree.java @@ -0,0 +1,108 @@ +package fr.orsay.lri.varna.applications.fragseq; + +import java.awt.Graphics; +import java.awt.Rectangle; +import java.awt.dnd.DragGestureEvent; +import java.awt.dnd.DragGestureListener; +import java.awt.dnd.DragGestureRecognizer; +import java.awt.dnd.DragSource; +import java.awt.dnd.MouseDragGestureRecognizer; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; +import java.util.Enumeration; + +import javax.swing.JComponent; +import javax.swing.JTree; +import javax.swing.plaf.basic.BasicTreeUI; +import javax.swing.tree.AbstractLayoutCache; +import javax.swing.tree.DefaultMutableTreeNode; +import javax.swing.tree.TreePath; + +public class FragSeqTree extends JTree implements MouseListener { + private Watcher _w; + + + public FragSeqTree(FragSeqTreeModel m) + { + super(m); + _w = new Watcher(m ); + _w.start(); + } + + public DefaultMutableTreeNode getSelectedNode() + { + TreePath t = getSelectionPath(); + if (t!= null) + { + return (DefaultMutableTreeNode) t.getLastPathComponent(); + } + return null; + } + + public void mouseClicked(MouseEvent e) { + int x = e.getX(); + int y = e.getY(); + TreePath tp = this.getPathForLocation(x, y); + if (tp!=null) + { + DefaultMutableTreeNode n = (DefaultMutableTreeNode) tp.getLastPathComponent(); + + } + } + + public void switchToPath() + { + FragSeqTreeModel m = (FragSeqTreeModel) getModel(); + cancelEditing(); + m.setRoot(m.getPathViewRoot()); + + Enumeration en = m.getRoot().depthFirstEnumeration(); + while(en.hasMoreElements()) + { + FragSeqNode n = (FragSeqNode) en.nextElement(); + if(m.isExpanded(n)) + { + expandPath(new TreePath(n.getPath())); + } + } + } + + public void switchToID() + { + FragSeqTreeModel m = (FragSeqTreeModel) getModel(); + cancelEditing(); + m.setRoot(m.getIDViewRoot()); + Enumeration en = m.getRoot().depthFirstEnumeration(); + while(en.hasMoreElements()) + { + FragSeqNode n = (FragSeqNode) en.nextElement(); + if(m.isExpanded(n)) + { + expandPath(new TreePath(n.getPath())); + } + } + } + + public void mousePressed(MouseEvent e) { + // TODO Auto-generated method stub + + } + + public void mouseReleased(MouseEvent e) { + // TODO Auto-generated method stub + + } + + public void mouseEntered(MouseEvent e) { + // TODO Auto-generated method stub + + } + + public void mouseExited(MouseEvent e) { + // TODO Auto-generated method stub + + } + + + +}