JAL-2157 bugfix for issues from enum refactoring
[jalview.git] / src / jalview / io / AppletFormatAdapter.java
index 65fd72f..55bb03d 100755 (executable)
@@ -26,7 +26,8 @@ import jalview.datamodel.Alignment;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.AlignmentView;
-import jalview.structure.StructureViewSettings;
+import jalview.datamodel.PDBEntry.Type;
+import jalview.structure.StructureImportSettings;
 import jalview.util.MessageManager;
 
 import java.io.File;
@@ -280,10 +281,13 @@ public class AppletFormatAdapter
       {
         // TODO obtain config value from preference settings.
         // Set value to 'true' to test PDB processing with Jmol: JAL-1213
-        boolean isParseWithJMOL = false;
+        boolean isParseWithJMOL = StructureImportSettings
+                .getDefaultPDBFileParser().equalsIgnoreCase(
+                        StructureImportSettings.StructureParser.JMOL_PARSER
+                                .toString());
         if (isParseWithJMOL)
         {
-          StructureViewSettings.addSettings(annotFromStructure,
+          StructureImportSettings.addSettings(annotFromStructure,
                   localSecondaryStruct, serviceSecondaryStruct);
           alignFile = new jalview.ext.jmol.JmolParser(annotFromStructure,
                   localSecondaryStruct, serviceSecondaryStruct, inFile,
@@ -291,18 +295,22 @@ public class AppletFormatAdapter
         }
         else
         {
-          StructureViewSettings.setShowSeqFeatures(true);
+          StructureImportSettings.addSettings(annotFromStructure,
+                  localSecondaryStruct, serviceSecondaryStruct);
+          StructureImportSettings.setShowSeqFeatures(true);
           alignFile = new MCview.PDBfile(annotFromStructure,
                   localSecondaryStruct, serviceSecondaryStruct, inFile,
                   type);
         }
+        ((StructureFile) alignFile).setDbRefType(format);
       }
-      else if (format.equals("mmCIF"))
+      else if (format.equalsIgnoreCase("mmCIF"))
       {
-        StructureViewSettings.addSettings(annotFromStructure,
+        StructureImportSettings.addSettings(annotFromStructure,
                 localSecondaryStruct, serviceSecondaryStruct);
         alignFile = new jalview.ext.jmol.JmolParser(annotFromStructure,
                 localSecondaryStruct, serviceSecondaryStruct, inFile, type);
+        ((StructureFile) alignFile).setDbRefType(format);
       }
       else if (format.equals("STH"))
       {
@@ -330,7 +338,7 @@ public class AppletFormatAdapter
       }
       else if (format.equals(IdentifyFile.FeaturesFile))
       {
-        alignFile = new FeaturesFile(inFile, type);
+        alignFile = new FeaturesFile(true, inFile, type);
       }
       return buildAlignmentFrom(alignFile);
     } catch (Exception e)
@@ -433,24 +441,26 @@ public class AppletFormatAdapter
         boolean isParseWithJMOL = false;
         if (isParseWithJMOL)
         {
-          StructureViewSettings.addSettings(annotFromStructure,
+          StructureImportSettings.addSettings(annotFromStructure,
                   localSecondaryStruct, serviceSecondaryStruct);
           alignFile = new jalview.ext.jmol.JmolParser(annotFromStructure,
                   localSecondaryStruct, serviceSecondaryStruct, source);
         }
         else
         {
-          StructureViewSettings.setShowSeqFeatures(true);
+          StructureImportSettings.setShowSeqFeatures(true);
           alignFile = new MCview.PDBfile(annotFromStructure,
                   localSecondaryStruct, serviceSecondaryStruct, source);
         }
+        ((StructureFile) alignFile).setDbRefType(Type.PDB);
       }
-      else if (format.equals("mmCIF"))
+      else if (format.equalsIgnoreCase("mmCIF"))
       {
-        StructureViewSettings.addSettings(annotFromStructure,
+        StructureImportSettings.addSettings(annotFromStructure,
                 localSecondaryStruct, serviceSecondaryStruct);
         alignFile = new jalview.ext.jmol.JmolParser(annotFromStructure,
                 localSecondaryStruct, serviceSecondaryStruct, source);
+        ((StructureFile) alignFile).setDbRefType(Type.MMCIF);
       }
       else if (format.equals("STH"))
       {