Created by Castor
authoramwaterhouse <Andrew Waterhouse>
Thu, 19 May 2005 17:46:40 +0000 (17:46 +0000)
committeramwaterhouse <Andrew Waterhouse>
Thu, 19 May 2005 17:46:40 +0000 (17:46 +0000)
14 files changed:
src/jalview/binding/Alignment.java [new file with mode: 0755]
src/jalview/binding/Annotation.java [new file with mode: 0755]
src/jalview/binding/AnnotationElement.java [new file with mode: 0755]
src/jalview/binding/JGroup.java [new file with mode: 0755]
src/jalview/binding/JSeq.java [new file with mode: 0755]
src/jalview/binding/JalviewModel.java [new file with mode: 0755]
src/jalview/binding/JalviewModelSequence.java [new file with mode: 0755]
src/jalview/binding/JalviewState.java [new file with mode: 0755]
src/jalview/binding/Sequence.java [new file with mode: 0755]
src/jalview/binding/SequenceSet.java [new file with mode: 0755]
src/jalview/binding/SequenceType.java [new file with mode: 0755]
src/jalview/binding/VAMSAS.java [new file with mode: 0755]
src/jalview/binding/VamsasModel.java [new file with mode: 0755]
src/jalview/binding/Viewport.java [new file with mode: 0755]

diff --git a/src/jalview/binding/Alignment.java b/src/jalview/binding/Alignment.java
new file mode 100755 (executable)
index 0000000..9a38f10
--- /dev/null
@@ -0,0 +1,173 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class Alignment.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class Alignment implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _annotation\r
+     */\r
+    private jalview.binding.Annotation _annotation;\r
+\r
+    /**\r
+     * Field _sequenceSet\r
+     */\r
+    private jalview.binding.SequenceSet _sequenceSet;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public Alignment() {\r
+        super();\r
+    } //-- jalview.binding.Alignment()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Returns the value of field 'annotation'.\r
+     * \r
+     * @return Annotation\r
+     * @return the value of field 'annotation'.\r
+     */\r
+    public jalview.binding.Annotation getAnnotation()\r
+    {\r
+        return this._annotation;\r
+    } //-- jalview.binding.Annotation getAnnotation() \r
+\r
+    /**\r
+     * Returns the value of field 'sequenceSet'.\r
+     * \r
+     * @return SequenceSet\r
+     * @return the value of field 'sequenceSet'.\r
+     */\r
+    public jalview.binding.SequenceSet getSequenceSet()\r
+    {\r
+        return this._sequenceSet;\r
+    } //-- jalview.binding.SequenceSet getSequenceSet() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Sets the value of field 'annotation'.\r
+     * \r
+     * @param annotation the value of field 'annotation'.\r
+     */\r
+    public void setAnnotation(jalview.binding.Annotation annotation)\r
+    {\r
+        this._annotation = annotation;\r
+    } //-- void setAnnotation(jalview.binding.Annotation) \r
+\r
+    /**\r
+     * Sets the value of field 'sequenceSet'.\r
+     * \r
+     * @param sequenceSet the value of field 'sequenceSet'.\r
+     */\r
+    public void setSequenceSet(jalview.binding.SequenceSet sequenceSet)\r
+    {\r
+        this._sequenceSet = sequenceSet;\r
+    } //-- void setSequenceSet(jalview.binding.SequenceSet) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.Alignment) Unmarshaller.unmarshal(jalview.binding.Alignment.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/Annotation.java b/src/jalview/binding/Annotation.java
new file mode 100755 (executable)
index 0000000..fefdd12
--- /dev/null
@@ -0,0 +1,379 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Enumeration;\r
+import java.util.Vector;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class Annotation.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class Annotation implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _graph\r
+     */\r
+    private boolean _graph;\r
+\r
+    /**\r
+     * keeps track of state for field: _graph\r
+     */\r
+    private boolean _has_graph;\r
+\r
+    /**\r
+     * Field _annotationElementList\r
+     */\r
+    private java.util.Vector _annotationElementList;\r
+\r
+    /**\r
+     * Field _label\r
+     */\r
+    private java.lang.String _label;\r
+\r
+    /**\r
+     * Field _description\r
+     */\r
+    private java.lang.String _description;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public Annotation() {\r
+        super();\r
+        _annotationElementList = new Vector();\r
+    } //-- jalview.binding.Annotation()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method addAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @param vAnnotationElement\r
+     */\r
+    public void addAnnotationElement(jalview.binding.AnnotationElement vAnnotationElement)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _annotationElementList.addElement(vAnnotationElement);\r
+    } //-- void addAnnotationElement(jalview.binding.AnnotationElement) \r
+\r
+    /**\r
+     * Method addAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vAnnotationElement\r
+     */\r
+    public void addAnnotationElement(int index, jalview.binding.AnnotationElement vAnnotationElement)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _annotationElementList.insertElementAt(vAnnotationElement, index);\r
+    } //-- void addAnnotationElement(int, jalview.binding.AnnotationElement) \r
+\r
+    /**\r
+     * Method deleteGraph\r
+     * \r
+     */\r
+    public void deleteGraph()\r
+    {\r
+        this._has_graph= false;\r
+    } //-- void deleteGraph() \r
+\r
+    /**\r
+     * Method enumerateAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateAnnotationElement()\r
+    {\r
+        return _annotationElementList.elements();\r
+    } //-- java.util.Enumeration enumerateAnnotationElement() \r
+\r
+    /**\r
+     * Method getAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return AnnotationElement\r
+     */\r
+    public jalview.binding.AnnotationElement getAnnotationElement(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _annotationElementList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.AnnotationElement) _annotationElementList.elementAt(index);\r
+    } //-- jalview.binding.AnnotationElement getAnnotationElement(int) \r
+\r
+    /**\r
+     * Method getAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @return AnnotationElement\r
+     */\r
+    public jalview.binding.AnnotationElement[] getAnnotationElement()\r
+    {\r
+        int size = _annotationElementList.size();\r
+        jalview.binding.AnnotationElement[] mArray = new jalview.binding.AnnotationElement[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.AnnotationElement) _annotationElementList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.AnnotationElement[] getAnnotationElement() \r
+\r
+    /**\r
+     * Method getAnnotationElementCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getAnnotationElementCount()\r
+    {\r
+        return _annotationElementList.size();\r
+    } //-- int getAnnotationElementCount() \r
+\r
+    /**\r
+     * Returns the value of field 'description'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'description'.\r
+     */\r
+    public java.lang.String getDescription()\r
+    {\r
+        return this._description;\r
+    } //-- java.lang.String getDescription() \r
+\r
+    /**\r
+     * Returns the value of field 'graph'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'graph'.\r
+     */\r
+    public boolean getGraph()\r
+    {\r
+        return this._graph;\r
+    } //-- boolean getGraph() \r
+\r
+    /**\r
+     * Returns the value of field 'label'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'label'.\r
+     */\r
+    public java.lang.String getLabel()\r
+    {\r
+        return this._label;\r
+    } //-- java.lang.String getLabel() \r
+\r
+    /**\r
+     * Method hasGraph\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasGraph()\r
+    {\r
+        return this._has_graph;\r
+    } //-- boolean hasGraph() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method removeAllAnnotationElement\r
+     * \r
+     */\r
+    public void removeAllAnnotationElement()\r
+    {\r
+        _annotationElementList.removeAllElements();\r
+    } //-- void removeAllAnnotationElement() \r
+\r
+    /**\r
+     * Method removeAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return AnnotationElement\r
+     */\r
+    public jalview.binding.AnnotationElement removeAnnotationElement(int index)\r
+    {\r
+        java.lang.Object obj = _annotationElementList.elementAt(index);\r
+        _annotationElementList.removeElementAt(index);\r
+        return (jalview.binding.AnnotationElement) obj;\r
+    } //-- jalview.binding.AnnotationElement removeAnnotationElement(int) \r
+\r
+    /**\r
+     * Method setAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vAnnotationElement\r
+     */\r
+    public void setAnnotationElement(int index, jalview.binding.AnnotationElement vAnnotationElement)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _annotationElementList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _annotationElementList.setElementAt(vAnnotationElement, index);\r
+    } //-- void setAnnotationElement(int, jalview.binding.AnnotationElement) \r
+\r
+    /**\r
+     * Method setAnnotationElement\r
+     * \r
+     * \r
+     * \r
+     * @param annotationElementArray\r
+     */\r
+    public void setAnnotationElement(jalview.binding.AnnotationElement[] annotationElementArray)\r
+    {\r
+        //-- copy array\r
+        _annotationElementList.removeAllElements();\r
+        for (int i = 0; i < annotationElementArray.length; i++) {\r
+            _annotationElementList.addElement(annotationElementArray[i]);\r
+        }\r
+    } //-- void setAnnotationElement(jalview.binding.AnnotationElement) \r
+\r
+    /**\r
+     * Sets the value of field 'description'.\r
+     * \r
+     * @param description the value of field 'description'.\r
+     */\r
+    public void setDescription(java.lang.String description)\r
+    {\r
+        this._description = description;\r
+    } //-- void setDescription(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'graph'.\r
+     * \r
+     * @param graph the value of field 'graph'.\r
+     */\r
+    public void setGraph(boolean graph)\r
+    {\r
+        this._graph = graph;\r
+        this._has_graph = true;\r
+    } //-- void setGraph(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'label'.\r
+     * \r
+     * @param label the value of field 'label'.\r
+     */\r
+    public void setLabel(java.lang.String label)\r
+    {\r
+        this._label = label;\r
+    } //-- void setLabel(java.lang.String) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.Annotation) Unmarshaller.unmarshal(jalview.binding.Annotation.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/AnnotationElement.java b/src/jalview/binding/AnnotationElement.java
new file mode 100755 (executable)
index 0000000..e4aec31
--- /dev/null
@@ -0,0 +1,306 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class AnnotationElement.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class AnnotationElement implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _position\r
+     */\r
+    private int _position;\r
+\r
+    /**\r
+     * keeps track of state for field: _position\r
+     */\r
+    private boolean _has_position;\r
+\r
+    /**\r
+     * Field _displayCharacter\r
+     */\r
+    private java.lang.String _displayCharacter;\r
+\r
+    /**\r
+     * Field _description\r
+     */\r
+    private java.lang.String _description;\r
+\r
+    /**\r
+     * Field _secondaryStructure\r
+     */\r
+    private java.lang.String _secondaryStructure;\r
+\r
+    /**\r
+     * Field _value\r
+     */\r
+    private float _value;\r
+\r
+    /**\r
+     * keeps track of state for field: _value\r
+     */\r
+    private boolean _has_value;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public AnnotationElement() {\r
+        super();\r
+    } //-- jalview.binding.AnnotationElement()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method deletePosition\r
+     * \r
+     */\r
+    public void deletePosition()\r
+    {\r
+        this._has_position= false;\r
+    } //-- void deletePosition() \r
+\r
+    /**\r
+     * Method deleteValue\r
+     * \r
+     */\r
+    public void deleteValue()\r
+    {\r
+        this._has_value= false;\r
+    } //-- void deleteValue() \r
+\r
+    /**\r
+     * Returns the value of field 'description'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'description'.\r
+     */\r
+    public java.lang.String getDescription()\r
+    {\r
+        return this._description;\r
+    } //-- java.lang.String getDescription() \r
+\r
+    /**\r
+     * Returns the value of field 'displayCharacter'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'displayCharacter'.\r
+     */\r
+    public java.lang.String getDisplayCharacter()\r
+    {\r
+        return this._displayCharacter;\r
+    } //-- java.lang.String getDisplayCharacter() \r
+\r
+    /**\r
+     * Returns the value of field 'position'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'position'.\r
+     */\r
+    public int getPosition()\r
+    {\r
+        return this._position;\r
+    } //-- int getPosition() \r
+\r
+    /**\r
+     * Returns the value of field 'secondaryStructure'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'secondaryStructure'.\r
+     */\r
+    public java.lang.String getSecondaryStructure()\r
+    {\r
+        return this._secondaryStructure;\r
+    } //-- java.lang.String getSecondaryStructure() \r
+\r
+    /**\r
+     * Returns the value of field 'value'.\r
+     * \r
+     * @return float\r
+     * @return the value of field 'value'.\r
+     */\r
+    public float getValue()\r
+    {\r
+        return this._value;\r
+    } //-- float getValue() \r
+\r
+    /**\r
+     * Method hasPosition\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasPosition()\r
+    {\r
+        return this._has_position;\r
+    } //-- boolean hasPosition() \r
+\r
+    /**\r
+     * Method hasValue\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasValue()\r
+    {\r
+        return this._has_value;\r
+    } //-- boolean hasValue() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Sets the value of field 'description'.\r
+     * \r
+     * @param description the value of field 'description'.\r
+     */\r
+    public void setDescription(java.lang.String description)\r
+    {\r
+        this._description = description;\r
+    } //-- void setDescription(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'displayCharacter'.\r
+     * \r
+     * @param displayCharacter the value of field 'displayCharacter'\r
+     */\r
+    public void setDisplayCharacter(java.lang.String displayCharacter)\r
+    {\r
+        this._displayCharacter = displayCharacter;\r
+    } //-- void setDisplayCharacter(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'position'.\r
+     * \r
+     * @param position the value of field 'position'.\r
+     */\r
+    public void setPosition(int position)\r
+    {\r
+        this._position = position;\r
+        this._has_position = true;\r
+    } //-- void setPosition(int) \r
+\r
+    /**\r
+     * Sets the value of field 'secondaryStructure'.\r
+     * \r
+     * @param secondaryStructure the value of field\r
+     * 'secondaryStructure'.\r
+     */\r
+    public void setSecondaryStructure(java.lang.String secondaryStructure)\r
+    {\r
+        this._secondaryStructure = secondaryStructure;\r
+    } //-- void setSecondaryStructure(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'value'.\r
+     * \r
+     * @param value the value of field 'value'.\r
+     */\r
+    public void setValue(float value)\r
+    {\r
+        this._value = value;\r
+        this._has_value = true;\r
+    } //-- void setValue(float) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.AnnotationElement) Unmarshaller.unmarshal(jalview.binding.AnnotationElement.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/JGroup.java b/src/jalview/binding/JGroup.java
new file mode 100755 (executable)
index 0000000..6473149
--- /dev/null
@@ -0,0 +1,750 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Enumeration;\r
+import java.util.Vector;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class JGroup.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class JGroup implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _start\r
+     */\r
+    private int _start;\r
+\r
+    /**\r
+     * keeps track of state for field: _start\r
+     */\r
+    private boolean _has_start;\r
+\r
+    /**\r
+     * Field _end\r
+     */\r
+    private int _end;\r
+\r
+    /**\r
+     * keeps track of state for field: _end\r
+     */\r
+    private boolean _has_end;\r
+\r
+    /**\r
+     * Field _name\r
+     */\r
+    private java.lang.String _name;\r
+\r
+    /**\r
+     * Field _colour\r
+     */\r
+    private java.lang.String _colour;\r
+\r
+    /**\r
+     * Field _consThreshold\r
+     */\r
+    private int _consThreshold;\r
+\r
+    /**\r
+     * keeps track of state for field: _consThreshold\r
+     */\r
+    private boolean _has_consThreshold;\r
+\r
+    /**\r
+     * Field _pidThreshold\r
+     */\r
+    private int _pidThreshold;\r
+\r
+    /**\r
+     * keeps track of state for field: _pidThreshold\r
+     */\r
+    private boolean _has_pidThreshold;\r
+\r
+    /**\r
+     * Field _outlineColour\r
+     */\r
+    private int _outlineColour;\r
+\r
+    /**\r
+     * keeps track of state for field: _outlineColour\r
+     */\r
+    private boolean _has_outlineColour;\r
+\r
+    /**\r
+     * Field _displayBoxes\r
+     */\r
+    private boolean _displayBoxes;\r
+\r
+    /**\r
+     * keeps track of state for field: _displayBoxes\r
+     */\r
+    private boolean _has_displayBoxes;\r
+\r
+    /**\r
+     * Field _displayText\r
+     */\r
+    private boolean _displayText;\r
+\r
+    /**\r
+     * keeps track of state for field: _displayText\r
+     */\r
+    private boolean _has_displayText;\r
+\r
+    /**\r
+     * Field _colourText\r
+     */\r
+    private boolean _colourText;\r
+\r
+    /**\r
+     * keeps track of state for field: _colourText\r
+     */\r
+    private boolean _has_colourText;\r
+\r
+    /**\r
+     * Field _seqList\r
+     */\r
+    private java.util.Vector _seqList;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public JGroup() {\r
+        super();\r
+        _seqList = new Vector();\r
+    } //-- jalview.binding.JGroup()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method addSeq\r
+     * \r
+     * \r
+     * \r
+     * @param vSeq\r
+     */\r
+    public void addSeq(int vSeq)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _seqList.addElement(new java.lang.Integer(vSeq));\r
+    } //-- void addSeq(int) \r
+\r
+    /**\r
+     * Method addSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vSeq\r
+     */\r
+    public void addSeq(int index, int vSeq)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _seqList.insertElementAt(new java.lang.Integer(vSeq), index);\r
+    } //-- void addSeq(int, int) \r
+\r
+    /**\r
+     * Method deleteColourText\r
+     * \r
+     */\r
+    public void deleteColourText()\r
+    {\r
+        this._has_colourText= false;\r
+    } //-- void deleteColourText() \r
+\r
+    /**\r
+     * Method deleteConsThreshold\r
+     * \r
+     */\r
+    public void deleteConsThreshold()\r
+    {\r
+        this._has_consThreshold= false;\r
+    } //-- void deleteConsThreshold() \r
+\r
+    /**\r
+     * Method deleteDisplayBoxes\r
+     * \r
+     */\r
+    public void deleteDisplayBoxes()\r
+    {\r
+        this._has_displayBoxes= false;\r
+    } //-- void deleteDisplayBoxes() \r
+\r
+    /**\r
+     * Method deleteDisplayText\r
+     * \r
+     */\r
+    public void deleteDisplayText()\r
+    {\r
+        this._has_displayText= false;\r
+    } //-- void deleteDisplayText() \r
+\r
+    /**\r
+     * Method deleteEnd\r
+     * \r
+     */\r
+    public void deleteEnd()\r
+    {\r
+        this._has_end= false;\r
+    } //-- void deleteEnd() \r
+\r
+    /**\r
+     * Method deleteOutlineColour\r
+     * \r
+     */\r
+    public void deleteOutlineColour()\r
+    {\r
+        this._has_outlineColour= false;\r
+    } //-- void deleteOutlineColour() \r
+\r
+    /**\r
+     * Method deletePidThreshold\r
+     * \r
+     */\r
+    public void deletePidThreshold()\r
+    {\r
+        this._has_pidThreshold= false;\r
+    } //-- void deletePidThreshold() \r
+\r
+    /**\r
+     * Method deleteStart\r
+     * \r
+     */\r
+    public void deleteStart()\r
+    {\r
+        this._has_start= false;\r
+    } //-- void deleteStart() \r
+\r
+    /**\r
+     * Method enumerateSeq\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateSeq()\r
+    {\r
+        return _seqList.elements();\r
+    } //-- java.util.Enumeration enumerateSeq() \r
+\r
+    /**\r
+     * Returns the value of field 'colour'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'colour'.\r
+     */\r
+    public java.lang.String getColour()\r
+    {\r
+        return this._colour;\r
+    } //-- java.lang.String getColour() \r
+\r
+    /**\r
+     * Returns the value of field 'colourText'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'colourText'.\r
+     */\r
+    public boolean getColourText()\r
+    {\r
+        return this._colourText;\r
+    } //-- boolean getColourText() \r
+\r
+    /**\r
+     * Returns the value of field 'consThreshold'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'consThreshold'.\r
+     */\r
+    public int getConsThreshold()\r
+    {\r
+        return this._consThreshold;\r
+    } //-- int getConsThreshold() \r
+\r
+    /**\r
+     * Returns the value of field 'displayBoxes'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'displayBoxes'.\r
+     */\r
+    public boolean getDisplayBoxes()\r
+    {\r
+        return this._displayBoxes;\r
+    } //-- boolean getDisplayBoxes() \r
+\r
+    /**\r
+     * Returns the value of field 'displayText'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'displayText'.\r
+     */\r
+    public boolean getDisplayText()\r
+    {\r
+        return this._displayText;\r
+    } //-- boolean getDisplayText() \r
+\r
+    /**\r
+     * Returns the value of field 'end'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'end'.\r
+     */\r
+    public int getEnd()\r
+    {\r
+        return this._end;\r
+    } //-- int getEnd() \r
+\r
+    /**\r
+     * Returns the value of field 'name'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'name'.\r
+     */\r
+    public java.lang.String getName()\r
+    {\r
+        return this._name;\r
+    } //-- java.lang.String getName() \r
+\r
+    /**\r
+     * Returns the value of field 'outlineColour'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'outlineColour'.\r
+     */\r
+    public int getOutlineColour()\r
+    {\r
+        return this._outlineColour;\r
+    } //-- int getOutlineColour() \r
+\r
+    /**\r
+     * Returns the value of field 'pidThreshold'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'pidThreshold'.\r
+     */\r
+    public int getPidThreshold()\r
+    {\r
+        return this._pidThreshold;\r
+    } //-- int getPidThreshold() \r
+\r
+    /**\r
+     * Method getSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return int\r
+     */\r
+    public int getSeq(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _seqList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return ((java.lang.Integer)_seqList.elementAt(index)).intValue();\r
+    } //-- int getSeq(int) \r
+\r
+    /**\r
+     * Method getSeq\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int[] getSeq()\r
+    {\r
+        int size = _seqList.size();\r
+        int[] mArray = new int[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = ((java.lang.Integer)_seqList.elementAt(index)).intValue();\r
+        }\r
+        return mArray;\r
+    } //-- int[] getSeq() \r
+\r
+    /**\r
+     * Method getSeqCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getSeqCount()\r
+    {\r
+        return _seqList.size();\r
+    } //-- int getSeqCount() \r
+\r
+    /**\r
+     * Returns the value of field 'start'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'start'.\r
+     */\r
+    public int getStart()\r
+    {\r
+        return this._start;\r
+    } //-- int getStart() \r
+\r
+    /**\r
+     * Method hasColourText\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasColourText()\r
+    {\r
+        return this._has_colourText;\r
+    } //-- boolean hasColourText() \r
+\r
+    /**\r
+     * Method hasConsThreshold\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasConsThreshold()\r
+    {\r
+        return this._has_consThreshold;\r
+    } //-- boolean hasConsThreshold() \r
+\r
+    /**\r
+     * Method hasDisplayBoxes\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasDisplayBoxes()\r
+    {\r
+        return this._has_displayBoxes;\r
+    } //-- boolean hasDisplayBoxes() \r
+\r
+    /**\r
+     * Method hasDisplayText\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasDisplayText()\r
+    {\r
+        return this._has_displayText;\r
+    } //-- boolean hasDisplayText() \r
+\r
+    /**\r
+     * Method hasEnd\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasEnd()\r
+    {\r
+        return this._has_end;\r
+    } //-- boolean hasEnd() \r
+\r
+    /**\r
+     * Method hasOutlineColour\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasOutlineColour()\r
+    {\r
+        return this._has_outlineColour;\r
+    } //-- boolean hasOutlineColour() \r
+\r
+    /**\r
+     * Method hasPidThreshold\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasPidThreshold()\r
+    {\r
+        return this._has_pidThreshold;\r
+    } //-- boolean hasPidThreshold() \r
+\r
+    /**\r
+     * Method hasStart\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasStart()\r
+    {\r
+        return this._has_start;\r
+    } //-- boolean hasStart() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method removeAllSeq\r
+     * \r
+     */\r
+    public void removeAllSeq()\r
+    {\r
+        _seqList.removeAllElements();\r
+    } //-- void removeAllSeq() \r
+\r
+    /**\r
+     * Method removeSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return int\r
+     */\r
+    public int removeSeq(int index)\r
+    {\r
+        java.lang.Object obj = _seqList.elementAt(index);\r
+        _seqList.removeElementAt(index);\r
+        return ((java.lang.Integer)obj).intValue();\r
+    } //-- int removeSeq(int) \r
+\r
+    /**\r
+     * Sets the value of field 'colour'.\r
+     * \r
+     * @param colour the value of field 'colour'.\r
+     */\r
+    public void setColour(java.lang.String colour)\r
+    {\r
+        this._colour = colour;\r
+    } //-- void setColour(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'colourText'.\r
+     * \r
+     * @param colourText the value of field 'colourText'.\r
+     */\r
+    public void setColourText(boolean colourText)\r
+    {\r
+        this._colourText = colourText;\r
+        this._has_colourText = true;\r
+    } //-- void setColourText(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'consThreshold'.\r
+     * \r
+     * @param consThreshold the value of field 'consThreshold'.\r
+     */\r
+    public void setConsThreshold(int consThreshold)\r
+    {\r
+        this._consThreshold = consThreshold;\r
+        this._has_consThreshold = true;\r
+    } //-- void setConsThreshold(int) \r
+\r
+    /**\r
+     * Sets the value of field 'displayBoxes'.\r
+     * \r
+     * @param displayBoxes the value of field 'displayBoxes'.\r
+     */\r
+    public void setDisplayBoxes(boolean displayBoxes)\r
+    {\r
+        this._displayBoxes = displayBoxes;\r
+        this._has_displayBoxes = true;\r
+    } //-- void setDisplayBoxes(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'displayText'.\r
+     * \r
+     * @param displayText the value of field 'displayText'.\r
+     */\r
+    public void setDisplayText(boolean displayText)\r
+    {\r
+        this._displayText = displayText;\r
+        this._has_displayText = true;\r
+    } //-- void setDisplayText(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'end'.\r
+     * \r
+     * @param end the value of field 'end'.\r
+     */\r
+    public void setEnd(int end)\r
+    {\r
+        this._end = end;\r
+        this._has_end = true;\r
+    } //-- void setEnd(int) \r
+\r
+    /**\r
+     * Sets the value of field 'name'.\r
+     * \r
+     * @param name the value of field 'name'.\r
+     */\r
+    public void setName(java.lang.String name)\r
+    {\r
+        this._name = name;\r
+    } //-- void setName(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'outlineColour'.\r
+     * \r
+     * @param outlineColour the value of field 'outlineColour'.\r
+     */\r
+    public void setOutlineColour(int outlineColour)\r
+    {\r
+        this._outlineColour = outlineColour;\r
+        this._has_outlineColour = true;\r
+    } //-- void setOutlineColour(int) \r
+\r
+    /**\r
+     * Sets the value of field 'pidThreshold'.\r
+     * \r
+     * @param pidThreshold the value of field 'pidThreshold'.\r
+     */\r
+    public void setPidThreshold(int pidThreshold)\r
+    {\r
+        this._pidThreshold = pidThreshold;\r
+        this._has_pidThreshold = true;\r
+    } //-- void setPidThreshold(int) \r
+\r
+    /**\r
+     * Method setSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vSeq\r
+     */\r
+    public void setSeq(int index, int vSeq)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _seqList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _seqList.setElementAt(new java.lang.Integer(vSeq), index);\r
+    } //-- void setSeq(int, int) \r
+\r
+    /**\r
+     * Method setSeq\r
+     * \r
+     * \r
+     * \r
+     * @param seqArray\r
+     */\r
+    public void setSeq(int[] seqArray)\r
+    {\r
+        //-- copy array\r
+        _seqList.removeAllElements();\r
+        for (int i = 0; i < seqArray.length; i++) {\r
+            _seqList.addElement(new java.lang.Integer(seqArray[i]));\r
+        }\r
+    } //-- void setSeq(int) \r
+\r
+    /**\r
+     * Sets the value of field 'start'.\r
+     * \r
+     * @param start the value of field 'start'.\r
+     */\r
+    public void setStart(int start)\r
+    {\r
+        this._start = start;\r
+        this._has_start = true;\r
+    } //-- void setStart(int) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.JGroup) Unmarshaller.unmarshal(jalview.binding.JGroup.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/JSeq.java b/src/jalview/binding/JSeq.java
new file mode 100755 (executable)
index 0000000..751409f
--- /dev/null
@@ -0,0 +1,333 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class JSeq.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class JSeq implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _colour\r
+     */\r
+    private int _colour;\r
+\r
+    /**\r
+     * keeps track of state for field: _colour\r
+     */\r
+    private boolean _has_colour;\r
+\r
+    /**\r
+     * Field _start\r
+     */\r
+    private int _start;\r
+\r
+    /**\r
+     * keeps track of state for field: _start\r
+     */\r
+    private boolean _has_start;\r
+\r
+    /**\r
+     * Field _end\r
+     */\r
+    private int _end;\r
+\r
+    /**\r
+     * keeps track of state for field: _end\r
+     */\r
+    private boolean _has_end;\r
+\r
+    /**\r
+     * Field _id\r
+     */\r
+    private int _id;\r
+\r
+    /**\r
+     * keeps track of state for field: _id\r
+     */\r
+    private boolean _has_id;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public JSeq() {\r
+        super();\r
+    } //-- jalview.binding.JSeq()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method deleteColour\r
+     * \r
+     */\r
+    public void deleteColour()\r
+    {\r
+        this._has_colour= false;\r
+    } //-- void deleteColour() \r
+\r
+    /**\r
+     * Method deleteEnd\r
+     * \r
+     */\r
+    public void deleteEnd()\r
+    {\r
+        this._has_end= false;\r
+    } //-- void deleteEnd() \r
+\r
+    /**\r
+     * Method deleteId\r
+     * \r
+     */\r
+    public void deleteId()\r
+    {\r
+        this._has_id= false;\r
+    } //-- void deleteId() \r
+\r
+    /**\r
+     * Method deleteStart\r
+     * \r
+     */\r
+    public void deleteStart()\r
+    {\r
+        this._has_start= false;\r
+    } //-- void deleteStart() \r
+\r
+    /**\r
+     * Returns the value of field 'colour'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'colour'.\r
+     */\r
+    public int getColour()\r
+    {\r
+        return this._colour;\r
+    } //-- int getColour() \r
+\r
+    /**\r
+     * Returns the value of field 'end'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'end'.\r
+     */\r
+    public int getEnd()\r
+    {\r
+        return this._end;\r
+    } //-- int getEnd() \r
+\r
+    /**\r
+     * Returns the value of field 'id'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'id'.\r
+     */\r
+    public int getId()\r
+    {\r
+        return this._id;\r
+    } //-- int getId() \r
+\r
+    /**\r
+     * Returns the value of field 'start'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'start'.\r
+     */\r
+    public int getStart()\r
+    {\r
+        return this._start;\r
+    } //-- int getStart() \r
+\r
+    /**\r
+     * Method hasColour\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasColour()\r
+    {\r
+        return this._has_colour;\r
+    } //-- boolean hasColour() \r
+\r
+    /**\r
+     * Method hasEnd\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasEnd()\r
+    {\r
+        return this._has_end;\r
+    } //-- boolean hasEnd() \r
+\r
+    /**\r
+     * Method hasId\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasId()\r
+    {\r
+        return this._has_id;\r
+    } //-- boolean hasId() \r
+\r
+    /**\r
+     * Method hasStart\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasStart()\r
+    {\r
+        return this._has_start;\r
+    } //-- boolean hasStart() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Sets the value of field 'colour'.\r
+     * \r
+     * @param colour the value of field 'colour'.\r
+     */\r
+    public void setColour(int colour)\r
+    {\r
+        this._colour = colour;\r
+        this._has_colour = true;\r
+    } //-- void setColour(int) \r
+\r
+    /**\r
+     * Sets the value of field 'end'.\r
+     * \r
+     * @param end the value of field 'end'.\r
+     */\r
+    public void setEnd(int end)\r
+    {\r
+        this._end = end;\r
+        this._has_end = true;\r
+    } //-- void setEnd(int) \r
+\r
+    /**\r
+     * Sets the value of field 'id'.\r
+     * \r
+     * @param id the value of field 'id'.\r
+     */\r
+    public void setId(int id)\r
+    {\r
+        this._id = id;\r
+        this._has_id = true;\r
+    } //-- void setId(int) \r
+\r
+    /**\r
+     * Sets the value of field 'start'.\r
+     * \r
+     * @param start the value of field 'start'.\r
+     */\r
+    public void setStart(int start)\r
+    {\r
+        this._start = start;\r
+        this._has_start = true;\r
+    } //-- void setStart(int) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.JSeq) Unmarshaller.unmarshal(jalview.binding.JSeq.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/JalviewModel.java b/src/jalview/binding/JalviewModel.java
new file mode 100755 (executable)
index 0000000..a558b10
--- /dev/null
@@ -0,0 +1,201 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Date;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class JalviewModel.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class JalviewModel implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _creationDate\r
+     */\r
+    private java.util.Date _creationDate;\r
+\r
+    /**\r
+     * Field _vamsasModel\r
+     */\r
+    private jalview.binding.VamsasModel _vamsasModel;\r
+\r
+    /**\r
+     * Field _jalviewModelSequence\r
+     */\r
+    private jalview.binding.JalviewModelSequence _jalviewModelSequence;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public JalviewModel() {\r
+        super();\r
+    } //-- jalview.binding.JalviewModel()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Returns the value of field 'creationDate'.\r
+     * \r
+     * @return Date\r
+     * @return the value of field 'creationDate'.\r
+     */\r
+    public java.util.Date getCreationDate()\r
+    {\r
+        return this._creationDate;\r
+    } //-- java.util.Date getCreationDate() \r
+\r
+    /**\r
+     * Returns the value of field 'jalviewModelSequence'.\r
+     * \r
+     * @return JalviewModelSequence\r
+     * @return the value of field 'jalviewModelSequence'.\r
+     */\r
+    public jalview.binding.JalviewModelSequence getJalviewModelSequence()\r
+    {\r
+        return this._jalviewModelSequence;\r
+    } //-- jalview.binding.JalviewModelSequence getJalviewModelSequence() \r
+\r
+    /**\r
+     * Returns the value of field 'vamsasModel'.\r
+     * \r
+     * @return VamsasModel\r
+     * @return the value of field 'vamsasModel'.\r
+     */\r
+    public jalview.binding.VamsasModel getVamsasModel()\r
+    {\r
+        return this._vamsasModel;\r
+    } //-- jalview.binding.VamsasModel getVamsasModel() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Sets the value of field 'creationDate'.\r
+     * \r
+     * @param creationDate the value of field 'creationDate'.\r
+     */\r
+    public void setCreationDate(java.util.Date creationDate)\r
+    {\r
+        this._creationDate = creationDate;\r
+    } //-- void setCreationDate(java.util.Date) \r
+\r
+    /**\r
+     * Sets the value of field 'jalviewModelSequence'.\r
+     * \r
+     * @param jalviewModelSequence the value of field\r
+     * 'jalviewModelSequence'.\r
+     */\r
+    public void setJalviewModelSequence(jalview.binding.JalviewModelSequence jalviewModelSequence)\r
+    {\r
+        this._jalviewModelSequence = jalviewModelSequence;\r
+    } //-- void setJalviewModelSequence(jalview.binding.JalviewModelSequence) \r
+\r
+    /**\r
+     * Sets the value of field 'vamsasModel'.\r
+     * \r
+     * @param vamsasModel the value of field 'vamsasModel'.\r
+     */\r
+    public void setVamsasModel(jalview.binding.VamsasModel vamsasModel)\r
+    {\r
+        this._vamsasModel = vamsasModel;\r
+    } //-- void setVamsasModel(jalview.binding.VamsasModel) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.JalviewModel) Unmarshaller.unmarshal(jalview.binding.JalviewModel.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/JalviewModelSequence.java b/src/jalview/binding/JalviewModelSequence.java
new file mode 100755 (executable)
index 0000000..7f17893
--- /dev/null
@@ -0,0 +1,576 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Enumeration;\r
+import java.util.Vector;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class JalviewModelSequence.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class JalviewModelSequence implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _JSeqList\r
+     */\r
+    private java.util.Vector _JSeqList;\r
+\r
+    /**\r
+     * Field _JGroupList\r
+     */\r
+    private java.util.Vector _JGroupList;\r
+\r
+    /**\r
+     * Field _viewportList\r
+     */\r
+    private java.util.Vector _viewportList;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public JalviewModelSequence() {\r
+        super();\r
+        _JSeqList = new Vector();\r
+        _JGroupList = new Vector();\r
+        _viewportList = new Vector();\r
+    } //-- jalview.binding.JalviewModelSequence()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method addJGroup\r
+     * \r
+     * \r
+     * \r
+     * @param vJGroup\r
+     */\r
+    public void addJGroup(jalview.binding.JGroup vJGroup)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _JGroupList.addElement(vJGroup);\r
+    } //-- void addJGroup(jalview.binding.JGroup) \r
+\r
+    /**\r
+     * Method addJGroup\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vJGroup\r
+     */\r
+    public void addJGroup(int index, jalview.binding.JGroup vJGroup)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _JGroupList.insertElementAt(vJGroup, index);\r
+    } //-- void addJGroup(int, jalview.binding.JGroup) \r
+\r
+    /**\r
+     * Method addJSeq\r
+     * \r
+     * \r
+     * \r
+     * @param vJSeq\r
+     */\r
+    public void addJSeq(jalview.binding.JSeq vJSeq)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _JSeqList.addElement(vJSeq);\r
+    } //-- void addJSeq(jalview.binding.JSeq) \r
+\r
+    /**\r
+     * Method addJSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vJSeq\r
+     */\r
+    public void addJSeq(int index, jalview.binding.JSeq vJSeq)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _JSeqList.insertElementAt(vJSeq, index);\r
+    } //-- void addJSeq(int, jalview.binding.JSeq) \r
+\r
+    /**\r
+     * Method addViewport\r
+     * \r
+     * \r
+     * \r
+     * @param vViewport\r
+     */\r
+    public void addViewport(jalview.binding.Viewport vViewport)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _viewportList.addElement(vViewport);\r
+    } //-- void addViewport(jalview.binding.Viewport) \r
+\r
+    /**\r
+     * Method addViewport\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vViewport\r
+     */\r
+    public void addViewport(int index, jalview.binding.Viewport vViewport)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _viewportList.insertElementAt(vViewport, index);\r
+    } //-- void addViewport(int, jalview.binding.Viewport) \r
+\r
+    /**\r
+     * Method enumerateJGroup\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateJGroup()\r
+    {\r
+        return _JGroupList.elements();\r
+    } //-- java.util.Enumeration enumerateJGroup() \r
+\r
+    /**\r
+     * Method enumerateJSeq\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateJSeq()\r
+    {\r
+        return _JSeqList.elements();\r
+    } //-- java.util.Enumeration enumerateJSeq() \r
+\r
+    /**\r
+     * Method enumerateViewport\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateViewport()\r
+    {\r
+        return _viewportList.elements();\r
+    } //-- java.util.Enumeration enumerateViewport() \r
+\r
+    /**\r
+     * Method getJGroup\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return JGroup\r
+     */\r
+    public jalview.binding.JGroup getJGroup(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _JGroupList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.JGroup) _JGroupList.elementAt(index);\r
+    } //-- jalview.binding.JGroup getJGroup(int) \r
+\r
+    /**\r
+     * Method getJGroup\r
+     * \r
+     * \r
+     * \r
+     * @return JGroup\r
+     */\r
+    public jalview.binding.JGroup[] getJGroup()\r
+    {\r
+        int size = _JGroupList.size();\r
+        jalview.binding.JGroup[] mArray = new jalview.binding.JGroup[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.JGroup) _JGroupList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.JGroup[] getJGroup() \r
+\r
+    /**\r
+     * Method getJGroupCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getJGroupCount()\r
+    {\r
+        return _JGroupList.size();\r
+    } //-- int getJGroupCount() \r
+\r
+    /**\r
+     * Method getJSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return JSeq\r
+     */\r
+    public jalview.binding.JSeq getJSeq(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _JSeqList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.JSeq) _JSeqList.elementAt(index);\r
+    } //-- jalview.binding.JSeq getJSeq(int) \r
+\r
+    /**\r
+     * Method getJSeq\r
+     * \r
+     * \r
+     * \r
+     * @return JSeq\r
+     */\r
+    public jalview.binding.JSeq[] getJSeq()\r
+    {\r
+        int size = _JSeqList.size();\r
+        jalview.binding.JSeq[] mArray = new jalview.binding.JSeq[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.JSeq) _JSeqList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.JSeq[] getJSeq() \r
+\r
+    /**\r
+     * Method getJSeqCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getJSeqCount()\r
+    {\r
+        return _JSeqList.size();\r
+    } //-- int getJSeqCount() \r
+\r
+    /**\r
+     * Method getViewport\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Viewport\r
+     */\r
+    public jalview.binding.Viewport getViewport(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _viewportList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.Viewport) _viewportList.elementAt(index);\r
+    } //-- jalview.binding.Viewport getViewport(int) \r
+\r
+    /**\r
+     * Method getViewport\r
+     * \r
+     * \r
+     * \r
+     * @return Viewport\r
+     */\r
+    public jalview.binding.Viewport[] getViewport()\r
+    {\r
+        int size = _viewportList.size();\r
+        jalview.binding.Viewport[] mArray = new jalview.binding.Viewport[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.Viewport) _viewportList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.Viewport[] getViewport() \r
+\r
+    /**\r
+     * Method getViewportCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getViewportCount()\r
+    {\r
+        return _viewportList.size();\r
+    } //-- int getViewportCount() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method removeAllJGroup\r
+     * \r
+     */\r
+    public void removeAllJGroup()\r
+    {\r
+        _JGroupList.removeAllElements();\r
+    } //-- void removeAllJGroup() \r
+\r
+    /**\r
+     * Method removeAllJSeq\r
+     * \r
+     */\r
+    public void removeAllJSeq()\r
+    {\r
+        _JSeqList.removeAllElements();\r
+    } //-- void removeAllJSeq() \r
+\r
+    /**\r
+     * Method removeAllViewport\r
+     * \r
+     */\r
+    public void removeAllViewport()\r
+    {\r
+        _viewportList.removeAllElements();\r
+    } //-- void removeAllViewport() \r
+\r
+    /**\r
+     * Method removeJGroup\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return JGroup\r
+     */\r
+    public jalview.binding.JGroup removeJGroup(int index)\r
+    {\r
+        java.lang.Object obj = _JGroupList.elementAt(index);\r
+        _JGroupList.removeElementAt(index);\r
+        return (jalview.binding.JGroup) obj;\r
+    } //-- jalview.binding.JGroup removeJGroup(int) \r
+\r
+    /**\r
+     * Method removeJSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return JSeq\r
+     */\r
+    public jalview.binding.JSeq removeJSeq(int index)\r
+    {\r
+        java.lang.Object obj = _JSeqList.elementAt(index);\r
+        _JSeqList.removeElementAt(index);\r
+        return (jalview.binding.JSeq) obj;\r
+    } //-- jalview.binding.JSeq removeJSeq(int) \r
+\r
+    /**\r
+     * Method removeViewport\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Viewport\r
+     */\r
+    public jalview.binding.Viewport removeViewport(int index)\r
+    {\r
+        java.lang.Object obj = _viewportList.elementAt(index);\r
+        _viewportList.removeElementAt(index);\r
+        return (jalview.binding.Viewport) obj;\r
+    } //-- jalview.binding.Viewport removeViewport(int) \r
+\r
+    /**\r
+     * Method setJGroup\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vJGroup\r
+     */\r
+    public void setJGroup(int index, jalview.binding.JGroup vJGroup)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _JGroupList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _JGroupList.setElementAt(vJGroup, index);\r
+    } //-- void setJGroup(int, jalview.binding.JGroup) \r
+\r
+    /**\r
+     * Method setJGroup\r
+     * \r
+     * \r
+     * \r
+     * @param JGroupArray\r
+     */\r
+    public void setJGroup(jalview.binding.JGroup[] JGroupArray)\r
+    {\r
+        //-- copy array\r
+        _JGroupList.removeAllElements();\r
+        for (int i = 0; i < JGroupArray.length; i++) {\r
+            _JGroupList.addElement(JGroupArray[i]);\r
+        }\r
+    } //-- void setJGroup(jalview.binding.JGroup) \r
+\r
+    /**\r
+     * Method setJSeq\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vJSeq\r
+     */\r
+    public void setJSeq(int index, jalview.binding.JSeq vJSeq)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _JSeqList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _JSeqList.setElementAt(vJSeq, index);\r
+    } //-- void setJSeq(int, jalview.binding.JSeq) \r
+\r
+    /**\r
+     * Method setJSeq\r
+     * \r
+     * \r
+     * \r
+     * @param JSeqArray\r
+     */\r
+    public void setJSeq(jalview.binding.JSeq[] JSeqArray)\r
+    {\r
+        //-- copy array\r
+        _JSeqList.removeAllElements();\r
+        for (int i = 0; i < JSeqArray.length; i++) {\r
+            _JSeqList.addElement(JSeqArray[i]);\r
+        }\r
+    } //-- void setJSeq(jalview.binding.JSeq) \r
+\r
+    /**\r
+     * Method setViewport\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vViewport\r
+     */\r
+    public void setViewport(int index, jalview.binding.Viewport vViewport)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _viewportList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _viewportList.setElementAt(vViewport, index);\r
+    } //-- void setViewport(int, jalview.binding.Viewport) \r
+\r
+    /**\r
+     * Method setViewport\r
+     * \r
+     * \r
+     * \r
+     * @param viewportArray\r
+     */\r
+    public void setViewport(jalview.binding.Viewport[] viewportArray)\r
+    {\r
+        //-- copy array\r
+        _viewportList.removeAllElements();\r
+        for (int i = 0; i < viewportArray.length; i++) {\r
+            _viewportList.addElement(viewportArray[i]);\r
+        }\r
+    } //-- void setViewport(jalview.binding.Viewport) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.JalviewModelSequence) Unmarshaller.unmarshal(jalview.binding.JalviewModelSequence.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/JalviewState.java b/src/jalview/binding/JalviewState.java
new file mode 100755 (executable)
index 0000000..ad9d1b3
--- /dev/null
@@ -0,0 +1,301 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Date;\r
+import java.util.Enumeration;\r
+import java.util.Vector;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class JalviewState.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class JalviewState implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _creationDate\r
+     */\r
+    private java.util.Date _creationDate;\r
+\r
+    /**\r
+     * Field _fileList\r
+     */\r
+    private java.util.Vector _fileList;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public JalviewState() {\r
+        super();\r
+        _fileList = new Vector();\r
+    } //-- jalview.binding.JalviewState()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method addFile\r
+     * \r
+     * \r
+     * \r
+     * @param vFile\r
+     */\r
+    public void addFile(java.lang.String vFile)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _fileList.addElement(vFile);\r
+    } //-- void addFile(java.lang.String) \r
+\r
+    /**\r
+     * Method addFile\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vFile\r
+     */\r
+    public void addFile(int index, java.lang.String vFile)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _fileList.insertElementAt(vFile, index);\r
+    } //-- void addFile(int, java.lang.String) \r
+\r
+    /**\r
+     * Method enumerateFile\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateFile()\r
+    {\r
+        return _fileList.elements();\r
+    } //-- java.util.Enumeration enumerateFile() \r
+\r
+    /**\r
+     * Returns the value of field 'creationDate'.\r
+     * \r
+     * @return Date\r
+     * @return the value of field 'creationDate'.\r
+     */\r
+    public java.util.Date getCreationDate()\r
+    {\r
+        return this._creationDate;\r
+    } //-- java.util.Date getCreationDate() \r
+\r
+    /**\r
+     * Method getFile\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return String\r
+     */\r
+    public java.lang.String getFile(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _fileList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (String)_fileList.elementAt(index);\r
+    } //-- java.lang.String getFile(int) \r
+\r
+    /**\r
+     * Method getFile\r
+     * \r
+     * \r
+     * \r
+     * @return String\r
+     */\r
+    public java.lang.String[] getFile()\r
+    {\r
+        int size = _fileList.size();\r
+        java.lang.String[] mArray = new java.lang.String[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (String)_fileList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- java.lang.String[] getFile() \r
+\r
+    /**\r
+     * Method getFileCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getFileCount()\r
+    {\r
+        return _fileList.size();\r
+    } //-- int getFileCount() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method removeAllFile\r
+     * \r
+     */\r
+    public void removeAllFile()\r
+    {\r
+        _fileList.removeAllElements();\r
+    } //-- void removeAllFile() \r
+\r
+    /**\r
+     * Method removeFile\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return String\r
+     */\r
+    public java.lang.String removeFile(int index)\r
+    {\r
+        java.lang.Object obj = _fileList.elementAt(index);\r
+        _fileList.removeElementAt(index);\r
+        return (String)obj;\r
+    } //-- java.lang.String removeFile(int) \r
+\r
+    /**\r
+     * Sets the value of field 'creationDate'.\r
+     * \r
+     * @param creationDate the value of field 'creationDate'.\r
+     */\r
+    public void setCreationDate(java.util.Date creationDate)\r
+    {\r
+        this._creationDate = creationDate;\r
+    } //-- void setCreationDate(java.util.Date) \r
+\r
+    /**\r
+     * Method setFile\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vFile\r
+     */\r
+    public void setFile(int index, java.lang.String vFile)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _fileList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _fileList.setElementAt(vFile, index);\r
+    } //-- void setFile(int, java.lang.String) \r
+\r
+    /**\r
+     * Method setFile\r
+     * \r
+     * \r
+     * \r
+     * @param fileArray\r
+     */\r
+    public void setFile(java.lang.String[] fileArray)\r
+    {\r
+        //-- copy array\r
+        _fileList.removeAllElements();\r
+        for (int i = 0; i < fileArray.length; i++) {\r
+            _fileList.addElement(fileArray[i]);\r
+        }\r
+    } //-- void setFile(java.lang.String) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.JalviewState) Unmarshaller.unmarshal(jalview.binding.JalviewState.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/Sequence.java b/src/jalview/binding/Sequence.java
new file mode 100755 (executable)
index 0000000..f3fd4e4
--- /dev/null
@@ -0,0 +1,118 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class Sequence.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class Sequence extends SequenceType \r
+implements java.io.Serializable\r
+{\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public Sequence() {\r
+        super();\r
+    } //-- jalview.binding.Sequence()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.Sequence) Unmarshaller.unmarshal(jalview.binding.Sequence.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/SequenceSet.java b/src/jalview/binding/SequenceSet.java
new file mode 100755 (executable)
index 0000000..7ed3b52
--- /dev/null
@@ -0,0 +1,504 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Enumeration;\r
+import java.util.Vector;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class SequenceSet.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class SequenceSet implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _gapChar\r
+     */\r
+    private java.lang.String _gapChar;\r
+\r
+    /**\r
+     * Field _aligned\r
+     */\r
+    private boolean _aligned;\r
+\r
+    /**\r
+     * keeps track of state for field: _aligned\r
+     */\r
+    private boolean _has_aligned;\r
+\r
+    /**\r
+     * Field _sequenceList\r
+     */\r
+    private java.util.Vector _sequenceList;\r
+\r
+    /**\r
+     * Field _annotationList\r
+     */\r
+    private java.util.Vector _annotationList;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public SequenceSet() {\r
+        super();\r
+        _sequenceList = new Vector();\r
+        _annotationList = new Vector();\r
+    } //-- jalview.binding.SequenceSet()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method addAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @param vAnnotation\r
+     */\r
+    public void addAnnotation(jalview.binding.Annotation vAnnotation)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _annotationList.addElement(vAnnotation);\r
+    } //-- void addAnnotation(jalview.binding.Annotation) \r
+\r
+    /**\r
+     * Method addAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vAnnotation\r
+     */\r
+    public void addAnnotation(int index, jalview.binding.Annotation vAnnotation)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _annotationList.insertElementAt(vAnnotation, index);\r
+    } //-- void addAnnotation(int, jalview.binding.Annotation) \r
+\r
+    /**\r
+     * Method addSequence\r
+     * \r
+     * \r
+     * \r
+     * @param vSequence\r
+     */\r
+    public void addSequence(jalview.binding.Sequence vSequence)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _sequenceList.addElement(vSequence);\r
+    } //-- void addSequence(jalview.binding.Sequence) \r
+\r
+    /**\r
+     * Method addSequence\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vSequence\r
+     */\r
+    public void addSequence(int index, jalview.binding.Sequence vSequence)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _sequenceList.insertElementAt(vSequence, index);\r
+    } //-- void addSequence(int, jalview.binding.Sequence) \r
+\r
+    /**\r
+     * Method deleteAligned\r
+     * \r
+     */\r
+    public void deleteAligned()\r
+    {\r
+        this._has_aligned= false;\r
+    } //-- void deleteAligned() \r
+\r
+    /**\r
+     * Method enumerateAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateAnnotation()\r
+    {\r
+        return _annotationList.elements();\r
+    } //-- java.util.Enumeration enumerateAnnotation() \r
+\r
+    /**\r
+     * Method enumerateSequence\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateSequence()\r
+    {\r
+        return _sequenceList.elements();\r
+    } //-- java.util.Enumeration enumerateSequence() \r
+\r
+    /**\r
+     * Returns the value of field 'aligned'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'aligned'.\r
+     */\r
+    public boolean getAligned()\r
+    {\r
+        return this._aligned;\r
+    } //-- boolean getAligned() \r
+\r
+    /**\r
+     * Method getAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Annotation\r
+     */\r
+    public jalview.binding.Annotation getAnnotation(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _annotationList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.Annotation) _annotationList.elementAt(index);\r
+    } //-- jalview.binding.Annotation getAnnotation(int) \r
+\r
+    /**\r
+     * Method getAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @return Annotation\r
+     */\r
+    public jalview.binding.Annotation[] getAnnotation()\r
+    {\r
+        int size = _annotationList.size();\r
+        jalview.binding.Annotation[] mArray = new jalview.binding.Annotation[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.Annotation) _annotationList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.Annotation[] getAnnotation() \r
+\r
+    /**\r
+     * Method getAnnotationCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getAnnotationCount()\r
+    {\r
+        return _annotationList.size();\r
+    } //-- int getAnnotationCount() \r
+\r
+    /**\r
+     * Returns the value of field 'gapChar'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'gapChar'.\r
+     */\r
+    public java.lang.String getGapChar()\r
+    {\r
+        return this._gapChar;\r
+    } //-- java.lang.String getGapChar() \r
+\r
+    /**\r
+     * Method getSequence\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Sequence\r
+     */\r
+    public jalview.binding.Sequence getSequence(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _sequenceList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.Sequence) _sequenceList.elementAt(index);\r
+    } //-- jalview.binding.Sequence getSequence(int) \r
+\r
+    /**\r
+     * Method getSequence\r
+     * \r
+     * \r
+     * \r
+     * @return Sequence\r
+     */\r
+    public jalview.binding.Sequence[] getSequence()\r
+    {\r
+        int size = _sequenceList.size();\r
+        jalview.binding.Sequence[] mArray = new jalview.binding.Sequence[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.Sequence) _sequenceList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.Sequence[] getSequence() \r
+\r
+    /**\r
+     * Method getSequenceCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getSequenceCount()\r
+    {\r
+        return _sequenceList.size();\r
+    } //-- int getSequenceCount() \r
+\r
+    /**\r
+     * Method hasAligned\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasAligned()\r
+    {\r
+        return this._has_aligned;\r
+    } //-- boolean hasAligned() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method removeAllAnnotation\r
+     * \r
+     */\r
+    public void removeAllAnnotation()\r
+    {\r
+        _annotationList.removeAllElements();\r
+    } //-- void removeAllAnnotation() \r
+\r
+    /**\r
+     * Method removeAllSequence\r
+     * \r
+     */\r
+    public void removeAllSequence()\r
+    {\r
+        _sequenceList.removeAllElements();\r
+    } //-- void removeAllSequence() \r
+\r
+    /**\r
+     * Method removeAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Annotation\r
+     */\r
+    public jalview.binding.Annotation removeAnnotation(int index)\r
+    {\r
+        java.lang.Object obj = _annotationList.elementAt(index);\r
+        _annotationList.removeElementAt(index);\r
+        return (jalview.binding.Annotation) obj;\r
+    } //-- jalview.binding.Annotation removeAnnotation(int) \r
+\r
+    /**\r
+     * Method removeSequence\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Sequence\r
+     */\r
+    public jalview.binding.Sequence removeSequence(int index)\r
+    {\r
+        java.lang.Object obj = _sequenceList.elementAt(index);\r
+        _sequenceList.removeElementAt(index);\r
+        return (jalview.binding.Sequence) obj;\r
+    } //-- jalview.binding.Sequence removeSequence(int) \r
+\r
+    /**\r
+     * Sets the value of field 'aligned'.\r
+     * \r
+     * @param aligned the value of field 'aligned'.\r
+     */\r
+    public void setAligned(boolean aligned)\r
+    {\r
+        this._aligned = aligned;\r
+        this._has_aligned = true;\r
+    } //-- void setAligned(boolean) \r
+\r
+    /**\r
+     * Method setAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vAnnotation\r
+     */\r
+    public void setAnnotation(int index, jalview.binding.Annotation vAnnotation)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _annotationList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _annotationList.setElementAt(vAnnotation, index);\r
+    } //-- void setAnnotation(int, jalview.binding.Annotation) \r
+\r
+    /**\r
+     * Method setAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @param annotationArray\r
+     */\r
+    public void setAnnotation(jalview.binding.Annotation[] annotationArray)\r
+    {\r
+        //-- copy array\r
+        _annotationList.removeAllElements();\r
+        for (int i = 0; i < annotationArray.length; i++) {\r
+            _annotationList.addElement(annotationArray[i]);\r
+        }\r
+    } //-- void setAnnotation(jalview.binding.Annotation) \r
+\r
+    /**\r
+     * Sets the value of field 'gapChar'.\r
+     * \r
+     * @param gapChar the value of field 'gapChar'.\r
+     */\r
+    public void setGapChar(java.lang.String gapChar)\r
+    {\r
+        this._gapChar = gapChar;\r
+    } //-- void setGapChar(java.lang.String) \r
+\r
+    /**\r
+     * Method setSequence\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vSequence\r
+     */\r
+    public void setSequence(int index, jalview.binding.Sequence vSequence)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _sequenceList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _sequenceList.setElementAt(vSequence, index);\r
+    } //-- void setSequence(int, jalview.binding.Sequence) \r
+\r
+    /**\r
+     * Method setSequence\r
+     * \r
+     * \r
+     * \r
+     * @param sequenceArray\r
+     */\r
+    public void setSequence(jalview.binding.Sequence[] sequenceArray)\r
+    {\r
+        //-- copy array\r
+        _sequenceList.removeAllElements();\r
+        for (int i = 0; i < sequenceArray.length; i++) {\r
+            _sequenceList.addElement(sequenceArray[i]);\r
+        }\r
+    } //-- void setSequence(jalview.binding.Sequence) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.SequenceSet) Unmarshaller.unmarshal(jalview.binding.SequenceSet.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/SequenceType.java b/src/jalview/binding/SequenceType.java
new file mode 100755 (executable)
index 0000000..3a935e4
--- /dev/null
@@ -0,0 +1,199 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class SequenceType.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class SequenceType implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _id\r
+     */\r
+    private java.lang.String _id;\r
+\r
+    /**\r
+     * Field _sequence\r
+     */\r
+    private java.lang.String _sequence;\r
+\r
+    /**\r
+     * Field _name\r
+     */\r
+    private java.lang.String _name;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public SequenceType() {\r
+        super();\r
+    } //-- jalview.binding.SequenceType()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Returns the value of field 'id'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'id'.\r
+     */\r
+    public java.lang.String getId()\r
+    {\r
+        return this._id;\r
+    } //-- java.lang.String getId() \r
+\r
+    /**\r
+     * Returns the value of field 'name'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'name'.\r
+     */\r
+    public java.lang.String getName()\r
+    {\r
+        return this._name;\r
+    } //-- java.lang.String getName() \r
+\r
+    /**\r
+     * Returns the value of field 'sequence'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'sequence'.\r
+     */\r
+    public java.lang.String getSequence()\r
+    {\r
+        return this._sequence;\r
+    } //-- java.lang.String getSequence() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Sets the value of field 'id'.\r
+     * \r
+     * @param id the value of field 'id'.\r
+     */\r
+    public void setId(java.lang.String id)\r
+    {\r
+        this._id = id;\r
+    } //-- void setId(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'name'.\r
+     * \r
+     * @param name the value of field 'name'.\r
+     */\r
+    public void setName(java.lang.String name)\r
+    {\r
+        this._name = name;\r
+    } //-- void setName(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'sequence'.\r
+     * \r
+     * @param sequence the value of field 'sequence'.\r
+     */\r
+    public void setSequence(java.lang.String sequence)\r
+    {\r
+        this._sequence = sequence;\r
+    } //-- void setSequence(java.lang.String) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.SequenceType) Unmarshaller.unmarshal(jalview.binding.SequenceType.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/VAMSAS.java b/src/jalview/binding/VAMSAS.java
new file mode 100755 (executable)
index 0000000..b4237b8
--- /dev/null
@@ -0,0 +1,576 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import java.util.Enumeration;\r
+import java.util.Vector;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class VAMSAS.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class VAMSAS implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _alignmentList\r
+     */\r
+    private java.util.Vector _alignmentList;\r
+\r
+    /**\r
+     * Field _treeList\r
+     */\r
+    private java.util.Vector _treeList;\r
+\r
+    /**\r
+     * Field _sequenceSetList\r
+     */\r
+    private java.util.Vector _sequenceSetList;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public VAMSAS() {\r
+        super();\r
+        _alignmentList = new Vector();\r
+        _treeList = new Vector();\r
+        _sequenceSetList = new Vector();\r
+    } //-- jalview.binding.VAMSAS()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method addAlignment\r
+     * \r
+     * \r
+     * \r
+     * @param vAlignment\r
+     */\r
+    public void addAlignment(jalview.binding.Alignment vAlignment)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _alignmentList.addElement(vAlignment);\r
+    } //-- void addAlignment(jalview.binding.Alignment) \r
+\r
+    /**\r
+     * Method addAlignment\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vAlignment\r
+     */\r
+    public void addAlignment(int index, jalview.binding.Alignment vAlignment)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _alignmentList.insertElementAt(vAlignment, index);\r
+    } //-- void addAlignment(int, jalview.binding.Alignment) \r
+\r
+    /**\r
+     * Method addSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @param vSequenceSet\r
+     */\r
+    public void addSequenceSet(jalview.binding.SequenceSet vSequenceSet)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _sequenceSetList.addElement(vSequenceSet);\r
+    } //-- void addSequenceSet(jalview.binding.SequenceSet) \r
+\r
+    /**\r
+     * Method addSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vSequenceSet\r
+     */\r
+    public void addSequenceSet(int index, jalview.binding.SequenceSet vSequenceSet)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _sequenceSetList.insertElementAt(vSequenceSet, index);\r
+    } //-- void addSequenceSet(int, jalview.binding.SequenceSet) \r
+\r
+    /**\r
+     * Method addTree\r
+     * \r
+     * \r
+     * \r
+     * @param vTree\r
+     */\r
+    public void addTree(java.lang.String vTree)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _treeList.addElement(vTree);\r
+    } //-- void addTree(java.lang.String) \r
+\r
+    /**\r
+     * Method addTree\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vTree\r
+     */\r
+    public void addTree(int index, java.lang.String vTree)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        _treeList.insertElementAt(vTree, index);\r
+    } //-- void addTree(int, java.lang.String) \r
+\r
+    /**\r
+     * Method enumerateAlignment\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateAlignment()\r
+    {\r
+        return _alignmentList.elements();\r
+    } //-- java.util.Enumeration enumerateAlignment() \r
+\r
+    /**\r
+     * Method enumerateSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateSequenceSet()\r
+    {\r
+        return _sequenceSetList.elements();\r
+    } //-- java.util.Enumeration enumerateSequenceSet() \r
+\r
+    /**\r
+     * Method enumerateTree\r
+     * \r
+     * \r
+     * \r
+     * @return Enumeration\r
+     */\r
+    public java.util.Enumeration enumerateTree()\r
+    {\r
+        return _treeList.elements();\r
+    } //-- java.util.Enumeration enumerateTree() \r
+\r
+    /**\r
+     * Method getAlignment\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Alignment\r
+     */\r
+    public jalview.binding.Alignment getAlignment(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _alignmentList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.Alignment) _alignmentList.elementAt(index);\r
+    } //-- jalview.binding.Alignment getAlignment(int) \r
+\r
+    /**\r
+     * Method getAlignment\r
+     * \r
+     * \r
+     * \r
+     * @return Alignment\r
+     */\r
+    public jalview.binding.Alignment[] getAlignment()\r
+    {\r
+        int size = _alignmentList.size();\r
+        jalview.binding.Alignment[] mArray = new jalview.binding.Alignment[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.Alignment) _alignmentList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.Alignment[] getAlignment() \r
+\r
+    /**\r
+     * Method getAlignmentCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getAlignmentCount()\r
+    {\r
+        return _alignmentList.size();\r
+    } //-- int getAlignmentCount() \r
+\r
+    /**\r
+     * Method getSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return SequenceSet\r
+     */\r
+    public jalview.binding.SequenceSet getSequenceSet(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _sequenceSetList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (jalview.binding.SequenceSet) _sequenceSetList.elementAt(index);\r
+    } //-- jalview.binding.SequenceSet getSequenceSet(int) \r
+\r
+    /**\r
+     * Method getSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @return SequenceSet\r
+     */\r
+    public jalview.binding.SequenceSet[] getSequenceSet()\r
+    {\r
+        int size = _sequenceSetList.size();\r
+        jalview.binding.SequenceSet[] mArray = new jalview.binding.SequenceSet[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (jalview.binding.SequenceSet) _sequenceSetList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- jalview.binding.SequenceSet[] getSequenceSet() \r
+\r
+    /**\r
+     * Method getSequenceSetCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getSequenceSetCount()\r
+    {\r
+        return _sequenceSetList.size();\r
+    } //-- int getSequenceSetCount() \r
+\r
+    /**\r
+     * Method getTree\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return String\r
+     */\r
+    public java.lang.String getTree(int index)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _treeList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        \r
+        return (String)_treeList.elementAt(index);\r
+    } //-- java.lang.String getTree(int) \r
+\r
+    /**\r
+     * Method getTree\r
+     * \r
+     * \r
+     * \r
+     * @return String\r
+     */\r
+    public java.lang.String[] getTree()\r
+    {\r
+        int size = _treeList.size();\r
+        java.lang.String[] mArray = new java.lang.String[size];\r
+        for (int index = 0; index < size; index++) {\r
+            mArray[index] = (String)_treeList.elementAt(index);\r
+        }\r
+        return mArray;\r
+    } //-- java.lang.String[] getTree() \r
+\r
+    /**\r
+     * Method getTreeCount\r
+     * \r
+     * \r
+     * \r
+     * @return int\r
+     */\r
+    public int getTreeCount()\r
+    {\r
+        return _treeList.size();\r
+    } //-- int getTreeCount() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method removeAlignment\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return Alignment\r
+     */\r
+    public jalview.binding.Alignment removeAlignment(int index)\r
+    {\r
+        java.lang.Object obj = _alignmentList.elementAt(index);\r
+        _alignmentList.removeElementAt(index);\r
+        return (jalview.binding.Alignment) obj;\r
+    } //-- jalview.binding.Alignment removeAlignment(int) \r
+\r
+    /**\r
+     * Method removeAllAlignment\r
+     * \r
+     */\r
+    public void removeAllAlignment()\r
+    {\r
+        _alignmentList.removeAllElements();\r
+    } //-- void removeAllAlignment() \r
+\r
+    /**\r
+     * Method removeAllSequenceSet\r
+     * \r
+     */\r
+    public void removeAllSequenceSet()\r
+    {\r
+        _sequenceSetList.removeAllElements();\r
+    } //-- void removeAllSequenceSet() \r
+\r
+    /**\r
+     * Method removeAllTree\r
+     * \r
+     */\r
+    public void removeAllTree()\r
+    {\r
+        _treeList.removeAllElements();\r
+    } //-- void removeAllTree() \r
+\r
+    /**\r
+     * Method removeSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return SequenceSet\r
+     */\r
+    public jalview.binding.SequenceSet removeSequenceSet(int index)\r
+    {\r
+        java.lang.Object obj = _sequenceSetList.elementAt(index);\r
+        _sequenceSetList.removeElementAt(index);\r
+        return (jalview.binding.SequenceSet) obj;\r
+    } //-- jalview.binding.SequenceSet removeSequenceSet(int) \r
+\r
+    /**\r
+     * Method removeTree\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @return String\r
+     */\r
+    public java.lang.String removeTree(int index)\r
+    {\r
+        java.lang.Object obj = _treeList.elementAt(index);\r
+        _treeList.removeElementAt(index);\r
+        return (String)obj;\r
+    } //-- java.lang.String removeTree(int) \r
+\r
+    /**\r
+     * Method setAlignment\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vAlignment\r
+     */\r
+    public void setAlignment(int index, jalview.binding.Alignment vAlignment)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _alignmentList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _alignmentList.setElementAt(vAlignment, index);\r
+    } //-- void setAlignment(int, jalview.binding.Alignment) \r
+\r
+    /**\r
+     * Method setAlignment\r
+     * \r
+     * \r
+     * \r
+     * @param alignmentArray\r
+     */\r
+    public void setAlignment(jalview.binding.Alignment[] alignmentArray)\r
+    {\r
+        //-- copy array\r
+        _alignmentList.removeAllElements();\r
+        for (int i = 0; i < alignmentArray.length; i++) {\r
+            _alignmentList.addElement(alignmentArray[i]);\r
+        }\r
+    } //-- void setAlignment(jalview.binding.Alignment) \r
+\r
+    /**\r
+     * Method setSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vSequenceSet\r
+     */\r
+    public void setSequenceSet(int index, jalview.binding.SequenceSet vSequenceSet)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _sequenceSetList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _sequenceSetList.setElementAt(vSequenceSet, index);\r
+    } //-- void setSequenceSet(int, jalview.binding.SequenceSet) \r
+\r
+    /**\r
+     * Method setSequenceSet\r
+     * \r
+     * \r
+     * \r
+     * @param sequenceSetArray\r
+     */\r
+    public void setSequenceSet(jalview.binding.SequenceSet[] sequenceSetArray)\r
+    {\r
+        //-- copy array\r
+        _sequenceSetList.removeAllElements();\r
+        for (int i = 0; i < sequenceSetArray.length; i++) {\r
+            _sequenceSetList.addElement(sequenceSetArray[i]);\r
+        }\r
+    } //-- void setSequenceSet(jalview.binding.SequenceSet) \r
+\r
+    /**\r
+     * Method setTree\r
+     * \r
+     * \r
+     * \r
+     * @param index\r
+     * @param vTree\r
+     */\r
+    public void setTree(int index, java.lang.String vTree)\r
+        throws java.lang.IndexOutOfBoundsException\r
+    {\r
+        //-- check bounds for index\r
+        if ((index < 0) || (index > _treeList.size())) {\r
+            throw new IndexOutOfBoundsException();\r
+        }\r
+        _treeList.setElementAt(vTree, index);\r
+    } //-- void setTree(int, java.lang.String) \r
+\r
+    /**\r
+     * Method setTree\r
+     * \r
+     * \r
+     * \r
+     * @param treeArray\r
+     */\r
+    public void setTree(java.lang.String[] treeArray)\r
+    {\r
+        //-- copy array\r
+        _treeList.removeAllElements();\r
+        for (int i = 0; i < treeArray.length; i++) {\r
+            _treeList.addElement(treeArray[i]);\r
+        }\r
+    } //-- void setTree(java.lang.String) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.VAMSAS) Unmarshaller.unmarshal(jalview.binding.VAMSAS.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/VamsasModel.java b/src/jalview/binding/VamsasModel.java
new file mode 100755 (executable)
index 0000000..a4d4362
--- /dev/null
@@ -0,0 +1,118 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class VamsasModel.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class VamsasModel extends VAMSAS \r
+implements java.io.Serializable\r
+{\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public VamsasModel() {\r
+        super();\r
+    } //-- jalview.binding.VamsasModel()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.VamsasModel) Unmarshaller.unmarshal(jalview.binding.VamsasModel.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r
diff --git a/src/jalview/binding/Viewport.java b/src/jalview/binding/Viewport.java
new file mode 100755 (executable)
index 0000000..911061b
--- /dev/null
@@ -0,0 +1,1420 @@
+/*\r
+ * This class was automatically generated with \r
+ * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML\r
+ * Schema.\r
+ * $Id$\r
+ */\r
+\r
+package jalview.binding;\r
+\r
+  //---------------------------------/\r
+ //- Imported classes and packages -/\r
+//---------------------------------/\r
+\r
+import java.io.IOException;\r
+import java.io.Reader;\r
+import java.io.Serializable;\r
+import java.io.Writer;\r
+import org.exolab.castor.xml.MarshalException;\r
+import org.exolab.castor.xml.Marshaller;\r
+import org.exolab.castor.xml.Unmarshaller;\r
+import org.exolab.castor.xml.ValidationException;\r
+import org.xml.sax.ContentHandler;\r
+\r
+/**\r
+ * Class Viewport.\r
+ * \r
+ * @version $Revision$ $Date$\r
+ */\r
+public class Viewport implements java.io.Serializable {\r
+\r
+\r
+      //--------------------------/\r
+     //- Class/Member Variables -/\r
+    //--------------------------/\r
+\r
+    /**\r
+     * Field _conservationSelected\r
+     */\r
+    private boolean _conservationSelected;\r
+\r
+    /**\r
+     * keeps track of state for field: _conservationSelected\r
+     */\r
+    private boolean _has_conservationSelected;\r
+\r
+    /**\r
+     * Field _pidSelected\r
+     */\r
+    private boolean _pidSelected;\r
+\r
+    /**\r
+     * keeps track of state for field: _pidSelected\r
+     */\r
+    private boolean _has_pidSelected;\r
+\r
+    /**\r
+     * Field _bgColour\r
+     */\r
+    private java.lang.String _bgColour;\r
+\r
+    /**\r
+     * Field _consThreshold\r
+     */\r
+    private int _consThreshold;\r
+\r
+    /**\r
+     * keeps track of state for field: _consThreshold\r
+     */\r
+    private boolean _has_consThreshold;\r
+\r
+    /**\r
+     * Field _pidThreshold\r
+     */\r
+    private int _pidThreshold;\r
+\r
+    /**\r
+     * keeps track of state for field: _pidThreshold\r
+     */\r
+    private boolean _has_pidThreshold;\r
+\r
+    /**\r
+     * Field _title\r
+     */\r
+    private java.lang.String _title;\r
+\r
+    /**\r
+     * Field _showFullId\r
+     */\r
+    private boolean _showFullId;\r
+\r
+    /**\r
+     * keeps track of state for field: _showFullId\r
+     */\r
+    private boolean _has_showFullId;\r
+\r
+    /**\r
+     * Field _showText\r
+     */\r
+    private boolean _showText;\r
+\r
+    /**\r
+     * keeps track of state for field: _showText\r
+     */\r
+    private boolean _has_showText;\r
+\r
+    /**\r
+     * Field _showColourText\r
+     */\r
+    private boolean _showColourText;\r
+\r
+    /**\r
+     * keeps track of state for field: _showColourText\r
+     */\r
+    private boolean _has_showColourText;\r
+\r
+    /**\r
+     * Field _showBoxes\r
+     */\r
+    private boolean _showBoxes;\r
+\r
+    /**\r
+     * keeps track of state for field: _showBoxes\r
+     */\r
+    private boolean _has_showBoxes;\r
+\r
+    /**\r
+     * Field _wrapAlignment\r
+     */\r
+    private boolean _wrapAlignment;\r
+\r
+    /**\r
+     * keeps track of state for field: _wrapAlignment\r
+     */\r
+    private boolean _has_wrapAlignment;\r
+\r
+    /**\r
+     * Field _renderGaps\r
+     */\r
+    private boolean _renderGaps;\r
+\r
+    /**\r
+     * keeps track of state for field: _renderGaps\r
+     */\r
+    private boolean _has_renderGaps;\r
+\r
+    /**\r
+     * Field _showSequenceFeatures\r
+     */\r
+    private boolean _showSequenceFeatures;\r
+\r
+    /**\r
+     * keeps track of state for field: _showSequenceFeatures\r
+     */\r
+    private boolean _has_showSequenceFeatures;\r
+\r
+    /**\r
+     * Field _showAnnotation\r
+     */\r
+    private boolean _showAnnotation;\r
+\r
+    /**\r
+     * keeps track of state for field: _showAnnotation\r
+     */\r
+    private boolean _has_showAnnotation;\r
+\r
+    /**\r
+     * Field _showConservation\r
+     */\r
+    private boolean _showConservation;\r
+\r
+    /**\r
+     * keeps track of state for field: _showConservation\r
+     */\r
+    private boolean _has_showConservation;\r
+\r
+    /**\r
+     * Field _showQuality\r
+     */\r
+    private boolean _showQuality;\r
+\r
+    /**\r
+     * keeps track of state for field: _showQuality\r
+     */\r
+    private boolean _has_showQuality;\r
+\r
+    /**\r
+     * Field _showIdentity\r
+     */\r
+    private boolean _showIdentity;\r
+\r
+    /**\r
+     * keeps track of state for field: _showIdentity\r
+     */\r
+    private boolean _has_showIdentity;\r
+\r
+    /**\r
+     * Field _xpos\r
+     */\r
+    private int _xpos;\r
+\r
+    /**\r
+     * keeps track of state for field: _xpos\r
+     */\r
+    private boolean _has_xpos;\r
+\r
+    /**\r
+     * Field _ypos\r
+     */\r
+    private int _ypos;\r
+\r
+    /**\r
+     * keeps track of state for field: _ypos\r
+     */\r
+    private boolean _has_ypos;\r
+\r
+    /**\r
+     * Field _width\r
+     */\r
+    private int _width;\r
+\r
+    /**\r
+     * keeps track of state for field: _width\r
+     */\r
+    private boolean _has_width;\r
+\r
+    /**\r
+     * Field _height\r
+     */\r
+    private int _height;\r
+\r
+    /**\r
+     * keeps track of state for field: _height\r
+     */\r
+    private boolean _has_height;\r
+\r
+    /**\r
+     * Field _startRes\r
+     */\r
+    private int _startRes;\r
+\r
+    /**\r
+     * keeps track of state for field: _startRes\r
+     */\r
+    private boolean _has_startRes;\r
+\r
+    /**\r
+     * Field _startSeq\r
+     */\r
+    private int _startSeq;\r
+\r
+    /**\r
+     * keeps track of state for field: _startSeq\r
+     */\r
+    private boolean _has_startSeq;\r
+\r
+    /**\r
+     * Field _fontName\r
+     */\r
+    private java.lang.String _fontName;\r
+\r
+    /**\r
+     * Field _fontSize\r
+     */\r
+    private int _fontSize;\r
+\r
+    /**\r
+     * keeps track of state for field: _fontSize\r
+     */\r
+    private boolean _has_fontSize;\r
+\r
+    /**\r
+     * Field _fontStyle\r
+     */\r
+    private int _fontStyle;\r
+\r
+    /**\r
+     * keeps track of state for field: _fontStyle\r
+     */\r
+    private boolean _has_fontStyle;\r
+\r
+\r
+      //----------------/\r
+     //- Constructors -/\r
+    //----------------/\r
+\r
+    public Viewport() {\r
+        super();\r
+    } //-- jalview.binding.Viewport()\r
+\r
+\r
+      //-----------/\r
+     //- Methods -/\r
+    //-----------/\r
+\r
+    /**\r
+     * Method deleteConsThreshold\r
+     * \r
+     */\r
+    public void deleteConsThreshold()\r
+    {\r
+        this._has_consThreshold= false;\r
+    } //-- void deleteConsThreshold() \r
+\r
+    /**\r
+     * Method deleteConservationSelected\r
+     * \r
+     */\r
+    public void deleteConservationSelected()\r
+    {\r
+        this._has_conservationSelected= false;\r
+    } //-- void deleteConservationSelected() \r
+\r
+    /**\r
+     * Method deleteFontSize\r
+     * \r
+     */\r
+    public void deleteFontSize()\r
+    {\r
+        this._has_fontSize= false;\r
+    } //-- void deleteFontSize() \r
+\r
+    /**\r
+     * Method deleteFontStyle\r
+     * \r
+     */\r
+    public void deleteFontStyle()\r
+    {\r
+        this._has_fontStyle= false;\r
+    } //-- void deleteFontStyle() \r
+\r
+    /**\r
+     * Method deleteHeight\r
+     * \r
+     */\r
+    public void deleteHeight()\r
+    {\r
+        this._has_height= false;\r
+    } //-- void deleteHeight() \r
+\r
+    /**\r
+     * Method deletePidSelected\r
+     * \r
+     */\r
+    public void deletePidSelected()\r
+    {\r
+        this._has_pidSelected= false;\r
+    } //-- void deletePidSelected() \r
+\r
+    /**\r
+     * Method deletePidThreshold\r
+     * \r
+     */\r
+    public void deletePidThreshold()\r
+    {\r
+        this._has_pidThreshold= false;\r
+    } //-- void deletePidThreshold() \r
+\r
+    /**\r
+     * Method deleteRenderGaps\r
+     * \r
+     */\r
+    public void deleteRenderGaps()\r
+    {\r
+        this._has_renderGaps= false;\r
+    } //-- void deleteRenderGaps() \r
+\r
+    /**\r
+     * Method deleteShowAnnotation\r
+     * \r
+     */\r
+    public void deleteShowAnnotation()\r
+    {\r
+        this._has_showAnnotation= false;\r
+    } //-- void deleteShowAnnotation() \r
+\r
+    /**\r
+     * Method deleteShowBoxes\r
+     * \r
+     */\r
+    public void deleteShowBoxes()\r
+    {\r
+        this._has_showBoxes= false;\r
+    } //-- void deleteShowBoxes() \r
+\r
+    /**\r
+     * Method deleteShowColourText\r
+     * \r
+     */\r
+    public void deleteShowColourText()\r
+    {\r
+        this._has_showColourText= false;\r
+    } //-- void deleteShowColourText() \r
+\r
+    /**\r
+     * Method deleteShowConservation\r
+     * \r
+     */\r
+    public void deleteShowConservation()\r
+    {\r
+        this._has_showConservation= false;\r
+    } //-- void deleteShowConservation() \r
+\r
+    /**\r
+     * Method deleteShowFullId\r
+     * \r
+     */\r
+    public void deleteShowFullId()\r
+    {\r
+        this._has_showFullId= false;\r
+    } //-- void deleteShowFullId() \r
+\r
+    /**\r
+     * Method deleteShowIdentity\r
+     * \r
+     */\r
+    public void deleteShowIdentity()\r
+    {\r
+        this._has_showIdentity= false;\r
+    } //-- void deleteShowIdentity() \r
+\r
+    /**\r
+     * Method deleteShowQuality\r
+     * \r
+     */\r
+    public void deleteShowQuality()\r
+    {\r
+        this._has_showQuality= false;\r
+    } //-- void deleteShowQuality() \r
+\r
+    /**\r
+     * Method deleteShowSequenceFeatures\r
+     * \r
+     */\r
+    public void deleteShowSequenceFeatures()\r
+    {\r
+        this._has_showSequenceFeatures= false;\r
+    } //-- void deleteShowSequenceFeatures() \r
+\r
+    /**\r
+     * Method deleteShowText\r
+     * \r
+     */\r
+    public void deleteShowText()\r
+    {\r
+        this._has_showText= false;\r
+    } //-- void deleteShowText() \r
+\r
+    /**\r
+     * Method deleteStartRes\r
+     * \r
+     */\r
+    public void deleteStartRes()\r
+    {\r
+        this._has_startRes= false;\r
+    } //-- void deleteStartRes() \r
+\r
+    /**\r
+     * Method deleteStartSeq\r
+     * \r
+     */\r
+    public void deleteStartSeq()\r
+    {\r
+        this._has_startSeq= false;\r
+    } //-- void deleteStartSeq() \r
+\r
+    /**\r
+     * Method deleteWidth\r
+     * \r
+     */\r
+    public void deleteWidth()\r
+    {\r
+        this._has_width= false;\r
+    } //-- void deleteWidth() \r
+\r
+    /**\r
+     * Method deleteWrapAlignment\r
+     * \r
+     */\r
+    public void deleteWrapAlignment()\r
+    {\r
+        this._has_wrapAlignment= false;\r
+    } //-- void deleteWrapAlignment() \r
+\r
+    /**\r
+     * Method deleteXpos\r
+     * \r
+     */\r
+    public void deleteXpos()\r
+    {\r
+        this._has_xpos= false;\r
+    } //-- void deleteXpos() \r
+\r
+    /**\r
+     * Method deleteYpos\r
+     * \r
+     */\r
+    public void deleteYpos()\r
+    {\r
+        this._has_ypos= false;\r
+    } //-- void deleteYpos() \r
+\r
+    /**\r
+     * Returns the value of field 'bgColour'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'bgColour'.\r
+     */\r
+    public java.lang.String getBgColour()\r
+    {\r
+        return this._bgColour;\r
+    } //-- java.lang.String getBgColour() \r
+\r
+    /**\r
+     * Returns the value of field 'consThreshold'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'consThreshold'.\r
+     */\r
+    public int getConsThreshold()\r
+    {\r
+        return this._consThreshold;\r
+    } //-- int getConsThreshold() \r
+\r
+    /**\r
+     * Returns the value of field 'conservationSelected'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'conservationSelected'.\r
+     */\r
+    public boolean getConservationSelected()\r
+    {\r
+        return this._conservationSelected;\r
+    } //-- boolean getConservationSelected() \r
+\r
+    /**\r
+     * Returns the value of field 'fontName'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'fontName'.\r
+     */\r
+    public java.lang.String getFontName()\r
+    {\r
+        return this._fontName;\r
+    } //-- java.lang.String getFontName() \r
+\r
+    /**\r
+     * Returns the value of field 'fontSize'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'fontSize'.\r
+     */\r
+    public int getFontSize()\r
+    {\r
+        return this._fontSize;\r
+    } //-- int getFontSize() \r
+\r
+    /**\r
+     * Returns the value of field 'fontStyle'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'fontStyle'.\r
+     */\r
+    public int getFontStyle()\r
+    {\r
+        return this._fontStyle;\r
+    } //-- int getFontStyle() \r
+\r
+    /**\r
+     * Returns the value of field 'height'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'height'.\r
+     */\r
+    public int getHeight()\r
+    {\r
+        return this._height;\r
+    } //-- int getHeight() \r
+\r
+    /**\r
+     * Returns the value of field 'pidSelected'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'pidSelected'.\r
+     */\r
+    public boolean getPidSelected()\r
+    {\r
+        return this._pidSelected;\r
+    } //-- boolean getPidSelected() \r
+\r
+    /**\r
+     * Returns the value of field 'pidThreshold'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'pidThreshold'.\r
+     */\r
+    public int getPidThreshold()\r
+    {\r
+        return this._pidThreshold;\r
+    } //-- int getPidThreshold() \r
+\r
+    /**\r
+     * Returns the value of field 'renderGaps'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'renderGaps'.\r
+     */\r
+    public boolean getRenderGaps()\r
+    {\r
+        return this._renderGaps;\r
+    } //-- boolean getRenderGaps() \r
+\r
+    /**\r
+     * Returns the value of field 'showAnnotation'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showAnnotation'.\r
+     */\r
+    public boolean getShowAnnotation()\r
+    {\r
+        return this._showAnnotation;\r
+    } //-- boolean getShowAnnotation() \r
+\r
+    /**\r
+     * Returns the value of field 'showBoxes'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showBoxes'.\r
+     */\r
+    public boolean getShowBoxes()\r
+    {\r
+        return this._showBoxes;\r
+    } //-- boolean getShowBoxes() \r
+\r
+    /**\r
+     * Returns the value of field 'showColourText'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showColourText'.\r
+     */\r
+    public boolean getShowColourText()\r
+    {\r
+        return this._showColourText;\r
+    } //-- boolean getShowColourText() \r
+\r
+    /**\r
+     * Returns the value of field 'showConservation'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showConservation'.\r
+     */\r
+    public boolean getShowConservation()\r
+    {\r
+        return this._showConservation;\r
+    } //-- boolean getShowConservation() \r
+\r
+    /**\r
+     * Returns the value of field 'showFullId'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showFullId'.\r
+     */\r
+    public boolean getShowFullId()\r
+    {\r
+        return this._showFullId;\r
+    } //-- boolean getShowFullId() \r
+\r
+    /**\r
+     * Returns the value of field 'showIdentity'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showIdentity'.\r
+     */\r
+    public boolean getShowIdentity()\r
+    {\r
+        return this._showIdentity;\r
+    } //-- boolean getShowIdentity() \r
+\r
+    /**\r
+     * Returns the value of field 'showQuality'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showQuality'.\r
+     */\r
+    public boolean getShowQuality()\r
+    {\r
+        return this._showQuality;\r
+    } //-- boolean getShowQuality() \r
+\r
+    /**\r
+     * Returns the value of field 'showSequenceFeatures'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showSequenceFeatures'.\r
+     */\r
+    public boolean getShowSequenceFeatures()\r
+    {\r
+        return this._showSequenceFeatures;\r
+    } //-- boolean getShowSequenceFeatures() \r
+\r
+    /**\r
+     * Returns the value of field 'showText'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'showText'.\r
+     */\r
+    public boolean getShowText()\r
+    {\r
+        return this._showText;\r
+    } //-- boolean getShowText() \r
+\r
+    /**\r
+     * Returns the value of field 'startRes'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'startRes'.\r
+     */\r
+    public int getStartRes()\r
+    {\r
+        return this._startRes;\r
+    } //-- int getStartRes() \r
+\r
+    /**\r
+     * Returns the value of field 'startSeq'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'startSeq'.\r
+     */\r
+    public int getStartSeq()\r
+    {\r
+        return this._startSeq;\r
+    } //-- int getStartSeq() \r
+\r
+    /**\r
+     * Returns the value of field 'title'.\r
+     * \r
+     * @return String\r
+     * @return the value of field 'title'.\r
+     */\r
+    public java.lang.String getTitle()\r
+    {\r
+        return this._title;\r
+    } //-- java.lang.String getTitle() \r
+\r
+    /**\r
+     * Returns the value of field 'width'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'width'.\r
+     */\r
+    public int getWidth()\r
+    {\r
+        return this._width;\r
+    } //-- int getWidth() \r
+\r
+    /**\r
+     * Returns the value of field 'wrapAlignment'.\r
+     * \r
+     * @return boolean\r
+     * @return the value of field 'wrapAlignment'.\r
+     */\r
+    public boolean getWrapAlignment()\r
+    {\r
+        return this._wrapAlignment;\r
+    } //-- boolean getWrapAlignment() \r
+\r
+    /**\r
+     * Returns the value of field 'xpos'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'xpos'.\r
+     */\r
+    public int getXpos()\r
+    {\r
+        return this._xpos;\r
+    } //-- int getXpos() \r
+\r
+    /**\r
+     * Returns the value of field 'ypos'.\r
+     * \r
+     * @return int\r
+     * @return the value of field 'ypos'.\r
+     */\r
+    public int getYpos()\r
+    {\r
+        return this._ypos;\r
+    } //-- int getYpos() \r
+\r
+    /**\r
+     * Method hasConsThreshold\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasConsThreshold()\r
+    {\r
+        return this._has_consThreshold;\r
+    } //-- boolean hasConsThreshold() \r
+\r
+    /**\r
+     * Method hasConservationSelected\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasConservationSelected()\r
+    {\r
+        return this._has_conservationSelected;\r
+    } //-- boolean hasConservationSelected() \r
+\r
+    /**\r
+     * Method hasFontSize\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasFontSize()\r
+    {\r
+        return this._has_fontSize;\r
+    } //-- boolean hasFontSize() \r
+\r
+    /**\r
+     * Method hasFontStyle\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasFontStyle()\r
+    {\r
+        return this._has_fontStyle;\r
+    } //-- boolean hasFontStyle() \r
+\r
+    /**\r
+     * Method hasHeight\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasHeight()\r
+    {\r
+        return this._has_height;\r
+    } //-- boolean hasHeight() \r
+\r
+    /**\r
+     * Method hasPidSelected\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasPidSelected()\r
+    {\r
+        return this._has_pidSelected;\r
+    } //-- boolean hasPidSelected() \r
+\r
+    /**\r
+     * Method hasPidThreshold\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasPidThreshold()\r
+    {\r
+        return this._has_pidThreshold;\r
+    } //-- boolean hasPidThreshold() \r
+\r
+    /**\r
+     * Method hasRenderGaps\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasRenderGaps()\r
+    {\r
+        return this._has_renderGaps;\r
+    } //-- boolean hasRenderGaps() \r
+\r
+    /**\r
+     * Method hasShowAnnotation\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowAnnotation()\r
+    {\r
+        return this._has_showAnnotation;\r
+    } //-- boolean hasShowAnnotation() \r
+\r
+    /**\r
+     * Method hasShowBoxes\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowBoxes()\r
+    {\r
+        return this._has_showBoxes;\r
+    } //-- boolean hasShowBoxes() \r
+\r
+    /**\r
+     * Method hasShowColourText\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowColourText()\r
+    {\r
+        return this._has_showColourText;\r
+    } //-- boolean hasShowColourText() \r
+\r
+    /**\r
+     * Method hasShowConservation\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowConservation()\r
+    {\r
+        return this._has_showConservation;\r
+    } //-- boolean hasShowConservation() \r
+\r
+    /**\r
+     * Method hasShowFullId\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowFullId()\r
+    {\r
+        return this._has_showFullId;\r
+    } //-- boolean hasShowFullId() \r
+\r
+    /**\r
+     * Method hasShowIdentity\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowIdentity()\r
+    {\r
+        return this._has_showIdentity;\r
+    } //-- boolean hasShowIdentity() \r
+\r
+    /**\r
+     * Method hasShowQuality\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowQuality()\r
+    {\r
+        return this._has_showQuality;\r
+    } //-- boolean hasShowQuality() \r
+\r
+    /**\r
+     * Method hasShowSequenceFeatures\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowSequenceFeatures()\r
+    {\r
+        return this._has_showSequenceFeatures;\r
+    } //-- boolean hasShowSequenceFeatures() \r
+\r
+    /**\r
+     * Method hasShowText\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasShowText()\r
+    {\r
+        return this._has_showText;\r
+    } //-- boolean hasShowText() \r
+\r
+    /**\r
+     * Method hasStartRes\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasStartRes()\r
+    {\r
+        return this._has_startRes;\r
+    } //-- boolean hasStartRes() \r
+\r
+    /**\r
+     * Method hasStartSeq\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasStartSeq()\r
+    {\r
+        return this._has_startSeq;\r
+    } //-- boolean hasStartSeq() \r
+\r
+    /**\r
+     * Method hasWidth\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasWidth()\r
+    {\r
+        return this._has_width;\r
+    } //-- boolean hasWidth() \r
+\r
+    /**\r
+     * Method hasWrapAlignment\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasWrapAlignment()\r
+    {\r
+        return this._has_wrapAlignment;\r
+    } //-- boolean hasWrapAlignment() \r
+\r
+    /**\r
+     * Method hasXpos\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasXpos()\r
+    {\r
+        return this._has_xpos;\r
+    } //-- boolean hasXpos() \r
+\r
+    /**\r
+     * Method hasYpos\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean hasYpos()\r
+    {\r
+        return this._has_ypos;\r
+    } //-- boolean hasYpos() \r
+\r
+    /**\r
+     * Method isValid\r
+     * \r
+     * \r
+     * \r
+     * @return boolean\r
+     */\r
+    public boolean isValid()\r
+    {\r
+        try {\r
+            validate();\r
+        }\r
+        catch (org.exolab.castor.xml.ValidationException vex) {\r
+            return false;\r
+        }\r
+        return true;\r
+    } //-- boolean isValid() \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param out\r
+     */\r
+    public void marshal(java.io.Writer out)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, out);\r
+    } //-- void marshal(java.io.Writer) \r
+\r
+    /**\r
+     * Method marshal\r
+     * \r
+     * \r
+     * \r
+     * @param handler\r
+     */\r
+    public void marshal(org.xml.sax.ContentHandler handler)\r
+        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        \r
+        Marshaller.marshal(this, handler);\r
+    } //-- void marshal(org.xml.sax.ContentHandler) \r
+\r
+    /**\r
+     * Sets the value of field 'bgColour'.\r
+     * \r
+     * @param bgColour the value of field 'bgColour'.\r
+     */\r
+    public void setBgColour(java.lang.String bgColour)\r
+    {\r
+        this._bgColour = bgColour;\r
+    } //-- void setBgColour(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'consThreshold'.\r
+     * \r
+     * @param consThreshold the value of field 'consThreshold'.\r
+     */\r
+    public void setConsThreshold(int consThreshold)\r
+    {\r
+        this._consThreshold = consThreshold;\r
+        this._has_consThreshold = true;\r
+    } //-- void setConsThreshold(int) \r
+\r
+    /**\r
+     * Sets the value of field 'conservationSelected'.\r
+     * \r
+     * @param conservationSelected the value of field\r
+     * 'conservationSelected'.\r
+     */\r
+    public void setConservationSelected(boolean conservationSelected)\r
+    {\r
+        this._conservationSelected = conservationSelected;\r
+        this._has_conservationSelected = true;\r
+    } //-- void setConservationSelected(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'fontName'.\r
+     * \r
+     * @param fontName the value of field 'fontName'.\r
+     */\r
+    public void setFontName(java.lang.String fontName)\r
+    {\r
+        this._fontName = fontName;\r
+    } //-- void setFontName(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'fontSize'.\r
+     * \r
+     * @param fontSize the value of field 'fontSize'.\r
+     */\r
+    public void setFontSize(int fontSize)\r
+    {\r
+        this._fontSize = fontSize;\r
+        this._has_fontSize = true;\r
+    } //-- void setFontSize(int) \r
+\r
+    /**\r
+     * Sets the value of field 'fontStyle'.\r
+     * \r
+     * @param fontStyle the value of field 'fontStyle'.\r
+     */\r
+    public void setFontStyle(int fontStyle)\r
+    {\r
+        this._fontStyle = fontStyle;\r
+        this._has_fontStyle = true;\r
+    } //-- void setFontStyle(int) \r
+\r
+    /**\r
+     * Sets the value of field 'height'.\r
+     * \r
+     * @param height the value of field 'height'.\r
+     */\r
+    public void setHeight(int height)\r
+    {\r
+        this._height = height;\r
+        this._has_height = true;\r
+    } //-- void setHeight(int) \r
+\r
+    /**\r
+     * Sets the value of field 'pidSelected'.\r
+     * \r
+     * @param pidSelected the value of field 'pidSelected'.\r
+     */\r
+    public void setPidSelected(boolean pidSelected)\r
+    {\r
+        this._pidSelected = pidSelected;\r
+        this._has_pidSelected = true;\r
+    } //-- void setPidSelected(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'pidThreshold'.\r
+     * \r
+     * @param pidThreshold the value of field 'pidThreshold'.\r
+     */\r
+    public void setPidThreshold(int pidThreshold)\r
+    {\r
+        this._pidThreshold = pidThreshold;\r
+        this._has_pidThreshold = true;\r
+    } //-- void setPidThreshold(int) \r
+\r
+    /**\r
+     * Sets the value of field 'renderGaps'.\r
+     * \r
+     * @param renderGaps the value of field 'renderGaps'.\r
+     */\r
+    public void setRenderGaps(boolean renderGaps)\r
+    {\r
+        this._renderGaps = renderGaps;\r
+        this._has_renderGaps = true;\r
+    } //-- void setRenderGaps(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showAnnotation'.\r
+     * \r
+     * @param showAnnotation the value of field 'showAnnotation'.\r
+     */\r
+    public void setShowAnnotation(boolean showAnnotation)\r
+    {\r
+        this._showAnnotation = showAnnotation;\r
+        this._has_showAnnotation = true;\r
+    } //-- void setShowAnnotation(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showBoxes'.\r
+     * \r
+     * @param showBoxes the value of field 'showBoxes'.\r
+     */\r
+    public void setShowBoxes(boolean showBoxes)\r
+    {\r
+        this._showBoxes = showBoxes;\r
+        this._has_showBoxes = true;\r
+    } //-- void setShowBoxes(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showColourText'.\r
+     * \r
+     * @param showColourText the value of field 'showColourText'.\r
+     */\r
+    public void setShowColourText(boolean showColourText)\r
+    {\r
+        this._showColourText = showColourText;\r
+        this._has_showColourText = true;\r
+    } //-- void setShowColourText(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showConservation'.\r
+     * \r
+     * @param showConservation the value of field 'showConservation'\r
+     */\r
+    public void setShowConservation(boolean showConservation)\r
+    {\r
+        this._showConservation = showConservation;\r
+        this._has_showConservation = true;\r
+    } //-- void setShowConservation(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showFullId'.\r
+     * \r
+     * @param showFullId the value of field 'showFullId'.\r
+     */\r
+    public void setShowFullId(boolean showFullId)\r
+    {\r
+        this._showFullId = showFullId;\r
+        this._has_showFullId = true;\r
+    } //-- void setShowFullId(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showIdentity'.\r
+     * \r
+     * @param showIdentity the value of field 'showIdentity'.\r
+     */\r
+    public void setShowIdentity(boolean showIdentity)\r
+    {\r
+        this._showIdentity = showIdentity;\r
+        this._has_showIdentity = true;\r
+    } //-- void setShowIdentity(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showQuality'.\r
+     * \r
+     * @param showQuality the value of field 'showQuality'.\r
+     */\r
+    public void setShowQuality(boolean showQuality)\r
+    {\r
+        this._showQuality = showQuality;\r
+        this._has_showQuality = true;\r
+    } //-- void setShowQuality(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showSequenceFeatures'.\r
+     * \r
+     * @param showSequenceFeatures the value of field\r
+     * 'showSequenceFeatures'.\r
+     */\r
+    public void setShowSequenceFeatures(boolean showSequenceFeatures)\r
+    {\r
+        this._showSequenceFeatures = showSequenceFeatures;\r
+        this._has_showSequenceFeatures = true;\r
+    } //-- void setShowSequenceFeatures(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'showText'.\r
+     * \r
+     * @param showText the value of field 'showText'.\r
+     */\r
+    public void setShowText(boolean showText)\r
+    {\r
+        this._showText = showText;\r
+        this._has_showText = true;\r
+    } //-- void setShowText(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'startRes'.\r
+     * \r
+     * @param startRes the value of field 'startRes'.\r
+     */\r
+    public void setStartRes(int startRes)\r
+    {\r
+        this._startRes = startRes;\r
+        this._has_startRes = true;\r
+    } //-- void setStartRes(int) \r
+\r
+    /**\r
+     * Sets the value of field 'startSeq'.\r
+     * \r
+     * @param startSeq the value of field 'startSeq'.\r
+     */\r
+    public void setStartSeq(int startSeq)\r
+    {\r
+        this._startSeq = startSeq;\r
+        this._has_startSeq = true;\r
+    } //-- void setStartSeq(int) \r
+\r
+    /**\r
+     * Sets the value of field 'title'.\r
+     * \r
+     * @param title the value of field 'title'.\r
+     */\r
+    public void setTitle(java.lang.String title)\r
+    {\r
+        this._title = title;\r
+    } //-- void setTitle(java.lang.String) \r
+\r
+    /**\r
+     * Sets the value of field 'width'.\r
+     * \r
+     * @param width the value of field 'width'.\r
+     */\r
+    public void setWidth(int width)\r
+    {\r
+        this._width = width;\r
+        this._has_width = true;\r
+    } //-- void setWidth(int) \r
+\r
+    /**\r
+     * Sets the value of field 'wrapAlignment'.\r
+     * \r
+     * @param wrapAlignment the value of field 'wrapAlignment'.\r
+     */\r
+    public void setWrapAlignment(boolean wrapAlignment)\r
+    {\r
+        this._wrapAlignment = wrapAlignment;\r
+        this._has_wrapAlignment = true;\r
+    } //-- void setWrapAlignment(boolean) \r
+\r
+    /**\r
+     * Sets the value of field 'xpos'.\r
+     * \r
+     * @param xpos the value of field 'xpos'.\r
+     */\r
+    public void setXpos(int xpos)\r
+    {\r
+        this._xpos = xpos;\r
+        this._has_xpos = true;\r
+    } //-- void setXpos(int) \r
+\r
+    /**\r
+     * Sets the value of field 'ypos'.\r
+     * \r
+     * @param ypos the value of field 'ypos'.\r
+     */\r
+    public void setYpos(int ypos)\r
+    {\r
+        this._ypos = ypos;\r
+        this._has_ypos = true;\r
+    } //-- void setYpos(int) \r
+\r
+    /**\r
+     * Method unmarshal\r
+     * \r
+     * \r
+     * \r
+     * @param reader\r
+     * @return Object\r
+     */\r
+    public static java.lang.Object unmarshal(java.io.Reader reader)\r
+        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
+    {\r
+        return (jalview.binding.Viewport) Unmarshaller.unmarshal(jalview.binding.Viewport.class, reader);\r
+    } //-- java.lang.Object unmarshal(java.io.Reader) \r
+\r
+    /**\r
+     * Method validate\r
+     * \r
+     */\r
+    public void validate()\r
+        throws org.exolab.castor.xml.ValidationException\r
+    {\r
+        org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
+        validator.validate(this);\r
+    } //-- void validate() \r
+\r
+}\r