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();
}