X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAppJmol.java;h=18af41d2ad30929428f9da2d97aa09ce3170e86c;hb=3ab582bfeeab1563bedf60e97994e63e672d2e31;hp=28d2c6438bdd1159668f5b707133534c024a1a35;hpb=db93a1adcbe0a4eaaf06e0a70ade0d6c5c1961c3;p=jalview.git diff --git a/src/jalview/gui/AppJmol.java b/src/jalview/gui/AppJmol.java index 28d2c64..18af41d 100644 --- a/src/jalview/gui/AppJmol.java +++ b/src/jalview/gui/AppJmol.java @@ -79,6 +79,9 @@ import javax.swing.event.MenuListener; public class AppJmol extends StructureViewerBase { + // ms to wait for Jmol to load files + private static final int JMOL_LOAD_TIMEOUT = 20000; + private static final String SPACE = " "; private static final String BACKSLASH = "\""; @@ -309,12 +312,10 @@ public class AppJmol extends StructureViewerBase jmb.setColourBySequence(true); setSize(400, 400); // probably should be a configurable/dynamic default here initMenus(); - worker = null; - { - addingStructures = false; - worker = new Thread(this); - worker.start(); - } + addingStructures = false; + worker = new Thread(this); + worker.start(); + this.addInternalFrameListener(new InternalFrameAdapter() { @Override @@ -381,10 +382,7 @@ public class AppJmol extends StructureViewerBase scriptWindow.setVisible(false); } - /* - * -i for no info logging (less verbose) - */ - jmb.allocateViewer(renderPanel, true, "", null, null, "-i", + jmb.allocateViewer(renderPanel, true, "", null, null, "", scriptWindow, null); // jmb.newJmolPopup("Jmol"); if (command == null) @@ -554,7 +552,7 @@ public class AppJmol extends StructureViewerBase } // need to wait around until script has finished - int waitMax = 5000; // give up after 5 seconds + int waitMax = JMOL_LOAD_TIMEOUT; int waitFor = 35; int waitTotal = 0; while (addingStructures ? lastnotify >= jmb.getLoadNotifiesHandled() @@ -571,7 +569,13 @@ public class AppJmol extends StructureViewerBase } if (waitTotal > waitMax) { - System.err.println("Timed out waiting for Jmol to load files"); + System.err + .println("Timed out waiting for Jmol to load files after " + + waitTotal + "ms"); +// System.err.println("finished: " + jmb.isFinishedInit() +// + "; loaded: " + Arrays.toString(jmb.getPdbFile()) +// + "; files: " + files.toString()); + jmb.getPdbFile(); break; } }