]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/load/TextFileLoader.java
Version 11, August 2010
[GpsPrune.git] / tim / prune / load / TextFileLoader.java
index 64c9ebadff0e1955fa372a10ddf1e1868c446c82..440a56f7411a177beaa31e2b63353146d5a09c5a 100644 (file)
@@ -8,6 +8,9 @@ import java.awt.FlowLayout;
 import java.awt.GridLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+
 import javax.swing.*;
 import javax.swing.event.DocumentEvent;
 import javax.swing.event.DocumentListener;
@@ -21,6 +24,7 @@ import tim.prune.App;
 import tim.prune.I18nManager;
 import tim.prune.data.Altitude;
 import tim.prune.data.Field;
+import tim.prune.data.SourceInfo;
 
 
 /**
@@ -109,7 +113,14 @@ public class TextFileLoader
                {
                        _dialog = new JDialog(_parentFrame, I18nManager.getText("dialog.openoptions.title"), true);
                        _dialog.setLocationRelativeTo(_parentFrame);
-                       _dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
+                       _dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
+                       // add closing listener
+                       _dialog.addWindowListener(new WindowAdapter() {
+                               public void windowClosing(WindowEvent e) {
+                                       _dialog.dispose();
+                                       _app.informNoDataLoaded();
+                               }
+                       });
                        _dialog.getContentPane().add(makeDialogComponents());
 
                        // select best separator according to row counts (more is better)
@@ -527,9 +538,9 @@ public class TextFileLoader
                }
                _lastAltitudeFormat = altitudeFormat;
                // give data to App
+               SourceInfo sourceInfo = new SourceInfo(_file, SourceInfo.FILE_TYPE.TEXT);
                _app.informDataLoaded(_fieldTableModel.getFieldArray(),
-                       _fileExtractTableModel.getData(), altitudeFormat,
-                       _file.getName());
+                       _fileExtractTableModel.getData(), altitudeFormat, sourceInfo);
                // clear up file cacher
                _fileCacher.clear();
                // dispose of dialog