From de9e7872b7b7e4abdec417f34cff7377f5d7a201 Mon Sep 17 00:00:00 2001 From: amwaterhouse Date: Wed, 17 Jan 2007 15:32:10 +0000 Subject: [PATCH] Fit to Window bug fixed --- src/jalview/appletgui/TreeCanvas.java | 36 +++++++++++---------------------- 1 file changed, 12 insertions(+), 24 deletions(-) diff --git a/src/jalview/appletgui/TreeCanvas.java b/src/jalview/appletgui/TreeCanvas.java index 8b68489..0d80535 100755 --- a/src/jalview/appletgui/TreeCanvas.java +++ b/src/jalview/appletgui/TreeCanvas.java @@ -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(); } -- 1.7.10.2