X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FScalePanel.java;h=cb195392bf8e3900e818db342859df836b6093f1;hb=c5e7525fa1ce59385fd3e249c2fe4056f4b5371e;hp=bc59f912bbde73d3eb4fcf860e2f28fa8551e60e;hpb=d1707d4c26db76cfeb640f0dbeb3e3427fd40eb7;p=jalview.git diff --git a/src/jalview/gui/ScalePanel.java b/src/jalview/gui/ScalePanel.java index bc59f91..cb19539 100755 --- a/src/jalview/gui/ScalePanel.java +++ b/src/jalview/gui/ScalePanel.java @@ -28,6 +28,7 @@ import jalview.renderer.ScaleRenderer; import jalview.renderer.ScaleRenderer.ScaleMark; import jalview.util.MessageManager; import jalview.util.Platform; +import jalview.viewmodel.ViewportListenerI; import java.awt.Color; import java.awt.FontMetrics; @@ -39,6 +40,7 @@ import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; +import java.beans.PropertyChangeEvent; import java.util.List; import javax.swing.JMenuItem; @@ -52,7 +54,7 @@ import javax.swing.ToolTipManager; * supports a range of mouse operations to select, hide or reveal columns. */ public class ScalePanel extends JPanel implements MouseMotionListener, - MouseListener + MouseListener, ViewportListenerI { protected int offy = 4; @@ -91,6 +93,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener, addMouseListener(this); addMouseMotionListener(this); + + av.getRanges().addPropertyChangeListener(this); } /** @@ -399,10 +403,10 @@ public class ScalePanel extends JPanel implements MouseMotionListener, res = av.getAlignment().getHiddenColumns().adjustForHiddenColumns(res); - if (av.getAlignment().getHiddenColumns().getListOfCols() != null) + if (av.getAlignment().getHiddenColumns().getHiddenRegions() != null) { for (int[] region : av.getAlignment().getHiddenColumns() - .getListOfCols()) + .getHiddenRegions()) { if (res + 1 == region[0] || res - 1 == region[1]) { @@ -495,9 +499,9 @@ public class ScalePanel extends JPanel implements MouseMotionListener, gg.setColor(Color.blue); int res; - if (av.getShowHiddenMarkers() && hidden.getListOfCols() != null) + if (av.getShowHiddenMarkers() && hidden.getHiddenRegions() != null) { - for (int i = 0; i < hidden.getListOfCols() + for (int i = 0; i < hidden.getHiddenRegions() .size(); i++) { res = hidden.findHiddenRegionPosition(i) @@ -548,4 +552,11 @@ public class ScalePanel extends JPanel implements MouseMotionListener, } } + @Override + public void propertyChange(PropertyChangeEvent evt) + { + // Respond to viewport change events (e.g. alignment panel was scrolled) + repaint(); + } + }