X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FTreeCanvas.java;h=57e652c03c3e899c4544fabce68d6024502c250e;hb=7cf75b5b379dd71b3480726419c7dc55d8e01f0e;hp=a9c3ae0153fbf8b4b910b2969b9e5ac14c260d76;hpb=f3bc67915e61855d87866b4a614fe7a953813408;p=jalview.git diff --git a/src/jalview/gui/TreeCanvas.java b/src/jalview/gui/TreeCanvas.java index a9c3ae0..57e652c 100755 --- a/src/jalview/gui/TreeCanvas.java +++ b/src/jalview/gui/TreeCanvas.java @@ -83,6 +83,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, addMouseListener(this); addMouseMotionListener(this); PaintRefresher.Register(this, ap.av.getSequenceSetId()); + ToolTipManager.sharedInstance().registerComponent(this); } @@ -172,14 +173,15 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, if (node.element() instanceof SequenceI) { - if (((SequenceI) ((SequenceNode) node).element()).getColor() == Color.white) + SequenceI seq = (SequenceI)((SequenceNode) node).element(); + + if (av.getSequenceColour(seq) == Color.white) { g.setColor(Color.black); } else { - g.setColor(((SequenceI) ((SequenceNode) node).element()).getColor() - .darker()); + g.setColor(av.getSequenceColour(seq).darker()); } } else @@ -418,7 +420,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, if (node.element() instanceof SequenceI) { - ((SequenceI) node.element()).setColor(c); + av.setSequenceColour((SequenceI) node.element(), c); } } else @@ -663,6 +665,14 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, { if(highlightNode!=null) { + if (SwingUtilities.isRightMouseButton(evt)) + { + Color col = JColorChooser.showDialog(this, "Select Background Colour", + highlightNode.color); + + setColor(highlightNode, col); + } + else if(evt.getClickCount()>1) { tree.swapNodes(highlightNode); @@ -698,13 +708,19 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, if (ob instanceof SequenceNode) { highlightNode = (SequenceNode) ob; + this.setToolTipText( + "Left click to select leaves" + + "
Double-click to invert leaves" + + "
Right click to change colour"); repaint(); + } else { if (highlightNode != null) { highlightNode = null; + setToolTipText(null); repaint(); } } @@ -748,6 +764,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, av.setSelectionGroup(null); av.alignment.deleteAllGroups(); + av.sequenceColours.clear(); colourGroups(); }