Merge branch 'buttonbox' of git://git.gag.com/fw/altos into buttonbox
[fw/altos] / ao-tools / altosui / AltosFlightUI.java
index 56ab7ebc4ac01546d210b8446cb7c010d5816f9b..6db6c67b192d04ad792bd3806be2380412fa4d56 100644 (file)
@@ -42,9 +42,11 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
        AltosAscent     ascent;
        AltosDescent    descent;
        AltosLanded     landed;
+    AltosSiteMap    sitemap;
 
        private AltosFlightStatus flightStatus;
        private JScrollPane flightInfoPane;
+       private JScrollPane sitemapPane;
        private AltosInfoTable flightInfo;
 
        static final int tab_pad = 1;
@@ -94,6 +96,7 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
                descent.reset();
                landed.reset();
                flightInfo.clear();
+               sitemap.reset();
        }
 
        public void show(AltosState state, int crc_errors) {
@@ -120,6 +123,7 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
                }
                flightStatus.show(state, crc_errors);
                flightInfo.show(state, crc_errors);
+               sitemap.show(state, crc_errors);
        }
 
        public void set_exit_on_close() {
@@ -127,6 +131,7 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
        }
 
        Container       bag;
+       JComboBox       channels;
 
        public AltosFlightUI(AltosVoice in_voice, AltosFlightReader in_reader, final int serial) {
                AltosPreferences.init(this);
@@ -147,10 +152,10 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
 
                if (serial >= 0) {
                        // Channel menu
-                       JComboBox channels = new AltosChannelMenu(AltosPreferences.channel(serial));
+                       channels = new AltosChannelMenu(AltosPreferences.channel(serial));
                        channels.addActionListener(new ActionListener() {
                                        public void actionPerformed(ActionEvent e) {
-                                               int channel = Integer.parseInt(e.getActionCommand());
+                                               int channel = channels.getSelectedIndex();
                                                reader.set_channel(channel);
                                                AltosPreferences.set_channel(serial, channel);
                                        }
@@ -186,6 +191,10 @@ public class AltosFlightUI extends JFrame implements AltosFlightDisplay {
                flightInfoPane = new JScrollPane(flightInfo.box());
                pane.add("Table", flightInfoPane);
 
+        sitemap = new AltosSiteMap();
+               sitemapPane = new JScrollPane(sitemap);
+        pane.add("Site Map", sitemapPane);
+
                c.gridx = 0;
                c.gridy = 2;
                c.fill = GridBagConstraints.BOTH;