X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FTreeCanvas.java;h=5f707d59294389bb66febe7bc255eec94c45e130;hb=db4c3105e27a3295551e827f3ae41531fad15889;hp=8b68489addf299346baf21d569108ee8d996bbb0;hpb=3e3378e2ccfea39a2b161600c5a2029716acd1b7;p=jalview.git diff --git a/src/jalview/appletgui/TreeCanvas.java b/src/jalview/appletgui/TreeCanvas.java index 8b68489..5f707d5 100755 --- a/src/jalview/appletgui/TreeCanvas.java +++ b/src/jalview/appletgui/TreeCanvas.java @@ -185,7 +185,7 @@ public class TreeCanvas // Colour selected leaves differently SequenceGroup selected = av.getSelectionGroup(); if (selected != null && - selected.getSequences(false).contains( (SequenceI) node.element())) + selected.getSequences(null).contains( (SequenceI) node.element())) { g.setColor(Color.gray); @@ -353,10 +353,8 @@ public class TreeCanvas paint(g); } - Image offscreen; - public void paint(Graphics g1) + public void paint(Graphics g) { - if(tree==null) return; @@ -365,37 +363,27 @@ public class TreeCanvas repaint(); } - FontMetrics fm = g1.getFontMetrics(font); - int width = scrollPane.getSize().width; int height = scrollPane.getSize().height; if(!fitToWindow) - height = fm.getHeight() * nameHash.size(); + { + height = g.getFontMetrics(font).getHeight() * nameHash.size(); + } + if(getSize().width>width) + { + setSize(new Dimension(width,height)); + scrollPane.validate(); + return; + } - if(offscreen==null || offscreen.getWidth(this)!=width - || offscreen.getHeight(this)!=height) - offscreen = createImage(width, height); + setSize(new Dimension(width,height)); - Graphics g = offscreen.getGraphics(); g.setFont(font); - if (fitToWindow || - (!fitToWindow && - scrollPane.getSize().height > fm.getHeight() * nameHash.size() + offy)) - { - draw(g, scrollPane.getSize().width, scrollPane.getSize().height); - } - else - { - setSize(new Dimension(scrollPane.getSize().width, - fm.getHeight() * nameHash.size())); - draw(g, scrollPane.getSize().width, fm.getHeight() * nameHash.size()); - } + draw(g, width, height); - g1.drawImage(offscreen, 0, 0, this); - scrollPane.validate(); } @@ -586,17 +574,19 @@ public class TreeCanvas av.getIgnoreGapsConsensus()); } - SequenceGroup sg = new SequenceGroup(sequences, "TreeGroup", + SequenceGroup sg = new SequenceGroup(sequences, "", cs, true, true, false, 0, av.alignment.getWidth()-1); + sg.setName("JTreeGroup:"+sg.hashCode()); + if ( av.getGlobalColourScheme()!=null && av.getGlobalColourScheme().conservationApplied()) { Conservation c = new Conservation("Group", ResidueProperties.propHash, 3, - sg.getSequences(false), + sg.getSequences(null), sg.getStartRes(), sg.getEndRes());