diff options
| author | Keith Packard <keithp@keithp.com> | 2016-04-26 21:01:44 -0400 |
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2016-04-26 21:02:40 -0400 |
| commit | d81f94fd5339d513de9bde5a2e19f8eca526344f (patch) | |
| tree | 25d8261d6ddb6b8217b4e92690997d59a0a06285 /altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java | |
| parent | 204ae5142702044eb8ad2697a55028e904067958 (diff) | |
altosdroid: Split setup functions to separate dialog
Remove them from the options menu, handle all preferences through
listeners.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java')
| -rw-r--r-- | altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java index bd3bd942..dd86c818 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java @@ -16,6 +16,10 @@ */ package org.altusmetrum.AltosDroid; +import java.io.*; +import java.util.*; +import java.text.*; + import android.content.Context; import org.altusmetrum.altoslib_10.*; @@ -65,12 +69,19 @@ public class AltosDroidPreferences extends AltosPreferences { } } + static LinkedList<AltosDroidMapSourceListener> map_source_listeners; + public static void set_map_source(int map_source) { synchronized(backend) { AltosDroidPreferences.map_source = map_source; backend.putInt(mapSourcePreference, map_source); flush_preferences(); } + if (map_source_listeners != null) { + for (AltosDroidMapSourceListener l : map_source_listeners) { + l.map_source_changed(map_source); + } + } } public static int map_source() { @@ -78,4 +89,18 @@ public class AltosDroidPreferences extends AltosPreferences { return map_source; } } + + public static void register_map_source_listener(AltosDroidMapSourceListener l) { + synchronized(backend) { + if (map_source_listeners == null) + map_source_listeners = new LinkedList<AltosDroidMapSourceListener>(); + map_source_listeners.add(l); + } + } + + public static void unregister_map_source_listener(AltosDroidMapSourceListener l) { + synchronized(backend) { + map_source_listeners.remove(l); + } + } } |
