*/
package jalview.io;
+
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import jalview.gui.JvOptionPane;
import jalview.util.MessageManager;
import jalview.util.Platform;
-
/*
* BackupFiles used for manipulating (naming rolling/deleting) backup/version files when an alignment or project file is saved.
* User configurable options are:
private static final String newTempFileSuffix = "_newfile";
private static final String oldTempFileSuffix = "_oldfile_tobedeleted";
-
public BackupFiles(String filename)
{
this(new File(filename));
}
Cache.trace("BACKUPFILES rollBackupFiles starting");
-
String dir = "";
File dirFile;
try
if (reverseOrder)
{
// backup style numbering
+
Cache.trace("BACKUPFILES rolling files in reverse order");
int tempMax = noMax ? -1 : max;
tempMax = i;
}
}
-
File previousFile = null;
File fileToBeDeleted = null;
for (int n = tempMax; n > 0; n--)
{
File oldestTempFile = nextTempFile(fileToBeDeleted.getName(),
dirFile);
-
if (fileToBeDeletedLMT > replacementFileLMT)
{
String fileToBeDeletedLMTString = sdf
boolean delete = true;
Cache.trace("BACKUPFILES fileToBeDeleted: " + fileToBeDeleted);
-
boolean newer = false;
if (replacementFile != null)
{
ret = ret & moveFileToFile(file, new File(latestBackupFilename));
Cache.debug("BACKUPFILES moving " + file + " to " + latestBackupFilename
+ " was " + (ret ? "" : "NOT ") + "successful");
+
if (tidyUp)
{
Cache.debug("BACKUPFILES tidying up files");
MessageManager.getString("label.delete"),
MessageManager.getString("label.rename") };
+ // TODO enable JvOptionPane to behave appropriately when batch/headless
confirmButton = Platform.isHeadless() ? JvOptionPane.YES_OPTION
- : JvOptionPane.showOptionDialog(Desktop.desktop,
+ : JvOptionPane.showOptionDialog(Desktop.getDesktopPane(),
messageSB.toString(),
MessageManager.getString(
"label.backupfiles_confirm_delete"),
- // "Confirm delete"
JvOptionPane.YES_NO_OPTION,
JvOptionPane.WARNING_MESSAGE, null, options,
options[0]);
MessageManager.getString("label.keep") };
confirmButton = Platform.isHeadless() ? JvOptionPane.YES_OPTION
- : JvOptionPane.showOptionDialog(Desktop.desktop,
- messageSB.toString(),
- MessageManager.getString(
- "label.backupfiles_confirm_delete"),
- // "Confirm delete"
- JvOptionPane.YES_NO_OPTION,
- JvOptionPane.WARNING_MESSAGE, null, options,
- options[0]);
+ : JvOptionPane.showOptionDialog(Desktop.getDesktopPane(),
+ messageSB.toString(),
+ MessageManager.getString("label.backupfiles_confirm_delete"),
+ JvOptionPane.YES_NO_OPTION, JvOptionPane.WARNING_MESSAGE,
+ null, options, options[0]);
}
+
// return should be TRUE if file is to be deleted
return (confirmButton == JvOptionPane.YES_OPTION);
}
}
int confirmButton = Platform.isHeadless() ? JvOptionPane.YES_OPTION
- : JvOptionPane.showConfirmDialog(Desktop.desktop,
+ : JvOptionPane.showConfirmDialog(Desktop.getDesktopPane(),
messageSB.toString(),
MessageManager.getString(
"label.backupfiles_confirm_delete"),
.append(MessageManager.getString("label.continue_operation"));
int confirmButton = Platform.isHeadless() ? JvOptionPane.OK_OPTION
- : JvOptionPane.showConfirmDialog(Desktop.desktop,
+ : JvOptionPane.showConfirmDialog(Desktop.getDesktopPane(),
messageSB.toString(),
MessageManager.getString(
"label.backupfiles_confirm_save_file"),