-/*
- * 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);
- }
-
-}