JAL-1793 update spike branch to latest
[jalview.git] / src / jalview / binding / Colour.java
old mode 100755 (executable)
new mode 100644 (file)
index 4e57c3f..f51e9af
-/*\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
-package jalview.binding;\r
-\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
-\r
-import org.xml.sax.ContentHandler;\r
-\r
-//---------------------------------/\r
-//- Imported classes and packages -/\r
-//---------------------------------/\r
-import java.io.IOException;\r
-import java.io.Reader;\r
-import java.io.Serializable;\r
-import java.io.Writer;\r
-\r
-\r
-/**\r
- * Class Colour.\r
- *\r
- * @version $Revision$ $Date$\r
- */\r
-public class Colour implements java.io.Serializable\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
-    //- Constructors -/\r
-    //----------------/\r
-    public Colour()\r
-    {\r
-        super();\r
-    }\r
-\r
-    //-- jalview.binding.Colour()\r
-    //-----------/\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @return DOCUMENT ME!\r
-     */\r
-    public java.lang.String getName()\r
-    {\r
-        return this._name;\r
-    }\r
-\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
-    }\r
-\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
-        {\r
-            validate();\r
-        }\r
-        catch (org.exolab.castor.xml.ValidationException vex)\r
-        {\r
-            return false;\r
-        }\r
-\r
-        return true;\r
-    }\r
-\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, \r
-            org.exolab.castor.xml.ValidationException\r
-    {\r
-        Marshaller.marshal(this, out);\r
-    }\r
-\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, \r
-            org.exolab.castor.xml.ValidationException\r
-    {\r
-        Marshaller.marshal(this, handler);\r
-    }\r
-\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
-    }\r
-\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
-    }\r
-\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, \r
-            org.exolab.castor.xml.ValidationException\r
-    {\r
-        return (jalview.binding.Colour) Unmarshaller.unmarshal(jalview.binding.Colour.class,\r
-            reader);\r
-    }\r
-\r
-    //-- java.lang.Object unmarshal(java.io.Reader) \r
-\r
-    /**\r
-     * Method validate\r
-     *\r
-     */\r
-    public void validate() 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
-    }\r
-\r
-    //-- void validate() \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);
+  }
+
+}