JAL-2588 Check/fix show boxes settings + unit test updates.
[jalview.git] / src / jalview / renderer / OverviewResColourFinder.java
index 793d349..5ed218b 100644 (file)
@@ -20,6 +20,7 @@
  */
 package jalview.renderer;
 
+import jalview.datamodel.SequenceGroup;
 import jalview.datamodel.SequenceI;
 import jalview.util.Comparison;
 
@@ -33,6 +34,9 @@ public class OverviewResColourFinder extends ResidueColourFinder
     Color resBoxColour = Color.white;
     char currentChar = seq.getCharAt(i);
 
+    // In the overview window, gaps are coloured grey, unless the colour scheme
+    // specifies a gap colour, in which case gaps honour the colour scheme
+    // settings
     if (shader.getColourScheme() != null)
     {
       if (Comparison.isGap(currentChar)
@@ -52,4 +56,28 @@ public class OverviewResColourFinder extends ResidueColourFinder
 
     return resBoxColour;
   }
+
+  /**
+   * {@inheritDoc} In the overview, the showBoxes setting is ignored, as the
+   * overview displays the colours regardless.
+   */
+  @Override
+  protected Color getResidueBoxColour(boolean showBoxes,
+          ResidueShaderI shader,
+          SequenceGroup[] allGroups, SequenceI seq, int i)
+  {
+    ResidueShaderI currentShader;
+    SequenceGroup currentSequenceGroup = getCurrentSequenceGroup(allGroups,
+            i);
+    if (currentSequenceGroup != null)
+    {
+      currentShader = currentSequenceGroup.getGroupColourScheme();
+    }
+    else
+    {
+      currentShader = shader;
+    }
+
+    return getBoxColour(currentShader, seq, i);
+  }
 }