X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Ffunction%2Fcompress%2FCompressTrackFunction.java;h=ce0203cb9e221d3b8f00dd82e0d998629d6e1ee1;hb=326f489e36aa7f235bc19409a57bf4955cd50f24;hp=d4ecc8898e59208de1c1aa815c7067860e5bbc7e;hpb=649c5da6ee1bbc590699e11a92316ece2ea8512d;p=GpsPrune.git diff --git a/tim/prune/function/compress/CompressTrackFunction.java b/tim/prune/function/compress/CompressTrackFunction.java index d4ecc88..ce0203c 100644 --- a/tim/prune/function/compress/CompressTrackFunction.java +++ b/tim/prune/function/compress/CompressTrackFunction.java @@ -11,6 +11,7 @@ import javax.swing.Box; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JDialog; +import javax.swing.JOptionPane; import javax.swing.JPanel; import tim.prune.App; @@ -30,6 +31,8 @@ public class CompressTrackFunction extends GenericFunction private JButton _okButton = null; private CompressionAlgorithm[] _algorithms = null; private SummaryLabel _summaryLabel = null; + /** flag to remember whether the automatic deletion has been set to always */ + private boolean _automaticallyDelete = false; /** @@ -169,14 +172,43 @@ public class CompressTrackFunction extends GenericFunction { boolean[] deleteFlags = preview(); // All flags are now combined in deleteFlags array + int numMarked = 0; for (int i=0; i 0) + { + // Allow calling of delete function with one click + final String[] buttonTexts = {I18nManager.getText("button.yes"), I18nManager.getText("button.no"), + I18nManager.getText("button.always")}; + int answer = _automaticallyDelete ? JOptionPane.YES_OPTION : + JOptionPane.showOptionDialog(_parentFrame, + I18nManager.getTextWithNumber("dialog.compress.confirm", numMarked), + I18nManager.getText(getNameKey()), JOptionPane.YES_NO_CANCEL_OPTION, + JOptionPane.WARNING_MESSAGE, null, buttonTexts, buttonTexts[1]); + if (answer == JOptionPane.CANCEL_OPTION) {_automaticallyDelete = true;} // "always" is third option + if (_automaticallyDelete || answer == JOptionPane.YES_OPTION) + { + new Thread(new Runnable() { + public void run() { + _app.finishCompressTrack(); + } + }).start(); + } + } + else + { + JOptionPane.showMessageDialog(_parentFrame, I18nManager.getText("dialog.compress.confirmnone"), + I18nManager.getText(getNameKey()), JOptionPane.INFORMATION_MESSAGE); + } } }