+
+ /**
+ * Creates a new Annotation object.
+ *
+ * @param displayChar
+ * DOCUMENT ME!
+ * @param desc
+ * DOCUMENT ME!
+ * @param ss
+ * DOCUMENT ME!
+ * @param val
+ * DOCUMENT ME!
+ * @param colour
+ * DOCUMENT ME!
+ */
+ public Annotation(String displayChar, String desc, char ss, float val,
+ Color colour)
+ {
+ this(displayChar, desc, ss, val);
+ this.colour = colour;
+ }
+
+ /**
+ * Copy constructor New annotation takes on the same (or duplicated)
+ * attributes as the given template
+ *
+ * @param that
+ * template annotation
+ */
+ public Annotation(Annotation that)
+ {
+ if (that == null || this == that)
+ {
+ return;
+ }
+ if (that.displayCharacter != null)
+ displayCharacter = new String(that.displayCharacter);
+ if (that.description != null)
+ description = new String(that.description);
+ secondaryStructure = that.secondaryStructure;
+ value = that.value;
+ colour = that.colour;
+ }
+
+ /**
+ * Value only annotation.
+ *
+ * @param val
+ * value at this annotation position
+ */
+ public Annotation(float val)
+ {
+ this(null, null, ' ', val);
+ }