X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjavascript%2FJSFunctionExec.java;fp=src%2Fjalview%2Fjavascript%2FJSFunctionExec.java;h=29f3fa939f7ff60c1ccebdd615c99ded63118d9c;hb=4f77328104498504339216829abf5ea87e2791ec;hp=ad7a379abe914be407689ddff8312fe8cb5f4c5e;hpb=2b8c0785318a3528e1876e8e2dd48b7d831eae69;p=jalview.git diff --git a/src/jalview/javascript/JSFunctionExec.java b/src/jalview/javascript/JSFunctionExec.java index ad7a379..29f3fa9 100644 --- a/src/jalview/javascript/JSFunctionExec.java +++ b/src/jalview/javascript/JSFunctionExec.java @@ -20,28 +20,26 @@ */ package jalview.javascript; -import jalview.api.JalviewApp; +import jalview.bin.JalviewLite; import java.net.URL; -import java.util.Hashtable; import java.util.Vector; import netscape.javascript.JSObject; public class JSFunctionExec implements Runnable { - public JalviewApp jvlite; + public JalviewLite jvlite; - protected boolean debug; - - public JSFunctionExec(JalviewApp applet, boolean debug) + public JSFunctionExec(JalviewLite applet) { jvlite = applet; - this.debug = debug; - jsExecQueue = jvlite.getJsExecQueue(this); + + jsExecQueue = jvlite.getJsExecQueue(); + jvlite.setExecutor(this); } - private Vector jsExecQueue; + private Vector jsExecQueue; private Thread executor = null; @@ -49,7 +47,7 @@ public class JSFunctionExec implements Runnable { if (jsExecQueue != null) { - Vector q = null; + Vector q = null; synchronized (jsExecQueue) { q = jsExecQueue; @@ -57,9 +55,9 @@ public class JSFunctionExec implements Runnable } if (q != null) { - for (Runnable jx : q) + for (JSFunctionExec jx : q) { - ((JSFunctionExec) jx).jvlite = null; + jx.jvlite = null; } q.removeAllElements(); @@ -80,7 +78,7 @@ public class JSFunctionExec implements Runnable { if (jsExecQueue.size() > 0) { - Runnable r = jsExecQueue.elementAt(0); + Runnable r = (Runnable) jsExecQueue.elementAt(0); jsExecQueue.removeElementAt(0); try { @@ -164,14 +162,14 @@ public class JSFunctionExec implements Runnable JSObject scriptObject = null; try { - scriptObject = jvlite.getJSObject(); + scriptObject = JSObject.getWindow(jvlite); } catch (Exception ex) { } ; if (scriptObject != null) { - if (debug && dbgMsg != null) + if (jvlite.debug && dbgMsg != null) { System.err.println(dbgMsg); } @@ -182,15 +180,15 @@ public class JSFunctionExec implements Runnable // squash any malformedURLExceptions thrown by windows/safari if (!(jex instanceof java.net.MalformedURLException)) { - if (debug) + if (jvlite.debug) { System.err.println(jex); } if (jex instanceof netscape.javascript.JSException - && jvlite.isJsfallbackEnabled()) + && jvlite.jsfallbackEnabled) { jsex[0] = jex; - if (debug) + if (jvlite.debug) { System.err.println("Falling back to javascript: url call"); } @@ -213,7 +211,7 @@ public class JSFunctionExec implements Runnable sb.append("\""); } sb.append(")"); - if (debug) + if (jvlite.debug) { System.err.println(sb.toString()); } @@ -250,7 +248,7 @@ public class JSFunctionExec implements Runnable { if (executor == null) { - executor = new Thread(new JSFunctionExec(jvlite, debug)); + executor = new Thread(new JSFunctionExec(jvlite)); executor.start(); } synchronized (jsExecQueue) @@ -270,80 +268,4 @@ public class JSFunctionExec implements Runnable } } - public static void setJsMessageSet(String messageclass, String viewId, - String[] colcommands, JalviewApp app) - { - Hashtable> jsmessages = app - .getJSMessages(); - Hashtable jshashes = app.getJSHashes(); - - Hashtable msgset = jsmessages.get(messageclass); - if (msgset == null) - { - msgset = new Hashtable<>(); - jsmessages.put(messageclass, msgset); - } - msgset.put(viewId, colcommands); - int[] l = new int[colcommands.length]; - for (int i = 0; i < colcommands.length; i++) - { - l[i] = colcommands[i].hashCode(); - } - jshashes.put(messageclass + "|" + viewId, l); - } - - /* - * (non-Javadoc) - * - * @see jalview.bin.JalviewLiteJsApi#getJsMessage(java.lang.String, - * java.lang.String) - */ - public static String getJsMessage(String messageclass, String viewId, - JalviewApp app) - { - Hashtable msgset = app.getJSMessages() - .get(messageclass); - if (msgset != null) - { - String[] msgs = msgset.get(viewId); - if (msgs != null) - { - for (int i = 0; i < msgs.length; i++) - { - if (msgs[i] != null) - { - String m = msgs[i]; - msgs[i] = null; - return m; - } - } - } - } - return ""; - } - - public static boolean isJsMessageSetChanged(String string, String string2, - String[] colcommands, JalviewApp app) - { - int[] l = app.getJSHashes().get(string + "|" + string2); - if (l == null && colcommands != null) - { - return true; - } - for (int i = 0; i < colcommands.length; i++) - { - if (l[i] != colcommands[i].hashCode()) - { - return true; - } - } - return false; - } - - public void tidyUp() - { - stopQueue(); - jvlite = null; - } - }