import java.util.ArrayList;
import java.awt.*;
+import java.awt.event.*;
import javax.swing.*;
-import org.altusmetrum.altoslib_4.*;
-import org.altusmetrum.altosuilib_2.*;
+import java.io.*;
+import java.util.concurrent.*;
+import java.util.*;
+import org.altusmetrum.altoslib_9.*;
+import org.altusmetrum.altosuilib_9.*;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
JTabbedPane pane;
AltosGraph graph;
AltosUIEnable enable;
- AltosSiteMap map;
+ AltosUIMapNew map;
AltosState state;
AltosFlightStats stats;
AltosGraphDataSet graphDataSet;
+ AltosFlightStatsTable statsTable;
void fill_map(AltosStateIterable states) {
for (AltosState state : states) {
}
}
+ private void close() {
+ setVisible(false);
+ dispose();
+ TeleGPS.subtract_window();
+ }
+
TeleGPSGraphUI(AltosStateIterable states, File file) throws InterruptedException, IOException {
super(file.getName());
state = null;
stats = new AltosFlightStats(states);
graphDataSet = new AltosGraphDataSet(states);
graph = new AltosGraph(enable, stats, graphDataSet);
- map = new AltosSiteMap();
+ statsTable = new AltosFlightStatsTable(stats);
- pane.add("Flight Graph", graph.panel);
+ map = new AltosUIMapNew();
+
+ pane.add("Graph", graph.panel);
pane.add("Configure Graph", enable);
+ pane.add("Statistics", statsTable);
fill_map(states);
pane.add("Map", map);
setContentPane (pane);
+ addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent e) {
+ close();
+ }
+ });
+
pack();
- setDefaultCloseOperation(DISPOSE_ON_CLOSE);
+ setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
+
+ TeleGPS.add_window();
+
setVisible(true);
+
if (state != null)
map.centre(state);
+
}
}