JAL-1397 store colour by sequence and originalColour flags for AnnotationColourScheme
[jalview.git] / src / jalview / gui / Jalview2XML.java
index 2ec76a7..0a0b169 100644 (file)
@@ -1069,6 +1069,8 @@ public class Jalview2XML
 
       ac.setMaxColour(acg.getMaxColour().getRGB());
       ac.setMinColour(acg.getMinColour().getRGB());
+      ac.setPerSequence(acg.isSeqAssociated());
+      ac.setPredefinedColours(acg.isPredefinedColours());
       view.setAnnotationColours(ac);
       view.setBgColour("AnnotationColourGradient");
     }
@@ -3238,7 +3240,14 @@ public class Jalview2XML
                                 .getAnnotationColours().getColourScheme()),
                         view.getAnnotationColours().getAboveThreshold());
               }
-
+              if (view.getAnnotationColours().hasPerSequence())
+              {
+                ((AnnotationColourGradient)cs).setSeqAssociated(view.getAnnotationColours().isPerSequence());
+              }
+              if (view.getAnnotationColours().hasPredefinedColours())
+              {
+                ((AnnotationColourGradient)cs).setPredefinedColours(view.getAnnotationColours().isPredefinedColours());
+              }
               // Also use these settings for all the groups
               if (al.getGroups() != null)
               {
@@ -3268,6 +3277,17 @@ public class Jalview2XML
                             .getAlignment().getAlignmentAnnotation()[i],
                             sg.cs, view.getAnnotationColours()
                                     .getAboveThreshold());
+                    if (cs instanceof AnnotationColourGradient) 
+                    {
+                      if (view.getAnnotationColours().hasPerSequence())
+                      { 
+                        ((AnnotationColourGradient)cs).setSeqAssociated(view.getAnnotationColours().isPerSequence());
+                      }
+                      if (view.getAnnotationColours().hasPredefinedColours())
+                      {
+                        ((AnnotationColourGradient)cs).setPredefinedColours(view.getAnnotationColours().isPredefinedColours());
+                      }
+                    }
                   }
 
                 }