X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fapi%2FFeatureRenderer.java;h=404c49725c5724ef70ddb46af04b6d5b25098505;hb=a3af95d79b82dad26b033d8bae458d4bffe9a95c;hp=40c7d4da3c31cea81b48e91b26700a90f9dd6006;hpb=9bcdd1d38988de350482acfd1a21628f73cdbd6d;p=jalview.git diff --git a/src/jalview/api/FeatureRenderer.java b/src/jalview/api/FeatureRenderer.java index 40c7d4d..404c497 100644 --- a/src/jalview/api/FeatureRenderer.java +++ b/src/jalview/api/FeatureRenderer.java @@ -22,7 +22,7 @@ package jalview.api; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; -import jalview.util.matcher.KeyedMatcherSetI; +import jalview.datamodel.features.FeatureMatcherSetI; import java.awt.Color; import java.awt.Graphics; @@ -133,7 +133,7 @@ public interface FeatureRenderer List getGroups(boolean visible); /** - * change visibility for a range of groups + * Set visibility for a list of groups * * @param toset * @param visible @@ -141,7 +141,7 @@ public interface FeatureRenderer void setGroupVisibility(List toset, boolean visible); /** - * change visibiilty of given group + * Set visibility of the given feature group * * @param group * @param visible @@ -149,9 +149,9 @@ public interface FeatureRenderer void setGroupVisibility(String group, boolean visible); /** - * Returns features at the specified aligned column on the given sequence. - * Non-positional features are not included. If the column has a gap, then - * enclosing features are included (but not contact features). + * Returns visible features at the specified aligned column on the given + * sequence. Non-positional features are not included. If the column has a gap, + * then enclosing features are included (but not contact features). * * @param sequence * @param column @@ -223,14 +223,14 @@ public interface FeatureRenderer * @param featureType * @return */ - KeyedMatcherSetI getFeatureFilter(String featureType); + FeatureMatcherSetI getFeatureFilter(String featureType); /** - * Answers a shallow copy of the feature filters map + * Answers the feature filters map * * @return */ - public Map getFeatureFilters(); + public Map getFeatureFilters(); /** * Sets the filters for the feature type, or removes them if a null or empty @@ -239,14 +239,14 @@ public interface FeatureRenderer * @param featureType * @param filter */ - void setFeatureFilter(String featureType, KeyedMatcherSetI filter); + void setFeatureFilter(String featureType, FeatureMatcherSetI filter); /** * Replaces all feature filters with the given map * * @param filters */ - void setFeatureFilters(Map filters); + void setFeatureFilters(Map filters); /** * Returns the colour for a particular feature instance. This includes @@ -255,14 +255,29 @@ public interface FeatureRenderer *

* Returns null if *

    - *
  • feature type is not visible, or
  • *
  • feature group is not visible, or
  • *
  • feature values lie outside any colour threshold, or
  • *
  • feature is excluded by filter conditions
  • *
+ * This method does not check feature type visibility. * * @param feature * @return */ Color getColour(SequenceFeature feature); + + /** + * Answers true if feature would be shown, else false. A feature is shown if + *
    + *
  • its feature type is set to visible
  • + *
  • its feature group is either null, or set to visible
  • + *
  • it is not excluded by a colour threshold on score or other numeric + * attribute
  • + *
  • it is not excluded by a filter condition
  • + *
+ * + * @param feature + * @return + */ + boolean isVisible(SequenceFeature feature); }