altosuilib: Track open frames, exit when none remain
[fw/altos] / altosui / AltosGraphUI.java
index 2d00fb45a74be84e0198d1c7c4c8c195c8b07544..4f394d73fb932a617bc62a806e7b1ab313640768 100644 (file)
@@ -23,8 +23,8 @@ import java.util.ArrayList;
 import java.awt.*;
 import java.awt.event.*;
 import javax.swing.*;
-import org.altusmetrum.altoslib_5.*;
-import org.altusmetrum.altosuilib_3.*;
+import org.altusmetrum.altoslib_11.*;
+import org.altusmetrum.altosuilib_11.*;
 
 import org.jfree.chart.ChartPanel;
 import org.jfree.chart.JFreeChart;
@@ -64,6 +64,8 @@ public class AltosGraphUI extends AltosUIFrame implements AltosFontListener, Alt
        public void units_changed(boolean imperial_units) {
                if (map != null)
                        map.units_changed(imperial_units);
+               if (enable != null)
+                       enable.units_changed(imperial_units);
        }
 
        AltosGraphUI(AltosStateIterable states, File file) throws InterruptedException, IOException {
@@ -98,8 +100,6 @@ public class AltosGraphUI extends AltosUIFrame implements AltosFontListener, Alt
                addWindowListener(new WindowAdapter() {
                                @Override
                                public void windowClosing(WindowEvent e) {
-                                       setVisible(false);
-                                       dispose();
                                        AltosUIPreferences.unregister_font_listener(AltosGraphUI.this);
                                        AltosPreferences.unregister_units_listener(AltosGraphUI.this);
                                }