fixes JAL-778 - flag to indicate binding between an alignment panel and Jmol view...
[jalview.git] / src / jalview / schemabinding / version2 / descriptors / StructureStateDescriptor.java
index a52e81d..3db3b4c 100644 (file)
@@ -311,7 +311,7 @@ public class StructureStateDescriptor extends org.exolab.castor.xml.util.XMLClas
         desc.setValidator(fieldValidator);\r
         //-- _viewId\r
         desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_viewId", "viewId", org.exolab.castor.xml.NodeType.Attribute);\r
-        super.setIdentity(desc);\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
@@ -330,7 +330,7 @@ public class StructureStateDescriptor extends org.exolab.castor.xml.util.XMLClas
                 }\r
             }\r
             public java.lang.Object newInstance(java.lang.Object parent) {\r
-                return new java.lang.String();\r
+                return null;\r
             }\r
         };\r
         desc.setHandler(handler);\r
@@ -340,8 +340,91 @@ public class StructureStateDescriptor extends org.exolab.castor.xml.util.XMLClas
         //-- validation code for: _viewId\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
+            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
+        //-- _linkAlignPanel\r
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_linkAlignPanel", "linkAlignPanel", 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
+                StructureState target = (StructureState) object;\r
+                if (!target.hasLinkAlignPanel()) { return null; }\r
+                return (target.getLinkAlignPanel() ? 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
+                    StructureState target = (StructureState) object;\r
+                    // if null, use delete method for optional primitives \r
+                    if (value == null) {\r
+                        target.deleteLinkAlignPanel();\r
+                        return;\r
+                    }\r
+                    target.setLinkAlignPanel( ((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: _linkAlignPanel\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
+        //-- _alignwithAlignPanel\r
+        desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_alignwithAlignPanel", "alignwithAlignPanel", 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
+                StructureState target = (StructureState) object;\r
+                if (!target.hasAlignwithAlignPanel()) { return null; }\r
+                return (target.getAlignwithAlignPanel() ? 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
+                    StructureState target = (StructureState) object;\r
+                    // if null, use delete method for optional primitives \r
+                    if (value == null) {\r
+                        target.deleteAlignwithAlignPanel();\r
+                        return;\r
+                    }\r
+                    target.setAlignwithAlignPanel( ((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: _alignwithAlignPanel\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