X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=telegps%2FTeleGPS.java;h=307b56103091254848b3696dca027ab31adc657a;hb=3f7e885055f8a97f334e0cd3163b760b174114b6;hp=c61b245e006c80d7e16ae353df4cd093ccc19a63;hpb=ae1174317fc476e39077f7dc257ec08709c6b301;p=fw%2Faltos diff --git a/telegps/TeleGPS.java b/telegps/TeleGPS.java index c61b245e..307b5610 100644 --- a/telegps/TeleGPS.java +++ b/telegps/TeleGPS.java @@ -67,8 +67,9 @@ public class TeleGPS JTabbedPane pane; - AltosSiteMap sitemap; + AltosUIMap map; TeleGPSInfo gps_info; + TeleGPSState gps_state; AltosInfoTable info_table; LinkedList displays; @@ -167,7 +168,7 @@ public class TeleGPS } void load_maps() { - new AltosSiteMapPreload(this); + new AltosUIMapPreload(this); } void disconnect() { @@ -323,6 +324,9 @@ public class TeleGPS void add_frequency_menu(int serial, final AltosFlightReader reader) { // Channel menu + if (frequencies != null) + return; + frequencies = new AltosFreqList(AltosUIPreferences.frequency(serial)); frequencies.set_product("Monitor"); frequencies.set_serial(serial); @@ -343,6 +347,7 @@ public class TeleGPS void remove_frequency_menu() { if (frequencies != null) { menu_bar.remove(frequencies); + menu_bar.repaint(); frequencies = null; } } @@ -366,6 +371,7 @@ public class TeleGPS } private void close() { + disconnect(); AltosUIPreferences.unregister_font_listener(this); AltosPreferences.unregister_units_listener(this); setVisible(false); @@ -438,14 +444,18 @@ public class TeleGPS c.gridwidth = 2; bag.add(pane, c); - sitemap = new AltosSiteMap(); - pane.add("Site Map", sitemap); - displays.add(sitemap); + map = new AltosUIMap(); + pane.add(map.getName(), map); + displays.add(map); gps_info = new TeleGPSInfo(); - pane.add("Info", gps_info); + pane.add(gps_info.getName(), gps_info); displays.add(gps_info); + gps_state = new TeleGPSState(); + pane.add(gps_state.getName(), gps_state); + displays.add(gps_state); + info_table = new AltosInfoTable(); pane.add("Table", info_table); displays.add(info_table); @@ -578,7 +588,7 @@ public class TeleGPS } else { double lat = Double.parseDouble(args[i+1]); double lon = Double.parseDouble(args[i+2]); - AltosSiteMap.prefetchMaps(lat, lon); + AltosUIMap.prefetch_maps(lat, lon); i += 2; } } else if (args[i].equals("--replay"))