JAL-2443 push getResidueBoxColour inside getResidueColour
[jalview.git] / src / jalview / appletgui / OverviewPanel.java
index f09bda5..251e1c8 100755 (executable)
@@ -21,6 +21,7 @@
 package jalview.appletgui;
 
 import jalview.datamodel.AlignmentI;
+import jalview.renderer.seqfeatures.FeatureColourFinder;
 
 import java.awt.Color;
 import java.awt.Dimension;
@@ -265,7 +266,8 @@ public class OverviewPanel extends Panel implements Runnable,
   {
     miniMe = null;
     int alwidth = av.getAlignment().getWidth();
-    int alheight = av.getAlignment().getHeight();
+    int alheight = av.getAlignment().getHeight()
+            + av.getAlignment().getHiddenSequences().getSize();
 
     if (av.isShowSequenceFeatures())
     {
@@ -302,8 +304,14 @@ public class OverviewPanel extends Panel implements Runnable,
             .hasHiddenColumns();
     boolean hiddenRow = false;
     AlignmentI alignment = av.getAlignment();
+
+    FeatureColourFinder finder = new FeatureColourFinder(fr);
     for (row = 0; row <= sequencesHeight; row++)
     {
+      if (resizeAgain)
+      {
+        break;
+      }
       if ((int) (row * sampleRow) == lastrow)
       {
         sameRow++;
@@ -344,21 +352,16 @@ public class OverviewPanel extends Panel implements Runnable,
 
         if (seq.getLength() > lastcol)
         {
-          color = sr.getResidueBoxColour(seq, lastcol);
-
-          if (av.isShowSequenceFeatures())
-          {
-            color = fr.findFeatureColour(color, seq, lastcol);
-          }
+          color = sr.getResidueColour(seq, lastcol, finder);
         }
         else
         {
-          color = Color.white; // White
+          color = Color.white;
         }
 
         if (hiddenRow
-                || (hasHiddenCols && !av.getColumnSelection()
-                        .isVisible(lastcol)))
+                || (hasHiddenCols && !av.getColumnSelection().isVisible(
+                        lastcol)))
         {
           color = color.darker().darker();
         }
@@ -385,6 +388,10 @@ public class OverviewPanel extends Panel implements Runnable,
     {
       for (col = 0; col < width; col++)
       {
+        if (resizeAgain)
+        {
+          break;
+        }
         lastcol = (int) (col * sampleCol);
         {
           mg.translate(col, sequencesHeight);