Author: akv
Date: 2013-06-08 12:02:32 +0200 (Sat, 08 Jun 2013)
New Revision: 4409

Modified:
   trunk/librawstudio/conf_interface.h
   trunk/src/rs-geo-db.c
Log:
Saving zoom level in map.

Modified: trunk/librawstudio/conf_interface.h
===================================================================
--- trunk/librawstudio/conf_interface.h 2013-06-07 21:11:43 UTC (rev 4408)
+++ trunk/librawstudio/conf_interface.h 2013-06-08 10:02:32 UTC (rev 4409)
@@ -86,6 +86,7 @@
 #define CONF_ENFUSE_EXTEND_STEP_MULTI "conf_enfuse_extend_step_multi"
 #define CONF_ENFUSE_CACHE "conf_enfuse_cache"
 #define CONF_MAP_SOURCE "conf_map_source"
+#define CONF_MAP_ZOOM "map_zoom"
 
 #define DEFAULT_CONF_EXPORT_FILENAME "%f_%2c"
 #define DEFAULT_CONF_BATCH_DIRECTORY "batch_exports/"

Modified: trunk/src/rs-geo-db.c
===================================================================
--- trunk/src/rs-geo-db.c       2013-06-07 21:11:43 UTC (rev 4408)
+++ trunk/src/rs-geo-db.c       2013-06-08 10:02:32 UTC (rev 4409)
@@ -563,7 +563,12 @@
 
 void map_changed (OsmGpsMap *map, RSGeoDb *geodb)
 {
-       /* FIXME: save zoom */
+       gint zoom = -1;
+       if (map)
+               g_object_get(map, "zoom", &zoom, NULL);
+
+       if (zoom > 0)
+               rs_conf_set_integer(CONF_MAP_ZOOM, zoom);
 }
 
 static void
@@ -572,7 +577,6 @@
   RSGeoDb *geodb = (RSGeoDb *) userdata;
 
   const gchar *identifier = g_type_name((GType)active);
-  printf("identifier: %s\n", identifier);
 
   g_object_set(geodb->map,
               "map-source", active, NULL);
@@ -586,10 +590,16 @@
        if ( !osm_gps_map_source_is_valid(source) )
                return NULL;
 
+       gint zoom = -1;
+       rs_conf_get_integer(CONF_MAP_ZOOM, &zoom);
+       if (zoom < 0)
+               zoom = 10;
+
        GtkWidget *map = g_object_new (OSM_TYPE_GPS_MAP,
                                                                        
"map-source", source,
                                                                        
"tile-cache", OSM_GPS_MAP_CACHE_AUTO,
                                                                        
"tile-cache-base", "/tmp/RSGeoDb/",
+                                                                       "zoom", 
zoom,
                                                                        NULL);
 
        g_signal_connect(map, "changed", G_CALLBACK(map_changed), geodb);


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to