X-Git-Url: https://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Fload%2FTextFileLoader.java;h=440a56f7411a177beaa31e2b63353146d5a09c5a;hb=140e9d165f85c3d4f0435a311e091209313faa2a;hp=0d7ef481056d515595cedf2ea217f5c2ff66e54e;hpb=52bf9e8686c916be37a26a0b75340393d4478b05;p=GpsPrune.git diff --git a/tim/prune/load/TextFileLoader.java b/tim/prune/load/TextFileLoader.java index 0d7ef48..440a56f 100644 --- a/tim/prune/load/TextFileLoader.java +++ b/tim/prune/load/TextFileLoader.java @@ -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; /** @@ -54,7 +58,7 @@ public class TextFileLoader // previously selected values private char _lastUsedDelimiter = ','; private Field[] _lastSelectedFields = null; - private int _lastAltitudeFormat = Altitude.FORMAT_NONE; + private Altitude.Format _lastAltitudeFormat = Altitude.Format.NO_FORMAT; // constants private static final int SNIPPET_SIZE = 6; @@ -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) @@ -122,12 +133,12 @@ public class TextFileLoader _delimiterRadios[_delimiterRadios.length-1].setSelected(true); informDelimiterSelected(); _dialog.pack(); - _dialog.show(); + _dialog.setVisible(true); } - else - { - JOptionPane.showMessageDialog(_parentFrame, I18nManager.getText("error.load.noread"), - I18nManager.getText("error.load.dialogtitle"), JOptionPane.ERROR_MESSAGE); + else { + // Didn't pass pre-check + _app.showErrorMessage("error.load.dialogtitle", "error.load.noread"); + _app.informNoDataLoaded(); } } @@ -256,6 +267,7 @@ public class TextFileLoader public void actionPerformed(ActionEvent e) { _dialog.dispose(); + _app.informNoDataLoaded(); } }); buttonPanel.add(cancelButton); @@ -318,7 +330,7 @@ public class TextFileLoader JScrollPane tableScrollPane = new JScrollPane(extractTable); extractTable.setPreferredScrollableViewportSize(new Dimension(350, 80)); extractTable.getTableHeader().setReorderingAllowed(false); - secondCard.add(makeLabelledPanel("dialog.openoptions.tabledesc", tableScrollPane), BorderLayout.NORTH); + secondCard.add(makeLabelledPanel("dialog.openoptions.filesnippet", tableScrollPane), BorderLayout.NORTH); JPanel innerPanel2 = new JPanel(); innerPanel2.setLayout(new BorderLayout()); innerPanel2.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); @@ -494,16 +506,17 @@ public class TextFileLoader _fieldTable.setModel(_fieldTableModel); // add dropdowns to second column JComboBox fieldTypesBox = new JComboBox(); - for (int i=0; i