X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=telegps%2FTeleGPSGraphUI.java;h=b7fc4caae911d39b18e4a2e8ebb68a1e793c43ac;hp=b7c17780d522e91f776ecaa3554ee8114ee12769;hb=ac33ca137551e32235cd2a0304da4b5e7af51a44;hpb=48074131ad05b4646e5d2dcf30ba4a1d17e249f8 diff --git a/telegps/TeleGPSGraphUI.java b/telegps/TeleGPSGraphUI.java index b7c17780..b7fc4caa 100644 --- a/telegps/TeleGPSGraphUI.java +++ b/telegps/TeleGPSGraphUI.java @@ -21,7 +21,11 @@ import java.io.*; import java.util.ArrayList; import java.awt.*; +import java.awt.event.*; import javax.swing.*; +import java.io.*; +import java.util.concurrent.*; +import java.util.*; import org.altusmetrum.altoslib_4.*; import org.altusmetrum.altosuilib_2.*; @@ -38,6 +42,7 @@ public class TeleGPSGraphUI extends AltosUIFrame 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); + statsTable = new AltosFlightStatsTable(stats); + map = new AltosSiteMap(); pane.add("Flight 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); + } }