/*\r
* Jalview - A Sequence Alignment Editor and Viewer\r
- * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
+ * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
*\r
* This program is free software; you can redistribute it and/or\r
* modify it under the terms of the GNU General Public License\r
\r
SequenceNode highlightNode;\r
\r
-\r
public TreeCanvas(AlignViewport av, ScrollPane scroller)\r
{\r
this.av = av;\r
av.setSelectionGroup(selected);\r
}\r
\r
- selected.setEndRes(av.alignment.getWidth()-1);\r
+ selected.setEndRes(av.alignment.getWidth() - 1);\r
selected.addOrRemove(sequence, true);\r
}\r
\r
}\r
if (!nodeLabel.equals(""))\r
{\r
- g.drawString(nodeLabel, xstart+2, ypos - 2);\r
+ g.drawString(nodeLabel, xstart + 2, ypos - 2);\r
}\r
\r
String name = (markPlaceholders && node.isPlaceholder()) ?\r
// Draw horizontal line\r
g.drawLine(xstart, ypos, xend, ypos);\r
if (node == highlightNode)\r
+ {\r
g.fillRect(xend - 3, ypos - 3, 6, 6);\r
+ }\r
else\r
+ {\r
g.fillRect(xend - 2, ypos - 2, 4, 4);\r
+ }\r
\r
int ystart = (int) ( ( (SequenceNode) node.left()).ycount * chunk) + offy;\r
int yend = (int) ( ( (SequenceNode) node.right()).ycount * chunk) + offy;\r
\r
if (showDistances && node.dist > 0)\r
{\r
- g.drawString(new Format("%-.2f").form(node.dist), xstart+2, ypos - 2);\r
+ g.drawString(new Format("%-.2f").form(node.dist), xstart + 2, ypos - 2);\r
}\r
\r
}\r
\r
if (node.element() instanceof SequenceI)\r
{\r
- av.setSequenceColour((SequenceI) node.element(), c);\r
+ av.setSequenceColour( (SequenceI) node.element(), c);\r
}\r
}\r
else\r
\r
public void paint(Graphics g)\r
{\r
- if(tree==null)\r
+ if (tree == null)\r
+ {\r
return;\r
+ }\r
\r
if (nameHash.size() == 0)\r
{\r
\r
int width = scrollPane.getSize().width;\r
int height = scrollPane.getSize().height;\r
- if(!fitToWindow)\r
+ if (!fitToWindow)\r
{\r
height = g.getFontMetrics(font).getHeight() * nameHash.size();\r
}\r
\r
- if(getSize().width>width)\r
+ if (getSize().width > width)\r
{\r
- setSize(new Dimension(width,height));\r
+ setSize(new Dimension(width, height));\r
scrollPane.validate();\r
return;\r
}\r
\r
- setSize(new Dimension(width,height));\r
-\r
+ setSize(new Dimension(width, height));\r
\r
g.setFont(font);\r
\r
\r
}\r
\r
-\r
public void draw(Graphics g, int width, int height)\r
{\r
- offy = font.getSize()+10;\r
+ offy = font.getSize() + 10;\r
\r
g.setColor(Color.white);\r
g.fillRect(0, 0, width, height);\r
public void mouseDragged(MouseEvent ect)\r
{}\r
\r
-\r
public void mouseMoved(MouseEvent evt)\r
{\r
av.setCurrentTree(tree);\r
repaint();\r
return;\r
}\r
- else if ( !(ob instanceof SequenceNode))\r
+ else if (! (ob instanceof SequenceNode))\r
{\r
// Find threshold\r
\r
\r
av.setSelectionGroup(null);\r
av.alignment.deleteAllGroups();\r
- av.sequenceColours=null;\r
+ av.sequenceColours = null;\r
\r
colourGroups();\r
\r
void colourGroups()\r
{\r
for (int i = 0; i < tree.getGroups().size(); i++)\r
- {\r
+ {\r
\r
- Color col = new Color( (int) (Math.random() * 255),\r
- (int) (Math.random() * 255),\r
- (int) (Math.random() * 255));\r
- setColor( (SequenceNode) tree.getGroups().elementAt(i), col.brighter());\r
+ Color col = new Color( (int) (Math.random() * 255),\r
+ (int) (Math.random() * 255),\r
+ (int) (Math.random() * 255));\r
+ setColor( (SequenceNode) tree.getGroups().elementAt(i), col.brighter());\r
\r
- Vector l = tree.findLeaves( (SequenceNode) tree.getGroups().elementAt(\r
- i), new Vector());\r
+ Vector l = tree.findLeaves( (SequenceNode) tree.getGroups().elementAt(\r
+ i), new Vector());\r
\r
- Vector sequences = new Vector();\r
- for (int j = 0; j < l.size(); j++)\r
- {\r
- SequenceI s1 = (SequenceI) ( (SequenceNode) l.elementAt(j)).element();\r
- if(!sequences.contains(s1))\r
- sequences.addElement(s1);\r
- }\r
+ Vector sequences = new Vector();\r
+ for (int j = 0; j < l.size(); j++)\r
+ {\r
+ SequenceI s1 = (SequenceI) ( (SequenceNode) l.elementAt(j)).element();\r
+ if (!sequences.contains(s1))\r
+ {\r
+ sequences.addElement(s1);\r
+ }\r
+ }\r
\r
- ColourSchemeI cs = null;\r
+ ColourSchemeI cs = null;\r
\r
- if (av.getGlobalColourScheme() != null)\r
- {\r
- if (av.getGlobalColourScheme() instanceof UserColourScheme)\r
- {\r
- cs = new UserColourScheme(\r
- ( (UserColourScheme) av.getGlobalColourScheme()).getColours());\r
-\r
- }\r
- else\r
- cs = ColourSchemeProperty.getColour(sequences,\r
- av.alignment.getWidth(),\r
- ColourSchemeProperty.getColourName(\r
- av.getGlobalColourScheme()));\r
-\r
- cs.setThreshold(av.getGlobalColourScheme().getThreshold(),\r
- av.getIgnoreGapsConsensus());\r
- }\r
+ if (av.getGlobalColourScheme() != null)\r
+ {\r
+ if (av.getGlobalColourScheme() instanceof UserColourScheme)\r
+ {\r
+ cs = new UserColourScheme(\r
+ ( (UserColourScheme) av.getGlobalColourScheme()).getColours());\r
+\r
+ }\r
+ else\r
+ {\r
+ cs = ColourSchemeProperty.getColour(sequences,\r
+ av.alignment.getWidth(),\r
+ ColourSchemeProperty.\r
+ getColourName(\r
+ av.getGlobalColourScheme()));\r
+ }\r
\r
- SequenceGroup sg = new SequenceGroup(sequences, "",\r
- cs, true, true,\r
- false, 0, av.alignment.getWidth()-1);\r
+ cs.setThreshold(av.getGlobalColourScheme().getThreshold(),\r
+ av.getIgnoreGapsConsensus());\r
+ }\r
\r
- sg.setName("JTreeGroup:"+sg.hashCode());\r
+ SequenceGroup sg = new SequenceGroup(sequences, "",\r
+ cs, true, true,\r
+ false, 0,\r
+ av.alignment.getWidth() - 1);\r
\r
+ sg.setName("JTreeGroup:" + sg.hashCode());\r
\r
- if ( av.getGlobalColourScheme()!=null\r
- && av.getGlobalColourScheme().conservationApplied())\r
- {\r
- Conservation c = new Conservation("Group",\r
- ResidueProperties.propHash, 3,\r
- sg.getSequences(null),\r
- sg.getStartRes(),\r
- sg.getEndRes());\r
+ if (av.getGlobalColourScheme() != null\r
+ && av.getGlobalColourScheme().conservationApplied())\r
+ {\r
+ Conservation c = new Conservation("Group",\r
+ ResidueProperties.propHash, 3,\r
+ sg.getSequences(null),\r
+ sg.getStartRes(),\r
+ sg.getEndRes());\r
\r
- c.calculate();\r
- c.verdict(false, av.ConsPercGaps);\r
- cs.setConservation(c);\r
+ c.calculate();\r
+ c.verdict(false, av.ConsPercGaps);\r
+ cs.setConservation(c);\r
\r
- sg.cs = cs;\r
+ sg.cs = cs;\r
\r
- }\r
+ }\r
\r
- av.alignment.addGroup(sg);\r
+ av.alignment.addGroup(sg);\r
\r
- }\r
+ }\r
\r
}\r
\r