-/*\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
-/*\r
-* Jalview - A Sequence Alignment Editor and Viewer\r
-* Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
-*\r
-* This program is free software; you can redistribute it and/or\r
-* modify it under the terms of the GNU General Public License\r
-* as published by the Free Software Foundation; either version 2\r
-* of the License, or (at your option) any later version.\r
-*\r
-* This program is distributed in the hope that it will be useful,\r
-* but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
-* GNU General Public License for more details.\r
-*\r
-* You should have received a copy of the GNU General Public License\r
-* along with this program; if not, write to the Free Software\r
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\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 Colour.\r
- *\r
- * @version $Revision$ $Date$\r
- */\r
-public class Colour implements java.io.Serializable {\r
-\r
-\r
- //--------------------------/\r
- //- Class/Member Variables -/\r
- //--------------------------/\r
-\r
- /**\r
- * Field _name\r
- */\r
- private java.lang.String _name;\r
-\r
- /**\r
- * Field _RGB\r
- */\r
- private java.lang.String _RGB;\r
-\r
-\r
- //----------------/\r
- //- Constructors -/\r
- //----------------/\r
-\r
- public Colour() {\r
- super();\r
- } //-- jalview.binding.Colour()\r
-\r
-\r
- //-----------/\r
- //- Methods -/\r
- //-----------/\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 'RGB'.\r
- *\r
- * @return String\r
- * @return the value of field 'RGB'.\r
- */\r
- public java.lang.String getRGB()\r
- {\r
- return this._RGB;\r
- } //-- java.lang.String getRGB()\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 '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 'RGB'.\r
- *\r
- * @param RGB the value of field 'RGB'.\r
- */\r
- public void setRGB(java.lang.String RGB)\r
- {\r
- this._RGB = RGB;\r
- } //-- void setRGB(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.Colour) Unmarshaller.unmarshal(jalview.binding.Colour.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
+/*
+ * This class was automatically generated with
+ * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
+package jalview.binding;
+
+//---------------------------------/
+//- Imported classes and packages -/
+//---------------------------------/
+
+import org.exolab.castor.xml.Marshaller;
+import org.exolab.castor.xml.Unmarshaller;
+
+/**
+ * Class Colour.
+ *
+ * @version $Revision$ $Date$
+ */
+public class Colour implements java.io.Serializable
+{
+
+ // --------------------------/
+ // - Class/Member Variables -/
+ // --------------------------/
+
+ /**
+ * Single letter residue code for an alignment colour scheme, or feature type
+ * for a feature colour scheme
+ */
+ private java.lang.String _name;
+
+ /**
+ * Field _RGB.
+ */
+ private java.lang.String _RGB;
+
+ /**
+ * Field _minRGB.
+ */
+ private java.lang.String _minRGB;
+
+ /**
+ * Field _noValueColour.
+ */
+ private jalview.binding.types.NoValueColour _noValueColour = jalview.binding.types.NoValueColour
+ .valueOf("Min");
+
+ /**
+ * Field _threshType.
+ */
+ private jalview.binding.types.ColourThreshTypeType _threshType;
+
+ /**
+ * Field _threshold.
+ */
+ private float _threshold;
+
+ /**
+ * keeps track of state for field: _threshold
+ */
+ private boolean _has_threshold;
+
+ /**
+ * Field _max.
+ */
+ private float _max;
+
+ /**
+ * keeps track of state for field: _max
+ */
+ private boolean _has_max;
+
+ /**
+ * Field _min.
+ */
+ private float _min;
+
+ /**
+ * keeps track of state for field: _min
+ */
+ private boolean _has_min;
+
+ /**
+ * Field _colourByLabel.
+ */
+ private boolean _colourByLabel;
+
+ /**
+ * keeps track of state for field: _colourByLabel
+ */
+ private boolean _has_colourByLabel;
+
+ /**
+ * Field _autoScale.
+ */
+ private boolean _autoScale;
+
+ /**
+ * keeps track of state for field: _autoScale
+ */
+ private boolean _has_autoScale;
+
+ /**
+ * name of feature attribute to colour by, or attribute and sub-attribute
+ */
+ private java.util.Vector _attributeNameList;
+
+ // ----------------/
+ // - Constructors -/
+ // ----------------/
+
+ public Colour()
+ {
+ super();
+ setNoValueColour(jalview.binding.types.NoValueColour.valueOf("Min"));
+ this._attributeNameList = new java.util.Vector();
+ }
+
+ // -----------/
+ // - Methods -/
+ // -----------/
+
+ /**
+ *
+ *
+ * @param vAttributeName
+ * @throws java.lang.IndexOutOfBoundsException
+ * if the index given is outside the bounds of the collection
+ */
+ public void addAttributeName(final java.lang.String vAttributeName)
+ throws java.lang.IndexOutOfBoundsException
+ {
+ // check for the maximum size
+ if (this._attributeNameList.size() >= 2)
+ {
+ throw new IndexOutOfBoundsException(
+ "addAttributeName has a maximum of 2");
+ }
+
+ this._attributeNameList.addElement(vAttributeName);
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vAttributeName
+ * @throws java.lang.IndexOutOfBoundsException
+ * if the index given is outside the bounds of the collection
+ */
+ public void addAttributeName(final int index,
+ final java.lang.String vAttributeName)
+ throws java.lang.IndexOutOfBoundsException
+ {
+ // check for the maximum size
+ if (this._attributeNameList.size() >= 2)
+ {
+ throw new IndexOutOfBoundsException(
+ "addAttributeName has a maximum of 2");
+ }
+
+ this._attributeNameList.add(index, vAttributeName);
+ }
+
+ /**
+ */
+ public void deleteAutoScale()
+ {
+ this._has_autoScale = false;
+ }
+
+ /**
+ */
+ public void deleteColourByLabel()
+ {
+ this._has_colourByLabel = false;
+ }
+
+ /**
+ */
+ public void deleteMax()
+ {
+ this._has_max = false;
+ }
+
+ /**
+ */
+ public void deleteMin()
+ {
+ this._has_min = false;
+ }
+
+ /**
+ */
+ public void deleteThreshold()
+ {
+ this._has_threshold = false;
+ }
+
+ /**
+ * Method enumerateAttributeName.
+ *
+ * @return an Enumeration over all java.lang.String elements
+ */
+ public java.util.Enumeration enumerateAttributeName()
+ {
+ return this._attributeNameList.elements();
+ }
+
+ /**
+ * Method getAttributeName.
+ *
+ * @param index
+ * @throws java.lang.IndexOutOfBoundsException
+ * if the index given is outside the bounds of the collection
+ * @return the value of the java.lang.String at the given index
+ */
+ public java.lang.String getAttributeName(final int index)
+ throws java.lang.IndexOutOfBoundsException
+ {
+ // check bounds for index
+ if (index < 0 || index >= this._attributeNameList.size())
+ {
+ throw new IndexOutOfBoundsException("getAttributeName: Index value '"
+ + index + "' not in range [0.."
+ + (this._attributeNameList.size() - 1) + "]");
+ }
+
+ return (java.lang.String) _attributeNameList.get(index);
+ }
+
+ /**
+ * Method getAttributeName.Returns the contents of the collection in an Array.
+ * <p>
+ * Note: Just in case the collection contents are changing in another thread,
+ * we pass a 0-length Array of the correct type into the API call. This way we
+ * <i>know</i> that the Array returned is of exactly the correct length.
+ *
+ * @return this collection as an Array
+ */
+ public java.lang.String[] getAttributeName()
+ {
+ java.lang.String[] array = new java.lang.String[0];
+ return (java.lang.String[]) this._attributeNameList.toArray(array);
+ }
+
+ /**
+ * Method getAttributeNameCount.
+ *
+ * @return the size of this collection
+ */
+ public int getAttributeNameCount()
+ {
+ return this._attributeNameList.size();
+ }
+
+ /**
+ * Returns the value of field 'autoScale'.
+ *
+ * @return the value of field 'AutoScale'.
+ */
+ public boolean getAutoScale()
+ {
+ return this._autoScale;
+ }
+
+ /**
+ * Returns the value of field 'colourByLabel'.
+ *
+ * @return the value of field 'ColourByLabel'.
+ */
+ public boolean getColourByLabel()
+ {
+ return this._colourByLabel;
+ }
+
+ /**
+ * Returns the value of field 'max'.
+ *
+ * @return the value of field 'Max'.
+ */
+ public float getMax()
+ {
+ return this._max;
+ }
+
+ /**
+ * Returns the value of field 'min'.
+ *
+ * @return the value of field 'Min'.
+ */
+ public float getMin()
+ {
+ return this._min;
+ }
+
+ /**
+ * Returns the value of field 'minRGB'.
+ *
+ * @return the value of field 'MinRGB'.
+ */
+ public java.lang.String getMinRGB()
+ {
+ return this._minRGB;
+ }
+
+ /**
+ * Returns the value of field 'name'. The field 'name' has the following
+ * description: Single letter residue code for an alignment colour scheme, or
+ * feature type for a feature colour scheme
+ *
+ * @return the value of field 'Name'.
+ */
+ public java.lang.String getName()
+ {
+ return this._name;
+ }
+
+ /**
+ * Returns the value of field 'noValueColour'.
+ *
+ * @return the value of field 'NoValueColour'.
+ */
+ public jalview.binding.types.NoValueColour getNoValueColour()
+ {
+ return this._noValueColour;
+ }
+
+ /**
+ * Returns the value of field 'RGB'.
+ *
+ * @return the value of field 'RGB'.
+ */
+ public java.lang.String getRGB()
+ {
+ return this._RGB;
+ }
+
+ /**
+ * Returns the value of field 'threshType'.
+ *
+ * @return the value of field 'ThreshType'.
+ */
+ public jalview.binding.types.ColourThreshTypeType getThreshType()
+ {
+ return this._threshType;
+ }
+
+ /**
+ * Returns the value of field 'threshold'.
+ *
+ * @return the value of field 'Threshold'.
+ */
+ public float getThreshold()
+ {
+ return this._threshold;
+ }
+
+ /**
+ * Method hasAutoScale.
+ *
+ * @return true if at least one AutoScale has been added
+ */
+ public boolean hasAutoScale()
+ {
+ return this._has_autoScale;
+ }
+
+ /**
+ * Method hasColourByLabel.
+ *
+ * @return true if at least one ColourByLabel has been added
+ */
+ public boolean hasColourByLabel()
+ {
+ return this._has_colourByLabel;
+ }
+
+ /**
+ * Method hasMax.
+ *
+ * @return true if at least one Max has been added
+ */
+ public boolean hasMax()
+ {
+ return this._has_max;
+ }
+
+ /**
+ * Method hasMin.
+ *
+ * @return true if at least one Min has been added
+ */
+ public boolean hasMin()
+ {
+ return this._has_min;
+ }
+
+ /**
+ * Method hasThreshold.
+ *
+ * @return true if at least one Threshold has been added
+ */
+ public boolean hasThreshold()
+ {
+ return this._has_threshold;
+ }
+
+ /**
+ * Returns the value of field 'autoScale'.
+ *
+ * @return the value of field 'AutoScale'.
+ */
+ public boolean isAutoScale()
+ {
+ return this._autoScale;
+ }
+
+ /**
+ * Returns the value of field 'colourByLabel'.
+ *
+ * @return the value of field 'ColourByLabel'.
+ */
+ public boolean isColourByLabel()
+ {
+ return this._colourByLabel;
+ }
+
+ /**
+ * Method isValid.
+ *
+ * @return true if this object is valid according to the schema
+ */
+ public boolean isValid()
+ {
+ try
+ {
+ validate();
+ } catch (org.exolab.castor.xml.ValidationException vex)
+ {
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ *
+ *
+ * @param out
+ * @throws org.exolab.castor.xml.MarshalException
+ * if object is null or if any SAXException is thrown during
+ * marshaling
+ * @throws org.exolab.castor.xml.ValidationException
+ * if this object is an invalid instance according to the schema
+ */
+ public void marshal(final java.io.Writer out)
+ throws org.exolab.castor.xml.MarshalException,
+ org.exolab.castor.xml.ValidationException
+ {
+ Marshaller.marshal(this, out);
+ }
+
+ /**
+ *
+ *
+ * @param handler
+ * @throws java.io.IOException
+ * if an IOException occurs during marshaling
+ * @throws org.exolab.castor.xml.ValidationException
+ * if this object is an invalid instance according to the schema
+ * @throws org.exolab.castor.xml.MarshalException
+ * if object is null or if any SAXException is thrown during
+ * marshaling
+ */
+ public void marshal(final org.xml.sax.ContentHandler handler)
+ throws java.io.IOException,
+ org.exolab.castor.xml.MarshalException,
+ org.exolab.castor.xml.ValidationException
+ {
+ Marshaller.marshal(this, handler);
+ }
+
+ /**
+ */
+ public void removeAllAttributeName()
+ {
+ this._attributeNameList.clear();
+ }
+
+ /**
+ * Method removeAttributeName.
+ *
+ * @param vAttributeName
+ * @return true if the object was removed from the collection.
+ */
+ public boolean removeAttributeName(final java.lang.String vAttributeName)
+ {
+ boolean removed = _attributeNameList.remove(vAttributeName);
+ return removed;
+ }
+
+ /**
+ * Method removeAttributeNameAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
+ public java.lang.String removeAttributeNameAt(final int index)
+ {
+ java.lang.Object obj = this._attributeNameList.remove(index);
+ return (java.lang.String) obj;
+ }
+
+ /**
+ *
+ *
+ * @param index
+ * @param vAttributeName
+ * @throws java.lang.IndexOutOfBoundsException
+ * if the index given is outside the bounds of the collection
+ */
+ public void setAttributeName(final int index,
+ final java.lang.String vAttributeName)
+ throws java.lang.IndexOutOfBoundsException
+ {
+ // check bounds for index
+ if (index < 0 || index >= this._attributeNameList.size())
+ {
+ throw new IndexOutOfBoundsException("setAttributeName: Index value '"
+ + index + "' not in range [0.."
+ + (this._attributeNameList.size() - 1) + "]");
+ }
+
+ this._attributeNameList.set(index, vAttributeName);
+ }
+
+ /**
+ *
+ *
+ * @param vAttributeNameArray
+ */
+ public void setAttributeName(final java.lang.String[] vAttributeNameArray)
+ {
+ // -- copy array
+ _attributeNameList.clear();
+
+ for (int i = 0; i < vAttributeNameArray.length; i++)
+ {
+ this._attributeNameList.add(vAttributeNameArray[i]);
+ }
+ }
+
+ /**
+ * Sets the value of field 'autoScale'.
+ *
+ * @param autoScale
+ * the value of field 'autoScale'.
+ */
+ public void setAutoScale(final boolean autoScale)
+ {
+ this._autoScale = autoScale;
+ this._has_autoScale = true;
+ }
+
+ /**
+ * Sets the value of field 'colourByLabel'.
+ *
+ * @param colourByLabel
+ * the value of field 'colourByLabel'.
+ */
+ public void setColourByLabel(final boolean colourByLabel)
+ {
+ this._colourByLabel = colourByLabel;
+ this._has_colourByLabel = true;
+ }
+
+ /**
+ * Sets the value of field 'max'.
+ *
+ * @param max
+ * the value of field 'max'.
+ */
+ public void setMax(final float max)
+ {
+ this._max = max;
+ this._has_max = true;
+ }
+
+ /**
+ * Sets the value of field 'min'.
+ *
+ * @param min
+ * the value of field 'min'.
+ */
+ public void setMin(final float min)
+ {
+ this._min = min;
+ this._has_min = true;
+ }
+
+ /**
+ * Sets the value of field 'minRGB'.
+ *
+ * @param minRGB
+ * the value of field 'minRGB'.
+ */
+ public void setMinRGB(final java.lang.String minRGB)
+ {
+ this._minRGB = minRGB;
+ }
+
+ /**
+ * Sets the value of field 'name'. The field 'name' has the following
+ * description: Single letter residue code for an alignment colour scheme, or
+ * feature type for a feature colour scheme
+ *
+ * @param name
+ * the value of field 'name'.
+ */
+ public void setName(final java.lang.String name)
+ {
+ this._name = name;
+ }
+
+ /**
+ * Sets the value of field 'noValueColour'.
+ *
+ * @param noValueColour
+ * the value of field 'noValueColour'.
+ */
+ public void setNoValueColour(
+ final jalview.binding.types.NoValueColour noValueColour)
+ {
+ this._noValueColour = noValueColour;
+ }
+
+ /**
+ * Sets the value of field 'RGB'.
+ *
+ * @param RGB
+ * the value of field 'RGB'.
+ */
+ public void setRGB(final java.lang.String RGB)
+ {
+ this._RGB = RGB;
+ }
+
+ /**
+ * Sets the value of field 'threshType'.
+ *
+ * @param threshType
+ * the value of field 'threshType'.
+ */
+ public void setThreshType(
+ final jalview.binding.types.ColourThreshTypeType threshType)
+ {
+ this._threshType = threshType;
+ }
+
+ /**
+ * Sets the value of field 'threshold'.
+ *
+ * @param threshold
+ * the value of field 'threshold'.
+ */
+ public void setThreshold(final float threshold)
+ {
+ this._threshold = threshold;
+ this._has_threshold = true;
+ }
+
+ /**
+ * Method unmarshal.
+ *
+ * @param reader
+ * @throws org.exolab.castor.xml.MarshalException
+ * if object is null or if any SAXException is thrown during
+ * marshaling
+ * @throws org.exolab.castor.xml.ValidationException
+ * if this object is an invalid instance according to the schema
+ * @return the unmarshaled jalview.binding.Colour
+ */
+ public static jalview.binding.Colour unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException,
+ org.exolab.castor.xml.ValidationException
+ {
+ return (jalview.binding.Colour) Unmarshaller
+ .unmarshal(jalview.binding.Colour.class, reader);
+ }
+
+ /**
+ *
+ *
+ * @throws org.exolab.castor.xml.ValidationException
+ * if this object is an invalid instance according to the schema
+ */
+ public void validate() throws org.exolab.castor.xml.ValidationException
+ {
+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
+ validator.validate(this);
+ }
+
+}