Merge branch 'sitemap' into buttonbox
authorAnthony Towns <aj@erisian.com.au>
Sun, 21 Nov 2010 01:15:02 +0000 (11:15 +1000)
committerAnthony Towns <aj@erisian.com.au>
Sun, 21 Nov 2010 01:15:02 +0000 (11:15 +1000)
Conflicts:
ao-tools/altosui/AltosSiteMap.java

1  2 
ao-tools/altosui/AltosFlightUI.java
ao-tools/altosui/AltosSiteMap.java

index a3a28782ce13a223e5cf2455c5d1bc3fdff23612,1107d52725a62125d46c1c1940d73f908747d69a..732f7395565eee41b2d0388c4474cd4f8ddb99b1
@@@ -145,12 -145,12 +145,12 @@@ public class AltosFlightUI extends JFra
                        // Channel menu
                        channels = new AltosChannelMenu(AltosPreferences.channel(serial));
                        channels.addActionListener(new ActionListener() {
-                                       public void actionPerformed(ActionEvent e) {
-                                               int channel = channels.getSelectedIndex();
-                                               reader.set_channel(channel);
-                                               AltosPreferences.set_channel(serial, channel);
-                                       }
-                               });
+                               public void actionPerformed(ActionEvent e) {
+                                       int channel = channels.getSelectedIndex();
+                                       reader.set_channel(channel);
+                                       AltosPreferences.set_channel(serial, channel);
+                               }
+                       });
                        c.gridx = 0;
                        c.gridy = 0;
                        c.anchor = GridBagConstraints.WEST;
  
                setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
                addWindowListener(new WindowAdapter() {
 -                      @Override
 -                      public void windowClosing(WindowEvent e) {
 -                              disconnect();
 -                              setVisible(false);
 -                              dispose();
 -                              if (exit_on_close)
 -                                      System.exit(0);
 -                      }
 -              });
 +                              @Override
 +                              public void windowClosing(WindowEvent e) {
 +                                      disconnect();
 +                                      setVisible(false);
 +                                      dispose();
 +                                      if (exit_on_close)
 +                                              System.exit(0);
 +                              }
 +                      });
  
                pack();
                setVisible(true);
index 50177d4e84b9a564c16bc64349a58cfd33af3b46,e222e2c8cc88e592a8f90627d24c2986a33b54b8..2c5420619eda46a36ae29a1b91eda1a7a371c047
@@@ -33,8 -33,10 +33,10 @@@ import java.awt.geom.Point2D
  import java.awt.geom.Line2D;
  
  public class AltosSiteMap extends JScrollPane implements AltosFlightDisplay {
-       // max vertical step in a tile in naut. miles
-       static final double tile_size_nmi = 1.0;
+       // preferred vertical step in a tile in naut. miles
+       // will actually choose a step size between x and 2x, where this
+       // is 1.5x
+       static final double tile_size_nmi = 1.5;
  
        static final int px_size = 512;
  
                        scale_x = 256/360.0 * Math.pow(2, zoom);
                        scale_y = 256/(2.0*Math.PI) * Math.pow(2, zoom);
                        locn = pt(lat, lng);
-                       north_step = pt(lat+tile_size_nmi/60.0, lng);
+                       north_step = pt(lat+tile_size_nmi*4/3/60.0, lng);
                        if (locn.y - north_step.y > px_size)
                                break;
                } while (zoom < 22);
        boolean initialised = false;
        public void show(AltosState state, int crc_errors) {
                // if insufficient gps data, nothing to update
-               if (state.gps == null || !state.gps.locked) {
++              if (state.gps == null)
++                      return;
+               if (!state.gps.locked) {
                        if (state.pad_lat == 0 && state.pad_lon == 0)
                                return;
-                       if (state.ngps < 3)
+                       if (state.gps.nsat < 4)
                                return;
                }
  
                setPreferredSize(new Dimension(500,200));
        }
  }
 -