X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FCommands.java;h=d7d1ea34fa42e9ad2d238a32c5650ad9ac2c3d9f;hb=a7169b1c72607f3c9357195b4999869650a2a891;hp=e77e45d7f65bd7bc6e22c564e14f4d604c009c15;hpb=1ce72d485ca335eff45f1d7904b8f547548c0558;p=jalview.git diff --git a/src/jalview/bin/Commands.java b/src/jalview/bin/Commands.java index e77e45d..d7d1ea3 100644 --- a/src/jalview/bin/Commands.java +++ b/src/jalview/bin/Commands.java @@ -574,17 +574,28 @@ public class Commands Console.error("Failed to import and open structure view."); continue; } - try { + try { - while (sv.isBusy()) + long tries=1000; + while (sv.isBusy() && tries>0) + { Thread.sleep(25); + if (sv.isBusy()) + { + tries--; + Console.debug( + "Waiting for viewer for " + structureFilepath); + } } - } - catch (Exception x) + if (tries==0 && sv.isBusy()) + { + Console.warn("Gave up waiting for structure viewer to load. Something may have gone wrong."); + } + } catch (Exception x) { - + Console.warn("Exception whilst waiting for structure viewer "+structureFilepath,x); } - + Console.debug("Successfully opened viewer for "+structureFilepath); String structureImageFilename = ArgParser.getValueFromSubValOrArg( avm, av, Arg.STRUCTUREIMAGE, subVals); if (sv != null && structureImageFilename != null) @@ -624,12 +635,13 @@ public class Commands } BitmapImageSizing userBis = ImageMaker .parseScaleWidthHeightStrings(scale, width, height); + // TODO MAKE THIS VIEWER INDEPENDENT!! switch (StructureViewer.getViewerType()) { case JMOL: try { - Thread.sleep(1000); + Thread.sleep(1000); // WHY ??? } catch (InterruptedException e) { // TODO Auto-generated catch block @@ -641,8 +653,11 @@ public class Commands { AppJmol jmol = (AppJmol) sview; try { + Console.debug("Rendering image to "+structureImageFile); jmol.makePDBImage(structureImageFile, imageType, renderer, userBis); + Console.debug("Finished Rendering image to "+structureImageFile); + } catch (ImageOutputException ioexc) {