java: Refactor AltosFlightDisplay units and font update handling
[fw/altos] / altosuilib / AltosSiteMap.java
index 461886c7f0e3f2e53f2160d19dd73da87d58153e..ed77beff643b2dbc336cc2dc623811fa1990742c 100644 (file)
@@ -192,11 +192,15 @@ public class AltosSiteMap extends JComponent implements AltosFlightDisplay, Mous
                // nothing
        }
 
-       public void set_font() {
+       public void font_size_changed(int font_size) {
                for (AltosSiteMapTile tile : mapTiles.values())
                        tile.set_font(AltosUILib.value_font);
        }
 
+       public void units_changed(boolean imperial_units) {
+               set_line();
+       }
+
        static final int load_mode_cached = 1;
        static final int load_mode_uncached = 2;
 
@@ -290,6 +294,10 @@ public class AltosSiteMap extends JComponent implements AltosFlightDisplay, Mous
                }
        }
 
+       public static void prefetchMaps(double lat, double lon) {
+               prefetchMaps(lat, lon, 2, 1 << maptype_hybrid, 0, 0);
+       }
+
        public File init_map(Point offset, int load_mode) {
                AltosSiteMapTile tile = mapTiles.get(offset);
                Point2D.Double coord = tileCoordOffset(offset);
@@ -516,7 +524,7 @@ public class AltosSiteMap extends JComponent implements AltosFlightDisplay, Mous
                last_point = point;
        }
 
-       private void centre(Point2D.Double pt) {
+       public void centre(Point2D.Double pt) {
                Rectangle r = comp.getVisibleRect();
                Point2D.Double copt = translatePoint(pt, tileCoordOffset(topleft));
                int dx = (int)copt.x - r.width/2 - r.x;
@@ -528,7 +536,7 @@ public class AltosSiteMap extends JComponent implements AltosFlightDisplay, Mous
                comp.scrollRectToVisible(r);
        }
 
-       private void centre(AltosState state) {
+       public void centre(AltosState state) {
                if (!state.gps.locked && state.gps.nsat < 4)
                        return;
                centre(pt(state.gps.lat, state.gps.lon));