X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FJalviewFileFilter.java;h=8c6b8021f681402b3b912acea47ed650ba57cba9;hb=db80eb8e1acf352e72a33e1e3825d40f7c6e4046;hp=21f5b0fe36fddd092fc5cbed9af6993ae04fdae8;hpb=4db555a8f689e05652674009967a968021d6b340;p=jalview.git diff --git a/src/jalview/io/JalviewFileFilter.java b/src/jalview/io/JalviewFileFilter.java index 21f5b0f..8c6b802 100755 --- a/src/jalview/io/JalviewFileFilter.java +++ b/src/jalview/io/JalviewFileFilter.java @@ -41,6 +41,8 @@ public class JalviewFileFilter extends FileFilter private boolean useExtensionsInDescription = true; + private JalviewFileChooser parentJFC = null; + public JalviewFileFilter(String extension, String description) { StringTokenizer st = new StringTokenizer(extension, ","); @@ -81,6 +83,7 @@ public class JalviewFileFilter extends FileFilter @Override public boolean accept(File f) { + if (f != null) { String extension = getExtension(f); @@ -94,8 +97,25 @@ public class JalviewFileFilter extends FileFilter { return true; } + } + if (parentJFC != null && parentJFC.includeBackupFiles) + { + Iterator it = filters.keySet().iterator(); + while (it.hasNext()) + { + String ext = it.next(); + + BackupFilenameParts bfp = BackupFilenameParts + .currentBackupFilenameParts(f.getName(), ext, true); + if (bfp.isBackupFile()) + { + return true; + } + } + } + return false; } @@ -178,4 +198,10 @@ public class JalviewFileFilter extends FileFilter { return useExtensionsInDescription; } + + protected void setParentJFC(JalviewFileChooser p) + { + this.parentJFC = p; + } + }