Merge branch 'buttonbox' of git://git.gag.com/fw/altos into buttonbox
authorAnthony Towns <aj@erisian.com.au>
Sat, 20 Nov 2010 07:40:49 +0000 (17:40 +1000)
committerAnthony Towns <aj@erisian.com.au>
Sat, 20 Nov 2010 07:40:49 +0000 (17:40 +1000)
Conflicts:
ao-tools/altosui/AltosFlightUI.java

1  2 
ao-tools/altosui/AltosFlightUI.java
ao-tools/altosui/Makefile.am

index 658d6f6f611f8e36a5b324b29bdc0c16e23dd559,56ab7ebc4ac01546d210b8446cb7c010d5816f9b..21b41528b32a056aee22989167cbead46b506425
@@@ -36,19 -36,15 +36,17 @@@ public class AltosFlightUI extends JFra
        AltosFlightReader       reader;
        AltosDisplayThread      thread;
  
-       private Box vbox;
        JTabbedPane     pane;
  
        AltosPad        pad;
        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;
@@@ -98,7 -94,6 +96,7 @@@
                descent.reset();
                landed.reset();
                flightInfo.clear();
 +              sitemap.reset();
        }
  
        public void show(AltosState state, int crc_errors) {
                }
                flightStatus.show(state, crc_errors);
                flightInfo.show(state, crc_errors);
 +              sitemap.show(state, crc_errors);
        }
  
        public void set_exit_on_close() {
                exit_on_close = true;
        }
  
+       Container       bag;
        public AltosFlightUI(AltosVoice in_voice, AltosFlightReader in_reader, final int serial) {
                AltosPreferences.init(this);
  
                voice = in_voice;
                reader = in_reader;
  
+               bag = getContentPane();
+               bag.setLayout(new GridBagLayout());
+               GridBagConstraints c = new GridBagConstraints();
                java.net.URL imgURL = AltosUI.class.getResource("/altus-metrum-16x16.jpg");
                if (imgURL != null)
                        setIconImage(new ImageIcon(imgURL).getImage());
  
                setTitle(String.format("AltOS %s", reader.name));
  
-               flightStatus = new AltosFlightStatus();
+               if (serial >= 0) {
+                       // Channel menu
+                       JComboBox channels = new AltosChannelMenu(AltosPreferences.channel(serial));
+                       channels.addActionListener(new ActionListener() {
+                                       public void actionPerformed(ActionEvent e) {
+                                               int channel = Integer.parseInt(e.getActionCommand());
+                                               reader.set_channel(channel);
+                                               AltosPreferences.set_channel(serial, channel);
+                                       }
+                               });
+                       c.gridx = 0;
+                       c.gridy = 0;
+                       c.anchor = GridBagConstraints.WEST;
+                       bag.add (channels, c);
+               }
  
-               vbox = new Box (BoxLayout.Y_AXIS);
-               vbox.add(flightStatus);
+               flightStatus = new AltosFlightStatus();
+               c.gridx = 0;
+               c.gridy = 1;
+               c.fill = GridBagConstraints.HORIZONTAL;
+               c.weightx = 1;
+               bag.add(flightStatus, c);
  
                pane = new JTabbedPane();
  
                flightInfoPane = new JScrollPane(flightInfo.box());
                pane.add("Table", flightInfoPane);
  
-               vbox.add(pane);
-               this.add(vbox);
-               if (serial >= 0) {
-                       JMenuBar menubar = new JMenuBar();
-                       // Channel menu
-                       {
-                               JMenu menu = new AltosChannelMenu(AltosPreferences.channel(serial));
-                               menu.addActionListener(new ActionListener() {
-                                               public void actionPerformed(ActionEvent e) {
-                                                       int channel = Integer.parseInt(e.getActionCommand());
-                                                       reader.set_channel(channel);
-                                                       AltosPreferences.set_channel(serial, channel);
-                                               }
-                                       });
-                               menu.setMnemonic(KeyEvent.VK_C);
-                               menubar.add(menu);
-                       }
-                       this.setJMenuBar(menubar);
-               }
 +        sitemap = new AltosSiteMap();
 +              sitemapPane = new JScrollPane(sitemap);
 +        pane.add("Site Map", sitemapPane);
 +
+               c.gridx = 0;
+               c.gridy = 2;
+               c.fill = GridBagConstraints.BOTH;
+               c.weightx = 1;
+               c.weighty = 1;
+               bag.add(pane, c);
  
                this.setSize(this.getPreferredSize());
                this.validate();
index b6b2e572c205f0655d9d4fc307cb8863262442b5,a603ca8a225a96b87a6f6d96ea5800d991707dae..41afdf2733e441531abdf7dee99944b4b0505a8f
@@@ -40,13 -40,14 +40,14 @@@ altosui_JAVA = 
        AltosGreatCircle.java \
        AltosHexfile.java \
        Altos.java \
+       AltosIgnite.java \
+       AltosIgniteUI.java \
        AltosInfoTable.java \
        AltosKML.java \
        AltosLanded.java \
        AltosLed.java \
        AltosLights.java \
        AltosLine.java \
-       AltosLogfileChooser.java \
        AltosLog.java \
        AltosPad.java \
        AltosParse.java \
@@@ -61,8 -62,6 +62,8 @@@
        AltosSerial.java \
        AltosSerialInUseException.java \
        AltosSerialMonitor.java \
 +      AltosSiteMap.java \
 +      AltosSiteMapTile.java \
        AltosState.java \
        AltosTelemetry.java \
        AltosTelemetryIterable.java \
@@@ -73,7 -72,7 +74,7 @@@
        AltosGraph.java \
        AltosGraphTime.java \
        AltosGraphUI.java \
-       AltosGraphDataChooser.java \
+       AltosDataChooser.java \
        AltosVoice.java
  
  JFREECHART_CLASS= \