X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=telegps%2FTeleGPSGraphUI.java;h=701a7e30164db82774fbaaab0cc6382a028fd59b;hb=df276262900551a5eecd94903eefe9a264b161ec;hp=b7c17780d522e91f776ecaa3554ee8114ee12769;hpb=48074131ad05b4646e5d2dcf30ba4a1d17e249f8;p=fw%2Faltos diff --git a/telegps/TeleGPSGraphUI.java b/telegps/TeleGPSGraphUI.java index b7c17780..701a7e30 100644 --- a/telegps/TeleGPSGraphUI.java +++ b/telegps/TeleGPSGraphUI.java @@ -21,9 +21,13 @@ import java.io.*; 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_11.*; +import org.altusmetrum.altosuilib_11.*; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; @@ -34,10 +38,11 @@ public class TeleGPSGraphUI extends AltosUIFrame 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) { @@ -46,6 +51,12 @@ public class TeleGPSGraphUI extends AltosUIFrame } } + private void close() { + setVisible(false); + dispose(); + TeleGPS.subtract_window(); + } + TeleGPSGraphUI(AltosStateIterable states, File file) throws InterruptedException, IOException { super(file.getName()); state = null; @@ -56,20 +67,35 @@ public class TeleGPSGraphUI extends AltosUIFrame 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); + } }