update author list in license for (JAL-826)
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / TreeDescriptor.java
index f4741a2..93643c5 100644 (file)
-/*\r
- * This class was automatically generated with \r
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML\r
- * Schema.\r
- * $Id$\r
- */\r
-\r
-package jalview.schemabinding.version2.descriptors;\r
-\r
-  //---------------------------------/\r
- //- Imported classes and packages -/\r
-//---------------------------------/\r
-\r
-import jalview.schemabinding.version2.Tree;\r
-\r
-/**\r
- * Class TreeDescriptor.\r
- * \r
- * @version $Revision$ $Date$\r
- */\r
-public class TreeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {\r
-\r
-\r
-      //--------------------------/\r
-     //- Class/Member Variables -/\r
-    //--------------------------/\r
-\r
-    /**\r
-     * Field _elementDefinition.\r
-     */\r
-    private boolean _elementDefinition;\r
-\r
-    /**\r
-     * Field _nsPrefix.\r
-     */\r
-    private java.lang.String _nsPrefix;\r
-\r
-    /**\r
-     * Field _nsURI.\r
-     */\r
-    private java.lang.String _nsURI;\r
-\r
-    /**\r
-     * Field _xmlName.\r
-     */\r
-    private java.lang.String _xmlName;\r
-\r
-\r
-      //----------------/\r
-     //- Constructors -/\r
-    //----------------/\r
-\r
-    public TreeDescriptor() {\r
-        super();\r
-        _nsURI = "www.jalview.org";\r
-        _xmlName = "tree";\r
-        _elementDefinition = true;\r
-        \r
-        //-- set grouping compositor\r
-        setCompositorAsSequence();\r
-        org.exolab.castor.xml.util.XMLFieldDescriptorImpl  desc           = null;\r
-        org.exolab.castor.mapping.FieldHandler             handler        = null;\r
-        org.exolab.castor.xml.FieldValidator               fieldValidator = null;\r
-        //-- initialize attribute descriptors\r
-        \r
-        //-- _width\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_width", "width", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasWidth()) { return null; }\r
-                return new java.lang.Integer(target.getWidth());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteWidth();\r
-                        return;\r
-                    }\r
-                    target.setWidth( ((java.lang.Integer) value).intValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _width\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IntValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive(-2147483648);\r
-            typeValidator.setMaxInclusive(2147483647);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _height\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_height", "height", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasHeight()) { return null; }\r
-                return new java.lang.Integer(target.getHeight());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteHeight();\r
-                        return;\r
-                    }\r
-                    target.setHeight( ((java.lang.Integer) value).intValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _height\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IntValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive(-2147483648);\r
-            typeValidator.setMaxInclusive(2147483647);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _xpos\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_xpos", "xpos", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasXpos()) { return null; }\r
-                return new java.lang.Integer(target.getXpos());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteXpos();\r
-                        return;\r
-                    }\r
-                    target.setXpos( ((java.lang.Integer) value).intValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _xpos\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IntValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive(-2147483648);\r
-            typeValidator.setMaxInclusive(2147483647);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _ypos\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_ypos", "ypos", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasYpos()) { return null; }\r
-                return new java.lang.Integer(target.getYpos());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteYpos();\r
-                        return;\r
-                    }\r
-                    target.setYpos( ((java.lang.Integer) value).intValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _ypos\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IntValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive(-2147483648);\r
-            typeValidator.setMaxInclusive(2147483647);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _fontName\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_fontName", "fontName", org.exolab.castor.xml.NodeType.Attribute);\r
-        desc.setImmutable(true);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                return target.getFontName();\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    target.setFontName( (java.lang.String) value);\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _fontName\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.StringValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setWhiteSpace("preserve");\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _fontSize\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_fontSize", "fontSize", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasFontSize()) { return null; }\r
-                return new java.lang.Integer(target.getFontSize());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteFontSize();\r
-                        return;\r
-                    }\r
-                    target.setFontSize( ((java.lang.Integer) value).intValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _fontSize\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IntValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive(-2147483648);\r
-            typeValidator.setMaxInclusive(2147483647);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _fontStyle\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_fontStyle", "fontStyle", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasFontStyle()) { return null; }\r
-                return new java.lang.Integer(target.getFontStyle());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteFontStyle();\r
-                        return;\r
-                    }\r
-                    target.setFontStyle( ((java.lang.Integer) value).intValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _fontStyle\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IntValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IntValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive(-2147483648);\r
-            typeValidator.setMaxInclusive(2147483647);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _threshold\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Float.TYPE, "_threshold", "threshold", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasThreshold()) { return null; }\r
-                return new java.lang.Float(target.getThreshold());\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteThreshold();\r
-                        return;\r
-                    }\r
-                    target.setThreshold( ((java.lang.Float) value).floatValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _threshold\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.FloatValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.FloatValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setMinInclusive((float) -3.4028235E38);\r
-            typeValidator.setMaxInclusive((float) 3.4028235E38);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _showBootstrap\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_showBootstrap", "showBootstrap", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasShowBootstrap()) { return null; }\r
-                return (target.getShowBootstrap() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteShowBootstrap();\r
-                        return;\r
-                    }\r
-                    target.setShowBootstrap( ((java.lang.Boolean) value).booleanValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _showBootstrap\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.BooleanValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _showDistances\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_showDistances", "showDistances", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasShowDistances()) { return null; }\r
-                return (target.getShowDistances() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteShowDistances();\r
-                        return;\r
-                    }\r
-                    target.setShowDistances( ((java.lang.Boolean) value).booleanValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _showDistances\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.BooleanValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _markUnlinked\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_markUnlinked", "markUnlinked", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasMarkUnlinked()) { return null; }\r
-                return (target.getMarkUnlinked() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteMarkUnlinked();\r
-                        return;\r
-                    }\r
-                    target.setMarkUnlinked( ((java.lang.Boolean) value).booleanValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _markUnlinked\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.BooleanValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _fitToWindow\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_fitToWindow", "fitToWindow", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasFitToWindow()) { return null; }\r
-                return (target.getFitToWindow() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteFitToWindow();\r
-                        return;\r
-                    }\r
-                    target.setFitToWindow( ((java.lang.Boolean) value).booleanValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _fitToWindow\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.BooleanValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _currentTree\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_currentTree", "currentTree", org.exolab.castor.xml.NodeType.Attribute);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                if (!target.hasCurrentTree()) { return null; }\r
-                return (target.getCurrentTree() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    // if null, use delete method for optional primitives \r
-                    if (value == null) {\r
-                        target.deleteCurrentTree();\r
-                        return;\r
-                    }\r
-                    target.setCurrentTree( ((java.lang.Boolean) value).booleanValue());\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _currentTree\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.BooleanValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _id\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_id", "id", org.exolab.castor.xml.NodeType.Attribute);\r
-        super.setIdentity(desc);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                return target.getId();\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    target.setId( (java.lang.String) value);\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return new java.lang.String();\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _id\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.IdValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.IdValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- initialize element descriptors\r
-        \r
-        //-- _title\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_title", "title", org.exolab.castor.xml.NodeType.Element);\r
-        desc.setImmutable(true);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                return target.getTitle();\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    target.setTitle( (java.lang.String) value);\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setNameSpaceURI("www.jalview.org");\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _title\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.StringValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setWhiteSpace("preserve");\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-        //-- _newick\r
-        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_newick", "newick", org.exolab.castor.xml.NodeType.Element);\r
-        desc.setImmutable(true);\r
-        handler = new org.exolab.castor.xml.XMLFieldHandler() {\r
-            public java.lang.Object getValue( java.lang.Object object ) \r
-                throws IllegalStateException\r
-            {\r
-                Tree target = (Tree) object;\r
-                return target.getNewick();\r
-            }\r
-            public void setValue( java.lang.Object object, java.lang.Object value) \r
-                throws IllegalStateException, IllegalArgumentException\r
-            {\r
-                try {\r
-                    Tree target = (Tree) object;\r
-                    target.setNewick( (java.lang.String) value);\r
-                } catch (java.lang.Exception ex) {\r
-                    throw new IllegalStateException(ex.toString());\r
-                }\r
-            }\r
-            public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return null;\r
-            }\r
-        };\r
-        desc.setHandler(handler);\r
-        desc.setNameSpaceURI("www.jalview.org");\r
-        desc.setMultivalued(false);\r
-        addFieldDescriptor(desc);\r
-        \r
-        //-- validation code for: _newick\r
-        fieldValidator = new org.exolab.castor.xml.FieldValidator();\r
-        { //-- local scope\r
-            org.exolab.castor.xml.validators.StringValidator typeValidator;\r
-            typeValidator = new org.exolab.castor.xml.validators.StringValidator();\r
-            fieldValidator.setValidator(typeValidator);\r
-            typeValidator.setWhiteSpace("preserve");\r
-        }\r
-        desc.setValidator(fieldValidator);\r
-    }\r
-\r
-\r
-      //-----------/\r
-     //- Methods -/\r
-    //-----------/\r
-\r
-    /**\r
-     * Method getAccessMode.\r
-     * \r
-     * @return the access mode specified for this class.\r
-     */\r
-    public org.exolab.castor.mapping.AccessMode getAccessMode(\r
-    ) {\r
-        return null;\r
-    }\r
-\r
-    /**\r
-     * Method getIdentity.\r
-     * \r
-     * @return the identity field, null if this class has no\r
-     * identity.\r
-     */\r
-    public org.exolab.castor.mapping.FieldDescriptor getIdentity(\r
-    ) {\r
-        return super.getIdentity();\r
-    }\r
-\r
-    /**\r
-     * Method getJavaClass.\r
-     * \r
-     * @return the Java class represented by this descriptor.\r
-     */\r
-    public java.lang.Class getJavaClass(\r
-    ) {\r
-        return jalview.schemabinding.version2.Tree.class;\r
-    }\r
-\r
-    /**\r
-     * Method getNameSpacePrefix.\r
-     * \r
-     * @return the namespace prefix to use when marshaling as XML.\r
-     */\r
-    public java.lang.String getNameSpacePrefix(\r
-    ) {\r
-        return _nsPrefix;\r
-    }\r
-\r
-    /**\r
-     * Method getNameSpaceURI.\r
-     * \r
-     * @return the namespace URI used when marshaling and\r
-     * unmarshaling as XML.\r
-     */\r
-    public java.lang.String getNameSpaceURI(\r
-    ) {\r
-        return _nsURI;\r
-    }\r
-\r
-    /**\r
-     * Method getValidator.\r
-     * \r
-     * @return a specific validator for the class described by this\r
-     * ClassDescriptor.\r
-     */\r
-    public org.exolab.castor.xml.TypeValidator getValidator(\r
-    ) {\r
-        return this;\r
-    }\r
-\r
-    /**\r
-     * Method getXMLName.\r
-     * \r
-     * @return the XML Name for the Class being described.\r
-     */\r
-    public java.lang.String getXMLName(\r
-    ) {\r
-        return _xmlName;\r
-    }\r
-\r
-    /**\r
-     * Method isElementDefinition.\r
-     * \r
-     * @return true if XML schema definition of this Class is that\r
-     * of a global\r
-     * element or element with anonymous type definition.\r
-     */\r
-    public boolean isElementDefinition(\r
-    ) {\r
-        return _elementDefinition;\r
-    }\r
-\r
-}\r
+/*******************************************************************************
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
+ *
+ * This file is part of Jalview.
+ *
+ * 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 Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ *******************************************************************************/
+/*
+ * This class was automatically generated with 
+ * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
+package jalview.schemabinding.version2.descriptors;
+
+  //---------------------------------/
+ //- Imported classes and packages -/
+//---------------------------------/
+
+import jalview.schemabinding.version2.Tree;
+
+/**
+ * Class TreeDescriptor.
+ * 
+ * @version $Revision$ $Date$
+ */
+public class TreeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+      //--------------------------/
+     //- Class/Member Variables -/
+    //--------------------------/
+
+    /**
+     * Field _elementDefinition.
+     */
+    private boolean _elementDefinition;
+
+    /**
+     * Field _nsPrefix.
+     */
+    private java.lang.String _nsPrefix;
+
+    /**
+     * Field _nsURI.
+     */
+    private java.lang.String _nsURI;
+
+    /**
+     * Field _xmlName.
+     */
+    private java.lang.String _xmlName;
+
+
+      //----------------/
+     //- Constructors -/
+    //----------------/
+
+    public TreeDescriptor() {
+        super();
+        _nsURI = "www.jalview.org";
+        _xmlName = "tree";
+        _elementDefinition = true;
+        
+        //-- set grouping compositor
+        setCompositorAsSequence();
+        org.exolab.castor.xml.util.XMLFieldDescriptorImpl  desc           = null;
+        org.exolab.castor.mapping.FieldHandler             handler        = null;
+        org.exolab.castor.xml.FieldValidator               fieldValidator = null;
+        //-- initialize attribute descriptors
+        
+        //-- _fontName
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_fontName", "fontName", org.exolab.castor.xml.NodeType.Attribute);
+        desc.setImmutable(true);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                return target.getFontName();
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    target.setFontName( (java.lang.String) value);
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _fontName
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.StringValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setWhiteSpace("preserve");
+        }
+        desc.setValidator(fieldValidator);
+        //-- _fontSize
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_fontSize", "fontSize", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasFontSize()) { return null; }
+                return new java.lang.Integer(target.getFontSize());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteFontSize();
+                        return;
+                    }
+                    target.setFontSize( ((java.lang.Integer) value).intValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _fontSize
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IntValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IntValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive(-2147483648);
+            typeValidator.setMaxInclusive(2147483647);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _fontStyle
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_fontStyle", "fontStyle", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasFontStyle()) { return null; }
+                return new java.lang.Integer(target.getFontStyle());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteFontStyle();
+                        return;
+                    }
+                    target.setFontStyle( ((java.lang.Integer) value).intValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _fontStyle
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IntValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IntValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive(-2147483648);
+            typeValidator.setMaxInclusive(2147483647);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _threshold
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Float.TYPE, "_threshold", "threshold", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasThreshold()) { return null; }
+                return new java.lang.Float(target.getThreshold());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteThreshold();
+                        return;
+                    }
+                    target.setThreshold( ((java.lang.Float) value).floatValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _threshold
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.FloatValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive((float) -3.4028235E38);
+            typeValidator.setMaxInclusive((float) 3.4028235E38);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _showBootstrap
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_showBootstrap", "showBootstrap", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasShowBootstrap()) { return null; }
+                return (target.getShowBootstrap() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteShowBootstrap();
+                        return;
+                    }
+                    target.setShowBootstrap( ((java.lang.Boolean) value).booleanValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _showBootstrap
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.BooleanValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+            fieldValidator.setValidator(typeValidator);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _showDistances
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_showDistances", "showDistances", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasShowDistances()) { return null; }
+                return (target.getShowDistances() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteShowDistances();
+                        return;
+                    }
+                    target.setShowDistances( ((java.lang.Boolean) value).booleanValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _showDistances
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.BooleanValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+            fieldValidator.setValidator(typeValidator);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _markUnlinked
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_markUnlinked", "markUnlinked", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasMarkUnlinked()) { return null; }
+                return (target.getMarkUnlinked() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteMarkUnlinked();
+                        return;
+                    }
+                    target.setMarkUnlinked( ((java.lang.Boolean) value).booleanValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _markUnlinked
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.BooleanValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+            fieldValidator.setValidator(typeValidator);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _fitToWindow
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_fitToWindow", "fitToWindow", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasFitToWindow()) { return null; }
+                return (target.getFitToWindow() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteFitToWindow();
+                        return;
+                    }
+                    target.setFitToWindow( ((java.lang.Boolean) value).booleanValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _fitToWindow
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.BooleanValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+            fieldValidator.setValidator(typeValidator);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _currentTree
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_currentTree", "currentTree", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasCurrentTree()) { return null; }
+                return (target.getCurrentTree() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteCurrentTree();
+                        return;
+                    }
+                    target.setCurrentTree( ((java.lang.Boolean) value).booleanValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _currentTree
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.BooleanValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+            fieldValidator.setValidator(typeValidator);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _id
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_id", "id", org.exolab.castor.xml.NodeType.Attribute);
+        super.setIdentity(desc);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                return target.getId();
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    target.setId( (java.lang.String) value);
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return new java.lang.String();
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _id
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IdValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IdValidator();
+            fieldValidator.setValidator(typeValidator);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _width
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_width", "width", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasWidth()) { return null; }
+                return new java.lang.Integer(target.getWidth());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteWidth();
+                        return;
+                    }
+                    target.setWidth( ((java.lang.Integer) value).intValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _width
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IntValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IntValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive(-2147483648);
+            typeValidator.setMaxInclusive(2147483647);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _height
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_height", "height", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasHeight()) { return null; }
+                return new java.lang.Integer(target.getHeight());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteHeight();
+                        return;
+                    }
+                    target.setHeight( ((java.lang.Integer) value).intValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _height
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IntValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IntValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive(-2147483648);
+            typeValidator.setMaxInclusive(2147483647);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _xpos
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_xpos", "xpos", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasXpos()) { return null; }
+                return new java.lang.Integer(target.getXpos());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteXpos();
+                        return;
+                    }
+                    target.setXpos( ((java.lang.Integer) value).intValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _xpos
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IntValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IntValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive(-2147483648);
+            typeValidator.setMaxInclusive(2147483647);
+        }
+        desc.setValidator(fieldValidator);
+        //-- _ypos
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Integer.TYPE, "_ypos", "ypos", org.exolab.castor.xml.NodeType.Attribute);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                if (!target.hasYpos()) { return null; }
+                return new java.lang.Integer(target.getYpos());
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    // if null, use delete method for optional primitives 
+                    if (value == null) {
+                        target.deleteYpos();
+                        return;
+                    }
+                    target.setYpos( ((java.lang.Integer) value).intValue());
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _ypos
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.IntValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.IntValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setMinInclusive(-2147483648);
+            typeValidator.setMaxInclusive(2147483647);
+        }
+        desc.setValidator(fieldValidator);
+        //-- initialize element descriptors
+        
+        //-- _title
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_title", "title", org.exolab.castor.xml.NodeType.Element);
+        desc.setImmutable(true);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                return target.getTitle();
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    target.setTitle( (java.lang.String) value);
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setNameSpaceURI("www.jalview.org");
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _title
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.StringValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setWhiteSpace("preserve");
+        }
+        desc.setValidator(fieldValidator);
+        //-- _newick
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_newick", "newick", org.exolab.castor.xml.NodeType.Element);
+        desc.setImmutable(true);
+        handler = new org.exolab.castor.xml.XMLFieldHandler() {
+            public java.lang.Object getValue( java.lang.Object object ) 
+                throws IllegalStateException
+            {
+                Tree target = (Tree) object;
+                return target.getNewick();
+            }
+            public void setValue( java.lang.Object object, java.lang.Object value) 
+                throws IllegalStateException, IllegalArgumentException
+            {
+                try {
+                    Tree target = (Tree) object;
+                    target.setNewick( (java.lang.String) value);
+                } catch (java.lang.Exception ex) {
+                    throw new IllegalStateException(ex.toString());
+                }
+            }
+            public java.lang.Object newInstance(java.lang.Object parent) {
+                return null;
+            }
+        };
+        desc.setHandler(handler);
+        desc.setNameSpaceURI("www.jalview.org");
+        desc.setMultivalued(false);
+        addFieldDescriptor(desc);
+        
+        //-- validation code for: _newick
+        fieldValidator = new org.exolab.castor.xml.FieldValidator();
+        { //-- local scope
+            org.exolab.castor.xml.validators.StringValidator typeValidator;
+            typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+            fieldValidator.setValidator(typeValidator);
+            typeValidator.setWhiteSpace("preserve");
+        }
+        desc.setValidator(fieldValidator);
+    }
+
+
+      //-----------/
+     //- Methods -/
+    //-----------/
+
+    /**
+     * Method getAccessMode.
+     * 
+     * @return the access mode specified for this class.
+     */
+    public org.exolab.castor.mapping.AccessMode getAccessMode(
+    ) {
+        return null;
+    }
+
+    /**
+     * Method getIdentity.
+     * 
+     * @return the identity field, null if this class has no
+     * identity.
+     */
+    public org.exolab.castor.mapping.FieldDescriptor getIdentity(
+    ) {
+        return super.getIdentity();
+    }
+
+    /**
+     * Method getJavaClass.
+     * 
+     * @return the Java class represented by this descriptor.
+     */
+    public java.lang.Class getJavaClass(
+    ) {
+        return jalview.schemabinding.version2.Tree.class;
+    }
+
+    /**
+     * Method getNameSpacePrefix.
+     * 
+     * @return the namespace prefix to use when marshaling as XML.
+     */
+    public java.lang.String getNameSpacePrefix(
+    ) {
+        return _nsPrefix;
+    }
+
+    /**
+     * Method getNameSpaceURI.
+     * 
+     * @return the namespace URI used when marshaling and
+     * unmarshaling as XML.
+     */
+    public java.lang.String getNameSpaceURI(
+    ) {
+        return _nsURI;
+    }
+
+    /**
+     * Method getValidator.
+     * 
+     * @return a specific validator for the class described by this
+     * ClassDescriptor.
+     */
+    public org.exolab.castor.xml.TypeValidator getValidator(
+    ) {
+        return this;
+    }
+
+    /**
+     * Method getXMLName.
+     * 
+     * @return the XML Name for the Class being described.
+     */
+    public java.lang.String getXMLName(
+    ) {
+        return _xmlName;
+    }
+
+    /**
+     * Method isElementDefinition.
+     * 
+     * @return true if XML schema definition of this Class is that
+     * of a global
+     * element or element with anonymous type definition.
+     */
+    public boolean isElementDefinition(
+    ) {
+        return _elementDefinition;
+    }
+
+}