git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'Jalview-JS/develop' into develop
[jalview.git]
/
src
/
jalview
/
viewmodel
/
seqfeatures
/
FeatureRendererModel.java
diff --git
a/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java
b/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java
index
68345b9
..
3608626
100644
(file)
--- a/
src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java
+++ b/
src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java
@@
-1199,8
+1199,8
@@
public abstract class FeatureRendererModel
}
@Override
}
@Override
- public MappedFeatures findComplementFeaturesAtResidue(SequenceI sequence,
- int pos)
+ public MappedFeatures findComplementFeaturesAtResidue(
+ final SequenceI sequence, final int pos)
{
SequenceI ds = sequence.getDatasetSequence();
if (ds == null)
{
SequenceI ds = sequence.getDatasetSequence();
if (ds == null)
@@
-1269,9
+1269,12
@@
public abstract class FeatureRendererModel
}
/*
}
/*
- * sort by renderorder, inefficiently
+ * sort by renderorder (inefficiently but ok for small scale);
+ * NB this sorts 'on top' feature to end, for rendering
*/
List<SequenceFeature> result = new ArrayList<>();
*/
List<SequenceFeature> result = new ArrayList<>();
+ final int toAdd = found.size();
+ int added = 0;
for (String type : renderOrder)
{
for (SequenceFeature sf : found)
for (String type : renderOrder)
{
for (SequenceFeature sf : found)
@@
-1279,11
+1282,11
@@
public abstract class FeatureRendererModel
if (type.equals(sf.getType()))
{
result.add(sf);
if (type.equals(sf.getType()))
{
result.add(sf);
- if (result.size() == found.size())
- {
- return new MappedFeatures(mapping, mapFrom, pos, residue,
- result);
- }
+ added++;
+ }
+ if (added == toAdd)
+ {
+ break;
}
}
}
}
}
}