JAL-4235 JAL-3599 Try and report Eclipse Product Version for jalviewjsTranspile....
[jalview.git] / src / jalview / bin / Commands.java
index e77e45d..d7d1ea3 100644 (file)
@@ -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)
                 {