[libchamplain] The uri_format field can be abused to set an initial data path for a local source



commit f37a4f1bc1a86d5270900f2c8949811a206fd2ec
Author: Simon Wenner <simon wenner ch>
Date:   Wed Jun 24 12:12:31 2009 +0200

    The uri_format field can be abused to set an initial data path for a local source

 champlain/champlain-local-map-data-source.c |    1 -
 champlain/champlain-map-source-factory.c    |    8 +++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/champlain/champlain-local-map-data-source.c b/champlain/champlain-local-map-data-source.c
index 4e4f326..9f8c6ed 100644
--- a/champlain/champlain-local-map-data-source.c
+++ b/champlain/champlain-local-map-data-source.c
@@ -101,7 +101,6 @@ champlain_local_map_data_source_init (ChamplainLocalMapDataSource *self)
   ChamplainLocalMapDataSourcePrivate *priv = GET_PRIVATE(self);
   
   priv->map = memphis_map_new ();
-  //memphis_map_load_from_file (priv->map, "sherbrooke_small.osm"); // REMOVE ME
 }
 
 ChamplainLocalMapDataSource*
diff --git a/champlain/champlain-map-source-factory.c b/champlain/champlain-map-source-factory.c
index d78bebb..a0c5cbb 100644
--- a/champlain/champlain-map-source-factory.c
+++ b/champlain/champlain-map-source-factory.c
@@ -410,11 +410,17 @@ champlain_map_source_new_memphis (ChamplainMapSourceDesc *desc,
 {
   ChamplainMapDataSource *map_data_source;
 
-  if (strcmp (desc->id, CHAMPLAIN_MAP_SOURCE_MEMPHIS_LOCAL) == 0)
+  if (g_strcmp0 (desc->id, CHAMPLAIN_MAP_SOURCE_MEMPHIS_LOCAL) == 0)
     map_data_source = CHAMPLAIN_MAP_DATA_SOURCE (champlain_local_map_data_source_new ());
   else
     return NULL;
 
+  /* Abuse the uri_format field to store an initial data path (optional) */
+  if (desc->uri_format && g_strcmp0 (desc->uri_format, "") != 0)
+    champlain_local_map_data_source_load_map_data (
+        CHAMPLAIN_LOCAL_MAP_DATA_SOURCE (map_data_source),
+        desc->uri_format);
+
   return CHAMPLAIN_MAP_SOURCE (champlain_memphis_map_source_new_full (
       desc, map_data_source));
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]