From 2d760071d897f6bd0308a622d546963d72613ea1 Mon Sep 17 00:00:00 2001 From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04> Date: Fri, 6 May 2005 09:27:13 +0000 Subject: [PATCH] cache viewport git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@2449 ee4ac58c-ac51-4696-9907-e4b3aa274f04 --- .../artemis/components/FeatureList.java | 23 ++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/uk/ac/sanger/artemis/components/FeatureList.java b/uk/ac/sanger/artemis/components/FeatureList.java index 9d288bdd4..0f6d02790 100644 --- a/uk/ac/sanger/artemis/components/FeatureList.java +++ b/uk/ac/sanger/artemis/components/FeatureList.java @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/components/FeatureList.java,v 1.16 2005-05-06 08:47:47 tjc Exp $ + * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/components/FeatureList.java,v 1.17 2005-05-06 09:27:13 tjc Exp $ */ package uk.ac.sanger.artemis.components; @@ -56,7 +56,7 @@ import javax.swing.JComponent; * Features. * * @author Kim Rutherford - * @version $Id: FeatureList.java,v 1.16 2005-05-06 08:47:47 tjc Exp $ + * @version $Id: FeatureList.java,v 1.17 2005-05-06 09:27:13 tjc Exp $ * **/ @@ -104,6 +104,9 @@ public class FeatureList extends EntryGroupPanel **/ private int max_base_pos_width; + /** JScrollPane viewport that this panel is the view of */ + private JViewport viewport = null; + /** * Create a new FeatureList with the default number of rows. * @param entry_group The EntryGroup that this component will display. @@ -303,16 +306,6 @@ public class FeatureList extends EntryGroupPanel setPreferredSize(new Dimension(getSize().width*4,hgt)); revalidate(); repaint(); - -// switch(event.getType()) -// { -// case EntryGroupChangeEvent.ENTRY_ADDED: -// case EntryGroupChangeEvent.ENTRY_ACTIVE: -// case EntryGroupChangeEvent.ENTRY_DELETED: -// case EntryGroupChangeEvent.ENTRY_INACTIVE: -// repaint(); -// break; -// } } /** @@ -400,11 +393,15 @@ public class FeatureList extends EntryGroupPanel */ protected JViewport getViewport() { + if(viewport != null) + return viewport; + Container container = getParent(); while(!(container instanceof JScrollPane)) container = container.getParent(); - return ((JScrollPane)container).getViewport(); + viewport = ((JScrollPane)container).getViewport(); + return viewport; } /** -- GitLab