public abstract class AlignmentViewport
implements AlignViewportI, CommandListener, VamsasSource
{
+ /**
+ * An enum for auto-calculated annotations, with constants for the
+ * annotation's label, and the key for the property to show it or not
+ */
+ public enum AutoAnnotation
+ {
+ CONSERVATION("Conservation", "SHOW_CONSERVATION"),
+ QUALITY("Quality", "SHOW_QUALITY"),
+ CONSENSUS("Consensus", "SHOW_IDENTITY"),
+ OCCUPANCY("Occupancy", "SHOW_OCCUPANCY");
+
+ public final String label;
+ public final String preferenceKey;
+
+ private AutoAnnotation(String lbl, String prefKey)
+ {
+ this.label = lbl;
+ this.preferenceKey = prefKey;
+ }
+ }
+
protected ViewportRanges ranges;
protected ViewStyleI viewStyle = new ViewStyle();
{
initRNAStructure();
}
- consensus = new AlignmentAnnotation("Consensus",
+ consensus = new AlignmentAnnotation(AutoAnnotation.CONSENSUS.label,
MessageManager.getString("label.consensus_descr"),
new Annotation[1], 0f, 100f, AlignmentAnnotation.BAR_GRAPH);
initConsensus(consensus);
}
}
- // these should be extracted from the view model - style and settings for
- // derived annotation
private void initGapCounts()
{
if (showOccupancy)
{
- gapcounts = new AlignmentAnnotation("Occupancy",
+ gapcounts = new AlignmentAnnotation(AutoAnnotation.OCCUPANCY.label,
MessageManager.getString("label.occupancy_descr"),
new Annotation[1], 0f, alignment.getHeight(),
AlignmentAnnotation.BAR_GRAPH);
{
if (conservation == null)
{
- conservation = new AlignmentAnnotation("Conservation",
+ conservation = new AlignmentAnnotation(
+ AutoAnnotation.CONSERVATION.label,
MessageManager.formatMessage("label.conservation_descr",
getConsPercGaps()),
new Annotation[1], 0f, 11f, AlignmentAnnotation.BAR_GRAPH);
{
if (quality == null)
{
- quality = new AlignmentAnnotation("Quality",
+ quality = new AlignmentAnnotation(AutoAnnotation.QUALITY.label,
MessageManager.getString("label.quality_descr"),
new Annotation[1], 0f, 11f, AlignmentAnnotation.BAR_GRAPH);
quality.hasText = true;