diff options
author | Bdale Garbee <bdale@gag.com> | 2013-01-12 10:57:22 -0700 |
---|---|---|
committer | Bdale Garbee <bdale@gag.com> | 2013-01-12 10:57:22 -0700 |
commit | 670034eef48d63cdaec8d271fa93da984ffe2ea9 (patch) | |
tree | 422713fba95404876049f785255942ce6d9c4afd /altoslib/AltosPreferences.java | |
parent | 8c5ebaf88b459b09924753a8077393a7b0639133 (diff) | |
parent | d374d6be7eb040457f4df6c38b5d057f26ee741c (diff) |
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
Diffstat (limited to 'altoslib/AltosPreferences.java')
-rw-r--r-- | altoslib/AltosPreferences.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/altoslib/AltosPreferences.java b/altoslib/AltosPreferences.java index 47196d6e..e50b9b5c 100644 --- a/altoslib/AltosPreferences.java +++ b/altoslib/AltosPreferences.java @@ -367,6 +367,8 @@ public class AltosPreferences { set_common_frequencies(new_frequencies); } + static LinkedList<AltosUnitsListener> units_listeners; + public static boolean imperial_units() { synchronized(backend) { return AltosConvert.imperial_units; @@ -379,5 +381,24 @@ public class AltosPreferences { backend.putBoolean(unitsPreference, imperial_units); flush_preferences(); } + if (units_listeners != null) { + for (AltosUnitsListener l : units_listeners) { + l.units_changed(imperial_units); + } + } + } + + public static void register_units_listener(AltosUnitsListener l) { + synchronized(backend) { + if (units_listeners == null) + units_listeners = new LinkedList<AltosUnitsListener>(); + units_listeners.add(l); + } + } + + public static void unregister_units_listener(AltosUnitsListener l) { + synchronized(backend) { + units_listeners.remove(l); + } } } |