JAL-4019 small but important corrections to array order, and X colour
[jalview.git] / src / jalview / schemes / ResidueProperties.java
index 73b48a9..42d03ec 100755 (executable)
@@ -48,6 +48,8 @@ public class ResidueProperties
 
   public static final Map<String, String> nucleotideName = new HashMap<>();
 
+  public static final Map<String, String> nucleotideAmbiguityName = new HashMap<>();
+
   // lookup from modified amino acid (e.g. MSE) to canonical form (e.g. MET)
   public static final Map<String, String> modifications = new HashMap<>();
 
@@ -123,16 +125,14 @@ public class ResidueProperties
 
   static
   {
-
-    String[][] namesArray = { { "a", "Adenine" }, { "g", "Guanine" },
-        { "c", "Cytosine" },
+    String[][] namesArray = { { "a", "Adenine" }, { "c", "Cytosine" },
+        { "g", "Guanine" },
         { "t", "Thymine" },
         { "u", "Uracil" },
         { "i", "Inosine" },
         { "x", "Xanthine" },
         { "r", "Unknown Purine" },
         { "y", "Unknown Pyrimidine" },
-        { "n", "Unknown" },
         { "w", "Weak nucleotide (A or T)" },
         { "s", "Strong nucleotide (G or C)" },
         { "m", "Amino (A or C)" },
@@ -140,10 +140,10 @@ public class ResidueProperties
         { "b", "Not A (G or C or T)" },
         { "h", "Not G (A or C or T)" },
         { "d", "Not C (A or G or T)" },
-        { "v", "Not T (A or G or C" } };
-
+        { "v", "Not T (A or G or C)" },
+        { "n", "Unknown" } };
     // "gap" index
-    maxNucleotideIndex = namesArray.length + 1;
+    maxNucleotideIndex = namesArray.length;
 
     nucleotideIndex = new int[255];
     for (int i = 0; i < 255; i++)
@@ -162,6 +162,7 @@ public class ResidueProperties
       nucleotideName.put(namesArray[i][0].toUpperCase(Locale.ROOT),
               namesArray[i][1]);
     }
+
   }
 
   static
@@ -349,17 +350,17 @@ public class ResidueProperties
       Color.white, // Gap
   };
 
+  // this colour scheme devised by sduce
   public static final Color[] nucleotideAmbiguity = {
       Color.decode("#f0fff0"), // a
-      Color.decode("#f0fff0"), // g
       Color.decode("#f0fff0"), // c
+      Color.decode("#f0fff0"), // g
       Color.decode("#f0fff0"), // t
       Color.decode("#f0fff0"), // u
       Color.decode("#ffffff"), // i
-      Color.decode("#ffffff"), // x
+      Color.decode("#4f6f6f"), // x
       Color.decode("#CD5C5C"), // r
       Color.decode("#008000"), // y
-      Color.decode("#2f4f4f"), // n
       Color.decode("#4682B4"), // w
       Color.decode("#FF8C00"), // s
       Color.decode("#9ACD32"), // m
@@ -368,6 +369,7 @@ public class ResidueProperties
       Color.decode("#808080"), // h
       Color.decode("#483D8B"), // d
       Color.decode("#b8860b"), // v
+      Color.decode("#2f4f4f"), // n
       Color.white, // Gap
   };