JAL-4460 Don't add .aln for an 'All known formats...' filename
authorBen Soares <b.soares@dundee.ac.uk>
Wed, 11 Sep 2024 15:51:49 +0000 (16:51 +0100)
committerBen Soares <b.soares@dundee.ac.uk>
Wed, 11 Sep 2024 15:51:49 +0000 (16:51 +0100)
src/jalview/io/JalviewFileChooser.java
src/jalview/io/JalviewFileFilter.java

index 588a2b8..ee39458 100755 (executable)
@@ -284,6 +284,7 @@ public class JalviewFileChooser extends JFileChooser
     JalviewFileFilter alljvf = new JalviewFileFilter(
             allExtensions.toArray(new String[] {}),
             MessageManager.getString("label.all_known_alignment_files"));
+    alljvf.setMultiFormat(true);
     alljvf.setExtensionListInDescription(false);
     addChoosableFileFilter(alljvf);
 
@@ -510,7 +511,7 @@ public class JalviewFileChooser extends JFileChooser
     {
       JalviewFileFilter jvf = (JalviewFileFilter) getFileFilter();
 
-      if (!jvf.accept(selectedFile))
+      if (!jvf.accept(selectedFile) && !jvf.isMultiFormat())
       {
         String withExtension = getSelectedFile().getName() + "."
                 + jvf.getAcceptableExtension();
index 5e9a242..c24cbd4 100755 (executable)
@@ -42,6 +42,8 @@ public class JalviewFileFilter extends FileFilter
 
   private boolean useExtensionsInDescription = true;
 
+  private boolean multiFormat = false;
+
   private JalviewFileChooser parentJFC = null;
 
   public JalviewFileFilter(String extension, String description)
@@ -211,4 +213,13 @@ public class JalviewFileFilter extends FileFilter
     this.parentJFC = p;
   }
 
+  protected boolean isMultiFormat()
+  {
+    return multiFormat;
+  }
+
+  protected void setMultiFormat(boolean b)
+  {
+    multiFormat = b;
+  }
 }