JAL-1620 version bump and release notes
[jalview.git] / src / jalview / schemabinding / version2 / StructureState.java
index 373db78..25e7fdf 100644 (file)
@@ -1,26 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.4)
- * Copyright (C) 2008 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1)
+ * Copyright (C) 2014 The Jalview Authors
  * 
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
+ * This file is part of Jalview.
  * 
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
  * 
  * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemabinding.version2;
 
-// ---------------------------------/
-// - Imported classes and packages -/
-// ---------------------------------/
+//---------------------------------/
+//- Imported classes and packages -/
+//---------------------------------/
 
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
@@ -53,24 +55,51 @@ public class StructureState implements java.io.Serializable
   private boolean _has_visible;
 
   /**
-   * Field _xpos.
+   * additional identifier which properly disambiguates the structure view from
+   * any other view with the same attributes. This is not an ID, because it is
+   * possible to have many references to the same physical structure view from
+   * different sequences in an alignment. A structureState element citing the
+   * same viewId will appear for each instance.
+   * 
    */
-  private int _xpos;
+  private java.lang.String _viewId;
 
   /**
-   * keeps track of state for field: _xpos
+   * Flag set if the alignment panel containing this JSeq should be included in
+   * those used to perform a structure superposition (since Jalview 2.7).
+   * 
    */
-  private boolean _has_xpos;
+  private boolean _alignwithAlignPanel = true;
 
   /**
-   * Field _ypos.
+   * keeps track of state for field: _alignwithAlignPanel
    */
-  private int _ypos;
+  private boolean _has_alignwithAlignPanel;
 
   /**
-   * keeps track of state for field: _ypos
+   * Flag set if the alignment panel containing this JSeq should be included in
+   * those used to colour its associated sequences in this structureState(since
+   * Jalview 2.7).
+   * 
    */
-  private boolean _has_ypos;
+  private boolean _colourwithAlignPanel = false;
+
+  /**
+   * keeps track of state for field: _colourwithAlignPanel
+   */
+  private boolean _has_colourwithAlignPanel;
+
+  /**
+   * Flag set if the structure display is coloured by the Jmol state, rather
+   * than by one or more linked alignment views.
+   * 
+   */
+  private boolean _colourByJmol = true;
+
+  /**
+   * keeps track of state for field: _colourByJmol
+   */
+  private boolean _has_colourByJmol;
 
   /**
    * Field _width.
@@ -92,6 +121,26 @@ public class StructureState implements java.io.Serializable
    */
   private boolean _has_height;
 
+  /**
+   * Field _xpos.
+   */
+  private int _xpos;
+
+  /**
+   * keeps track of state for field: _xpos
+   */
+  private boolean _has_xpos;
+
+  /**
+   * Field _ypos.
+   */
+  private int _ypos;
+
+  /**
+   * keeps track of state for field: _ypos
+   */
+  private boolean _has_ypos;
+
   // ----------------/
   // - Constructors -/
   // ----------------/
@@ -107,41 +156,103 @@ public class StructureState implements java.io.Serializable
   // -----------/
 
   /**
-   */
+     */
+  public void deleteAlignwithAlignPanel()
+  {
+    this._has_alignwithAlignPanel = false;
+  }
+
+  /**
+     */
+  public void deleteColourByJmol()
+  {
+    this._has_colourByJmol = false;
+  }
+
+  /**
+     */
+  public void deleteColourwithAlignPanel()
+  {
+    this._has_colourwithAlignPanel = false;
+  }
+
+  /**
+     */
   public void deleteHeight()
   {
     this._has_height = false;
   }
 
   /**
-   */
+     */
   public void deleteVisible()
   {
     this._has_visible = false;
   }
 
   /**
-   */
+     */
   public void deleteWidth()
   {
     this._has_width = false;
   }
 
   /**
-   */
+     */
   public void deleteXpos()
   {
     this._has_xpos = false;
   }
 
   /**
-   */
+     */
   public void deleteYpos()
   {
     this._has_ypos = false;
   }
 
   /**
+   * Returns the value of field 'alignwithAlignPanel'. The field
+   * 'alignwithAlignPanel' has the following description: Flag set if the
+   * alignment panel containing this JSeq should be included in those used to
+   * perform a structure superposition (since Jalview 2.7).
+   * 
+   * 
+   * @return the value of field 'AlignwithAlignPanel'.
+   */
+  public boolean getAlignwithAlignPanel()
+  {
+    return this._alignwithAlignPanel;
+  }
+
+  /**
+   * Returns the value of field 'colourByJmol'. The field 'colourByJmol' has the
+   * following description: Flag set if the structure display is coloured by the
+   * Jmol state, rather than by one or more linked alignment views.
+   * 
+   * 
+   * @return the value of field 'ColourByJmol'.
+   */
+  public boolean getColourByJmol()
+  {
+    return this._colourByJmol;
+  }
+
+  /**
+   * Returns the value of field 'colourwithAlignPanel'. The field
+   * 'colourwithAlignPanel' has the following description: Flag set if the
+   * alignment panel containing this JSeq should be included in those used to
+   * colour its associated sequences in this structureState(since Jalview 2.7).
+   * 
+   * 
+   * @return the value of field 'ColourwithAlignPanel'.
+   */
+  public boolean getColourwithAlignPanel()
+  {
+    return this._colourwithAlignPanel;
+  }
+
+  /**
    * Returns the value of field 'content'. The field 'content' has the following
    * description: internal content storage
    * 
@@ -163,6 +274,22 @@ public class StructureState implements java.io.Serializable
   }
 
   /**
+   * Returns the value of field 'viewId'. The field 'viewId' has the following
+   * description: additional identifier which properly disambiguates the
+   * structure view from any other view with the same attributes. This is not an
+   * ID, because it is possible to have many references to the same physical
+   * structure view from different sequences in an alignment. A structureState
+   * element citing the same viewId will appear for each instance.
+   * 
+   * 
+   * @return the value of field 'ViewId'.
+   */
+  public java.lang.String getViewId()
+  {
+    return this._viewId;
+  }
+
+  /**
    * Returns the value of field 'visible'.
    * 
    * @return the value of field 'Visible'.
@@ -203,6 +330,36 @@ public class StructureState implements java.io.Serializable
   }
 
   /**
+   * Method hasAlignwithAlignPanel.
+   * 
+   * @return true if at least one AlignwithAlignPanel has been added
+   */
+  public boolean hasAlignwithAlignPanel()
+  {
+    return this._has_alignwithAlignPanel;
+  }
+
+  /**
+   * Method hasColourByJmol.
+   * 
+   * @return true if at least one ColourByJmol has been added
+   */
+  public boolean hasColourByJmol()
+  {
+    return this._has_colourByJmol;
+  }
+
+  /**
+   * Method hasColourwithAlignPanel.
+   * 
+   * @return true if at least one ColourwithAlignPanel has been added
+   */
+  public boolean hasColourwithAlignPanel()
+  {
+    return this._has_colourwithAlignPanel;
+  }
+
+  /**
    * Method hasHeight.
    * 
    * @return true if at least one Height has been added
@@ -253,6 +410,47 @@ public class StructureState implements java.io.Serializable
   }
 
   /**
+   * Returns the value of field 'alignwithAlignPanel'. The field
+   * 'alignwithAlignPanel' has the following description: Flag set if the
+   * alignment panel containing this JSeq should be included in those used to
+   * perform a structure superposition (since Jalview 2.7).
+   * 
+   * 
+   * @return the value of field 'AlignwithAlignPanel'.
+   */
+  public boolean isAlignwithAlignPanel()
+  {
+    return this._alignwithAlignPanel;
+  }
+
+  /**
+   * Returns the value of field 'colourByJmol'. The field 'colourByJmol' has the
+   * following description: Flag set if the structure display is coloured by the
+   * Jmol state, rather than by one or more linked alignment views.
+   * 
+   * 
+   * @return the value of field 'ColourByJmol'.
+   */
+  public boolean isColourByJmol()
+  {
+    return this._colourByJmol;
+  }
+
+  /**
+   * Returns the value of field 'colourwithAlignPanel'. The field
+   * 'colourwithAlignPanel' has the following description: Flag set if the
+   * alignment panel containing this JSeq should be included in those used to
+   * colour its associated sequences in this structureState(since Jalview 2.7).
+   * 
+   * 
+   * @return the value of field 'ColourwithAlignPanel'.
+   */
+  public boolean isColourwithAlignPanel()
+  {
+    return this._colourwithAlignPanel;
+  }
+
+  /**
    * Method isValid.
    * 
    * @return true if this object is valid according to the schema
@@ -284,11 +482,10 @@ public class StructureState implements java.io.Serializable
    * 
    * @param out
    * @throws org.exolab.castor.xml.MarshalException
-   *                 if object is null or if any SAXException is thrown during
-   *                 marshaling
+   *           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
+   *           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,
@@ -302,13 +499,12 @@ public class StructureState implements java.io.Serializable
    * 
    * @param handler
    * @throws java.io.IOException
-   *                 if an IOException occurs during marshaling
+   *           if an IOException occurs during marshaling
    * @throws org.exolab.castor.xml.ValidationException
-   *                 if this object is an invalid instance according to the
-   *                 schema
+   *           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
+   *           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,
@@ -319,11 +515,58 @@ public class StructureState implements java.io.Serializable
   }
 
   /**
+   * Sets the value of field 'alignwithAlignPanel'. The field
+   * 'alignwithAlignPanel' has the following description: Flag set if the
+   * alignment panel containing this JSeq should be included in those used to
+   * perform a structure superposition (since Jalview 2.7).
+   * 
+   * 
+   * @param alignwithAlignPanel
+   *          the value of field 'alignwithAlignPanel'.
+   */
+  public void setAlignwithAlignPanel(final boolean alignwithAlignPanel)
+  {
+    this._alignwithAlignPanel = alignwithAlignPanel;
+    this._has_alignwithAlignPanel = true;
+  }
+
+  /**
+   * Sets the value of field 'colourByJmol'. The field 'colourByJmol' has the
+   * following description: Flag set if the structure display is coloured by the
+   * Jmol state, rather than by one or more linked alignment views.
+   * 
+   * 
+   * @param colourByJmol
+   *          the value of field 'colourByJmol'.
+   */
+  public void setColourByJmol(final boolean colourByJmol)
+  {
+    this._colourByJmol = colourByJmol;
+    this._has_colourByJmol = true;
+  }
+
+  /**
+   * Sets the value of field 'colourwithAlignPanel'. The field
+   * 'colourwithAlignPanel' has the following description: Flag set if the
+   * alignment panel containing this JSeq should be included in those used to
+   * colour its associated sequences in this structureState(since Jalview 2.7).
+   * 
+   * 
+   * @param colourwithAlignPanel
+   *          the value of field 'colourwithAlignPanel'.
+   */
+  public void setColourwithAlignPanel(final boolean colourwithAlignPanel)
+  {
+    this._colourwithAlignPanel = colourwithAlignPanel;
+    this._has_colourwithAlignPanel = true;
+  }
+
+  /**
    * Sets the value of field 'content'. The field 'content' has the following
    * description: internal content storage
    * 
    * @param content
-   *                the value of field 'content'.
+   *          the value of field 'content'.
    */
   public void setContent(final java.lang.String content)
   {
@@ -334,7 +577,7 @@ public class StructureState implements java.io.Serializable
    * Sets the value of field 'height'.
    * 
    * @param height
-   *                the value of field 'height'.
+   *          the value of field 'height'.
    */
   public void setHeight(final int height)
   {
@@ -343,10 +586,27 @@ public class StructureState implements java.io.Serializable
   }
 
   /**
+   * Sets the value of field 'viewId'. The field 'viewId' has the following
+   * description: additional identifier which properly disambiguates the
+   * structure view from any other view with the same attributes. This is not an
+   * ID, because it is possible to have many references to the same physical
+   * structure view from different sequences in an alignment. A structureState
+   * element citing the same viewId will appear for each instance.
+   * 
+   * 
+   * @param viewId
+   *          the value of field 'viewId'.
+   */
+  public void setViewId(final java.lang.String viewId)
+  {
+    this._viewId = viewId;
+  }
+
+  /**
    * Sets the value of field 'visible'.
    * 
    * @param visible
-   *                the value of field 'visible'.
+   *          the value of field 'visible'.
    */
   public void setVisible(final boolean visible)
   {
@@ -358,7 +618,7 @@ public class StructureState implements java.io.Serializable
    * Sets the value of field 'width'.
    * 
    * @param width
-   *                the value of field 'width'.
+   *          the value of field 'width'.
    */
   public void setWidth(final int width)
   {
@@ -370,7 +630,7 @@ public class StructureState implements java.io.Serializable
    * Sets the value of field 'xpos'.
    * 
    * @param xpos
-   *                the value of field 'xpos'.
+   *          the value of field 'xpos'.
    */
   public void setXpos(final int xpos)
   {
@@ -382,7 +642,7 @@ public class StructureState implements java.io.Serializable
    * Sets the value of field 'ypos'.
    * 
    * @param ypos
-   *                the value of field 'ypos'.
+   *          the value of field 'ypos'.
    */
   public void setYpos(final int ypos)
   {
@@ -395,11 +655,10 @@ public class StructureState implements java.io.Serializable
    * 
    * @param reader
    * @throws org.exolab.castor.xml.MarshalException
-   *                 if object is null or if any SAXException is thrown during
-   *                 marshaling
+   *           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
+   *           if this object is an invalid instance according to the schema
    * @return the unmarshaled jalview.schemabinding.version2.StructureState
    */
   public static jalview.schemabinding.version2.StructureState unmarshal(
@@ -416,8 +675,7 @@ public class StructureState implements java.io.Serializable
    * 
    * 
    * @throws org.exolab.castor.xml.ValidationException
-   *                 if this object is an invalid instance according to the
-   *                 schema
+   *           if this object is an invalid instance according to the schema
    */
   public void validate() throws org.exolab.castor.xml.ValidationException
   {