X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSequenceRenderer.java;h=95c32615120b246b38c52c3689e56a6fef4f9a2d;hb=f65096aef227504d9d9bfdc296268217f9f0f630;hp=7928a89d5a041046648e58de65d50fabbe47c32f;hpb=d2749ce7a8dba3edbb210e82ec9a7e0c6e28cecf;p=jalview.git diff --git a/src/jalview/gui/SequenceRenderer.java b/src/jalview/gui/SequenceRenderer.java index 7928a89..95c3261 100755 --- a/src/jalview/gui/SequenceRenderer.java +++ b/src/jalview/gui/SequenceRenderer.java @@ -23,18 +23,13 @@ package jalview.gui; import jalview.api.FeatureRenderer; import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; -import jalview.schemes.ColourSchemeI; +import jalview.renderer.ResidueShaderI; +import jalview.util.Comparison; import java.awt.Color; import java.awt.FontMetrics; import java.awt.Graphics; -/** - * DOCUMENT ME! - * - * @author $author$ - * @version $Revision$ - */ public class SequenceRenderer implements jalview.api.SequenceRenderer { final static int CHAR_TO_UPPER = 'A' - 'a'; @@ -91,18 +86,19 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer @Override public Color getResidueBoxColour(SequenceI seq, int i) { + // rate limiting step when rendering overview for lots of groups allGroups = av.getAlignment().findAllGroups(seq); if (inCurrentSequenceGroup(i)) { if (currentSequenceGroup.getDisplayBoxes()) { - getBoxColour(currentSequenceGroup.cs, seq, i); + getBoxColour(currentSequenceGroup.getGroupColourScheme(), seq, i); } } else if (av.getShowBoxes()) { - getBoxColour(av.getGlobalColourScheme(), seq, i); + getBoxColour(av.getResidueShading(), seq, i); } return resBoxColour; @@ -136,21 +132,21 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer /** * DOCUMENT ME! * - * @param cs + * @param shader * DOCUMENT ME! * @param seq * DOCUMENT ME! * @param i * DOCUMENT ME! */ - void getBoxColour(ColourSchemeI cs, SequenceI seq, int i) + void getBoxColour(ResidueShaderI shader, SequenceI seq, int i) { - if (cs != null) + if (shader != null) { - resBoxColour = cs.findColour(seq.getCharAt(i), i, seq); + resBoxColour = shader.findColour(seq.getCharAt(i), + i, seq); } - else if (forOverview - && !jalview.util.Comparison.isGap(seq.getCharAt(i))) + else if (forOverview && !Comparison.isGap(seq.getCharAt(i))) { resBoxColour = Color.lightGray; } @@ -239,14 +235,14 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer { if (currentSequenceGroup.getDisplayBoxes()) { - getBoxColour(currentSequenceGroup.cs, seq, i); + getBoxColour(currentSequenceGroup.getGroupColourScheme(), seq, + i); } } else if (av.getShowBoxes()) { - getBoxColour(av.getGlobalColourScheme(), seq, i); + getBoxColour(av.getResidueShading(), seq, i); } - } if (resBoxColour != tempColour) @@ -350,7 +346,8 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer || currentSequenceGroup.getColourText()) { getboxColour = true; - getBoxColour(currentSequenceGroup.cs, seq, i); + getBoxColour(currentSequenceGroup.getGroupColourScheme(), seq, + i); if (currentSequenceGroup.getColourText()) { @@ -390,7 +387,7 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer if (av.getColourText()) { getboxColour = true; - getBoxColour(av.getGlobalColourScheme(), seq, i); + getBoxColour(av.getResidueShading(), seq, i); if (av.getShowBoxes()) { @@ -406,7 +403,7 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer { if (!getboxColour) { - getBoxColour(av.getGlobalColourScheme(), seq, i); + getBoxColour(av.getResidueShading(), seq, i); } if (resBoxColour.getRed() + resBoxColour.getBlue() @@ -417,7 +414,7 @@ public class SequenceRenderer implements jalview.api.SequenceRenderer } if (!isarep && av.getShowUnconserved()) { - s = getDisplayChar(srep, i, s, '.', currentSequenceGroup); + s = getDisplayChar(srep, i, s, '.', null); }