X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fviewmodel%2Fseqfeatures%2FFeatureRendererModel.java;h=c58461e052b2752b5a919eecdc888aa197b993d9;hb=ef14d83cfe8ca0bb2271d50d638516cdc90c2b8b;hp=8bdcad46c701a9e1cd1b8a0ba28e865085853438;hpb=07108e505ff923f3b5135ffbdbb79259fe53432e;p=jalview.git diff --git a/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java b/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java index 8bdcad4..c58461e 100644 --- a/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java +++ b/src/jalview/viewmodel/seqfeatures/FeatureRendererModel.java @@ -26,11 +26,11 @@ import jalview.api.FeaturesDisplayedI; import jalview.datamodel.AlignmentI; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; +import jalview.datamodel.features.FeatureMatcherSetI; import jalview.datamodel.features.SequenceFeatures; import jalview.renderer.seqfeatures.FeatureRenderer; import jalview.schemes.FeatureColour; import jalview.util.ColorUtils; -import jalview.util.matcher.KeyedMatcherSetI; import java.awt.Color; import java.beans.PropertyChangeListener; @@ -58,12 +58,12 @@ public abstract class FeatureRendererModel public final FeatureColourI featureColour; - public final KeyedMatcherSetI filter; + public final FeatureMatcherSetI filter; public final Boolean show; public FeatureSettingsBean(String type, FeatureColourI colour, - KeyedMatcherSetI theFilter, Boolean isShown) + FeatureMatcherSetI theFilter, Boolean isShown) { featureType = type; featureColour = colour; @@ -90,7 +90,7 @@ public abstract class FeatureRendererModel /* * filters for each feature type */ - protected Map featureFilters = new HashMap<>(); + protected Map featureFilters = new HashMap<>(); protected String[] renderOrder; @@ -1068,25 +1068,25 @@ public abstract class FeatureRendererModel } @Override - public Map getFeatureFilters() + public Map getFeatureFilters() { return new HashMap<>(featureFilters); } @Override - public void setFeatureFilters(Map filters) + public void setFeatureFilters(Map filters) { featureFilters = filters; } @Override - public KeyedMatcherSetI getFeatureFilter(String featureType) + public FeatureMatcherSetI getFeatureFilter(String featureType) { return featureFilters.get(featureType); } @Override - public void setFeatureFilter(String featureType, KeyedMatcherSetI filter) + public void setFeatureFilter(String featureType, FeatureMatcherSetI filter) { if (filter == null || filter.isEmpty()) { @@ -1146,14 +1146,8 @@ public abstract class FeatureRendererModel */ protected boolean featureMatchesFilters(SequenceFeature sf) { - KeyedMatcherSetI filter = featureFilters.get(sf.getType()); - // TODO temporary fudge for Score and Label - return filter == null ? true - : filter.matches( - key -> "Label".equals(key[0]) ? sf.getDescription() - : ("Score".equals(key[0]) - ? String.valueOf(sf.getScore()) - : sf.getValueAsString(key))); + FeatureMatcherSetI filter = featureFilters.get(sf.getType()); + return filter == null ? true : filter.matches(sf); } }