diff options
| author | Keith Packard <keithp@keithp.com> | 2013-01-10 21:48:12 -0800 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2013-01-10 21:48:12 -0800 | 
| commit | 1ed6b13e87c1cc2d6618b6ba3a293ea6e3b5752e (patch) | |
| tree | 10adf6f3c6b6c1ed2bf7540a9972fe72253cfa81 /altoslib/AltosPreferences.java | |
| parent | acff2f466031fd1a8533fc315411c3734a8bacc6 (diff) | |
| parent | d409417ff8e9ed9d406bf1c04542a4ecb574768b (diff) | |
Merge remote-tracking branch 'origin/micropeak-logging'
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); +		}  	}  } | 
