X-Git-Url: http://gitweb.fperrin.net/?p=GpsPrune.git;a=blobdiff_plain;f=tim%2Fprune%2Ffunction%2FSaveConfig.java;h=af7eb83e20eee289c03f2588e1a27fe67f14eca5;hp=6c0e4d089cedcfc43e9b17ef7f5c0f328efcd6fb;hb=649c5da6ee1bbc590699e11a92316ece2ea8512d;hpb=eebbb64b5d63f9eea43a0dff908c30361a376768 diff --git a/tim/prune/function/SaveConfig.java b/tim/prune/function/SaveConfig.java index 6c0e4d0..af7eb83 100644 --- a/tim/prune/function/SaveConfig.java +++ b/tim/prune/function/SaveConfig.java @@ -128,28 +128,46 @@ public class SaveConfig extends GenericFunction private void finish() { File configFile = Config.getConfigFile(); - if (configFile == null) {configFile = new File(".pruneconfig");} + if (configFile == null) {configFile = Config.HOME_CONFIG_FILE;} JFileChooser chooser = new JFileChooser(configFile.getAbsoluteFile().getParent()); chooser.setSelectedFile(configFile); int response = chooser.showSaveDialog(_parentFrame); if (response == JFileChooser.APPROVE_OPTION) { File saveFile = chooser.getSelectedFile(); - FileOutputStream outStream = null; - try - { - outStream = new FileOutputStream(saveFile); - Config.getAllConfig().store(outStream, "Prune config file"); - } - catch (IOException ioe) { - _app.showErrorMessageNoLookup(getNameKey(), - I18nManager.getText("error.save.failed") + " : " + ioe.getMessage()); - } - finally { - try {outStream.close();} catch (Exception e) {} - } + saveConfig(saveFile); } _dialog.dispose(); _dialog = null; } + + /** + * Autosave the settings file without any prompts + */ + public void silentSave() + { + saveConfig(Config.getConfigFile()); + } + + /** + * Actually save the config file + * @param inSaveFile file to save to + */ + private void saveConfig(File inSaveFile) + { + FileOutputStream outStream = null; + try + { + outStream = new FileOutputStream(inSaveFile); + Config.getAllConfig().store(outStream, "GpsPrune config file"); + } + catch (IOException ioe) { + _app.showErrorMessageNoLookup(getNameKey(), + I18nManager.getText("error.save.failed") + " : " + ioe.getMessage()); + } + catch (NullPointerException npe) {} // no config file given + finally { + try {outStream.close();} catch (Exception e) {} + } + } }