X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FJalviewLite.java;h=009d0a2095a44ef9d8b378b7908ba47dc97e4a43;hb=648f0d7f48b5865bd43b5edbe71f5e483f0cc455;hp=8fe90f53f0c8b89e72ff2d99c4283a4e8582a782;hpb=31e04d77fb5043481cc20fb455a8135ebc9951de;p=jalview.git
diff --git a/src/jalview/bin/JalviewLite.java b/src/jalview/bin/JalviewLite.java
index 8fe90f5..009d0a2 100644
--- a/src/jalview/bin/JalviewLite.java
+++ b/src/jalview/bin/JalviewLite.java
@@ -1,19 +1,22 @@
/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
- * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
*
* This file is part of Jalview.
*
* Jalview is free software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
*
* Jalview is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
- * You should have received a copy of the GNU General Public License along with Jalview. If not, see .
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see .
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
package jalview.bin;
@@ -40,6 +43,7 @@ import jalview.javascript.JalviewLiteJsApi;
import jalview.javascript.JsCallBack;
import jalview.structure.SelectionListener;
import jalview.structure.StructureSelectionManager;
+import jalview.util.MessageManager;
import java.applet.Applet;
import java.awt.Button;
@@ -59,6 +63,7 @@ import java.util.Hashtable;
import java.util.StringTokenizer;
import java.util.Vector;
+import netscape.javascript.JSException;
import netscape.javascript.JSObject;
/**
@@ -1478,6 +1483,43 @@ public class JalviewLite extends Applet implements
}
}
+ private void initLiveConnect()
+ {
+ // try really hard to get the liveConnect thing working
+ boolean notFailed = false;
+ int tries = 0;
+ while (!notFailed && tries < 10)
+ {
+ if (tries > 0)
+ {
+ System.err.println("LiveConnect request thread going to sleep.");
+ }
+ try
+ {
+ Thread.sleep(700 * (1 + tries));
+ } catch (InterruptedException q)
+ {
+ }
+ ;
+ if (tries++ > 0)
+ {
+ System.err.println("LiveConnect request thread woken up.");
+ }
+ try
+ {
+ JSObject scriptObject = JSObject.getWindow(this);
+ if (scriptObject.eval("navigator") != null)
+ {
+ notFailed = true;
+ }
+ } catch (JSException jsex)
+ {
+ System.err.println("Attempt " + tries
+ + " to access LiveConnect javascript failed.");
+ }
+ }
+ }
+
private void callInitCallback()
{
String initjscallback = getParameter("oninit");
@@ -1496,6 +1538,9 @@ public class JalviewLite extends Applet implements
{
}
;
+ // try really hard to let the browser plugin know we want liveconnect
+ initLiveConnect();
+
if (scriptObject != null)
{
try
@@ -1610,15 +1655,19 @@ public class JalviewLite extends Applet implements
g.setColor(Color.cyan);
g.fillRect(0, 0, getSize().width, getSize().height);
g.setColor(Color.red);
- g.drawString("Jalview can't open file", 5, 15);
+ g.drawString(
+ MessageManager.getString("label.jalview_cannot_open_file"),
+ 5, 15);
g.drawString("\"" + file + "\"", 5, 30);
}
else if (embedded)
{
g.setColor(Color.black);
g.setFont(new Font("Arial", Font.BOLD, 24));
- g.drawString("Jalview Applet", 50, getSize().height / 2 - 30);
- g.drawString("Loading Data...", 50, getSize().height / 2);
+ g.drawString(MessageManager.getString("label.jalview_applet"), 50,
+ getSize().height / 2 - 30);
+ g.drawString(MessageManager.getString("label.loading_data") + "...",
+ 50, getSize().height / 2);
}
}
@@ -1825,11 +1874,14 @@ public class JalviewLite extends Applet implements
if (protocol == jalview.io.AppletFormatAdapter.PASTE)
{
- newAlignFrame.setTitle("Sequences from "
- + applet.getDocumentBase());
+ newAlignFrame.setTitle(MessageManager.formatMessage(
+ "label.sequences_from", new String[]
+ { applet.getDocumentBase().toString() }));
}
- newAlignFrame.statusBar.setText("Successfully loaded file " + file);
+ newAlignFrame.statusBar.setText(MessageManager.formatMessage(
+ "label.successfully_loaded_file", new String[]
+ { file }));
String treeFile = applet.getParameter("tree");
if (treeFile == null)
@@ -1927,7 +1979,7 @@ public class JalviewLite extends Applet implements
param = applet.getParameter("showFeatureSettings");
if (param != null && param.equalsIgnoreCase("true"))
{
- newAlignFrame.viewport.showSequenceFeatures(true);
+ newAlignFrame.viewport.setShowSequenceFeatures(true);
new FeatureSettings(newAlignFrame.alignPanel);
}