Merge branch 'develop' into bug/JAL-4290_headless_alignment_export_with_structure_ann...
[jalview.git] / src / jalview / bin / Commands.java
index dbc5e23..b6a5a25 100644 (file)
@@ -179,8 +179,7 @@ public class Commands
 
     if (argParser.getBoolean(Arg.QUIT))
     {
-      Jalview.getInstance().exit(
-              "Exiting due to " + Arg.QUIT.argString() + " argument.",
+      Jalview.exit("Exiting due to " + Arg.QUIT.argString() + " argument.",
               ExitCode.OK);
       return true;
     }
@@ -332,9 +331,17 @@ public class Commands
           }
 
           // colour alignment
-          String colour = avm.getFromSubValArgOrPref(av, Arg.COLOUR, sv,
-                  null, "DEFAULT_COLOUR_PROT", "");
-          this.colourAlignFrame(af, colour);
+          String colour = null;
+          if (avm.containsArg(Arg.COLOUR)
+                  || !(format == FileFormat.Jalview))
+          {
+            colour = avm.getFromSubValArgOrPref(av, Arg.COLOUR, sv, null,
+                    "DEFAULT_COLOUR_PROT", null);
+          }
+          if (colour != null)
+          {
+            this.colourAlignFrame(af, colour);
+          }
 
           // Change alignment frame title
           String title = avm.getFromSubValArgOrPref(av, Arg.TITLE, sv, null,
@@ -908,12 +915,7 @@ public class Commands
           boolean showSSAnnotations, boolean showAnnotations,
           boolean hideTFrows)
   {
-    Console.debug(
-            "##### Setting showSSAnnotations to " + showSSAnnotations);
-    Console.debug("##### Setting showAnnotations to " + showAnnotations);
-    Console.debug("##### Setting hideTFrows to " + hideTFrows);
     af.setAnnotationsVisibility(showSSAnnotations, true, false);
-
     af.setAnnotationsVisibility(showAnnotations, false, true);
 
     // show temperature factor annotations?
@@ -1299,8 +1301,19 @@ public class Commands
 
   private void colourAlignFrame(AlignFrame af, ColourSchemeI cs)
   {
-    // Note that cs == null removes colour scheme from af
-    af.changeColour(cs);
+    try {
+    SwingUtilities.invokeAndWait(new Runnable()
+    {
+      @Override
+      public void run()
+      {
+        // Note that cs == null removes colour scheme from af
+        af.changeColour(cs);
+      }
+    }); } catch (Exception x) {
+      Console.trace("Interrupted whilst waiting for colorAlignFrame action",x);
+      
+    }
   }
 
   private ColourSchemeI getColourScheme(AlignFrame af)