JAL-1812 bind Groovy to Jalview rather than Desktop, remove reflection
[jalview.git] / src / jalview / io / StructureFile.java
index fd488f0..3a7419c 100644 (file)
@@ -63,6 +63,18 @@ public abstract class StructureFile extends AlignFile
     this.predictSecondaryStructure = predictSecondaryStructure;
     this.externalSecondaryStructure = externalSecStr;
   }
+
+  public void xferSettings()
+  {
+    this.visibleChainAnnotation = StructureViewSettings
+            .isVisibleChainAnnotation();
+    this.predictSecondaryStructure = StructureViewSettings
+            .isPredictSecondaryStructure();
+    this.externalSecondaryStructure = StructureViewSettings
+            .isExternalSecondaryStructure();
+
+  }
+
   public StructureFile(boolean parseImmediately, String inFile, String type)
           throws IOException
   {
@@ -259,12 +271,17 @@ public abstract class StructureFile extends AlignFile
         final Constructor constructor = cl
 .getConstructor(new Class[] {
             boolean.class, boolean.class, boolean.class, FileParse.class });
-        final Object[] args = new Object[] { true, true, true,
+        final Object[] args = new Object[] { visibleChainAnnotation,
+            predictSecondaryStructure, externalSecondaryStructure,
             new FileParse(getDataName(),
                 type) };
 
         StructureViewSettings.setShowSeqFeatures(false);
-        StructureViewSettings.setPredictSecondaryStructure(true);
+        StructureViewSettings.setVisibleChainAnnotation(false);
+        StructureViewSettings
+                .setPredictSecondaryStructure(predictSecondaryStructure);
+        StructureViewSettings
+                .setExternalSecondaryStructure(externalSecondaryStructure);
         Object jmf = constructor.newInstance(args);
         AlignmentI al = new Alignment((SequenceI[]) cl.getMethod(
                 "getSeqsAsArray", new Class[] {}).invoke(jmf));