]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.district.maps/src/org/simantics/maps/prefs/MapsClientPreferences.java
Make background map preference changes apply immediately
[simantics/district.git] / org.simantics.district.maps / src / org / simantics / maps / prefs / MapsClientPreferences.java
index 75ad19d6471004b0206a006b46c6d6d0a4222c8e..a54185c1c84c22ee8351e250e1a33a9e87936a82 100644 (file)
@@ -3,8 +3,9 @@ package org.simantics.maps.prefs;
 import java.net.MalformedURLException;
 import java.net.URL;
 
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences.IPreferenceChangeListener;
 import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.osgi.service.prefs.Preferences;
 
 public class MapsClientPreferences {
 
@@ -15,13 +16,15 @@ public class MapsClientPreferences {
     
     // TODO: fix this, currently copied from MapsServerPreferences
     public static final String P_DEFAULT_PORT = "org.simantics.maps.server.defaultPort";
+    public static final String P_CURRENT_MBTILES = "org.simantics.maps.server.currentMbTiles";
     public static final String P_CURRENT_TM2STYLE = "org.simantics.maps.server.currentTM2Style";
     public static final String P_SERVER_NODE = "org.simantics.maps.server";
-    public static Preferences getServerPreferences() {
+    
+    public static IEclipsePreferences getServerPreferences() {
         return InstanceScope.INSTANCE.getNode(P_SERVER_NODE);
     }
     
-    public static Preferences getPreferences() {
+    public static IEclipsePreferences getPreferences() {
         return InstanceScope.INSTANCE.getNode(P_NODE);
     }
     
@@ -34,8 +37,8 @@ public class MapsClientPreferences {
     }
     
     public static String possibleBuiltinServerURL() {
-        int port = getServerPreferences().getInt(P_DEFAULT_PORT, -1);
-        String style = getServerPreferences().get(P_CURRENT_TM2STYLE, null);
+        int port = getServerPreferences().getInt(P_DEFAULT_PORT, 8585);
+        String style = getServerPreferences().get(P_CURRENT_TM2STYLE, "mapbox-studio-osm-bright.tm2");
         if (port != -1 && style != null) {
             try {
                 return new URL("http", "localhost", port, "/" + style).toString();
@@ -46,4 +49,12 @@ public class MapsClientPreferences {
         return null;
     }
 
+    public static void addPreferenceChangeListenerMapsServer(IPreferenceChangeListener listener) {
+        getServerPreferences().addPreferenceChangeListener(listener);
+    }
+
+    public static void removePreferenceChangeListenerMapsServer(IPreferenceChangeListener listener) {
+        getServerPreferences().removePreferenceChangeListener(listener);
+    }
+
 }