Re: [ANNOUNCE] libchamplain 0.6



Hi,

Attaching additional patch with rebuilded gi and vapi with actual
stuff added in 0.6 - except some libmemphis specifics.

regards, Tomaž

On Tue, May 25, 2010 at 7:44 PM, Tomaž Vajngerl <quikee gmail com> wrote:
> Hi,
>
> Sorry.. this patch was to quickly - I forgot to rebuild the .gi file.
> Now the problem is that libmemphis also needs Vala bindings if we want
> to build the complete bindings. For now I will try to manually remove
> libmemphis stuff and I will deal with this later.
>
> regards, Tomaž
>
> On Tue, May 25, 2010 at 6:42 PM, Tomaž Vajngerl <quikee gmail com> wrote:
>> Hi,
>>
>> I have ported Vala bindigns from latest 0.4 to 0.6. Because I am
>> unsure in what way you prefer that we send you the patches I will send
>> it here. Please include it in the next 0.6 branch release. I will
>> prepare patches also for 0.7 development but I would like to
>> experiment first how to make automatic bindings building.
>>
>> regards, Tomaž
>>
>> On Tue, May 25, 2010 at 1:46 AM, Jiří Techet <techet gmail com> wrote:
>>> Hello everyone,
>>>
>>> libchamplain 0.6 is out. There hasn't been much exciting since 0.5.2;
>>> here's a brief list of changes:
>>>
>>> * Add dummy ChangeLog file (Łukasz Jernaś)
>>> * Fix a problem on some machines when tiles are being destroyed (Jiří Techet)
>>> * Add minimal demos (Jiří Techet)
>>> * Some other minor fixes (Jiří Techet)
>>>
>>> For more details refer to git log.
>>>
>>> This is probably the right place to point out several
>>> incompatibilities with the 0.4 branch. There have been many changes in
>>> the API so it's possible you encounter some errors while compiling
>>> your program, but these should be easy to fix. However, there are two
>>> gotchas if you are upgrading from the previous stable release mainly
>>> because your sources will compile just fine, but when running it,
>>> unexpected things happen:
>>>
>>> 1. ChamplainMapSource and ChamplainPolygon inherit from
>>> GInitiallyUnowned now and g_object_ref_sink() is called on them. The
>>> practical consequence is that you MUST NOT call g_object_unref() once
>>> you insert them to ChamplainView, otherwise your application will
>>> crash. libchamplain takes ownership of them so you don't have to care
>>> about their deallocation any more.
>>>
>>> 2. If you want to create a cached map source, call
>>> champlain_map_source_factory_create_cached_source() instead of
>>> champlain_map_source_factory_create(). The latter function will just
>>> create the bare map source without any caching. So if it seems to you
>>> the tiles don't get cached, this is probably the cause.
>>>
>>> We're late with this release but I'll do my best to follow the gnome
>>> schedule for the following release. In a few days I'll send a few
>>> ideas what I'd like to have implemented for 0.8.
>>>
>>> Cheers,
>>>
>>> Jiri
>>> _______________________________________________
>>> libchamplain-list mailing list
>>> libchamplain-list gnome org
>>> http://mail.gnome.org/mailman/listinfo/libchamplain-list
>>>
>>
>
From bd38b1ae8518400756100af991431ac871757b0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Toma=C5=BE=20Vajngerl?= <quikee gmail com>
Date: Tue, 25 May 2010 20:15:27 +0200
Subject: [PATCH 2/2] Rebuid gi file and create new vapi again.

---
 bindings/vala/champlain-gtk/champlain-gtk-0.6.vapi |    6 -
 .../champlain-gtk-0.6/champlain-gtk-0.6.files      |    4 +-
 .../champlain-gtk-0.6/champlain-gtk-0.6.gi         |   19 -
 bindings/vala/champlain/champlain-0.6.vapi         |  250 +++++---
 .../champlain/champlain-0.6/champlain-0.6.files    |    4 +-
 .../vala/champlain/champlain-0.6/champlain-0.6.gi  |  725 ++++++++++++++------
 6 files changed, 658 insertions(+), 350 deletions(-)

diff --git a/bindings/vala/champlain-gtk/champlain-gtk-0.6.vapi b/bindings/vala/champlain-gtk/champlain-gtk-0.6.vapi
index a050787..e4f86b8 100644
--- a/bindings/vala/champlain-gtk/champlain-gtk-0.6.vapi
+++ b/bindings/vala/champlain-gtk/champlain-gtk-0.6.vapi
@@ -10,10 +10,4 @@ namespace GtkChamplain {
 		[NoAccessorMethod]
 		public Champlain.View champlain_view { owned get; }
 	}
-	[CCode (cname = "champlain_view_embed_get_view", cheader_filename = "champlain-gtk/champlain-gtk.h")]
-	public static unowned Champlain.View champlain_view_embed_get_view (GtkChamplain.Embed embed);
-	[CCode (cname = "champlain_view_embed_new", cheader_filename = "champlain-gtk/champlain-gtk.h")]
-	public static unowned Gtk.Widget champlain_view_embed_new (Champlain.View view);
-	[CCode (cname = "champlain_view_embed_set_view", cheader_filename = "champlain-gtk/champlain-gtk.h")]
-	public static void champlain_view_embed_set_view (GtkChamplain.Embed embed, Champlain.View view);
 }
diff --git a/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.files b/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.files
index d968f35..a818940 100644
--- a/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.files
+++ b/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.files
@@ -1,2 +1,2 @@
-lib/libchamplain-gtk-0.4.so
-include/libchamplain-gtk-0.4/
+lib/libchamplain-gtk-0.6.so
+include/libchamplain-gtk-0.6/
diff --git a/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.gi b/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.gi
index bac1ba7..afcb7cd 100644
--- a/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.gi
+++ b/bindings/vala/champlain-gtk/champlain-gtk-0.6/champlain-gtk-0.6.gi
@@ -1,25 +1,6 @@
 <?xml version="1.0"?>
 <api version="1.0">
 	<namespace name="GtkChamplain">
-		<function name="champlain_view_embed_get_view" symbol="champlain_view_embed_get_view">
-			<return-type type="ChamplainView*"/>
-			<parameters>
-				<parameter name="embed" type="GtkChamplainEmbed*"/>
-			</parameters>
-		</function>
-		<function name="champlain_view_embed_new" symbol="champlain_view_embed_new">
-			<return-type type="GtkWidget*"/>
-			<parameters>
-				<parameter name="view" type="ChamplainView*"/>
-			</parameters>
-		</function>
-		<function name="champlain_view_embed_set_view" symbol="champlain_view_embed_set_view">
-			<return-type type="void"/>
-			<parameters>
-				<parameter name="embed" type="GtkChamplainEmbed*"/>
-				<parameter name="view" type="ChamplainView*"/>
-			</parameters>
-		</function>
 		<object name="GtkChamplainEmbed" parent="GtkAlignment" type-name="GtkChamplainEmbed" get-type="gtk_champlain_embed_get_type">
 			<implements>
 				<interface name="AtkImplementor"/>
diff --git a/bindings/vala/champlain/champlain-0.6.vapi b/bindings/vala/champlain/champlain-0.6.vapi
index 29abd07..25d5220 100644
--- a/bindings/vala/champlain/champlain-0.6.vapi
+++ b/bindings/vala/champlain/champlain-0.6.vapi
@@ -11,25 +11,46 @@ namespace Champlain {
 		public void animate_out ();
 		public void animate_out_with_delay (uint delay);
 		public bool get_highlighted ();
+		public double get_latitude ();
+		public double get_longitude ();
 		public void set_highlighted (bool value);
-		public void set_position (double longitude, double latitude);
+		public void set_position (double latitude, double longitude);
 		public bool highlighted { get; set; }
 		[NoAccessorMethod]
 		public double latitude { get; set; }
 		[NoAccessorMethod]
 		public double longitude { get; set; }
 	}
+	[Compact]
+	[CCode (copy_function = "champlain_bounding_box_copy", type_id = "CHAMPLAIN_TYPE_BOUNDING_BOX", cheader_filename = "champlain/champlain.h")]
+	public class BoundingBox {
+		public double bottom;
+		public double left;
+		public double right;
+		public double top;
+		[CCode (has_construct_function = false)]
+		public BoundingBox ();
+		public unowned Champlain.BoundingBox copy ();
+		public void get_center (double lat, double lon);
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class ErrorTileSource : Champlain.TileSource {
+		[CCode (has_construct_function = false)]
+		public ErrorTileSource.full (uint tile_size);
+	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public class Cache : GLib.Object {
-		public static unowned Champlain.Cache dup_default ();
-		public bool fill_tile (Champlain.Tile tile);
+	public class FileCache : Champlain.TileCache {
+		[CCode (has_construct_function = false)]
+		public FileCache ();
+		[CCode (has_construct_function = false)]
+		public FileCache.full (uint size_limit, string cache_dir, bool persistent);
+		public unowned string get_cache_dir ();
 		public uint get_size_limit ();
 		public void purge ();
 		public void purge_on_idle ();
 		public void set_size_limit (uint size_limit);
-		public bool tile_is_expired (Champlain.Tile tile);
-		public void update_tile (Champlain.Tile tile, uint filesize);
-		public uint size_limit { get; set; }
+		public string cache_dir { get; construct; }
+		public uint size_limit { get; set construct; }
 	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public class Layer : Clutter.Group, Clutter.Scriptable, Clutter.Container {
@@ -45,39 +66,49 @@ namespace Champlain {
 		public void show_all_markers ();
 	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public class MapSource : GLib.Object {
-		public virtual void fill_tile (Champlain.Tile tile);
-		public uint get_column_count (int zoom_level);
-		public unowned string get_id ();
-		public double get_latitude (int zoom_level, uint y);
-		public unowned string get_license ();
-		public unowned string get_license_uri ();
-		public double get_longitude (int zoom_level, uint x);
-		public int get_max_zoom_level ();
-		public float get_meters_per_pixel (int zoom_level, double latitude, double longitude);
-		public int get_min_zoom_level ();
-		public unowned string get_name ();
-		public Champlain.MapProjection get_projection ();
-		public uint get_row_count (int zoom_level);
-		public uint get_tile_size ();
-		public uint get_x (int zoom_level, double longitude);
-		public uint get_y (int zoom_level, double latitude);
-		public void set_id (string id);
-		public void set_license (string license);
-		public void set_license_uri (string license_uri);
-		public void set_name (string name);
-		public void set_projection (Champlain.MapProjection projection);
-		public string id { get; set construct; }
-		public string license { get; set construct; }
-		public string license_uri { get; set construct; }
+	public class LocalMapDataSource : Champlain.MapDataSource {
+		[CCode (has_construct_function = false)]
+		public LocalMapDataSource ();
+		public void load_map_data (string map_path);
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class MapDataSource : GLib.InitiallyUnowned {
 		[NoAccessorMethod]
-		public uint max_zoom_level { get; set construct; }
+		public Champlain.BoundingBox bounding_box { owned get; set; }
 		[NoAccessorMethod]
-		public uint min_zoom_level { get; set construct; }
-		public string name { get; set construct; }
-		public Champlain.MapProjection projection { get; set construct; }
-		[NoAccessorMethod]
-		public uint tile_size { get; set construct; }
+		public Champlain.State state { get; set; }
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class MapSource : GLib.InitiallyUnowned {
+		public virtual void fill_tile (Champlain.Tile tile);
+		public uint get_column_count (uint zoom_level);
+		public virtual unowned string get_id ();
+		public double get_latitude (uint zoom_level, uint y);
+		public virtual unowned string get_license ();
+		public virtual unowned string get_license_uri ();
+		public double get_longitude (uint zoom_level, uint x);
+		public virtual uint get_max_zoom_level ();
+		public double get_meters_per_pixel (uint zoom_level, double latitude, double longitude);
+		public virtual uint get_min_zoom_level ();
+		public virtual unowned string get_name ();
+		public unowned Champlain.MapSource get_next_source ();
+		public virtual Champlain.MapProjection get_projection ();
+		public uint get_row_count (uint zoom_level);
+		public virtual uint get_tile_size ();
+		public uint get_x (uint zoom_level, double longitude);
+		public uint get_y (uint zoom_level, double latitude);
+		[NoWrapper]
+		public virtual void on_set_next_source (Champlain.MapSource next_source, Champlain.MapSource new_next_source);
+		public void set_next_source (Champlain.MapSource next_source);
+		public Champlain.MapSource next_source { get; set; }
+		public virtual signal void reload_tiles ();
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class MapSourceChain : Champlain.MapSource {
+		[CCode (has_construct_function = false)]
+		public MapSourceChain ();
+		public void pop ();
+		public void push (Champlain.MapSource map_source);
 	}
 	[Compact]
 	[CCode (copy_function = "champlain_map_source_desc_copy", type_id = "CHAMPLAIN_TYPE_MAP_SOURCE_DESC", cheader_filename = "champlain/champlain.h")]
@@ -99,6 +130,7 @@ namespace Champlain {
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public class MapSourceFactory : GLib.Object {
 		public unowned Champlain.MapSource create (string id);
+		public unowned Champlain.MapSource create_cached_source (string id);
 		public static unowned Champlain.MapSourceFactory dup_default ();
 		public unowned GLib.SList dup_list ();
 		public bool register (Champlain.MapSourceDesc desc, Champlain.MapSourceConstructor constructor, void* data);
@@ -161,17 +193,42 @@ namespace Champlain {
 		public Pango.WrapMode wrap_mode { get; set; }
 	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public class NetworkMapSource : Champlain.MapSource {
+	public class MemphisTileSource : Champlain.TileSource {
 		[CCode (has_construct_function = false)]
-		public NetworkMapSource.full (string id, string name, string license, string license_uri, uint min_zoom, uint max_zoom, uint tile_size, Champlain.MapProjection projection, string uri_format);
-		public unowned string get_tile_uri (int x, int y, int z);
-		public void set_uri_format (string uri_format);
-		[NoAccessorMethod]
-		public bool offline { get; set; }
+		public MemphisTileSource.full (string id, string name, string license, string license_uri, uint min_zoom, uint max_zoom, uint tile_size, Champlain.MapProjection projection, Champlain.MapDataSource map_data_source);
+		public Clutter.Color get_background_color ();
+		public unowned Champlain.MapDataSource get_map_data_source ();
+		public unowned GLib.List get_rule_ids ();
+		public void load_rules (string rules_path);
+		public void remove_rule (string id);
+		public void set_background_color (Clutter.Color color);
+		public void set_map_data_source (Champlain.MapDataSource map_data_source);
+		public Champlain.MapDataSource map_data_source { get; set construct; }
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class NetworkMapDataSource : Champlain.MapDataSource {
+		[CCode (has_construct_function = false)]
+		public NetworkMapDataSource ();
+		public unowned string get_api_uri ();
+		public void load_map_data (double bound_left, double bound_bottom, double bound_right, double bound_top);
+		public void set_api_uri (string api_uri);
+		public string api_uri { get; set; }
 		[NoAccessorMethod]
 		public string proxy_uri { owned get; set; }
-		[NoAccessorMethod]
-		public string uri_format { owned get; set construct; }
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class NetworkTileSource : Champlain.TileSource {
+		[CCode (has_construct_function = false)]
+		public NetworkTileSource.full (string id, string name, string license, string license_uri, uint min_zoom, uint max_zoom, uint tile_size, Champlain.MapProjection projection, string uri_format);
+		public bool get_offline ();
+		public unowned string get_proxy_uri ();
+		public unowned string get_uri_format ();
+		public void set_offline (bool offline);
+		public void set_proxy_uri (string proxy_uri);
+		public void set_uri_format (string uri_format);
+		public bool offline { get; set; }
+		public string proxy_uri { get; set; }
+		public string uri_format { get; set construct; }
 	}
 	[Compact]
 	[CCode (copy_function = "champlain_point_copy", type_id = "CHAMPLAIN_TYPE_POINT", cheader_filename = "champlain/champlain.h")]
@@ -183,11 +240,12 @@ namespace Champlain {
 		public unowned Champlain.Point copy ();
 	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public class Polygon : GLib.Object {
+	public class Polygon : Clutter.Group, Clutter.Scriptable, Clutter.Container {
 		[CCode (has_construct_function = false)]
 		public Polygon ();
 		public unowned Champlain.Point append_point (double lat, double lon);
 		public void clear_points ();
+		public void draw_polygon (Champlain.MapSource map_source, uint zoom_level, float width, float height, float shift_x, float shift_y);
 		public bool get_fill ();
 		public Clutter.Color get_fill_color ();
 		public bool get_mark_points ();
@@ -234,45 +292,79 @@ namespace Champlain {
 		public virtual signal void changed ();
 	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public class Tile : GLib.Object {
+	public class Tile : Clutter.Group, Clutter.Scriptable, Clutter.Container {
 		[CCode (has_construct_function = false)]
 		public Tile ();
 		[CCode (has_construct_function = false)]
 		public Tile.full (int x, int y, uint size, int zoom_level);
-		public unowned Clutter.Actor get_actor ();
 		public unowned Clutter.Actor get_content ();
 		public unowned string get_etag ();
-		public unowned string get_filename ();
+		public bool get_fade_in ();
 		public GLib.TimeVal get_modified_time ();
-		public unowned string get_modified_time_string ();
 		public uint get_size ();
 		public Champlain.State get_state ();
-		public unowned string get_uri ();
 		public int get_x ();
 		public int get_y ();
 		public int get_zoom_level ();
-		public void set_content (Clutter.Actor actor, bool fade_in);
+		public void set_content (Clutter.Actor actor);
 		public void set_etag (string etag);
-		public void set_filename (string filename);
+		public void set_fade_in (bool fade_in);
 		public void set_modified_time (GLib.TimeVal time);
 		public void set_size (uint size);
 		public void set_state (Champlain.State state);
-		public void set_uri (string uri);
 		public void set_x (int x);
 		public void set_y (int y);
 		public void set_zoom_level (int zoom_level);
-		public Clutter.Actor actor { get; }
 		public Clutter.Actor content { get; set; }
 		public string etag { get; set; }
-		public string filename { get; set; }
+		public bool fade_in { get; set; }
 		public uint size { get; set; }
 		public Champlain.State state { get; set; }
-		public string uri { get; set; }
 		public int x { get; set; }
 		public int y { get; set; }
 		public int zoom_level { get; set; }
 	}
 	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class TileCache : Champlain.MapSource {
+		public virtual void clean ();
+		public bool get_persistent ();
+		public virtual void on_tile_filled (Champlain.Tile tile);
+		public virtual void refresh_tile_time (Champlain.Tile tile);
+		public virtual void store_tile (Champlain.Tile tile, string contents, size_t size);
+		[NoAccessorMethod]
+		public bool persistent_cache { get; construct; }
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public class TileSource : Champlain.MapSource {
+		public unowned Champlain.TileCache get_cache ();
+		public void set_cache (Champlain.TileCache cache);
+		public void set_id (string id);
+		public void set_license (string license);
+		public void set_license_uri (string license_uri);
+		public void set_max_zoom_level (uint zoom_level);
+		public void set_min_zoom_level (uint zoom_level);
+		public void set_name (string name);
+		public void set_projection (Champlain.MapProjection projection);
+		public void set_tile_size (uint tile_size);
+		public Champlain.TileCache cache { get; set; }
+		[NoAccessorMethod]
+		public string id { owned get; set construct; }
+		[NoAccessorMethod]
+		public string license { owned get; set construct; }
+		[NoAccessorMethod]
+		public string license_uri { owned get; set construct; }
+		[NoAccessorMethod]
+		public uint max_zoom_level { get; set construct; }
+		[NoAccessorMethod]
+		public uint min_zoom_level { get; set construct; }
+		[NoAccessorMethod]
+		public string name { owned get; set construct; }
+		[NoAccessorMethod]
+		public Champlain.MapProjection projection { get; set construct; }
+		[NoAccessorMethod]
+		public uint tile_size { get; set construct; }
+	}
+	[CCode (cheader_filename = "champlain/champlain.h")]
 	public class View : Clutter.Group, Clutter.Scriptable, Clutter.Container {
 		[CCode (type = "ClutterActor*", has_construct_function = false)]
 		public View ();
@@ -337,28 +429,6 @@ namespace Champlain {
 		public bool zoom_on_double_click { get; set; }
 		public virtual signal void animation_completed ();
 	}
-	[CCode (cheader_filename = "champlain/champlain.h")]
-	public class ZoomLevel : GLib.Object {
-		[CCode (has_construct_function = false)]
-		public ZoomLevel ();
-		public void add_tile (Champlain.Tile tile);
-		public unowned Clutter.Actor get_actor ();
-		public uint get_height ();
-		public unowned Champlain.Tile get_nth_tile (uint index);
-		public uint get_width ();
-		public int get_zoom_level ();
-		public void remove_tile (Champlain.Tile tile);
-		public void set_height (uint height);
-		public void set_width (uint width);
-		public void set_zoom_level (int zoom_level);
-		public uint tile_count ();
-		public Clutter.Actor actor { get; }
-		public uint height { get; set; }
-		public uint width { get; set; }
-		public int zoom_level { get; set; }
-		public virtual signal void tile_added (Champlain.Tile p0);
-		public virtual signal void tile_removed (Champlain.Tile p0);
-	}
 	[CCode (cprefix = "CHAMPLAIN_MAP_PROJECTION_", cheader_filename = "champlain/champlain.h")]
 	public enum MapProjection {
 		MERCATOR
@@ -377,9 +447,7 @@ namespace Champlain {
 	[CCode (cprefix = "CHAMPLAIN_STATE_", cheader_filename = "champlain/champlain.h")]
 	public enum State {
 		NONE,
-		INIT,
 		LOADING,
-		VALIDATING_CACHE,
 		DONE
 	}
 	[CCode (cprefix = "CHAMPLAIN_UNIT_", cheader_filename = "champlain/champlain.h")]
@@ -390,8 +458,14 @@ namespace Champlain {
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public delegate unowned Champlain.MapSource MapSourceConstructor (Champlain.MapSourceDesc desc);
 	[CCode (cheader_filename = "champlain/champlain.h")]
+	public const int HAS_MEMPHIS;
+	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const int MAJOR_VERSION;
 	[CCode (cheader_filename = "champlain/champlain.h")]
+	public const string MAP_SOURCE_MEMPHIS_LOCAL;
+	[CCode (cheader_filename = "champlain/champlain.h")]
+	public const string MAP_SOURCE_MEMPHIS_NETWORK;
+	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const string MAP_SOURCE_MFF_RELIEF;
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const string MAP_SOURCE_OAM;
@@ -404,22 +478,10 @@ namespace Champlain {
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const string MAP_SOURCE_OSM_TRANSPORT_MAP;
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public const int MAX_LAT;
-	[CCode (cheader_filename = "champlain/champlain.h")]
-	public const int MAX_LONG;
-	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const int MICRO_VERSION;
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const int MINOR_VERSION;
 	[CCode (cheader_filename = "champlain/champlain.h")]
-	public const int MIN_LAT;
-	[CCode (cheader_filename = "champlain/champlain.h")]
-	public const int MIN_LONG;
-	[CCode (cheader_filename = "champlain/champlain.h")]
-	public const int PARAM_READABLE;
-	[CCode (cheader_filename = "champlain/champlain.h")]
-	public const int PARAM_READWRITE;
-	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const int VERSION_HEX;
 	[CCode (cheader_filename = "champlain/champlain.h")]
 	public const string VERSION_S;
diff --git a/bindings/vala/champlain/champlain-0.6/champlain-0.6.files b/bindings/vala/champlain/champlain-0.6/champlain-0.6.files
index e07199d..e1934fc 100644
--- a/bindings/vala/champlain/champlain-0.6/champlain-0.6.files
+++ b/bindings/vala/champlain/champlain-0.6/champlain-0.6.files
@@ -1,2 +1,2 @@
-lib/libchamplain-0.4.so
-include/libchamplain-0.4/
+lib/libchamplain-0.6.so
+include/libchamplain-0.6/
diff --git a/bindings/vala/champlain/champlain-0.6/champlain-0.6.gi b/bindings/vala/champlain/champlain-0.6/champlain-0.6.gi
index b1e4ca6..7e0b58a 100644
--- a/bindings/vala/champlain/champlain-0.6/champlain-0.6.gi
+++ b/bindings/vala/champlain/champlain-0.6/champlain-0.6.gi
@@ -8,6 +8,35 @@
 				<parameter name="data" type="gpointer"/>
 			</parameters>
 		</callback>
+		<boxed name="ChamplainBoundingBox" type-name="ChamplainBoundingBox" get-type="champlain_bounding_box_get_type">
+			<method name="copy" symbol="champlain_bounding_box_copy">
+				<return-type type="ChamplainBoundingBox*"/>
+				<parameters>
+					<parameter name="bbox" type="ChamplainBoundingBox*"/>
+				</parameters>
+			</method>
+			<method name="free" symbol="champlain_bounding_box_free">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="bbox" type="ChamplainBoundingBox*"/>
+				</parameters>
+			</method>
+			<method name="get_center" symbol="champlain_bounding_box_get_center">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="bbox" type="ChamplainBoundingBox*"/>
+					<parameter name="lat" type="gdouble*"/>
+					<parameter name="lon" type="gdouble*"/>
+				</parameters>
+			</method>
+			<constructor name="new" symbol="champlain_bounding_box_new">
+				<return-type type="ChamplainBoundingBox*"/>
+			</constructor>
+			<field name="left" type="gdouble"/>
+			<field name="bottom" type="gdouble"/>
+			<field name="right" type="gdouble"/>
+			<field name="top" type="gdouble"/>
+		</boxed>
 		<boxed name="ChamplainMapSourceDesc" type-name="ChamplainMapSourceDesc" get-type="champlain_map_source_desc_get_type">
 			<method name="copy" symbol="champlain_map_source_desc_copy">
 				<return-type type="ChamplainMapSourceDesc*"/>
@@ -72,10 +101,8 @@
 		</enum>
 		<enum name="ChamplainState" type-name="ChamplainState" get-type="champlain_state_get_type">
 			<member name="CHAMPLAIN_STATE_NONE" value="0"/>
-			<member name="CHAMPLAIN_STATE_INIT" value="1"/>
-			<member name="CHAMPLAIN_STATE_LOADING" value="2"/>
-			<member name="CHAMPLAIN_STATE_VALIDATING_CACHE" value="3"/>
-			<member name="CHAMPLAIN_STATE_DONE" value="4"/>
+			<member name="CHAMPLAIN_STATE_LOADING" value="1"/>
+			<member name="CHAMPLAIN_STATE_DONE" value="2"/>
 		</enum>
 		<enum name="ChamplainUnit" type-name="ChamplainUnit" get-type="champlain_unit_get_type">
 			<member name="CHAMPLAIN_UNIT_KM" value="0"/>
@@ -118,6 +145,18 @@
 					<parameter name="marker" type="ChamplainBaseMarker*"/>
 				</parameters>
 			</method>
+			<method name="get_latitude" symbol="champlain_base_marker_get_latitude">
+				<return-type type="gdouble"/>
+				<parameters>
+					<parameter name="marker" type="ChamplainBaseMarker*"/>
+				</parameters>
+			</method>
+			<method name="get_longitude" symbol="champlain_base_marker_get_longitude">
+				<return-type type="gdouble"/>
+				<parameters>
+					<parameter name="marker" type="ChamplainBaseMarker*"/>
+				</parameters>
+			</method>
 			<constructor name="new" symbol="champlain_base_marker_new">
 				<return-type type="ClutterActor*"/>
 			</constructor>
@@ -132,66 +171,67 @@
 				<return-type type="void"/>
 				<parameters>
 					<parameter name="marker" type="ChamplainBaseMarker*"/>
-					<parameter name="longitude" type="gdouble"/>
 					<parameter name="latitude" type="gdouble"/>
+					<parameter name="longitude" type="gdouble"/>
 				</parameters>
 			</method>
 			<property name="highlighted" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="latitude" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="longitude" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
 		</object>
-		<object name="ChamplainCache" parent="GObject" type-name="ChamplainCache" get-type="champlain_cache_get_type">
-			<method name="dup_default" symbol="champlain_cache_dup_default">
-				<return-type type="ChamplainCache*"/>
-			</method>
-			<method name="fill_tile" symbol="champlain_cache_fill_tile">
-				<return-type type="gboolean"/>
+		<object name="ChamplainErrorTileSource" parent="ChamplainTileSource" type-name="ChamplainErrorTileSource" get-type="champlain_error_tile_source_get_type">
+			<constructor name="new_full" symbol="champlain_error_tile_source_new_full">
+				<return-type type="ChamplainErrorTileSource*"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
-					<parameter name="tile" type="ChamplainTile*"/>
+					<parameter name="tile_size" type="guint"/>
 				</parameters>
-			</method>
-			<method name="get_size_limit" symbol="champlain_cache_get_size_limit">
-				<return-type type="guint"/>
+			</constructor>
+		</object>
+		<object name="ChamplainFileCache" parent="ChamplainTileCache" type-name="ChamplainFileCache" get-type="champlain_file_cache_get_type">
+			<method name="get_cache_dir" symbol="champlain_file_cache_get_cache_dir">
+				<return-type type="gchar*"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
+					<parameter name="file_cache" type="ChamplainFileCache*"/>
 				</parameters>
 			</method>
-			<method name="purge" symbol="champlain_cache_purge">
-				<return-type type="void"/>
+			<method name="get_size_limit" symbol="champlain_file_cache_get_size_limit">
+				<return-type type="guint"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
+					<parameter name="file_cache" type="ChamplainFileCache*"/>
 				</parameters>
 			</method>
-			<method name="purge_on_idle" symbol="champlain_cache_purge_on_idle">
-				<return-type type="void"/>
+			<constructor name="new" symbol="champlain_file_cache_new">
+				<return-type type="ChamplainFileCache*"/>
+			</constructor>
+			<constructor name="new_full" symbol="champlain_file_cache_new_full">
+				<return-type type="ChamplainFileCache*"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
+					<parameter name="size_limit" type="guint"/>
+					<parameter name="cache_dir" type="gchar*"/>
+					<parameter name="persistent" type="gboolean"/>
 				</parameters>
-			</method>
-			<method name="set_size_limit" symbol="champlain_cache_set_size_limit">
+			</constructor>
+			<method name="purge" symbol="champlain_file_cache_purge">
 				<return-type type="void"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
-					<parameter name="size_limit" type="guint"/>
+					<parameter name="file_cache" type="ChamplainFileCache*"/>
 				</parameters>
 			</method>
-			<method name="tile_is_expired" symbol="champlain_cache_tile_is_expired">
-				<return-type type="gboolean"/>
+			<method name="purge_on_idle" symbol="champlain_file_cache_purge_on_idle">
+				<return-type type="void"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
-					<parameter name="tile" type="ChamplainTile*"/>
+					<parameter name="file_cache" type="ChamplainFileCache*"/>
 				</parameters>
 			</method>
-			<method name="update_tile" symbol="champlain_cache_update_tile">
+			<method name="set_size_limit" symbol="champlain_file_cache_set_size_limit">
 				<return-type type="void"/>
 				<parameters>
-					<parameter name="self" type="ChamplainCache*"/>
-					<parameter name="tile" type="ChamplainTile*"/>
-					<parameter name="filesize" type="guint"/>
+					<parameter name="file_cache" type="ChamplainFileCache*"/>
+					<parameter name="size_limit" type="guint"/>
 				</parameters>
 			</method>
-			<property name="size-limit" type="guint" readable="1" writable="1" construct="0" construct-only="0"/>
+			<property name="cache-dir" type="char*" readable="1" writable="1" construct="0" construct-only="1"/>
+			<property name="size-limit" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
 		</object>
 		<object name="ChamplainLayer" parent="ClutterGroup" type-name="ChamplainLayer" get-type="champlain_layer_get_type">
 			<implements>
@@ -252,7 +292,23 @@
 				</parameters>
 			</method>
 		</object>
-		<object name="ChamplainMapSource" parent="GObject" type-name="ChamplainMapSource" get-type="champlain_map_source_get_type">
+		<object name="ChamplainLocalMapDataSource" parent="ChamplainMapDataSource" type-name="ChamplainLocalMapDataSource" get-type="champlain_local_map_data_source_get_type">
+			<method name="load_map_data" symbol="champlain_local_map_data_source_load_map_data">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="map_data_source" type="ChamplainLocalMapDataSource*"/>
+					<parameter name="map_path" type="gchar*"/>
+				</parameters>
+			</method>
+			<constructor name="new" symbol="champlain_local_map_data_source_new">
+				<return-type type="ChamplainLocalMapDataSource*"/>
+			</constructor>
+		</object>
+		<object name="ChamplainMapDataSource" parent="GInitiallyUnowned" type-name="ChamplainMapDataSource" get-type="champlain_map_data_source_get_type">
+			<property name="bounding-box" type="ChamplainBoundingBox*" readable="1" writable="1" construct="0" construct-only="0"/>
+			<property name="state" type="ChamplainState" readable="1" writable="1" construct="0" construct-only="0"/>
+		</object>
+		<object name="ChamplainMapSource" parent="GInitiallyUnowned" type-name="ChamplainMapSource" get-type="champlain_map_source_get_type">
 			<method name="fill_tile" symbol="champlain_map_source_fill_tile">
 				<return-type type="void"/>
 				<parameters>
@@ -264,7 +320,7 @@
 				<return-type type="guint"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 				</parameters>
 			</method>
 			<method name="get_id" symbol="champlain_map_source_get_id">
@@ -277,7 +333,7 @@
 				<return-type type="gdouble"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 					<parameter name="y" type="guint"/>
 				</parameters>
 			</method>
@@ -297,27 +353,27 @@
 				<return-type type="gdouble"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 					<parameter name="x" type="guint"/>
 				</parameters>
 			</method>
 			<method name="get_max_zoom_level" symbol="champlain_map_source_get_max_zoom_level">
-				<return-type type="gint"/>
+				<return-type type="guint"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
 				</parameters>
 			</method>
 			<method name="get_meters_per_pixel" symbol="champlain_map_source_get_meters_per_pixel">
-				<return-type type="gfloat"/>
+				<return-type type="gdouble"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 					<parameter name="latitude" type="gdouble"/>
 					<parameter name="longitude" type="gdouble"/>
 				</parameters>
 			</method>
 			<method name="get_min_zoom_level" symbol="champlain_map_source_get_min_zoom_level">
-				<return-type type="gint"/>
+				<return-type type="guint"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
 				</parameters>
@@ -328,6 +384,12 @@
 					<parameter name="map_source" type="ChamplainMapSource*"/>
 				</parameters>
 			</method>
+			<method name="get_next_source" symbol="champlain_map_source_get_next_source">
+				<return-type type="ChamplainMapSource*"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</method>
 			<method name="get_projection" symbol="champlain_map_source_get_projection">
 				<return-type type="ChamplainMapProjection"/>
 				<parameters>
@@ -338,7 +400,7 @@
 				<return-type type="guint"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 				</parameters>
 			</method>
 			<method name="get_tile_size" symbol="champlain_map_source_get_tile_size">
@@ -351,7 +413,7 @@
 				<return-type type="guint"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 					<parameter name="longitude" type="gdouble"/>
 				</parameters>
 			</method>
@@ -359,60 +421,105 @@
 				<return-type type="guint"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="zoom_level" type="gint"/>
+					<parameter name="zoom_level" type="guint"/>
 					<parameter name="latitude" type="gdouble"/>
 				</parameters>
 			</method>
-			<method name="set_id" symbol="champlain_map_source_set_id">
+			<method name="set_next_source" symbol="champlain_map_source_set_next_source">
 				<return-type type="void"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="id" type="gchar*"/>
+					<parameter name="next_source" type="ChamplainMapSource*"/>
 				</parameters>
 			</method>
-			<method name="set_license" symbol="champlain_map_source_set_license">
+			<property name="next-source" type="ChamplainMapSource*" readable="1" writable="1" construct="0" construct-only="0"/>
+			<signal name="reload-tiles" when="LAST">
 				<return-type type="void"/>
 				<parameters>
-					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="license" type="gchar*"/>
+					<parameter name="object" type="ChamplainMapSource*"/>
 				</parameters>
-			</method>
-			<method name="set_license_uri" symbol="champlain_map_source_set_license_uri">
+			</signal>
+			<vfunc name="fill_tile">
 				<return-type type="void"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="license_uri" type="gchar*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
 				</parameters>
-			</method>
-			<method name="set_name" symbol="champlain_map_source_set_name">
-				<return-type type="void"/>
+			</vfunc>
+			<vfunc name="get_id">
+				<return-type type="gchar*"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="name" type="gchar*"/>
 				</parameters>
-			</method>
-			<method name="set_projection" symbol="champlain_map_source_set_projection">
+			</vfunc>
+			<vfunc name="get_license">
+				<return-type type="gchar*"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="get_license_uri">
+				<return-type type="gchar*"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="get_max_zoom_level">
+				<return-type type="guint"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="get_min_zoom_level">
+				<return-type type="guint"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="get_name">
+				<return-type type="gchar*"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="get_projection">
+				<return-type type="ChamplainMapProjection"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="get_tile_size">
+				<return-type type="guint"/>
+				<parameters>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="on_set_next_source">
 				<return-type type="void"/>
 				<parameters>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="projection" type="ChamplainMapProjection"/>
+					<parameter name="next_source" type="ChamplainMapSource*"/>
+					<parameter name="new_next_source" type="ChamplainMapSource*"/>
+				</parameters>
+			</vfunc>
+		</object>
+		<object name="ChamplainMapSourceChain" parent="ChamplainMapSource" type-name="ChamplainMapSourceChain" get-type="champlain_map_source_chain_get_type">
+			<constructor name="new" symbol="champlain_map_source_chain_new">
+				<return-type type="ChamplainMapSourceChain*"/>
+			</constructor>
+			<method name="pop" symbol="champlain_map_source_chain_pop">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="source_chain" type="ChamplainMapSourceChain*"/>
 				</parameters>
 			</method>
-			<property name="id" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="license" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="license-uri" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="max-zoom-level" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="min-zoom-level" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="name" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="projection" type="ChamplainMapProjection" readable="1" writable="1" construct="1" construct-only="0"/>
-			<property name="tile-size" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
-			<vfunc name="fill_tile">
+			<method name="push" symbol="champlain_map_source_chain_push">
 				<return-type type="void"/>
 				<parameters>
+					<parameter name="source_chain" type="ChamplainMapSourceChain*"/>
 					<parameter name="map_source" type="ChamplainMapSource*"/>
-					<parameter name="tile" type="ChamplainTile*"/>
 				</parameters>
-			</vfunc>
+			</method>
 		</object>
 		<object name="ChamplainMapSourceFactory" parent="GObject" type-name="ChamplainMapSourceFactory" get-type="champlain_map_source_factory_get_type">
 			<method name="create" symbol="champlain_map_source_factory_create">
@@ -422,6 +529,13 @@
 					<parameter name="id" type="gchar*"/>
 				</parameters>
 			</method>
+			<method name="create_cached_source" symbol="champlain_map_source_factory_create_cached_source">
+				<return-type type="ChamplainMapSource*"/>
+				<parameters>
+					<parameter name="factory" type="ChamplainMapSourceFactory*"/>
+					<parameter name="id" type="gchar*"/>
+				</parameters>
+			</method>
 			<method name="dup_default" symbol="champlain_map_source_factory_dup_default">
 				<return-type type="ChamplainMapSourceFactory*"/>
 			</method>
@@ -684,18 +798,120 @@
 				</parameters>
 			</vfunc>
 		</object>
-		<object name="ChamplainNetworkMapSource" parent="ChamplainMapSource" type-name="ChamplainNetworkMapSource" get-type="champlain_network_map_source_get_type">
-			<method name="get_tile_uri" symbol="champlain_network_map_source_get_tile_uri">
+		<object name="ChamplainMemphisTileSource" parent="ChamplainTileSource" type-name="ChamplainMemphisTileSource" get-type="champlain_memphis_tile_source_get_type">
+			<method name="get_background_color" symbol="champlain_memphis_tile_source_get_background_color">
+				<return-type type="ClutterColor*"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+				</parameters>
+			</method>
+			<method name="get_map_data_source" symbol="champlain_memphis_tile_source_get_map_data_source">
+				<return-type type="ChamplainMapDataSource*"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+				</parameters>
+			</method>
+			<method name="get_rule_ids" symbol="champlain_memphis_tile_source_get_rule_ids">
+				<return-type type="GList*"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+				</parameters>
+			</method>
+			<method name="load_rules" symbol="champlain_memphis_tile_source_load_rules">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+					<parameter name="rules_path" type="gchar*"/>
+				</parameters>
+			</method>
+			<constructor name="new_full" symbol="champlain_memphis_tile_source_new_full">
+				<return-type type="ChamplainMemphisTileSource*"/>
+				<parameters>
+					<parameter name="id" type="gchar*"/>
+					<parameter name="name" type="gchar*"/>
+					<parameter name="license" type="gchar*"/>
+					<parameter name="license_uri" type="gchar*"/>
+					<parameter name="min_zoom" type="guint"/>
+					<parameter name="max_zoom" type="guint"/>
+					<parameter name="tile_size" type="guint"/>
+					<parameter name="projection" type="ChamplainMapProjection"/>
+					<parameter name="map_data_source" type="ChamplainMapDataSource*"/>
+				</parameters>
+			</constructor>
+			<method name="remove_rule" symbol="champlain_memphis_tile_source_remove_rule">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+					<parameter name="id" type="gchar*"/>
+				</parameters>
+			</method>
+			<method name="set_background_color" symbol="champlain_memphis_tile_source_set_background_color">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+					<parameter name="color" type="ClutterColor*"/>
+				</parameters>
+			</method>
+			<method name="set_map_data_source" symbol="champlain_memphis_tile_source_set_map_data_source">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainMemphisTileSource*"/>
+					<parameter name="map_data_source" type="ChamplainMapDataSource*"/>
+				</parameters>
+			</method>
+			<property name="map-data-source" type="ChamplainMapDataSource*" readable="1" writable="1" construct="1" construct-only="0"/>
+		</object>
+		<object name="ChamplainNetworkMapDataSource" parent="ChamplainMapDataSource" type-name="ChamplainNetworkMapDataSource" get-type="champlain_network_map_data_source_get_type">
+			<method name="get_api_uri" symbol="champlain_network_map_data_source_get_api_uri">
 				<return-type type="gchar*"/>
 				<parameters>
-					<parameter name="source" type="ChamplainNetworkMapSource*"/>
-					<parameter name="x" type="gint"/>
-					<parameter name="y" type="gint"/>
-					<parameter name="z" type="gint"/>
+					<parameter name="map_data_source" type="ChamplainNetworkMapDataSource*"/>
+				</parameters>
+			</method>
+			<method name="load_map_data" symbol="champlain_network_map_data_source_load_map_data">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="map_data_source" type="ChamplainNetworkMapDataSource*"/>
+					<parameter name="bound_left" type="gdouble"/>
+					<parameter name="bound_bottom" type="gdouble"/>
+					<parameter name="bound_right" type="gdouble"/>
+					<parameter name="bound_top" type="gdouble"/>
+				</parameters>
+			</method>
+			<constructor name="new" symbol="champlain_network_map_data_source_new">
+				<return-type type="ChamplainNetworkMapDataSource*"/>
+			</constructor>
+			<method name="set_api_uri" symbol="champlain_network_map_data_source_set_api_uri">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="map_data_source" type="ChamplainNetworkMapDataSource*"/>
+					<parameter name="api_uri" type="gchar*"/>
 				</parameters>
 			</method>
-			<constructor name="new_full" symbol="champlain_network_map_source_new_full">
-				<return-type type="ChamplainNetworkMapSource*"/>
+			<property name="api-uri" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+			<property name="proxy-uri" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+		</object>
+		<object name="ChamplainNetworkTileSource" parent="ChamplainTileSource" type-name="ChamplainNetworkTileSource" get-type="champlain_network_tile_source_get_type">
+			<method name="get_offline" symbol="champlain_network_tile_source_get_offline">
+				<return-type type="gboolean"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainNetworkTileSource*"/>
+				</parameters>
+			</method>
+			<method name="get_proxy_uri" symbol="champlain_network_tile_source_get_proxy_uri">
+				<return-type type="gchar*"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainNetworkTileSource*"/>
+				</parameters>
+			</method>
+			<method name="get_uri_format" symbol="champlain_network_tile_source_get_uri_format">
+				<return-type type="gchar*"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainNetworkTileSource*"/>
+				</parameters>
+			</method>
+			<constructor name="new_full" symbol="champlain_network_tile_source_new_full">
+				<return-type type="ChamplainNetworkTileSource*"/>
 				<parameters>
 					<parameter name="id" type="gchar*"/>
 					<parameter name="name" type="gchar*"/>
@@ -708,10 +924,24 @@
 					<parameter name="uri_format" type="gchar*"/>
 				</parameters>
 			</constructor>
-			<method name="set_uri_format" symbol="champlain_network_map_source_set_uri_format">
+			<method name="set_offline" symbol="champlain_network_tile_source_set_offline">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainNetworkTileSource*"/>
+					<parameter name="offline" type="gboolean"/>
+				</parameters>
+			</method>
+			<method name="set_proxy_uri" symbol="champlain_network_tile_source_set_proxy_uri">
 				<return-type type="void"/>
 				<parameters>
-					<parameter name="source" type="ChamplainNetworkMapSource*"/>
+					<parameter name="tile_source" type="ChamplainNetworkTileSource*"/>
+					<parameter name="proxy_uri" type="gchar*"/>
+				</parameters>
+			</method>
+			<method name="set_uri_format" symbol="champlain_network_tile_source_set_uri_format">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainNetworkTileSource*"/>
 					<parameter name="uri_format" type="gchar*"/>
 				</parameters>
 			</method>
@@ -719,7 +949,11 @@
 			<property name="proxy-uri" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="uri-format" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
 		</object>
-		<object name="ChamplainPolygon" parent="GObject" type-name="ChamplainPolygon" get-type="champlain_polygon_get_type">
+		<object name="ChamplainPolygon" parent="ClutterGroup" type-name="ChamplainPolygon" get-type="champlain_polygon_get_type">
+			<implements>
+				<interface name="ClutterScriptable"/>
+				<interface name="ClutterContainer"/>
+			</implements>
 			<method name="append_point" symbol="champlain_polygon_append_point">
 				<return-type type="ChamplainPoint*"/>
 				<parameters>
@@ -734,6 +968,18 @@
 					<parameter name="polygon" type="ChamplainPolygon*"/>
 				</parameters>
 			</method>
+			<method name="draw_polygon" symbol="champlain_polygon_draw_polygon">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="polygon" type="ChamplainPolygon*"/>
+					<parameter name="map_source" type="ChamplainMapSource*"/>
+					<parameter name="zoom_level" type="guint"/>
+					<parameter name="width" type="gfloat"/>
+					<parameter name="height" type="gfloat"/>
+					<parameter name="shift_x" type="gfloat"/>
+					<parameter name="shift_y" type="gfloat"/>
+				</parameters>
+			</method>
 			<method name="get_fill" symbol="champlain_polygon_get_fill">
 				<return-type type="gboolean"/>
 				<parameters>
@@ -938,13 +1184,11 @@
 				</parameters>
 			</signal>
 		</object>
-		<object name="ChamplainTile" parent="GObject" type-name="ChamplainTile" get-type="champlain_tile_get_type">
-			<method name="get_actor" symbol="champlain_tile_get_actor">
-				<return-type type="ClutterActor*"/>
-				<parameters>
-					<parameter name="self" type="ChamplainTile*"/>
-				</parameters>
-			</method>
+		<object name="ChamplainTile" parent="ClutterGroup" type-name="ChamplainTile" get-type="champlain_tile_get_type">
+			<implements>
+				<interface name="ClutterScriptable"/>
+				<interface name="ClutterContainer"/>
+			</implements>
 			<method name="get_content" symbol="champlain_tile_get_content">
 				<return-type type="ClutterActor*"/>
 				<parameters>
@@ -957,8 +1201,8 @@
 					<parameter name="self" type="ChamplainTile*"/>
 				</parameters>
 			</method>
-			<method name="get_filename" symbol="champlain_tile_get_filename">
-				<return-type type="gchar*"/>
+			<method name="get_fade_in" symbol="champlain_tile_get_fade_in">
+				<return-type type="gboolean"/>
 				<parameters>
 					<parameter name="self" type="ChamplainTile*"/>
 				</parameters>
@@ -969,12 +1213,6 @@
 					<parameter name="self" type="ChamplainTile*"/>
 				</parameters>
 			</method>
-			<method name="get_modified_time_string" symbol="champlain_tile_get_modified_time_string">
-				<return-type type="gchar*"/>
-				<parameters>
-					<parameter name="self" type="ChamplainTile*"/>
-				</parameters>
-			</method>
 			<method name="get_size" symbol="champlain_tile_get_size">
 				<return-type type="guint"/>
 				<parameters>
@@ -987,12 +1225,6 @@
 					<parameter name="self" type="ChamplainTile*"/>
 				</parameters>
 			</method>
-			<method name="get_uri" symbol="champlain_tile_get_uri">
-				<return-type type="gchar*"/>
-				<parameters>
-					<parameter name="self" type="ChamplainTile*"/>
-				</parameters>
-			</method>
 			<method name="get_x" symbol="champlain_tile_get_x">
 				<return-type type="gint"/>
 				<parameters>
@@ -1028,7 +1260,6 @@
 				<parameters>
 					<parameter name="self" type="ChamplainTile*"/>
 					<parameter name="actor" type="ClutterActor*"/>
-					<parameter name="fade_in" type="gboolean"/>
 				</parameters>
 			</method>
 			<method name="set_etag" symbol="champlain_tile_set_etag">
@@ -1038,11 +1269,11 @@
 					<parameter name="etag" type="gchar*"/>
 				</parameters>
 			</method>
-			<method name="set_filename" symbol="champlain_tile_set_filename">
+			<method name="set_fade_in" symbol="champlain_tile_set_fade_in">
 				<return-type type="void"/>
 				<parameters>
 					<parameter name="self" type="ChamplainTile*"/>
-					<parameter name="filename" type="gchar*"/>
+					<parameter name="fade_in" type="gboolean"/>
 				</parameters>
 			</method>
 			<method name="set_modified_time" symbol="champlain_tile_set_modified_time">
@@ -1066,13 +1297,6 @@
 					<parameter name="state" type="ChamplainState"/>
 				</parameters>
 			</method>
-			<method name="set_uri" symbol="champlain_tile_set_uri">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="self" type="ChamplainTile*"/>
-					<parameter name="uri" type="gchar*"/>
-				</parameters>
-			</method>
 			<method name="set_x" symbol="champlain_tile_set_x">
 				<return-type type="void"/>
 				<parameters>
@@ -1094,17 +1318,162 @@
 					<parameter name="zoom_level" type="gint"/>
 				</parameters>
 			</method>
-			<property name="actor" type="ClutterActor*" readable="1" writable="0" construct="0" construct-only="0"/>
 			<property name="content" type="ClutterActor*" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="etag" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
-			<property name="filename" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+			<property name="fade-in" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="size" type="guint" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="state" type="ChamplainState" readable="1" writable="1" construct="0" construct-only="0"/>
-			<property name="uri" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="x" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="y" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 			<property name="zoom-level" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 		</object>
+		<object name="ChamplainTileCache" parent="ChamplainMapSource" type-name="ChamplainTileCache" get-type="champlain_tile_cache_get_type">
+			<method name="clean" symbol="champlain_tile_cache_clean">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+				</parameters>
+			</method>
+			<method name="get_persistent" symbol="champlain_tile_cache_get_persistent">
+				<return-type type="gboolean"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+				</parameters>
+			</method>
+			<method name="on_tile_filled" symbol="champlain_tile_cache_on_tile_filled">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
+				</parameters>
+			</method>
+			<method name="refresh_tile_time" symbol="champlain_tile_cache_refresh_tile_time">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
+				</parameters>
+			</method>
+			<method name="store_tile" symbol="champlain_tile_cache_store_tile">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
+					<parameter name="contents" type="gchar*"/>
+					<parameter name="size" type="gsize"/>
+				</parameters>
+			</method>
+			<property name="persistent-cache" type="gboolean" readable="1" writable="1" construct="0" construct-only="1"/>
+			<vfunc name="clean">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="on_tile_filled">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="refresh_tile_time">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
+				</parameters>
+			</vfunc>
+			<vfunc name="store_tile">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_cache" type="ChamplainTileCache*"/>
+					<parameter name="tile" type="ChamplainTile*"/>
+					<parameter name="contents" type="gchar*"/>
+					<parameter name="size" type="gsize"/>
+				</parameters>
+			</vfunc>
+		</object>
+		<object name="ChamplainTileSource" parent="ChamplainMapSource" type-name="ChamplainTileSource" get-type="champlain_tile_source_get_type">
+			<method name="get_cache" symbol="champlain_tile_source_get_cache">
+				<return-type type="ChamplainTileCache*"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+				</parameters>
+			</method>
+			<method name="set_cache" symbol="champlain_tile_source_set_cache">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="cache" type="ChamplainTileCache*"/>
+				</parameters>
+			</method>
+			<method name="set_id" symbol="champlain_tile_source_set_id">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="id" type="gchar*"/>
+				</parameters>
+			</method>
+			<method name="set_license" symbol="champlain_tile_source_set_license">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="license" type="gchar*"/>
+				</parameters>
+			</method>
+			<method name="set_license_uri" symbol="champlain_tile_source_set_license_uri">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="license_uri" type="gchar*"/>
+				</parameters>
+			</method>
+			<method name="set_max_zoom_level" symbol="champlain_tile_source_set_max_zoom_level">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="zoom_level" type="guint"/>
+				</parameters>
+			</method>
+			<method name="set_min_zoom_level" symbol="champlain_tile_source_set_min_zoom_level">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="zoom_level" type="guint"/>
+				</parameters>
+			</method>
+			<method name="set_name" symbol="champlain_tile_source_set_name">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="name" type="gchar*"/>
+				</parameters>
+			</method>
+			<method name="set_projection" symbol="champlain_tile_source_set_projection">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="projection" type="ChamplainMapProjection"/>
+				</parameters>
+			</method>
+			<method name="set_tile_size" symbol="champlain_tile_source_set_tile_size">
+				<return-type type="void"/>
+				<parameters>
+					<parameter name="tile_source" type="ChamplainTileSource*"/>
+					<parameter name="tile_size" type="guint"/>
+				</parameters>
+			</method>
+			<property name="cache" type="ChamplainTileCache*" readable="1" writable="1" construct="0" construct-only="0"/>
+			<property name="id" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="license" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="license-uri" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="max-zoom-level" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="min-zoom-level" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="name" type="char*" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="projection" type="ChamplainMapProjection" readable="1" writable="1" construct="1" construct-only="0"/>
+			<property name="tile-size" type="guint" readable="1" writable="1" construct="1" construct-only="0"/>
+		</object>
 		<object name="ChamplainView" parent="ClutterGroup" type-name="ChamplainView" get-type="champlain_view_get_type">
 			<implements>
 				<interface name="ClutterScriptable"/>
@@ -1413,117 +1782,19 @@
 				</parameters>
 			</signal>
 		</object>
-		<object name="ChamplainZoomLevel" parent="GObject" type-name="ChamplainZoomLevel" get-type="champlain_zoom_level_get_type">
-			<method name="add_tile" symbol="champlain_zoom_level_add_tile">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-					<parameter name="tile" type="ChamplainTile*"/>
-				</parameters>
-			</method>
-			<method name="get_actor" symbol="champlain_zoom_level_get_actor">
-				<return-type type="ClutterActor*"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-				</parameters>
-			</method>
-			<method name="get_height" symbol="champlain_zoom_level_get_height">
-				<return-type type="guint"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-				</parameters>
-			</method>
-			<method name="get_nth_tile" symbol="champlain_zoom_level_get_nth_tile">
-				<return-type type="ChamplainTile*"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-					<parameter name="index" type="guint"/>
-				</parameters>
-			</method>
-			<method name="get_width" symbol="champlain_zoom_level_get_width">
-				<return-type type="guint"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-				</parameters>
-			</method>
-			<method name="get_zoom_level" symbol="champlain_zoom_level_get_zoom_level">
-				<return-type type="gint"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-				</parameters>
-			</method>
-			<constructor name="new" symbol="champlain_zoom_level_new">
-				<return-type type="ChamplainZoomLevel*"/>
-			</constructor>
-			<method name="remove_tile" symbol="champlain_zoom_level_remove_tile">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-					<parameter name="tile" type="ChamplainTile*"/>
-				</parameters>
-			</method>
-			<method name="set_height" symbol="champlain_zoom_level_set_height">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-					<parameter name="height" type="guint"/>
-				</parameters>
-			</method>
-			<method name="set_width" symbol="champlain_zoom_level_set_width">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-					<parameter name="width" type="guint"/>
-				</parameters>
-			</method>
-			<method name="set_zoom_level" symbol="champlain_zoom_level_set_zoom_level">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-					<parameter name="zoom_level" type="gint"/>
-				</parameters>
-			</method>
-			<method name="tile_count" symbol="champlain_zoom_level_tile_count">
-				<return-type type="guint"/>
-				<parameters>
-					<parameter name="self" type="ChamplainZoomLevel*"/>
-				</parameters>
-			</method>
-			<property name="actor" type="ClutterActor*" readable="1" writable="0" construct="0" construct-only="0"/>
-			<property name="height" type="guint" readable="1" writable="1" construct="0" construct-only="0"/>
-			<property name="width" type="guint" readable="1" writable="1" construct="0" construct-only="0"/>
-			<property name="zoom-level" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
-			<signal name="tile-added" when="LAST">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="object" type="ChamplainZoomLevel*"/>
-					<parameter name="p0" type="ChamplainTile*"/>
-				</parameters>
-			</signal>
-			<signal name="tile-removed" when="LAST">
-				<return-type type="void"/>
-				<parameters>
-					<parameter name="object" type="ChamplainZoomLevel*"/>
-					<parameter name="p0" type="ChamplainTile*"/>
-				</parameters>
-			</signal>
-		</object>
+		<constant name="CHAMPLAIN_HAS_MEMPHIS" type="int" value="1"/>
 		<constant name="CHAMPLAIN_MAJOR_VERSION" type="int" value="0"/>
-		<constant name="CHAMPLAIN_MAP_SOURCE_MFF_RELIEF" type="char*" value="MapsForFree Relief"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_MEMPHIS_LOCAL" type="char*" value="memphis-local"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_MEMPHIS_NETWORK" type="char*" value="memphis-network"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_MFF_RELIEF" type="char*" value="mff-relief"/>
 		<constant name="CHAMPLAIN_MAP_SOURCE_OAM" type="char*" value="OpenAerialMap"/>
-		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_CYCLE_MAP" type="char*" value="OpenCycleMap"/>
-		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_MAPNIK" type="char*" value="OpenStreetMap I"/>
-		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_OSMARENDER" type="char*" value="OpenStreetMap II"/>
-		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_TRANSPORT_MAP" type="char*" value="Public Transport"/>
-		<constant name="CHAMPLAIN_MAX_LAT" type="int" value="90"/>
-		<constant name="CHAMPLAIN_MAX_LONG" type="int" value="180"/>
-		<constant name="CHAMPLAIN_MICRO_VERSION" type="int" value="5"/>
-		<constant name="CHAMPLAIN_MINOR_VERSION" type="int" value="4"/>
-		<constant name="CHAMPLAIN_MIN_LAT" type="int" value="-90"/>
-		<constant name="CHAMPLAIN_MIN_LONG" type="int" value="-180"/>
-		<constant name="CHAMPLAIN_PARAM_READABLE" type="int" value="0"/>
-		<constant name="CHAMPLAIN_PARAM_READWRITE" type="int" value="0"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_CYCLE_MAP" type="char*" value="osm-cyclemap"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_MAPNIK" type="char*" value="osm-mapnik"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_OSMARENDER" type="char*" value="osm-osmarender"/>
+		<constant name="CHAMPLAIN_MAP_SOURCE_OSM_TRANSPORT_MAP" type="char*" value="osm-transportmap"/>
+		<constant name="CHAMPLAIN_MICRO_VERSION" type="int" value="0"/>
+		<constant name="CHAMPLAIN_MINOR_VERSION" type="int" value="6"/>
 		<constant name="CHAMPLAIN_VERSION_HEX" type="int" value="0"/>
-		<constant name="CHAMPLAIN_VERSION_S" type="char*" value="0.4.5"/>
+		<constant name="CHAMPLAIN_VERSION_S" type="char*" value="0.6.0"/>
 	</namespace>
 </api>
-- 
1.7.0.4



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