*/
package jalview.appletgui;
-import jalview.api.FeatureRenderer;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
-import jalview.schemes.CollectionColourSchemeI;
+import jalview.renderer.ResidueShaderI;
+import jalview.renderer.seqfeatures.FeatureColourFinder;
import java.awt.Color;
import java.awt.Font;
Graphics graphics;
- boolean forOverview = false;
-
public SequenceRenderer(AlignViewport av)
{
this.av = av;
this.renderGaps = renderGaps;
}
- @Override
- public Color getResidueBoxColour(SequenceI seq, int i)
+ protected Color getResidueBoxColour(SequenceI seq, int i)
{
allGroups = av.getAlignment().findAllGroups(seq);
}
else if (av.getShowBoxes())
{
- getBoxColour(av.getViewportColourScheme(), seq, i);
+ getBoxColour(av.getResidueShading(), seq, i);
}
return resBoxColour;
*
* @param seq
* @param position
- * @param fr
+ * @param finder
* @return
*/
@Override
public Color getResidueColour(final SequenceI seq, int position,
- FeatureRenderer fr)
+ FeatureColourFinder finder)
{
// TODO replace 8 or so code duplications with calls to this method
// (refactored as needed)
Color col = getResidueBoxColour(seq, position);
- if (fr != null)
+ if (finder != null)
{
- col = fr.findFeatureColour(col, seq, position);
+ col = finder.findFeatureColour(col, seq, position);
}
return col;
}
- void getBoxColour(CollectionColourSchemeI collectionColourSchemeI,
- SequenceI seq, int i)
+ void getBoxColour(ResidueShaderI shader, SequenceI seq, int i)
{
- if (collectionColourSchemeI != null)
- {
- resBoxColour = collectionColourSchemeI.findColour(seq.getCharAt(i),
- i, seq);
- }
- else if (forOverview
- && !jalview.util.Comparison.isGap(seq.getCharAt(i)))
+ if (shader.getColourScheme() != null)
{
- resBoxColour = Color.lightGray;
+ resBoxColour = shader.findColour(seq.getCharAt(i), i, seq);
}
else
{
}
else if (av.getShowBoxes())
{
- getBoxColour(av.getViewportColourScheme(), seq, i);
+ getBoxColour(av.getResidueShading(), seq, i);
}
}
if (av.getColourText())
{
- getBoxColour(av.getViewportColourScheme(), seq, i);
+ getBoxColour(av.getResidueShading(), seq, i);
if (av.getShowBoxes())
{
graphics.setColor(resBoxColour.darker());