JAL-629 --structureimage with formatting args.
[jalview.git] / src / jalview / gui / StructureChooser.java
index 35972b0..790873f 100644 (file)
@@ -1736,13 +1736,14 @@ public class StructureChooser extends GStructureChooser
             paeFilename, false, true, doXferSettings, null);
   }
 
-  public static void openStructureFileForSequence(
+  public static StructureViewer openStructureFileForSequence(
           StructureSelectionManager ssm, StructureChooser sc,
           AlignmentPanel ap, SequenceI seq, boolean prompt,
           String sFilename, TFType tft, String paeFilename,
           boolean forceHeadless, boolean showRefAnnotations,
           boolean doXferSettings, ViewerType viewerType)
   {
+    StructureViewer sv = null;
     boolean headless = forceHeadless;
     if (sc == null)
     {
@@ -1751,7 +1752,9 @@ public class StructureChooser extends GStructureChooser
       sc = new StructureChooser(new SequenceI[] { seq }, seq, ap, false);
     }
     if (ssm == null)
+    {
       ssm = ap.getStructureSelectionManager();
+    }
 
     PDBEntry fileEntry = new AssociatePdbFileWithSeq().associatePdbWithSeq(
             sFilename, DataSourceType.FILE, seq, prompt, Desktop.instance,
@@ -1760,15 +1763,19 @@ public class StructureChooser extends GStructureChooser
     // if headless, "false" in the sc constructor above will avoid GUI behaviour
     // in sc.launchStructureViewer()
     if (!headless && !(viewerType == null))
-      sc.launchStructureViewer(ssm, new PDBEntry[] { fileEntry }, ap,
+    {
+      sv = sc.launchStructureViewer(ssm, new PDBEntry[] { fileEntry }, ap,
               new SequenceI[]
               { seq }, viewerType);
+    }
 
     if (headless)
       sc.mainFrame.dispose();
 
     if (showRefAnnotations)
       showReferenceAnnotationsForSequence(ap.alignFrame, seq);
+
+    return sv;
   }
 
   public static void showReferenceAnnotationsForSequence(AlignFrame af,