JAL-2630 first pass groovy colour scheme (with slight refactoring)
[jalview.git] / src / jalview / schemes / UserColourScheme.java
index 09cef92..969e6b3 100755 (executable)
@@ -59,15 +59,24 @@ public class UserColourScheme extends ResidueColourScheme
   public ColourSchemeI getInstance(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
   {
-    UserColourScheme usc = new UserColourScheme(colors);
-    if (lowerCaseColours != null)
+    return new UserColourScheme(this);
+  }
+
+  /**
+   * Copy constructor
+   * 
+   * @return
+   */
+  protected UserColourScheme(UserColourScheme from)
+  {
+    this(from.colors);
+    schemeName = from.schemeName;
+    if (from.lowerCaseColours != null)
     {
-      usc.schemeName = schemeName;
-      usc.lowerCaseColours = new Color[lowerCaseColours.length];
-      System.arraycopy(lowerCaseColours, 0, usc.lowerCaseColours, 0,
-              lowerCaseColours.length);
+      lowerCaseColours = new Color[lowerCaseColours.length];
+      System.arraycopy(from.lowerCaseColours, 0, lowerCaseColours, 0,
+              from.lowerCaseColours.length);
     }
-    return usc;
   }
 
   /**