JAL-4353 Preserve the user given 'linkedId' with ArgValue, to help with deciding...
[jalview.git] / src / jalview / util / ColorUtils.java
index b728c9d..0e44f34 100644 (file)
 
 package jalview.util;
 
-import java.util.Locale;
-
 import java.awt.Color;
 import java.util.HashMap;
+import java.util.Locale;
 import java.util.Map;
 import java.util.Random;
 
@@ -68,7 +67,7 @@ public class ColorUtils
     return color;
 
   }
-  
+
   /**
    * 
    * @return random color
@@ -80,6 +79,7 @@ public class ColorUtils
             (int) (Math.random() * 255), (int) (Math.random() * 255));
     return col;
   }
+
   /**
    * Convert to Tk colour code format
    * 
@@ -233,6 +233,15 @@ public class ColorUtils
     colour = colour.trim();
 
     Color col = null;
+
+    if ("random".equals(colour))
+    {
+      Random rand = new Random();
+      col = new Color(rand.nextInt(256), rand.nextInt(256),
+              rand.nextInt(256));
+      return col;
+    }
+
     try
     {
       int value = Integer.parseInt(colour, 16);
@@ -258,7 +267,8 @@ public class ColorUtils
           int b = Integer.parseInt(tokens[2].trim());
           col = new Color(r, g, b);
         }
-      } catch (Exception ex)
+      } catch (IllegalArgumentException ex) // IllegalArgumentException includes
+                                            // NumberFormatException
       {
         // non-numeric token or out of 0-255 range
       }