X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FFeatureRenderer.java;h=7c6032716287cee54db9b9818b34690d2d0628c2;hb=f5f5806de6923a8a62906c5a62c6276ba56ae0da;hp=b06cace9cd24551ad5567c96480b89a7af39e8bc;hpb=d2f3c59deebfd9ea52b0021ab31467c18b9d2c14;p=jalview.git diff --git a/src/jalview/gui/FeatureRenderer.java b/src/jalview/gui/FeatureRenderer.java index b06cace..7c60327 100755 --- a/src/jalview/gui/FeatureRenderer.java +++ b/src/jalview/gui/FeatureRenderer.java @@ -79,33 +79,30 @@ public class FeatureRenderer boolean offscreenRender = false; public Color findFeatureColour(Color initialCol, SequenceI seq, int res) { - int seqindex = av.alignment.findIndex(seq); - return new Color( findFeatureColour (initialCol.getRGB(), - seqindex, res )); + seq, res )); } /** - * This is used by the Molecule Viewer to get the accurate colour - * of the rendered sequence + * This is used by the Molecule Viewer and Overview to + * get the accurate colourof the rendered sequence */ - public int findFeatureColour(int initialCol, int seqIndex, int column) + public int findFeatureColour(int initialCol, SequenceI seq, int column) { if(!av.showSequenceFeatures) return initialCol; - if(seqIndex!=lastSequenceIndex) + if(seq!=lastSeq) { - lastSequence = av.alignment.getSequenceAt(seqIndex); - lastSequenceIndex = seqIndex; - sequenceFeatures = lastSequence.getDatasetSequence().getSequenceFeatures(); + lastSeq = seq; + sequenceFeatures = lastSeq.getDatasetSequence().getSequenceFeatures(); if(sequenceFeatures==null) return initialCol; sfSize = sequenceFeatures.length; } - if(jalview.util.Comparison.isGap(lastSequence.getCharAt(column))) + if(jalview.util.Comparison.isGap(lastSeq.getCharAt(column))) return Color.white.getRGB(); @@ -123,7 +120,7 @@ public class FeatureRenderer { offscreenImage.setRGB(0,0,initialCol); drawSequence(offscreenImage.getGraphics(), - lastSequence, + lastSeq, column,column,0); return offscreenImage.getRGB(0,0); @@ -131,8 +128,8 @@ public class FeatureRenderer else { drawSequence(null, - lastSequence, - lastSequence.findPosition(column), + lastSeq, + lastSeq.findPosition(column), -1, -1); if (currentColour == null) @@ -160,8 +157,7 @@ public class FeatureRenderer */ // String type; // SequenceFeature sf; - int lastSequenceIndex=-1; - SequenceI lastSequence; + SequenceI lastSeq; SequenceFeature [] sequenceFeatures; int sfSize, sfindex, spos, epos; @@ -189,9 +185,9 @@ public class FeatureRenderer sfSize = sequenceFeatures.length; } - if(lastSequence==null || seq!=lastSequence) + if(lastSeq==null || seq!=lastSeq) { - lastSequence = seq; + lastSeq = seq; sequenceFeatures = seq.getDatasetSequence().getSequenceFeatures(); sfSize = sequenceFeatures.length; } @@ -207,8 +203,8 @@ public class FeatureRenderer if(!offscreenRender) { - spos = lastSequence.findPosition(start); - epos = lastSequence.findPosition(end); + spos = lastSeq.findPosition(start); + epos = lastSeq.findPosition(end); }