X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FFileLoader.java;h=b16c37f83ce16b5e3088d9443e3a865d3d133947;hb=efee78d45ceeb879d98fedd399a71d84a5ecd5f8;hp=49571dc7d1b21bd6697e0088cc9e7424b7da7b78;hpb=c932f0e85a8852824cdd8ce790af68682732c85c;p=jalview.git diff --git a/src/jalview/io/FileLoader.java b/src/jalview/io/FileLoader.java index 49571dc..b16c37f 100755 --- a/src/jalview/io/FileLoader.java +++ b/src/jalview/io/FileLoader.java @@ -74,6 +74,8 @@ public class FileLoader implements Runnable private File selectedFile; + private static boolean useDefaultFileFormat = false; + /** * default constructor always raised errors in GUI dialog boxes */ @@ -323,7 +325,7 @@ public class FileLoader implements Runnable Desktop.instance.stopLoading(); jalview.bin.Console.errPrintln("The input file \"" + file + "\" has null or unidentifiable data content!"); - if (!Jalview.isHeadlessMode()) + if (!Jalview.isHeadlessMode() && !Jalview.isBatchMode()) { JvOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager.getString("label.couldnt_read_data") @@ -359,8 +361,9 @@ public class FileLoader implements Runnable // We read the data anyway - it might make sense. } // BH 2018 switch to File object here instead of filename - alignFrame = new Jalview2XML(raiseGUI).loadJalviewAlign( - selectedFile == null ? file : selectedFile); + alignFrame = new Jalview2XML(raiseGUI && !Jalview.isBatchMode()) + .loadJalviewAlign( + selectedFile == null ? file : selectedFile); } else { @@ -535,7 +538,7 @@ public class FileLoader implements Runnable "label.couldnt_load_file") + " " + title + "\n" + error; // TODO: refactor FileLoader to be independent of Desktop / Applet GUI // bits ? - if (raiseGUI && Desktop.desktop != null) + if (raiseGUI && !Jalview.isBatchMode() && Desktop.desktop != null) { javax.swing.SwingUtilities.invokeLater(new Runnable() { @@ -561,9 +564,10 @@ public class FileLoader implements Runnable } catch (Exception er) { - jalview.bin.Console.errPrintln("Exception whilst opening file '" + file); + jalview.bin.Console + .errPrintln("Exception whilst opening file '" + file); er.printStackTrace(); - if (raiseGUI) + if (raiseGUI && !Jalview.isBatchMode()) { javax.swing.SwingUtilities.invokeLater(new Runnable() { @@ -585,7 +589,7 @@ public class FileLoader implements Runnable er.printStackTrace(); alignFrame = null; - if (raiseGUI) + if (raiseGUI && !Jalview.isBatchMode()) { javax.swing.SwingUtilities.invokeLater(new Runnable() { @@ -601,7 +605,8 @@ public class FileLoader implements Runnable } }); } - jalview.bin.Console.errPrintln("Out of memory loading file " + file + "!!"); + jalview.bin.Console + .errPrintln("Out of memory loading file " + file + "!!"); } loadtime += System.currentTimeMillis(); @@ -642,6 +647,8 @@ public class FileLoader implements Runnable } this.setShouldBeSaved(); + // after first file loaded we revert to assuming a default file format + useDefaultFileFormat = true; } /** @@ -680,8 +687,21 @@ public class FileLoader implements Runnable AlignViewport avp = af.getViewport(); if (avp == null) return; - avp.setSavedUpToDate(!protocol.isDynamic(), - QuitHandler.Message.UNSAVED_ALIGNMENTS); + boolean upToDate = !protocol.isDynamic(); + if (protocol.isUrl() && !Cache + .getDefault(PROMPT_SAVE_UNCHANGED_URL_ALIGNMENTS, true)) + { + upToDate = true; + } + avp.setSavedUpToDate(upToDate, + upToDate ? null : QuitHandler.Message.UNSAVED_ALIGNMENTS); + } + + public static final String PROMPT_SAVE_UNCHANGED_URL_ALIGNMENTS = "PROMPT_SAVE_UNCHANGED_URL_ALIGNMENTS"; + + public static boolean getUseDefaultFileFormat() + { + return useDefaultFileFormat; } }