JAL-3120 preserve feature colour/mincolour/maxcolour while modifying,
[jalview.git] / src / jalview / gui / Jalview2XML.java
index fdc2847..28077e6 100644 (file)
@@ -52,7 +52,6 @@ import jalview.schemabinding.version2.Annotation;
 import jalview.schemabinding.version2.AnnotationColours;
 import jalview.schemabinding.version2.AnnotationElement;
 import jalview.schemabinding.version2.CalcIdParam;
-import jalview.schemabinding.version2.Colour;
 import jalview.schemabinding.version2.CompoundMatcher;
 import jalview.schemabinding.version2.DBRef;
 import jalview.schemabinding.version2.Features;
@@ -1450,9 +1449,10 @@ public class Jalview2XML
         }
         else
         {
-          ArrayList<int[]> hiddenRegions = hidden.getHiddenColumnsCopy();
-          for (int[] region : hiddenRegions)
+          Iterator<int[]> hiddenRegions = hidden.iterator();
+          while (hiddenRegions.hasNext())
           {
+            int[] region = hiddenRegions.next();
             HiddenColumns hc = new HiddenColumns();
             hc.setStart(region[0]);
             hc.setEnd(region[1]);
@@ -4693,8 +4693,8 @@ public class Jalview2XML
           }
           float min = setting.hasMin() ? setting.getMin() : 0f;
           float max = setting.hasMin() ? setting.getMax() : 1f;
-          FeatureColourI gc = new FeatureColour(minColour, maxColour,
-                  noValueColour, min, max);
+          FeatureColourI gc = new FeatureColour(maxColour, minColour,
+                  maxColour, noValueColour, min, max);
           if (setting.getAttributeNameCount() > 0)
           {
             gc.setAttributeName(setting.getAttributeName());
@@ -5954,9 +5954,8 @@ public class Jalview2XML
         noValueColour = maxcol;
       }
   
-      colour = new FeatureColour(mincol, maxcol, noValueColour,
-              colourModel.getMin(),
-              colourModel.getMax());
+      colour = new FeatureColour(maxcol, mincol, maxcol, noValueColour,
+              colourModel.getMin(), colourModel.getMax());
       String[] attributes = colourModel.getAttributeName();
       if (attributes != null && attributes.length > 0)
       {