JAL-3032 Jalview (as JS) parse query params to main arguments
[jalview.git] / src / jalview / bin / Jalview.java
index 807105a..e528dec 100755 (executable)
@@ -41,6 +41,8 @@ import jalview.util.MessageManager;
 import jalview.util.Platform;
 import jalview.ws.jws2.Jws2Discoverer;
 
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.FileOutputStream;
@@ -65,6 +67,7 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javax.swing.LookAndFeel;
+import javax.swing.Timer;
 import javax.swing.UIManager;
 
 import groovy.lang.Binding;
@@ -87,8 +90,17 @@ import groovy.util.GroovyScriptEngine;
  */
 public class Jalview
 {
-
-  // BH 6/19/2018 starting to work on JS version - just discovering issues
+       /**
+        * @j2sNative
+        * 
+        *  // set space-delimited query parameters as arguments to Jalview main
+        *      hr = decodeURI(document.location.href);
+        *  pos = hr.indexOf("?");
+        *  if (pos > 0)
+        *  {
+        *     thisApplet.__Info.args = hr.substring(pos+1).split(" ");
+        *  }
+        */
 
   /*
    * singleton instance of this class
@@ -99,21 +111,22 @@ public class Jalview
 
   public static AlignFrame currentAlignFrame;
 
-  /**
-   * Answers true if Jalview is running as Javascript, else false. The value is
-   * set at compile time.
-   * 
-   * @return
-   */
-  public static boolean isJS()
-  {
-    return /** @j2sNative true || */
-    false;
-  }
+//BH 2019.01.25 moved to Platform
+///**
+// * Answers true if Jalview is running as Javascript, else false. The value is
+// * set at compile time.
+// * 
+// * @return
+// */
+//public static boolean isJS()
+//{
+//  return /** @j2sNative true || */
+//  false;
+//}
 
   static
   {
-    if (!isJS())
+    if (!Platform.isJS())
     { // BH 2018
     // grab all the rights we can the JVM
     Policy.setPolicy(new Policy()
@@ -210,7 +223,7 @@ public class Jalview
 //     setLogging(); // BH - for event debugging in JavaScript
     instance = new Jalview();
     instance.doMain(args);
-  }
+}
 
   private static void logClass(String name) 
   {    
@@ -247,7 +260,7 @@ public class Jalview
   void doMain(String[] args)
   {
 
-    if (!isJS())
+    if (!Platform.isJS())
     {
       System.setSecurityManager(null);
     }
@@ -349,7 +362,7 @@ public class Jalview
       System.err.println("Unexpected Look and Feel Exception");
       ex.printStackTrace();
     }
-    if (Platform.isAMac())
+    if (Platform.isAMacAndNotJS())
     {
 
       LookAndFeel lookAndFeel = ch.randelshofer.quaqua.QuaquaManager
@@ -587,7 +600,7 @@ public class Jalview
       }
       System.out.println("CMD [-open " + file + "] executed successfully!");
 
-      if (!isJS() && !file.startsWith("http://"))
+      if (!Platform.isJS() && !file.startsWith("http://"))
       {
         if (!(new File(file)).exists())
         {