X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fviewmodel%2Fseqfeatures%2FFeatureRendererModel.java;fp=src%2Fjalview%2Fviewmodel%2Fseqfeatures%2FFeatureRendererModel.java;h=9155440c3810f520fdb119710d780b6ef0feba30;hb=3459a8a691cb22508d7067f240b7254e588e77d3;hp=eb1030c3640b7d400586d6fa6600d76984aca7a4;hpb=5b27f1062b2203c4c31702e205f4c78e1992063e;p=jalview.git diff --git a/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java b/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java index eb1030c..9155440 100644 --- a/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java +++ b/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java @@ -36,6 +36,7 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import jalview.api.AlignViewportI; +import jalview.api.AlignmentViewPanel; import jalview.api.FeatureColourI; import jalview.api.FeaturesDisplayedI; import jalview.datamodel.AlignedCodonFrame; @@ -314,7 +315,8 @@ public abstract class FeatureRendererModel } @Override - public List findFeaturesAtColumn(SequenceI sequence, int column) + public List findFeaturesAtColumn(SequenceI sequence, + int column) { /* * include features at the position provided their feature type is @@ -408,8 +410,8 @@ public abstract class FeatureRendererModel } if (groupDisplayed) { - Set types = asq.getFeatures().getFeatureTypesForGroups( - true, group); + Set types = asq.getFeatures() + .getFeatureTypesForGroups(true, group); for (String type : types) { if (!allfeatures.contains(type)) // or use HashSet and no test? @@ -488,6 +490,7 @@ public abstract class FeatureRendererModel } } } + protected Boolean firing = Boolean.FALSE; /** @@ -628,8 +631,9 @@ public abstract class FeatureRendererModel */ public boolean showFeatureOfType(String type) { - return type == null ? false : (av.getFeaturesDisplayed() == null ? true - : av.getFeaturesDisplayed().isVisible(type)); + return type == null ? false + : (av.getFeaturesDisplayed() == null ? true + : av.getFeaturesDisplayed().isVisible(type)); } @Override @@ -707,15 +711,15 @@ public abstract class FeatureRendererModel } /** - * Sets the priority order for features, with the highest priority (displayed on - * top) at the start of the data array + * Sets the priority order for features, with the highest priority (displayed + * on top) at the start of the data array * * @param data * an array of { Type, Colour, Filter, Boolean } * @param visibleNew * when true current featureDisplay list will be cleared - * @return true if any visible features have been reordered or recoloured, else - * false (i.e. no need to repaint) + * @return true if any visible features have been reordered or recoloured, + * else false (i.e. no need to repaint) */ public boolean setFeaturePriority(FeatureSettingsBean[] data, boolean visibleNew) @@ -798,6 +802,7 @@ public abstract class FeatureRendererModel * @param listener * @see java.beans.PropertyChangeSupport#addPropertyChangeListener(java.beans.PropertyChangeListener) */ + @Override public void addPropertyChangeListener(PropertyChangeListener listener) { changeSupport.addPropertyChangeListener(listener); @@ -807,6 +812,7 @@ public abstract class FeatureRendererModel * @param listener * @see java.beans.PropertyChangeSupport#removePropertyChangeListener(java.beans.PropertyChangeListener) */ + @Override public void removePropertyChangeListener(PropertyChangeListener listener) { changeSupport.removePropertyChangeListener(listener); @@ -999,8 +1005,7 @@ public abstract class FeatureRendererModel */ public boolean featureGroupNotShown(final SequenceFeature sequenceFeature) { - return featureGroups != null - && sequenceFeature.featureGroup != null + return featureGroups != null && sequenceFeature.featureGroup != null && sequenceFeature.featureGroup.length() != 0 && featureGroups.containsKey(sequenceFeature.featureGroup) && !featureGroups.get(sequenceFeature.featureGroup) @@ -1028,9 +1033,9 @@ public abstract class FeatureRendererModel List visibleFeatures = getDisplayedFeatureTypes(); String[] visibleTypes = visibleFeatures .toArray(new String[visibleFeatures.size()]); - List features = sequence.getFeatures().findFeatures( - fromResNo, toResNo, visibleTypes); - + List features = sequence.getFeatures() + .findFeatures(fromResNo, toResNo, visibleTypes); + for (SequenceFeature sf : features) { if (!featureGroupNotShown(sf) && getColour(sf) != null) @@ -1090,8 +1095,7 @@ public abstract class FeatureRendererModel * (checking type and isContactFeature as a fail-safe here, although * currently they are guaranteed to match in this context) */ - if (lastFeature != null - && sf.getBegin() == lastFeature.getBegin() + if (lastFeature != null && sf.getBegin() == lastFeature.getBegin() && sf.getEnd() == lastFeature.getEnd() && sf.isContactFeature() == lastFeature.isContactFeature() && sf.getType().equals(lastFeature.getType())) @@ -1121,7 +1125,8 @@ public abstract class FeatureRendererModel } @Override - public void setFeatureFilter(String featureType, FeatureMatcherSetI filter) + public void setFeatureFilter(String featureType, + FeatureMatcherSetI filter) { if (filter == null || filter.isEmpty()) { @@ -1159,7 +1164,7 @@ public abstract class FeatureRendererModel { return null; } - + return fc.getColor(sf); } @@ -1250,8 +1255,8 @@ public abstract class FeatureRendererModel int fromRes = match.getStart(); int toRes = match.getEnd(); mapFrom = match.getSequence(); - List fs = findFeaturesAtResidue( - mapFrom, fromRes, toRes); + List fs = findFeaturesAtResidue(mapFrom, fromRes, + toRes); for (SequenceFeature sf : fs) { if (!found.contains(sf)) @@ -1296,8 +1301,9 @@ public abstract class FeatureRendererModel } } } - - return new MappedFeatures(mapping.getMapping(), mapFrom, pos, residue, result); + + return new MappedFeatures(mapping.getMapping(), mapFrom, pos, residue, + result); } @Override @@ -1327,4 +1333,10 @@ public abstract class FeatureRendererModel } return true; } + + @Override + public AlignmentViewPanel getAlignPanel() + { + return null; + } }