refactored dropFile allowing known information to be passed in if available
[jalview.git] / src / jalview / bin / Jalview.java
index fc6d23e..2b935ed 100755 (executable)
@@ -1,5 +1,5 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)
  * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
  * 
  * This file is part of Jalview.
@@ -81,8 +81,9 @@ public class Jalview
             + System.getProperty("os.version"));
     if (new Platform().isAMac())
     {
-       System.setProperty("com.apple.mrj.application.apple.menu.about.name", "Jalview");
-       System.setProperty("apple.laf.useScreenMenuBar", "true");
+      System.setProperty("com.apple.mrj.application.apple.menu.about.name",
+              "Jalview");
+      System.setProperty("apple.laf.useScreenMenuBar", "true");
     }
 
     ArgsParser aparser = new ArgsParser(args);
@@ -179,6 +180,7 @@ public class Jalview
     if (!headless)
     {
       desktop = new Desktop();
+      desktop.setInBatchMode(true); // indicate we are starting up
       desktop.setVisible(true);
       desktop.startServiceDiscovery();
       if (!aparser.contains("nousagestats"))
@@ -246,7 +248,7 @@ public class Jalview
       {
         try
         {
-          String viprotocol = Jalview.checkProtocol(vamsasImport);
+          String viprotocol = jalview.io.AppletFormatAdapter.checkProtocol(vamsasImport);
           if (viprotocol == jalview.io.FormatAdapter.FILE)
           {
             inSession = desktop.vamsasImport(new File(vamsasImport));
@@ -331,7 +333,7 @@ public class Jalview
         }
       }
 
-      protocol = checkProtocol(file);
+      protocol = jalview.io.AppletFormatAdapter.checkProtocol(file);
 
       format = new jalview.io.IdentifyFile().Identify(file, protocol);
 
@@ -367,20 +369,20 @@ public class Jalview
       data = aparser.getValue("groups", true);
       if (data != null)
       {
-        af.parseFeaturesFile(data, checkProtocol(data));
+        af.parseFeaturesFile(data, jalview.io.AppletFormatAdapter.checkProtocol(data));
         System.out.println("Added " + data);
       }
       data = aparser.getValue("features", true);
       if (data != null)
       {
-        af.parseFeaturesFile(data, checkProtocol(data));
+        af.parseFeaturesFile(data, jalview.io.AppletFormatAdapter.checkProtocol(data));
         System.out.println("Added " + data);
       }
 
       data = aparser.getValue("annotations", true);
       if (data != null)
       {
-        af.loadJalviewDataFile(data);
+        af.loadJalviewDataFile(data, null, null, null);
         System.out.println("Added " + data);
       }
       // set or clear the sortbytree flag.
@@ -398,7 +400,7 @@ public class Jalview
         jalview.io.NewickFile fin = null;
         try
         {
-          fin = new jalview.io.NewickFile(data, checkProtocol(data));
+          fin = new jalview.io.NewickFile(data, jalview.io.AppletFormatAdapter.checkProtocol(data));
           if (fin != null)
           {
             af.getViewport().setCurrentTree(
@@ -411,7 +413,7 @@ public class Jalview
           ex.printStackTrace(System.err);
         }
       }
-      // todo - load PDB structure to alignment
+      // TODO - load PDB structure(s) to alignment JAL-629
       // (associate with identical sequence in alignment, or a specified
       // sequence)
 
@@ -536,7 +538,7 @@ public class Jalview
         startFeatureFetching(getFeatures);
       }
     }
-    // execute a groovy script.
+    // Once all other stuff is done, execute any groovy scripts (in order)
     if (groovyscript != null)
     {
       if (jalview.bin.Cache.groovyJarsPresent())
@@ -551,8 +553,11 @@ public class Jalview
                         + groovyscript);
       }
     }
-
-    // Once all other stuff is done, execute any groovy scripts (in order)
+    // and finally, turn off batch mode indicator - if the desktop still exists
+    if (desktop != null)
+    {
+      desktop.setInBatchMode(false);
+    }
   }
 
   private static void startUsageStats(final Desktop desktop)
@@ -786,17 +791,6 @@ public class Jalview
     }
     return ff;
   }
-
-  private static String checkProtocol(String file)
-  {
-    String protocol = jalview.io.FormatAdapter.FILE;
-
-    if (file.indexOf("http:") > -1 || file.indexOf("file:") > -1)
-    {
-      protocol = jalview.io.FormatAdapter.URL;
-    }
-    return protocol;
-  }
 }
 
 /**