]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/save/GpsSaver.java
Version 14, October 2012
[GpsPrune.git] / tim / prune / save / GpsSaver.java
index a9c59a8ce1e169adeb5d2c64fb9eb329023b2869..5c74a7a3894d22dd7c06d9e3e3bdb4b3fca7f1c3 100644 (file)
@@ -6,6 +6,8 @@ import java.awt.FlowLayout;
 import java.awt.GridLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
 import java.io.BufferedReader;
 import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
@@ -25,10 +27,10 @@ import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 
 import tim.prune.App;
-import tim.prune.Config;
 import tim.prune.ExternalTools;
 import tim.prune.GenericFunction;
 import tim.prune.I18nManager;
+import tim.prune.config.Config;
 
 /**
  * Class to manage the loading of GPS data using GpsBabel
@@ -121,6 +123,19 @@ public class GpsSaver extends GenericFunction implements Runnable
                gridPanel.setAlignmentX(Component.CENTER_ALIGNMENT);
                gridPanel.setBorder(BorderFactory.createEmptyBorder(10, 5, 5, 20));
                mainPanel.add(gridPanel);
+               // close dialog when escape pressed
+               KeyAdapter closer = new KeyAdapter() {
+                       public void keyReleased(KeyEvent e)
+                       {
+                               // close dialog if escape pressed
+                               if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
+                                       _dialog.dispose();
+                               }
+                       }
+               };
+               _deviceField.addKeyListener(closer);
+               _formatField.addKeyListener(closer);
+               _trackNameField.addKeyListener(closer);
 
                // checkboxes
                ChangeListener checkboxListener = new ChangeListener() {
@@ -257,8 +272,8 @@ public class GpsSaver extends GenericFunction implements Runnable
                if (trackName == null || trackName.equals("")) {trackName = "prune";}
                // Generate the GPX file and send to the GPS
                OutputStreamWriter writer = new OutputStreamWriter(process.getOutputStream());
-               boolean[] saveFlags = {true, true, true, true}; // export everything
-               GpxExporter.exportData(writer, _app.getTrackInfo().getTrack(), trackName, null, saveFlags);
+               boolean[] saveFlags = {true, true, true, true, false, true}; // export everything
+               GpxExporter.exportData(writer, _app.getTrackInfo(), trackName, null, saveFlags, null);
                writer.close();
 
                // Read the error stream to see if there's a better error message there