diff options
author | Keith Packard <keithp@keithp.com> | 2013-04-22 17:20:51 -0500 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2013-04-22 17:20:51 -0500 |
commit | 33c3b2c57d0d4285b75d4dcf7ca67ad19da08c86 (patch) | |
tree | a9ff47afab29fe141dcd1da0ca276b367f911cb6 /altosui/AltosGraphUI.java | |
parent | 1a84db819a359be39be51c9105039ab28c9fc894 (diff) | |
parent | 90b0db1ae53182c94bf12d661446fc369d916366 (diff) |
Merge branch 'master' into stm-flash
Conflicts:
ao-tools/ao-stmload/ao-stmload.c
Diffstat (limited to 'altosui/AltosGraphUI.java')
-rw-r--r-- | altosui/AltosGraphUI.java | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/altosui/AltosGraphUI.java b/altosui/AltosGraphUI.java index 2f3575a4..d8b8f6dd 100644 --- a/altosui/AltosGraphUI.java +++ b/altosui/AltosGraphUI.java @@ -26,17 +26,19 @@ public class AltosGraphUI extends AltosUIFrame AltosGraphDataSet graphDataSet; AltosFlightStats stats; AltosFlightStatsTable statsTable; + boolean has_gps; - boolean fill_map(AltosRecordIterable records) { + void fill_map(AltosRecordIterable records) { boolean any_gps = false; for (AltosRecord record : records) { state = new AltosState(record, state); - if (state.gps.locked && state.gps.nsat >= 4) { - map.show(state, 0); - any_gps = true; + if (state.gps != null && state.gps.locked && state.gps.nsat >= 4) { + if (map == null) + map = new AltosSiteMap(); + map.show(state, null); + has_gps = true; } } - return any_gps; } AltosGraphUI(AltosRecordIterable records, File file) throws InterruptedException, IOException { @@ -54,13 +56,13 @@ public class AltosGraphUI extends AltosUIFrame statsTable = new AltosFlightStatsTable(stats); - map = new AltosSiteMap(); - pane.add("Flight Graph", graph.panel); pane.add("Configure Graph", enable); pane.add("Flight Statistics", statsTable); - if (fill_map(records)) + has_gps = false; + fill_map(records); + if (has_gps) pane.add("Map", map); setContentPane (pane); @@ -69,7 +71,7 @@ public class AltosGraphUI extends AltosUIFrame setDefaultCloseOperation(DISPOSE_ON_CLOSE); setVisible(true); - if (state != null) + if (state != null && has_gps) map.centre(state); } } |