import jalview.gui.AlignFrame;
import jalview.gui.Desktop;
import jalview.util.Comparison;
+import jalview.util.ReverseListIterator;
import jalview.viewmodel.seqfeatures.FeatureRendererModel;
import java.awt.AlphaComposite;
for (int pos = visiblePositions.start; pos <= visiblePositions.end; pos++)
{
int column = seq.findIndex(pos);
- // TODO ensure these are in complement's render order (last on top)
List<SequenceFeature> features = fr2
.findComplementFeaturesAtResidue(seq, pos);
for (SequenceFeature sf : features)
Color featureColour = fr2.getColor(sf, fc);
renderFeature(g, seq, column - 1, column - 1, featureColour,
start, end, y1, colourOnly);
+ drawnColour = featureColour;
}
}
}
AlignFrame af = Desktop.getAlignFrameFor(complement);
FeatureRendererModel fr2 = af.getFeatureRenderer();
List<SequenceFeature> features = fr2.findComplementFeaturesAtResidue(
- seq, seq.findPosition(column));
- // todo: ensure ordered by feature render order
- for (SequenceFeature sf : features)
+ seq, seq.findPosition(column - 1));
+
+ ReverseListIterator<SequenceFeature> it = new ReverseListIterator<>(
+ features);
+ while (it.hasNext())
{
+ SequenceFeature sf = it.next();
if (!fr2.featureGroupNotShown(sf))
{
Color col = fr2.getColour(sf);