/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9)
- * Copyright (C) 2015 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
*
* This file is part of Jalview.
*
import jalview.datamodel.SequenceI;
import java.awt.Color;
+import java.awt.Graphics;
import java.util.List;
import java.util.Map;
* compute the perceived colour for a given column position in sequenceI,
* taking transparency and feature visibility into account.
*
- * @param col
- * - background colour (due to alignment/group shading schemes, etc).
* @param sequenceI
* - sequence providing features
* @param r
* - column position
+ * @param g
* @return
*/
- Color findFeatureColour(Color col, SequenceI sequenceI, int r);
+ Color findFeatureColour(SequenceI sequenceI, int r, Graphics g);
/**
* trigger the feature discovery process for a newly created feature renderer.
* @param ft
* @return display style for a feature
*/
- Object getFeatureStyle(String ft);
+ FeatureColourI getFeatureStyle(String ft);
/**
* update the feature style for a particular feature
*
* @param ft
* @param ggc
- * - currently allows java.awt.Color and
- * jalview.schemes.GraduatedColor
*/
- void setColour(String ft, Object ggc);
+ void setColour(String ft, FeatureColourI ggc);
AlignViewportI getViewport();
*
* @return
*/
- Map<String, Object> getFeatureColours();
+ Map<String, FeatureColourI> getFeatureColours();
/**
* query the alignment view to find all features
*
* @return
*/
- Map<String, Object> getDisplayedFeatureCols();
+ Map<String, FeatureColourI> getDisplayedFeatureCols();
/**
* get all registered groups
void setGroupVisibility(String group, boolean visible);
/**
- * locate features at a particular position on the given sequence
+ * Returns features at the specified position on the given sequence.
+ * Non-positional features are not included.
*
* @param sequence
* @param res
List<SequenceFeature> findFeaturesAtRes(SequenceI sequence, int res);
/**
+ * get current displayed types, in ordering of rendering (on top last)
*
- * @return true if the rendering platform supports transparency
+ * @return a (possibly empty) list of feature types
*/
- boolean isTransparencyAvailable();
- /**
- * get current displayed types
- *
- * @return
- */
-
- String[] getDisplayedFeatureTypes();
+ List<String> getDisplayedFeatureTypes();
/**
* get current displayed groups
*
- * @return
+ * @return a (possibly empty) list of feature groups
*/
- String[] getDisplayedFeatureGroups();
+ List<String> getDisplayedFeatureGroups();
/**
* display all features of these types
*/
void setVisible(String featureType);
+ /**
+ * Sets the transparency value, between 0 (full transparency) and 1 (no
+ * transparency)
+ *
+ * @param value
+ */
+ void setTransparency(float value);
+
+ /**
+ * Returns the transparency value, between 0 (full transparency) and 1 (no
+ * transparency)
+ *
+ * @return
+ */
+ float getTransparency();
}