[libchamplain] Updated documentation



commit 8360fc1fc0bd08a005751313c6c5196d23b4050a
Author: JiÅ?í Techet <techet gmail com>
Date:   Mon Aug 23 22:28:08 2010 +0200

    Updated documentation
    
    Signed-off-by: JiÅ?í Techet <techet gmail com>

 champlain/champlain-error-tile-renderer.c      |   45 ++++
 champlain/champlain-file-cache.c               |    5 +-
 champlain/champlain-file-tile-source.c         |   34 ++-
 champlain/champlain-file-tile-source.h         |   13 +-
 champlain/champlain-image-renderer.c           |   18 ++
 champlain/champlain-map-source-chain.c         |    6 +-
 champlain/champlain-map-source-factory.c       |   15 +-
 champlain/champlain-map-source-factory.h       |    3 +-
 champlain/champlain-map-source.c               |   15 +-
 champlain/champlain-memory-cache.c             |   58 +++++-
 champlain/champlain-memphis-renderer.c         |   89 ++++++---
 champlain/champlain-memphis-renderer.h         |   81 ++++++--
 champlain/champlain-network-bbox-tile-source.c |   58 +++--
 champlain/champlain-network-bbox-tile-source.h |   11 +-
 champlain/champlain-network-tile-source.c      |   11 +-
 champlain/champlain-null-tile-source.c         |   19 ++
 champlain/champlain-null-tile-source.h         |   11 +-
 champlain/champlain-renderer.c                 |   30 +++
 champlain/champlain-renderer.h                 |    2 +
 champlain/champlain-selection-layer.h          |    6 +-
 champlain/champlain-tile.c                     |   21 ++-
 champlain/champlain-tile.h                     |   35 ++-
 champlain/champlain-view.c                     |   10 +-
 docs/reference/Makefile.am                     |   18 +--
 docs/reference/libchamplain-docs.sgml          |   29 ++-
 docs/reference/libchamplain-sections.txt       |  281 +++++++++++++++---------
 26 files changed, 650 insertions(+), 274 deletions(-)
---
diff --git a/champlain/champlain-error-tile-renderer.c b/champlain/champlain-error-tile-renderer.c
index dc9019b..3764e49 100644
--- a/champlain/champlain-error-tile-renderer.c
+++ b/champlain/champlain-error-tile-renderer.c
@@ -16,6 +16,14 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+/**
+ * SECTION:champlain-error-tile-renderer
+ * @short_description: A renderer that renders error tiles independently of input data
+ *
+ * #ChamplainErrorTileRenderer always renders error tiles (tiles that indicate that the real tile could
+ * not be loaded) no matter what input data is used.
+ */
+
 #include "champlain-error-tile-renderer.h"
 #include <gdk/gdk.h>
 
@@ -119,6 +127,13 @@ champlain_error_tile_renderer_class_init (ChamplainErrorTileRendererClass *klass
   object_class->finalize = champlain_error_tile_renderer_finalize;
   object_class->dispose = champlain_error_tile_renderer_dispose;
 
+  /**
+   * ChamplainErrorTileRenderer:tile-size:
+   *
+   * The size of the rendered tile.
+   *
+   * Since: 0.8
+   */
   g_object_class_install_property (object_class,
       PROP_TILE_SIZE,
       g_param_spec_uint ("tile-size",
@@ -145,6 +160,16 @@ champlain_error_tile_renderer_init (ChamplainErrorTileRenderer *self)
 }
 
 
+/**
+ * champlain_error_tile_renderer_new:
+ * @tile_size: the size of the rendered error tile
+ *
+ * Constructor of a #ChamplainErrorTileRenderer.
+ *
+ * Returns: a constructed #ChamplainErrorTileRenderer
+ *
+ * Since: 0.8
+ */
 ChamplainErrorTileRenderer *
 champlain_error_tile_renderer_new (guint tile_size)
 {
@@ -155,6 +180,7 @@ champlain_error_tile_renderer_new (guint tile_size)
 static void
 set_data (ChamplainRenderer *renderer, const gchar *data, guint size)
 {
+  /* always render the error tile no matter what data is set */
 }
 
 
@@ -228,6 +254,15 @@ render (ChamplainRenderer *renderer, ChamplainTile *tile)
 }
 
 
+/**
+ * champlain_error_tile_renderer_set_tile_size:
+ * @renderer: a #ChamplainErrorTileRenderer
+ * @size: the size of the rendered error tiles
+ *
+ * Sets the size of the rendered error tile.
+ *
+ * Since: 0.8
+ */
 void
 champlain_error_tile_renderer_set_tile_size (ChamplainErrorTileRenderer *renderer,
     guint size)
@@ -240,6 +275,16 @@ champlain_error_tile_renderer_set_tile_size (ChamplainErrorTileRenderer *rendere
 }
 
 
+/**
+ * champlain_error_tile_renderer_get_tile_size:
+ * @renderer: a #ChamplainErrorTileRenderer
+ *
+ * Gets the size of the rendered error tiles.
+ *
+ * Returns: the size of the rendered error tiles
+ *
+ * Since: 0.8
+ */
 guint
 champlain_error_tile_renderer_get_tile_size (ChamplainErrorTileRenderer *renderer)
 {
diff --git a/champlain/champlain-file-cache.c b/champlain/champlain-file-cache.c
index f179afa..2da4a9d 100644
--- a/champlain/champlain-file-cache.c
+++ b/champlain/champlain-file-cache.c
@@ -21,7 +21,7 @@
  * SECTION:champlain-file-cache
  * @short_description: Stores and loads cached tiles from the file system
  *
- * #ChamplainFileCache is a map source that stores and retrieves tiles from the
+ * #ChamplainFileCache is a cache that stores and retrieves tiles from the
  * file system. Tiles most frequently loaded gain in "popularity". This popularity
  * is taken into account when purging the cache.
  */
@@ -374,12 +374,13 @@ champlain_file_cache_init (ChamplainFileCache *file_cache)
  * @cache_dir: the directory where the cache is created. For temporary caches
  * one more directory with random name is created inside this directory.
  * When cache_dir == NULL, a cache in ~/.cache/champlain is used.
+ * @renderer: the #ChamplainRenderer used for tiles rendering
  *
  * Constructor of #ChamplainFileCache.
  *
  * Returns: a constructed #ChamplainFileCache
  *
- * Since: 0.6
+ * Since: 0.8
  */
 ChamplainFileCache *
 champlain_file_cache_new_full (guint size_limit,
diff --git a/champlain/champlain-file-tile-source.c b/champlain/champlain-file-tile-source.c
index db731d9..5c40d33 100644
--- a/champlain/champlain-file-tile-source.c
+++ b/champlain/champlain-file-tile-source.c
@@ -17,14 +17,13 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-/*
- * SECTION:champlain-local-map-data-source
- * @short_description: Loads local map data for #ChamplainMemphisTileSource
+/**
+ * SECTION:champlain-file-tile-source
+ * @short_description: A map source that loads tile data from a file
  *
- * This map data source loads local <ulink role="online-location"
+ * This tile source loads local <ulink role="online-location"
  * url="http://wiki.openstreetmap.org/wiki/.osm";>
  * OpenStreetMap XML data files</ulink> (*.osm).
- *
  */
 
 #include "champlain-file-tile-source.h"
@@ -73,14 +72,23 @@ champlain_file_tile_source_init (ChamplainFileTileSource *self)
 }
 
 
-/*
- * champlain_file_tile_source_new:
+/**
+ * champlain_file_tile_source_new_full:
+ * @id: the map source's id
+ * @name: the map source's name
+ * @license: the map source's license
+ * @license_uri: the map source's license URI
+ * @min_zoom: the map source's minimum zoom level
+ * @max_zoom: the map source's maximum zoom level
+ * @tile_size: the map source's tile size (in pixels)
+ * @projection: the map source's projection
+ * @renderer: the #ChamplainRenderer used to render tiles
  *
- * Creates a new instance of #ChamplainFileTileSource.
+ * Constructor of #ChamplainFileTileSource.
  *
- * Returns: a new #ChamplainFileTileSource.
+ * Returns: a constructed #ChamplainFileTileSource object
  *
- * Since: 0.6
+ * Since: 0.8
  */
 ChamplainFileTileSource *
 champlain_file_tile_source_new_full (const gchar *id,
@@ -110,14 +118,14 @@ champlain_file_tile_source_new_full (const gchar *id,
 }
 
 
-/*
+/**
  * champlain_file_tile_source_load_map_data:
- * @map_data_source: a #ChamplainFileTileSource
+ * @self: a #ChamplainFileTileSource
  * @map_path: a path to a map data file
  *
  * Loads the OpenStreetMap XML file at the given path.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_file_tile_source_load_map_data (ChamplainFileTileSource *self,
diff --git a/champlain/champlain-file-tile-source.h b/champlain/champlain-file-tile-source.h
index e7fe4ee..1a931f0 100644
--- a/champlain/champlain-file-tile-source.h
+++ b/champlain/champlain-file-tile-source.h
@@ -49,15 +49,18 @@ G_BEGIN_DECLS
 
 typedef struct _ChamplainFileTileSourcePrivate ChamplainFileTileSourcePrivate;
 
-typedef struct
+typedef struct _ChamplainFileTileSource ChamplainFileTileSource;
+typedef struct _ChamplainFileTileSourceClass ChamplainFileTileSourceClass;
+
+struct _ChamplainFileTileSource
 {
   ChamplainTileSource parent;
-} ChamplainFileTileSource;
+};
 
-typedef struct
+struct _ChamplainFileTileSourceClass
 {
   ChamplainTileSourceClass parent_class;
-} ChamplainFileTileSourceClass;
+};
 
 GType champlain_file_tile_source_get_type (void);
 
@@ -72,7 +75,7 @@ ChamplainFileTileSource *champlain_file_tile_source_new_full (const gchar *id,
     ChamplainRenderer *renderer);
 
 void champlain_file_tile_source_load_map_data (
-    ChamplainFileTileSource *map_data_source,
+    ChamplainFileTileSource *self,
     const gchar *map_path);
 
 G_END_DECLS
diff --git a/champlain/champlain-image-renderer.c b/champlain/champlain-image-renderer.c
index 9dc8130..389abe1 100644
--- a/champlain/champlain-image-renderer.c
+++ b/champlain/champlain-image-renderer.c
@@ -16,6 +16,15 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+/**
+ * SECTION:champlain-image-renderer
+ * @short_description: A renderer that renders tiles from binary image data
+ *
+ * #ChamplainImageRenderer renders tiles from binary image data. The rendering
+ * is performed using #GdkPixbufLoader so the set of supported image
+ * formats is equal to the set of formats supported by #GdkPixbufLoader.
+ */
+
 #include "champlain-image-renderer.h"
 #include <gdk/gdk.h>
 
@@ -82,6 +91,15 @@ champlain_image_renderer_init (ChamplainImageRenderer *self)
 }
 
 
+/**
+ * champlain_image_renderer_new:
+ *
+ * Constructor of #ChamplainImageRenderer.
+ *
+ * Returns: a constructed #ChamplainImageRenderer object
+ *
+ * Since: 0.8
+ */
 ChamplainImageRenderer *
 champlain_image_renderer_new (void)
 {
diff --git a/champlain/champlain-map-source-chain.c b/champlain/champlain-map-source-chain.c
index c3a6536..a2e52bc 100644
--- a/champlain/champlain-map-source-chain.c
+++ b/champlain/champlain-map-source-chain.c
@@ -23,10 +23,10 @@
  * This map source simplifies creation of map chains by providing two
  * functions for their creation and modification in a stack-like manner:
  * champlain_map_source_chain_push() and champlain_map_source_chain_pop().
- * For instance, to create a chain consisting of #ChamplainFileCache,
- * #ChamplainNetworkTileSource and #ChamplainErrorTileSource, the map
+ * For instance, to create a chain consisting of #ChamplainMemoryCache, 
+ * #ChamplainFileCache and #ChamplainNetworkTileSource, the map
  * sources have to be pushed into the chain in the reverse order starting
- * from #ChamplainErrorTileSource. After its creation, #ChamplainMapSourceChain
+ * from #ChamplainNetworkTileSource. After its creation, #ChamplainMapSourceChain
  * behaves as a chain of map sources it contains.
  */
 
diff --git a/champlain/champlain-map-source-factory.c b/champlain/champlain-map-source-factory.c
index 1fc00c2..ee67714 100644
--- a/champlain/champlain-map-source-factory.c
+++ b/champlain/champlain-map-source-factory.c
@@ -373,8 +373,8 @@ champlain_map_source_factory_create (ChamplainMapSourceFactory *factory,
  * Creates a cached map source.
  *
  * Returns: a ready to use #ChamplainMapSourceChain consisting of
- * #ChamplainFileCache, #ChamplainMapSource matching the given name, and
- * #ChamplainErrorTileSource.
+ * #ChamplainMemoryCache, #ChamplainFileCache, #ChamplainMapSource matching the given name, and
+ * an error tile source created with champlain_map_source_factory_create_error_source ().
  *
  * Since: 0.6
  */
@@ -411,6 +411,17 @@ champlain_map_source_factory_create_cached_source (ChamplainMapSourceFactory *fa
 }
 
 
+/**
+ * champlain_map_source_factory_create_error_source:
+ * @factory: the Factory
+ * @tile_size: the size of the error tile
+ *
+ * Creates a map source generating error tiles.
+ *
+ * Returns: a ready to use map source generating error tiles.
+ *
+ * Since: 0.8
+ */
 ChamplainMapSource *
 champlain_map_source_factory_create_error_source (ChamplainMapSourceFactory *factory,
     guint tile_size)
diff --git a/champlain/champlain-map-source-factory.h b/champlain/champlain-map-source-factory.h
index 5aef27b..f039e9e 100644
--- a/champlain/champlain-map-source-factory.h
+++ b/champlain/champlain-map-source-factory.h
@@ -50,9 +50,10 @@ G_BEGIN_DECLS
 #define CHAMPLAIN_MAP_SOURCE_FACTORY_GET_CLASS(obj) \
   (G_TYPE_INSTANCE_GET_CLASS ((obj), CHAMPLAIN_TYPE_MAP_SOURCE_FACTORY, ChamplainMapSourceFactoryClass))
 
+typedef struct _ChamplainMapSourceFactoryPrivate ChamplainMapSourceFactoryPrivate;
+
 typedef struct _ChamplainMapSourceFactory ChamplainMapSourceFactory;
 typedef struct _ChamplainMapSourceFactoryClass ChamplainMapSourceFactoryClass;
-typedef struct _ChamplainMapSourceFactoryPrivate ChamplainMapSourceFactoryPrivate;
 
 struct _ChamplainMapSourceFactory
 {
diff --git a/champlain/champlain-map-source.c b/champlain/champlain-map-source.c
index 6be9944..45912b2 100644
--- a/champlain/champlain-map-source.c
+++ b/champlain/champlain-map-source.c
@@ -38,15 +38,16 @@
 
  * To undertand the concept of chains, consider for instance a chain
  * consisting of #ChamplainFileCache whose next source is
- * #ChamplainNetworkTileSource whose next source is #ChamplainErrorTileSource.
+ * #ChamplainNetworkTileSource whose next source is an error tile source
+ * created with champlain_map_source_factory_create_error_source ().
  * When champlain_map_source_fill_tile() is called on the first object of the
  * chain, #ChamplainFileCache, the cache checks whether it contains the
  * requested tile in its database. If it does, it returns the tile; otherwise,
  * it calls champlain_map_source_fill_tile() on the next source in the chain
  * (#ChamplainNetworkTileSource). The network tile source loads the tile
  * from the network. When successful, it returns the tile; otherwise it requests
- * the tile from the next source in the chain (#ChamplainErrorTileSource).
- * #ChamplainErrorTileSource always generates an error tile, no matter what
+ * the tile from the next source in the chain (error tile source).
+ * The error tile source always generates an error tile, no matter what
  * its next source is.
  */
 
@@ -202,7 +203,7 @@ champlain_map_source_class_init (ChamplainMapSourceClass *klass)
   /**
    * ChamplainMapSource:renderer:
    *
-   * Renderer used to render tiles.
+   * Renderer used for tiles rendering.
    *
    * Since: 0.8
    */
@@ -250,7 +251,7 @@ champlain_map_source_get_next_source (ChamplainMapSource *map_source)
  * champlain_map_source_get_renderer:
  * @map_source: a #ChamplainMapSource
  *
- * Get the renderer used to render tiles.
+ * Get the renderer used for tiles rendering.
  *
  * Returns: the renderer.
  *
@@ -301,9 +302,9 @@ champlain_map_source_set_next_source (ChamplainMapSource *map_source,
 /**
  * champlain_map_source_set_renderer:
  * @map_source: a #ChamplainMapSource
- * @renderer: the renderer used for tile rendering
+ * @renderer: the renderer
  *
- * Sets the renderer used to render tiles.
+ * Sets the renderer used for tiles rendering.
  *
  * Since: 0.8
  */
diff --git a/champlain/champlain-memory-cache.c b/champlain/champlain-memory-cache.c
index a91700a..ebc8106 100644
--- a/champlain/champlain-memory-cache.c
+++ b/champlain/champlain-memory-cache.c
@@ -16,6 +16,16 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+/**
+ * SECTION:champlain-memory-cache
+ * @short_description: Stores and loads cached tiles from the memory
+ *
+ * #ChamplainMemoryCache is a cache that stores and retrieves tiles from the
+ * memory. The cache contents is not preserved between application restarts
+ * so this cache serves mostly as a quick access temporary cache to the
+ * most recently used tiles. 
+ */
+
 #define DEBUG_FLAG CHAMPLAIN_DEBUG_CACHE
 #include "champlain-debug.h"
 
@@ -138,18 +148,16 @@ champlain_memory_cache_class_init (ChamplainMemoryCacheClass *klass)
   object_class->get_property = champlain_memory_cache_get_property;
   object_class->set_property = champlain_memory_cache_set_property;
 
-  /*
+  /**
    * ChamplainMemoryCache:size-limit:
    *
-   * The cache size limit in bytes.
+   * The maximal number of tiles that are stored in the cache.
    *
-   * Note: this new value will not be applied until you call #champlain_cache_purge
-   *
-   * Since: 0.4
+   * Since: 0.8
    */
   pspec = g_param_spec_uint ("size-limit",
       "Size Limit",
-      "The cache's size limit (Mb)",
+      "Maximal number of stored tiles",
       1,
       G_MAXINT,
       100,
@@ -164,6 +172,17 @@ champlain_memory_cache_class_init (ChamplainMemoryCacheClass *klass)
 }
 
 
+/**
+ * champlain_memory_cache_new_full:
+ * @size_limit: maximal number of tiles stored in the cache
+ * @renderer: the #ChamplainRenderer used for tiles rendering
+ *
+ * Constructor of #ChamplainMemoryCache.
+ *
+ * Returns: a constructed #ChamplainMemoryCache
+ *
+ * Since: 0.8
+ */
 ChamplainMemoryCache *
 champlain_memory_cache_new_full (guint size_limit,
     ChamplainRenderer *renderer)
@@ -191,6 +210,16 @@ champlain_memory_cache_init (ChamplainMemoryCache *memory_cache)
 }
 
 
+/**
+ * champlain_memory_cache_get_size_limit:
+ * @memory_cache: a #ChamplainMemoryCache
+ *
+ * Gets the maximal number of tiles stored in the cache.
+ *
+ * Returns: maximal number of stored tiles
+ *
+ * Since: 0.8
+ */
 guint
 champlain_memory_cache_get_size_limit (ChamplainMemoryCache *memory_cache)
 {
@@ -200,6 +229,15 @@ champlain_memory_cache_get_size_limit (ChamplainMemoryCache *memory_cache)
 }
 
 
+/**
+ * champlain_memory_cache_set_size_limit:
+ * @memory_cache: a #ChamplainMemoryCache
+ * @size_limit: maximal number of tiles stored in the cache
+ *
+ * Sets the maximal number of tiles stored in the cache.
+ *
+ * Since: 0.8
+ */
 void
 champlain_memory_cache_set_size_limit (ChamplainMemoryCache *memory_cache,
     guint size_limit)
@@ -397,6 +435,14 @@ refresh_tile_time (ChamplainTileCache *tile_cache,
 }
 
 
+/**
+ * champlain_memory_cache_clean:
+ * @memory_cache: a #ChamplainMemoryCache
+ *
+ * Cleans the contents of the cache.
+ *
+ * Since: 0.8
+ */
 void
 champlain_memory_cache_clean (ChamplainMemoryCache *memory_cache)
 {
diff --git a/champlain/champlain-memphis-renderer.c b/champlain/champlain-memphis-renderer.c
index 9416436..d711fc6 100644
--- a/champlain/champlain-memphis-renderer.c
+++ b/champlain/champlain-memphis-renderer.c
@@ -17,20 +17,16 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-/*
- * SECTION:champlain-memphis-tile-source
- * @short_description: A map source that draws tiles locally
+/**
+ * SECTION:champlain-memphis-renderer
+ * @short_description: A renderer that renders tiles from OSM vector XML data
  *
  * The #ChamplainMemphisRenderer uses the rendering library
  * <ulink role="online-location" url="https://trac.openstreetmap.ch/trac/memphis/";>
- * LibMemphis</ulink> to draw <ulink role="online-location" url="http://www.openstreetmap.org/";>
+ * LibMemphis</ulink> to render tiles based on <ulink role="online-location" url="http://www.openstreetmap.org/";>
  * OpenStreetMap</ulink> data. Tiles are rendered in separate threads.
  * It supports zoom levels 12 to 18.
  *
- * The map data is supplied by a #ChamplainMapDataSource.
- * #ChamplainLocalMapDataSource loads data from a local OSM file.
- * #ChamplainNetworkMapDataSource uses the OSM API to download data chunks.
- *
  * The output of the renderer can be configured with a Memphis rules XML file.
  * (TODO: link to the specification) The default rules only show
  * highways as thin black lines.
@@ -229,12 +225,12 @@ champlain_memphis_renderer_class_init (ChamplainMemphisRendererClass *klass)
           256,
           G_PARAM_READWRITE));
 
-  /*
-   * ChamplainMapDataSource:bounding-box:
+  /**
+   * ChamplainMemphisRenderer:bounding-box:
    *
    * The bounding box of the area that contains map data.
    *
-   * Since: 0.6
+   * Since: 0.8
    */
   g_object_class_install_property (object_class,
       PROP_BOUNDING_BOX,
@@ -266,6 +262,16 @@ champlain_memphis_renderer_init (ChamplainMemphisRenderer *renderer)
 }
 
 
+/**
+ * champlain_memphis_renderer_new_full:
+ * @tile_size: the size of the rendered error tile
+ *
+ * Constructor of a #ChamplainMemphisRenderer.
+ *
+ * Returns: a constructed #ChamplainMemphisRenderer object
+ *
+ * Since: 0.8
+ */
 ChamplainMemphisRenderer *
 champlain_memphis_renderer_new_full (guint tile_size)
 {
@@ -472,14 +478,14 @@ set_data (ChamplainRenderer *renderer,
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_load_rules:
  * @renderer: a #ChamplainMemphisRenderer
  * @rules_path: a path to a rules file
  *
  * Loads a Memphis rules file.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_memphis_renderer_load_rules (
@@ -520,7 +526,7 @@ champlain_memphis_renderer_load_rules (
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_get_background_color:
  * @renderer: a #ChamplainMemphisRenderer
  *
@@ -529,7 +535,7 @@ champlain_memphis_renderer_load_rules (
  * Returns: the background color of the map as a newly-allocated
  * #ClutterColor.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 ClutterColor *
 champlain_memphis_renderer_get_background_color (
@@ -552,14 +558,14 @@ champlain_memphis_renderer_get_background_color (
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_set_background_color:
  * @renderer: a #ChamplainMemphisRenderer
  * @color: a #ClutterColor
  *
  * Sets the background color of the map from a #ClutterColor.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_memphis_renderer_set_background_color (
@@ -575,15 +581,15 @@ champlain_memphis_renderer_set_background_color (
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_set_rule:
  * @renderer: a #ChamplainMemphisRenderer
- * @rule: a #MemphisRule
+ * @rule: a #ChamplainMemphisRule
  *
  * Edits or adds a #ChamplainMemphisRule to the rules-set. New rules are appended
- *  to the list.
+ * to the list.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_memphis_renderer_set_rule (ChamplainMemphisRenderer *renderer,
@@ -598,7 +604,7 @@ champlain_memphis_renderer_set_rule (ChamplainMemphisRenderer *renderer,
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_get_rule:
  * @renderer: a #ChamplainMemphisRenderer
  * @id: an id string
@@ -607,7 +613,7 @@ champlain_memphis_renderer_set_rule (ChamplainMemphisRenderer *renderer,
  *
  * Returns: the requested #ChamplainMemphisRule or NULL if none is found.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 ChamplainMemphisRule *
 champlain_memphis_renderer_get_rule (ChamplainMemphisRenderer *renderer,
@@ -626,7 +632,7 @@ champlain_memphis_renderer_get_rule (ChamplainMemphisRenderer *renderer,
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_get_rule_ids:
  * @renderer: a #ChamplainMemphisRenderer
  *
@@ -637,7 +643,7 @@ champlain_memphis_renderer_get_rule (ChamplainMemphisRenderer *renderer,
  *
  * Example: "waterway:river|stream|canal"
  *
- * Since: 0.6
+ * Since: 0.8
  */
 GList *
 champlain_memphis_renderer_get_rule_ids (ChamplainMemphisRenderer *renderer)
@@ -654,14 +660,14 @@ champlain_memphis_renderer_get_rule_ids (ChamplainMemphisRenderer *renderer)
 }
 
 
-/*
+/**
  * champlain_memphis_renderer_remove_rule:
  * @renderer: a #ChamplainMemphisRenderer
  * @id: an id string
  *
  * Removes the rule with the given id.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_memphis_renderer_remove_rule (
@@ -676,6 +682,15 @@ champlain_memphis_renderer_remove_rule (
 }
 
 
+/**
+ * champlain_memphis_renderer_set_tile_size:
+ * @renderer: a #ChamplainMemphisRenderer
+ * @size: the size of the rendered tiles
+ *
+ * Sets the size of the rendered tiles.
+ *
+ * Since: 0.8
+ */
 void
 champlain_memphis_renderer_set_tile_size (ChamplainMemphisRenderer *renderer,
     guint size)
@@ -694,6 +709,16 @@ champlain_memphis_renderer_set_tile_size (ChamplainMemphisRenderer *renderer,
 }
 
 
+/**
+ * champlain_memphis_renderer_get_tile_size:
+ * @renderer: a #ChamplainMemphisRenderer
+ *
+ * Gets the size of the rendered tiles.
+ *
+ * Returns: the size of the rendered tiles
+ *
+ * Since: 0.8
+ */
 guint
 champlain_memphis_renderer_get_tile_size (ChamplainMemphisRenderer *renderer)
 {
@@ -703,6 +728,16 @@ champlain_memphis_renderer_get_tile_size (ChamplainMemphisRenderer *renderer)
 }
 
 
+/**
+ * champlain_memphis_renderer_get_bounding_box:
+ * @renderer: a #ChamplainMemphisRenderer
+ *
+ * Gets the bounding box of the area for which map data is available.
+ *
+ * Returns: the bounding box
+ *
+ * Since: 0.8
+ */
 ChamplainBoundingBox *
 champlain_memphis_renderer_get_bounding_box (ChamplainMemphisRenderer *renderer)
 {
diff --git a/champlain/champlain-memphis-renderer.h b/champlain/champlain-memphis-renderer.h
index 614fb76..b98a8da 100644
--- a/champlain/champlain-memphis-renderer.h
+++ b/champlain/champlain-memphis-renderer.h
@@ -50,22 +50,60 @@ G_BEGIN_DECLS
 
 typedef struct _ChamplainMemphisRendererPrivate ChamplainMemphisRendererPrivate;
 
-typedef struct
+typedef struct _ChamplainMemphisRenderer ChamplainMemphisRenderer;
+typedef struct _ChamplainMemphisRendererClass ChamplainMemphisRendererClass;
+
+typedef struct _ChamplainMemphisRule ChamplainMemphisRule;
+typedef struct _ChamplainMemphisRuleAttr ChamplainMemphisRuleAttr;
+
+/**
+ * ChamplainMemphisRuleType:
+ * @CHAMPLAIN_MEMPHIS_RULE_TYPE_UNKNOWN: MEMPHIS_RULE_TYPE_UNKNOWN
+ * @CHAMPLAIN_MEMPHIS_RULE_TYPE_NODE: MEMPHIS_RULE_TYPE_NODE
+ * @CHAMPLAIN_MEMPHIS_RULE_TYPE_WAY: MEMPHIS_RULE_TYPE_WAY
+ * @CHAMPLAIN_MEMPHIS_RULE_TYPE_RELATION: MEMPHIS_RULE_TYPE_RELATION
+ * 
+ * A wrapper of the MemphisRuleType union. For details see the libmemphis 
+ * documentation.
+ *
+ * Since: 0.8
+ */
+typedef enum
+{
+  CHAMPLAIN_MEMPHIS_RULE_TYPE_UNKNOWN,
+  CHAMPLAIN_MEMPHIS_RULE_TYPE_NODE,
+  CHAMPLAIN_MEMPHIS_RULE_TYPE_WAY,
+  CHAMPLAIN_MEMPHIS_RULE_TYPE_RELATION
+} ChamplainMemphisRuleType;
+
+struct _ChamplainMemphisRenderer
 {
   ChamplainRenderer parent;
 
   ChamplainMemphisRendererPrivate *priv;
-} ChamplainMemphisRenderer;
+};
 
-typedef struct
+struct _ChamplainMemphisRendererClass
 {
   ChamplainRendererClass parent_class;
-} ChamplainMemphisRendererClass;
-
-
-typedef struct _ChamplainMemphisRule ChamplainMemphisRule;
-typedef struct _ChamplainMemphisRuleAttr ChamplainMemphisRuleAttr;
+};
 
+/**
+ * ChamplainMemphisRuleAttr:
+ * @z_min: z_min
+ * @z_max: z_max
+ * @color_red: color_red
+ * @color_green: color_green
+ * @color_blue: color_blue
+ * @color_alpha: color_alpha
+ * @style: style
+ * @size: size
+ * 
+ * A wrapper of the MemphisRuleAttr structure. For details see the libmemphis 
+ * documentation.
+ *
+ * Since: 0.8
+ */
 struct _ChamplainMemphisRuleAttr
 {
   guint8 z_min;
@@ -78,14 +116,21 @@ struct _ChamplainMemphisRuleAttr
   gdouble size;
 };
 
-typedef enum
-{
-  CHAMPLAIN_MEMPHIS_RULE_TYPE_UNKNOWN,
-  CHAMPLAIN_MEMPHIS_RULE_TYPE_NODE,
-  CHAMPLAIN_MEMPHIS_RULE_TYPE_WAY,
-  CHAMPLAIN_MEMPHIS_RULE_TYPE_RELATION
-} ChamplainMemphisRuleType;
-
+/**
+ * ChamplainMemphisRule:
+ * @keys: keys
+ * @values: values
+ * @type: type
+ * @polygon: polygon
+ * @line: line
+ * @border: border
+ * @text: text
+ * 
+ * A wrapper of the MemphisRule structure. For details see the libmemphis 
+ * documentation.
+ *
+ * Since: 0.8
+ */
 struct _ChamplainMemphisRule
 {
   gchar **keys;
@@ -129,10 +174,10 @@ void champlain_memphis_renderer_remove_rule (
 
 ChamplainBoundingBox *champlain_memphis_renderer_get_bounding_box (ChamplainMemphisRenderer *renderer);
 
-void champlain_memphis_renderer_set_tile_size (ChamplainMemphisRenderer *self,
+void champlain_memphis_renderer_set_tile_size (ChamplainMemphisRenderer *renderer,
     guint size);
 
-guint champlain_memphis_renderer_get_tile_size (ChamplainMemphisRenderer *self);
+guint champlain_memphis_renderer_get_tile_size (ChamplainMemphisRenderer *renderer);
 
 #undef __CHAMPLAIN_CHAMPLAIN_H_INSIDE__
 
diff --git a/champlain/champlain-network-bbox-tile-source.c b/champlain/champlain-network-bbox-tile-source.c
index 4ed9ffc..6f071b7 100644
--- a/champlain/champlain-network-bbox-tile-source.c
+++ b/champlain/champlain-network-bbox-tile-source.c
@@ -17,16 +17,16 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-/*
- * SECTION:champlain-network-map-data-source
- * @short_description: Downloads map data for #ChamplainMemphisTileSource
+/**
+ * SECTION:champlain-network-bbox-tile-source
+ * @short_description: A map source that loads tile data from an OpenStreetMap API
+ * server
  *
- * This map data source downloads the map data from an OpenStreetMap API
+ * This map source source downloads the map data from an OpenStreetMap API
  * server. It supports protocol version 0.5 and 0.6.
  *
  * <ulink role="online-location" url="http://wiki.openstreetmap.org/wiki/API";>
  * http://wiki.openstreetmap.org/wiki/API</ulink>
- *
  */
 
 #include "champlain-network-bbox-tile-source.h"
@@ -183,12 +183,12 @@ champlain_network_bbox_tile_source_class_init (ChamplainNetworkBboxTileSourceCla
   ChamplainMapSourceClass *map_source_class = CHAMPLAIN_MAP_SOURCE_CLASS (klass);
   map_source_class->fill_tile = fill_tile;
 
-  /*
+  /**
    * ChamplainNetworkBboxTileSource:api-uri:
    *
    * The URI of an OpenStreetMap API server
    *
-   * Since: 0.6
+   * Since: 0.8
    */
   g_object_class_install_property (object_class,
       PROP_API_URI,
@@ -198,12 +198,12 @@ champlain_network_bbox_tile_source_class_init (ChamplainNetworkBboxTileSourceCla
           "http://www.informationfreeway.org/api/0.6";,
           G_PARAM_READWRITE));
 
-  /*
+  /**
    * ChamplainNetworkBboxTileSource:proxy-uri:
    *
    * The proxy URI to use to access network
    *
-   * Since: 0.6
+   * Since: 0.8
    */
   g_object_class_install_property (object_class,
       PROP_PROXY_URI,
@@ -213,13 +213,13 @@ champlain_network_bbox_tile_source_class_init (ChamplainNetworkBboxTileSourceCla
           "",
           G_PARAM_READWRITE));
 
-  /*
-  * ChamplainMapDataSource:state:
+  /**
+  * ChamplainNetworkBboxTileSource:state:
   *
-  * The map data source's state. Useful to know if the data source is loading
+  * The map source's state. Useful to know if the data source is loading
   * or not.
   *
-  * Since: 0.6
+  * Since: 0.8
   */
   g_object_class_install_property (object_class,
        PROP_STATE,
@@ -256,16 +256,24 @@ champlain_network_bbox_tile_source_init (ChamplainNetworkBboxTileSource *self)
 }
 
 
-/*
- * champlain_network_bbox_tile_source_new:
+/**
+ * champlain_network_bbox_tile_source_new_full:
+ * @id: the map source's id
+ * @name: the map source's name
+ * @license: the map source's license
+ * @license_uri: the map source's license URI
+ * @min_zoom: the map source's minimum zoom level
+ * @max_zoom: the map source's maximum zoom level
+ * @tile_size: the map source's tile size (in pixels)
+ * @projection: the map source's projection
+ * @renderer: the #ChamplainRenderer used to render tiles
  *
- * Creates an instance of #ChamplainNetworkBboxTileSource.
+ * Constructor of #ChamplainNetworkBboxTileSource.
  *
- * Returns: a new #ChamplainNetworkBboxTileSource
+ * Returns: a constructed #ChamplainNetworkBboxTileSource object
  *
- * Since: 0.6
+ * Since: 0.8
  */
-
 ChamplainNetworkBboxTileSource *
 champlain_network_bbox_tile_source_new_full (const gchar *id,
     const gchar *name,
@@ -316,7 +324,7 @@ load_map_data_cb (G_GNUC_UNUSED SoupSession *session, SoupMessage *msg,
 }
 
 
-/*
+/**
  * champlain_network_bbox_tile_source_load_map_data:
  * @map_data_source: a #ChamplainNetworkBboxTileSource
  * @bound_left: the left bound in degree
@@ -332,7 +340,7 @@ load_map_data_cb (G_GNUC_UNUSED SoupSession *session, SoupMessage *msg,
  * url="http://api.openstreetmap.org/api/capabilities";>
  * http://api.openstreetmap.org/api/capabilities</ulink>
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_network_bbox_tile_source_load_map_data (
@@ -435,7 +443,7 @@ fill_tile (ChamplainMapSource *map_source,
 }
 
 
-/*
+/**
  * champlain_network_bbox_tile_source_get_api_uri:
  * @map_data_source: a #ChamplainNetworkBboxTileSource
  *
@@ -443,7 +451,7 @@ fill_tile (ChamplainMapSource *map_source,
  *
  * Returns: the URI of the API server.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 const gchar *
 champlain_network_bbox_tile_source_get_api_uri (
@@ -455,14 +463,14 @@ champlain_network_bbox_tile_source_get_api_uri (
 }
 
 
-/*
+/**
  * champlain_network_bbox_tile_source_set_api_uri:
  * @map_data_source: a #ChamplainNetworkBboxTileSource
  * @api_uri: an URI of an API server
  *
  * Sets the URI of the API server.
  *
- * Since: 0.6
+ * Since: 0.8
  */
 void
 champlain_network_bbox_tile_source_set_api_uri (
diff --git a/champlain/champlain-network-bbox-tile-source.h b/champlain/champlain-network-bbox-tile-source.h
index 7f65cce..c026d6b 100644
--- a/champlain/champlain-network-bbox-tile-source.h
+++ b/champlain/champlain-network-bbox-tile-source.h
@@ -45,17 +45,20 @@ G_BEGIN_DECLS
 
 typedef struct _ChamplainNetworkBboxTileSourcePrivate ChamplainNetworkBboxTileSourcePrivate;
 
-typedef struct
+typedef struct _ChamplainNetworkBboxTileSource ChamplainNetworkBboxTileSource;
+typedef struct _ChamplainNetworkBboxTileSourceClass ChamplainNetworkBboxTileSourceClass;
+
+struct _ChamplainNetworkBboxTileSource
 {
   ChamplainTileSource parent;
 
   ChamplainNetworkBboxTileSourcePrivate *priv;
-} ChamplainNetworkBboxTileSource;
+};
 
-typedef struct
+struct _ChamplainNetworkBboxTileSourceClass
 {
   ChamplainTileSourceClass parent_class;
-} ChamplainNetworkBboxTileSourceClass;
+};
 
 GType champlain_network_bbox_tile_source_get_type (void);
 
diff --git a/champlain/champlain-network-tile-source.c b/champlain/champlain-network-tile-source.c
index 6bdb787..de4a76c 100644
--- a/champlain/champlain-network-tile-source.c
+++ b/champlain/champlain-network-tile-source.c
@@ -19,11 +19,11 @@
 
 /**
  * SECTION:champlain-network-tile-source
- * @short_description: A map source that downloads tiles from a web server
+ * @short_description: A map source that downloads tile data from a web server
  *
- * This object is specialized for map tiles that can be downloaded
+ * This class is specialized for map tiles that can be downloaded
  * from a web server.  This includes all web based map services such as
- * OpenStreetMap, Google Maps, Yahoo Maps and more.  This object contains
+ * OpenStreetMap, Google Maps, Yahoo Maps and more.  This class contains
  * all mechanisms necessary to download tiles.
  *
  * Some preconfigured network map sources are built-in this library,
@@ -288,7 +288,7 @@ champlain_network_tile_source_init (ChamplainNetworkTileSource *tile_source)
 }
 
 
-/*
+/**
  * champlain_network_tile_source_new_full:
  * @id: the map source's id
  * @name: the map source's name
@@ -299,10 +299,11 @@ champlain_network_tile_source_init (ChamplainNetworkTileSource *tile_source)
  * @tile_size: the map source's tile size (in pixels)
  * @projection: the map source's projection
  * @uri_format: the URI to fetch the tiles from, see #champlain_network_tile_source_set_uri_format
+ * @renderer: the #ChamplainRenderer used to render tiles
  *
  * Constructor of #ChamplainNetworkTileSource.
  *
- * Returns: a constructed #ChamplainNetworkTileSource
+ * Returns: a constructed #ChamplainNetworkTileSource object
  *
  * Since: 0.4
  */
diff --git a/champlain/champlain-null-tile-source.c b/champlain/champlain-null-tile-source.c
index 4f1aef2..4742586 100644
--- a/champlain/champlain-null-tile-source.c
+++ b/champlain/champlain-null-tile-source.c
@@ -16,6 +16,15 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+/**
+ * SECTION:champlain-null-tile-source
+ * @short_description: A tile source that doesn't load map data from anywhere
+ *
+ * This map source does not provide any input data to the associated renderer.
+ * This can be useful in situations when the tile can be rendered independently
+ * of any input such as in the case of the #ChamplainErrorTileRenderer.
+ */
+
 #include "champlain-null-tile-source.h"
 
 #include "champlain-debug.h"
@@ -63,6 +72,16 @@ champlain_null_tile_source_init (ChamplainNullTileSource *self)
 }
 
 
+/**
+ * champlain_null_tile_source_new_full:
+ * @renderer: the #ChamplainRenderer used to render tiles
+ *
+ * Constructor of #ChamplainNullTileSource.
+ *
+ * Returns: a constructed #ChamplainNullTileSource object
+ *
+ * Since: 0.8
+ */
 ChamplainNullTileSource *
 champlain_null_tile_source_new_full (ChamplainRenderer *renderer)
 {
diff --git a/champlain/champlain-null-tile-source.h b/champlain/champlain-null-tile-source.h
index 373d5b5..07cf83e 100644
--- a/champlain/champlain-null-tile-source.h
+++ b/champlain/champlain-null-tile-source.h
@@ -48,15 +48,18 @@ G_BEGIN_DECLS
 
 typedef struct _ChamplainNullTileSourcePrivate ChamplainNullTileSourcePrivate;
 
-typedef struct
+typedef struct _ChamplainNullTileSource ChamplainNullTileSource;
+typedef struct _ChamplainNullTileSourceClass ChamplainNullTileSourceClass;
+
+struct _ChamplainNullTileSource
 {
   ChamplainTileSource parent;
-} ChamplainNullTileSource;
+};
 
-typedef struct
+struct _ChamplainNullTileSourceClass
 {
   ChamplainTileSourceClass parent_class;
-} ChamplainNullTileSourceClass;
+};
 
 GType champlain_null_tile_source_get_type (void);
 
diff --git a/champlain/champlain-renderer.c b/champlain/champlain-renderer.c
index 4f03815..23f6e2d 100644
--- a/champlain/champlain-renderer.c
+++ b/champlain/champlain-renderer.c
@@ -15,6 +15,14 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
+/**
+ * SECTION:champlain-renderer
+ * @short_description: A base class of renderers
+ *
+ * A renderer is used to render tiles textures. A tile is rendered based on
+ * the provided data - this can be arbitrary data the given renderer understands
+ * (e.g. raw bitmap data, vector xml map representation and so on).
+ */
 
 #include "champlain-renderer.h"
 
@@ -47,6 +55,16 @@ champlain_renderer_class_init (ChamplainRendererClass *klass)
 }
 
 
+/**
+ * champlain_renderer_set_data:
+ * @renderer: a #ChamplainRenderer
+ * @data: data used for tile rendering
+ * @size: size of the data in bytes
+ *
+ * Sets the data which is used to render tiles by the renderer.
+ *
+ * Since: 0.8
+ */
 void
 champlain_renderer_set_data (ChamplainRenderer *renderer,
     const gchar *data,
@@ -58,6 +76,18 @@ champlain_renderer_set_data (ChamplainRenderer *renderer,
 }
 
 
+/**
+ * champlain_renderer_render:
+ * @renderer: a #ChamplainRenderer
+ * @tile: the tile to render
+ *
+ * Renders the texture for the provided tile and calls champlain_tile_set_content()
+ * to set the content of the tile. When the rendering is finished, the renderer
+ * emits the #ChamplainTile::render-complete signal. The tile has to be displayed manually by 
+ * calling champlain_tile_display_content().
+ *
+ * Since: 0.8
+ */
 void
 champlain_renderer_render (ChamplainRenderer *renderer,
     ChamplainTile *tile)
diff --git a/champlain/champlain-renderer.h b/champlain/champlain-renderer.h
index 85633aa..cb166a7 100644
--- a/champlain/champlain-renderer.h
+++ b/champlain/champlain-renderer.h
@@ -47,6 +47,8 @@ G_BEGIN_DECLS
 typedef struct _ChamplainRenderer ChamplainRenderer;
 typedef struct _ChamplainRendererClass ChamplainRendererClass;
 
+typedef struct _ChamplainRenderCallbackData ChamplainRenderCallbackData;
+
 struct _ChamplainRenderer
 {
   GInitiallyUnowned parent;
diff --git a/champlain/champlain-selection-layer.h b/champlain/champlain-selection-layer.h
index 4e85616..a9ab4d5 100644
--- a/champlain/champlain-selection-layer.h
+++ b/champlain/champlain-selection-layer.h
@@ -51,6 +51,9 @@ G_BEGIN_DECLS
 
 typedef struct _ChamplainSelectionLayerPrivate ChamplainSelectionLayerPrivate;
 
+typedef struct _ChamplainSelectionLayer ChamplainSelectionLayer;
+typedef struct _ChamplainSelectionLayerClass ChamplainSelectionLayerClass;
+
 /**
  * ChamplainSelectionMode:
  * @CHAMPLAIN_SELECTION_NONE: No marker can be selected.
@@ -66,9 +69,6 @@ typedef enum
   CHAMPLAIN_SELECTION_MULTIPLE
 } ChamplainSelectionMode;
 
-typedef struct _ChamplainSelectionLayer ChamplainSelectionLayer;
-typedef struct _ChamplainSelectionLayerClass ChamplainSelectionLayerClass;
-
 struct _ChamplainSelectionLayer
 {
   ChamplainLayer parent;
diff --git a/champlain/champlain-tile.c b/champlain/champlain-tile.c
index 6ce39fa..b904078 100644
--- a/champlain/champlain-tile.c
+++ b/champlain/champlain-tile.c
@@ -344,6 +344,16 @@ champlain_tile_class_init (ChamplainTileClass *klass)
           FALSE,
           G_PARAM_READWRITE));
 
+  /**
+   * ChamplainTile::render-complete:
+   * @self: a #ChamplainTile
+   * @calback_data: a #ChamplainRenderCallbackData struct
+   * 
+   * The #ChamplainTile::render-complete signal is emitted when rendering of the tile is
+   * completed by the renderer.
+   *
+   * Since: 0.8
+   */
   champlain_tile_signals[RENDER_COMPLETE] =
     g_signal_new ("render-complete", G_OBJECT_CLASS_TYPE (object_class),
         G_SIGNAL_RUN_LAST, 0, NULL, NULL,
@@ -705,7 +715,8 @@ champlain_tile_set_etag (ChamplainTile *self,
  * @self: the #ChamplainTile
  * @actor: the new content
  *
- * Sets the tile's content
+ * Sets the tile's content. To also disppay the tile, you have to call
+ * champlain_tile_display_content() in addition.
  *
  * Since: 0.4
  */
@@ -735,6 +746,14 @@ fade_in_completed (G_GNUC_UNUSED ClutterAnimation *animation, ChamplainTile *sel
 }
 
 
+/**
+ * champlain_tile_display_content:
+ * @self: the #ChamplainTile
+ *
+ * Displays the tile's content.
+ *
+ * Since: 0.8
+ */
 void
 champlain_tile_display_content (ChamplainTile *self)
 {
diff --git a/champlain/champlain-tile.h b/champlain/champlain-tile.h
index 9a875aa..07514b4 100644
--- a/champlain/champlain-tile.h
+++ b/champlain/champlain-tile.h
@@ -46,11 +46,16 @@ G_BEGIN_DECLS
 
 typedef struct _ChamplainTilePrivate ChamplainTilePrivate;
 
+typedef struct _ChamplainTile ChamplainTile;
+typedef struct _ChamplainTileClass ChamplainTileClass;
+
 /**
  * ChamplainState:
  * @CHAMPLAIN_STATE_NONE: Initial or undefined state
  * @CHAMPLAIN_STATE_LOADING: Tile is loading
- * @CHAMPLAIN_STATE_DONE: Tile loading finished
+ * @CHAMPLAIN_STATE_LOADED: Tile is loaded but not yet displayed
+ * @CHAMPLAIN_STATE_DONE: Tile loading finished. Also used to inform map sources
+ *     that tile loading has been cancelled.
  *
  * Tile loading state.
  */
@@ -62,8 +67,22 @@ typedef enum
   CHAMPLAIN_STATE_DONE
 } ChamplainState;
 
-typedef struct _ChamplainTile ChamplainTile;
-typedef struct _ChamplainTileClass ChamplainTileClass;
+/**
+ * ChamplainRenderCallbackData:
+ * @error: TRUE if there was an error during tile rendering
+ * @data: the data used for tile rendering
+ * @size: the size of the data
+ *
+ * Used by the #ChamplainTile::render-complete signal.
+ *
+ * Since: 0.8
+ */
+struct _ChamplainRenderCallbackData
+{
+  gboolean error;
+  const gchar *data;
+  guint size;
+};
 
 struct _ChamplainTile
 {
@@ -77,16 +96,6 @@ struct _ChamplainTileClass
   ClutterGroupClass parent_class;
 };
 
-typedef struct _ChamplainRenderCallbackData ChamplainRenderCallbackData;
-
-
-struct _ChamplainRenderCallbackData
-{
-  gboolean error;
-  const gchar *data;
-  guint size;
-};
-
 
 GType champlain_tile_get_type (void);
 
diff --git a/champlain/champlain-view.c b/champlain/champlain-view.c
index 02877d0..9a445a5 100644
--- a/champlain/champlain-view.c
+++ b/champlain/champlain-view.c
@@ -1277,7 +1277,7 @@ champlain_view_class_init (ChamplainViewClass *champlainViewClass)
   /**
    * ChamplainView::animation-completed:
    *
-   * The ::animation-completed signal is emitted when any animation in the view
+   * The #ChamplainView::animation-completed signal is emitted when any animation in the view
    * ends.  This is a detailed signal.  For example, if you want to be signaled
    * only for go-to animation, you should connect to
    * "animation-completed::go-to".
@@ -2683,6 +2683,14 @@ remove_all_tiles (ChamplainView *view)
 }
 
 
+/**
+ * champlain_view_reload_tiles:
+ * @view: a #ChamplainView
+ *
+ * Reloads all visible tiles.
+ *
+ * Since: 0.8
+ */
 void
 champlain_view_reload_tiles (ChamplainView *view)
 {
diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
index 7871d27..687513d 100644
--- a/docs/reference/Makefile.am
+++ b/docs/reference/Makefile.am
@@ -44,28 +44,16 @@ FIXXREF_OPTIONS=
 # Used for dependencies. The docs will be rebuilt if any of these change.
 # e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
 # e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
-HFILE_GLOB=
-CFILE_GLOB=
+HFILE_GLOB=$(top_srcdir)/champlain/*.h
+CFILE_GLOB=$(top_srcdir)/champlain/*.c
 
 # Extra header to include when scanning, which are not under DOC_SOURCE_DIR
 # e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h
 EXTRA_HFILES=
 
-if ENABLE_MEMPHIS
-ignored_headers=
-else
-ignored_headers= \
-	champlain-memphis.h \
-	champlain-memphis-tile-source.h \
-	champlain-map-data-source.h \
-	champlain-local-map-data-source.h \
-	champlain-network-map-data-source.h \
-	champlain-bounding-box.h 
-endif
-
 # Header files to ignore when scanning. Use base file name, no paths
 # e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
-IGNORE_HFILES= $(ignored_headers) champlain-debug.h champlain-enum-types.h champlain-private.h \
+IGNORE_HFILES= champlain-debug.h champlain-enum-types.h champlain-private.h \
 	champlain.h champlain-marshal.h champlain-defines.h champlain-features.h
 
 # Images to copy into HTML directory.
diff --git a/docs/reference/libchamplain-docs.sgml b/docs/reference/libchamplain-docs.sgml
index 8f4e8ea..3189fb0 100644
--- a/docs/reference/libchamplain-docs.sgml
+++ b/docs/reference/libchamplain-docs.sgml
@@ -70,31 +70,34 @@
       <title>Tile Sources</title>
       <xi:include href="xml/champlain-tile-source.xml"/>
       <xi:include href="xml/champlain-network-tile-source.xml"/>
-      <xi:include href="xml/champlain-error-tile-source.xml"/>
-      <xi:include href="xml/champlain-memphis-tile-source.xml"/>
+      <xi:include href="xml/champlain-null-tile-source.xml"/>
+      <xi:include href="xml/champlain-file-tile-source.xml"/>
+      <xi:include href="xml/champlain-network-bbox-tile-source.xml"/>
     </chapter>
     <chapter>
       <title>Tile Caches</title>
       <xi:include href="xml/champlain-tile-cache.xml"/>
       <xi:include href="xml/champlain-file-cache.xml"/>
+      <xi:include href="xml/champlain-memory-cache.xml"/>
+    </chapter>
+    <chapter>
+      <title>Renderers</title>
+      <xi:include href="xml/champlain-renderer.xml"/>
+      <xi:include href="xml/champlain-image-renderer.xml"/>
+      <xi:include href="xml/champlain-memphis-renderer.xml"/>
+      <xi:include href="xml/champlain-error-tile-renderer.xml"/>
     </chapter>
     <chapter>
       <title>Map Source Utilities</title>
       <xi:include href="xml/champlain-map-source-chain.xml"/>
       <xi:include href="xml/champlain-map-source-factory.xml"/>
-      <xi:include href="xml/champlain-map-source-desc.xml"/>
     </chapter>
   </part>
   <part>
-    <title>Map Data Source API Reference</title>
-    <xi:include href="xml/champlain-map-data-source.xml"/>
-    <xi:include href="xml/champlain-local-map-data-source.xml"/>
-    <xi:include href="xml/champlain-network-map-data-source.xml"/>
-    <xi:include href="xml/champlain-bounding-box.xml"/>
-  </part>
-  <part>
-    <title>Utility API Reference</title>
+    <title>Others</title>
     <xi:include href="xml/champlain-version.xml"/>
+    <xi:include href="xml/champlain-map-source-desc.xml"/>
+    <xi:include href="xml/champlain-bounding-box.xml"/>
   </part>
   
   <index>
@@ -120,4 +123,8 @@
   <index role="0.6">
     <title>Index of new symbols in 0.6</title>
   </index>
+
+  <index role="0.8">
+    <title>Index of new symbols in 0.8</title>
+  </index>
 </book>
diff --git a/docs/reference/libchamplain-sections.txt b/docs/reference/libchamplain-sections.txt
index 10b102b..32523ff 100644
--- a/docs/reference/libchamplain-sections.txt
+++ b/docs/reference/libchamplain-sections.txt
@@ -21,6 +21,8 @@ champlain_map_source_get_meters_per_pixel
 champlain_map_source_fill_tile
 champlain_map_source_get_next_source
 champlain_map_source_set_next_source
+champlain_map_source_get_renderer
+champlain_map_source_set_renderer
 <SUBSECTION Standard>
 CHAMPLAIN_MAP_SOURCE
 CHAMPLAIN_IS_MAP_SOURCE
@@ -37,6 +39,7 @@ ChamplainMapSourcePrivate
 <SECTION>
 <FILE>champlain-map-source-desc</FILE>
 <TITLE>ChamplainMapSourceDesc</TITLE>
+ChamplainMapSourceDesc
 champlain_map_source_desc_copy
 champlain_map_source_desc_free
 champlain_map_source_desc_new
@@ -173,6 +176,7 @@ champlain_view_get_coords_from_event
 champlain_view_get_coords_at
 champlain_view_add_polygon
 champlain_view_remove_polygon
+champlain_view_reload_tiles
 <SUBSECTION Standard>
 CHAMPLAIN_VIEW
 CHAMPLAIN_IS_VIEW
@@ -211,8 +215,67 @@ ChamplainNetworkTileSourcePrivate
 </SECTION>
 
 <SECTION>
+<FILE>champlain-file-tile-source</FILE>
+<TITLE>ChamplainFileTileSource</TITLE>
+ChamplainFileTileSource
+champlain_file_tile_source_new_full
+champlain_file_tile_source_load_map_data
+<SUBSECTION Standard>
+CHAMPLAIN_FILE_TILE_SOURCE
+CHAMPLAIN_IS_FILE_TILE_SOURCE
+CHAMPLAIN_TYPE_FILE_TILE_SOURCE
+champlain_file_tile_source_get_type
+CHAMPLAIN_FILE_TILE_SOURCE_CLASS
+CHAMPLAIN_IS_FILE_TILE_SOURCE_CLASS
+CHAMPLAIN_FILE_TILE_SOURCE_GET_CLASS
+<SUBSECTION Private>
+ChamplainFileTileSourceClass
+ChamplainFileTileSourcePrivate
+</SECTION>
+
+<SECTION>
+<FILE>champlain-network-bbox-tile-source</FILE>
+<TITLE>ChamplainNetworkBboxTileSource</TITLE>
+ChamplainNetworkBboxTileSource
+champlain_network_bbox_tile_source_new_full
+champlain_network_bbox_tile_source_load_map_data
+champlain_network_bbox_tile_source_get_api_uri
+champlain_network_bbox_tile_source_set_api_uri
+<SUBSECTION Standard>
+CHAMPLAIN_NETWORK_BBOX_TILE_SOURCE
+CHAMPLAIN_IS_NETWORK_BBOX_TILE_SOURCE
+CHAMPLAIN_TYPE_NETWORK_BBOX_TILE_SOURCE
+champlain_network_bbox_tile_source_get_type
+CHAMPLAIN_NETWORK_BBOX_TILE_SOURCE_CLASS
+CHAMPLAIN_IS_NETWORK_BBOX_TILE_SOURCE_CLASS
+CHAMPLAIN_NETWORK_BBOX_TILE_SOURCE_GET_CLASS
+<SUBSECTION Private>
+ChamplainNetworkBboxTileSourceClass
+ChamplainNetworkBboxTileSourcePrivate
+</SECTION>
+
+<SECTION>
+<FILE>champlain-null-tile-source</FILE>
+<TITLE>ChamplainNullTileSource</TITLE>
+ChamplainNullTileSource
+champlain_null_tile_source_new_full
+<SUBSECTION Standard>
+CHAMPLAIN_NULL_TILE_SOURCE
+CHAMPLAIN_IS_NULL_TILE_SOURCE
+CHAMPLAIN_TYPE_NULL_TILE_SOURCE
+champlain_null_tile_source_get_type
+CHAMPLAIN_NULL_TILE_SOURCE_CLASS
+CHAMPLAIN_IS_NULL_TILE_SOURCE_CLASS
+CHAMPLAIN_NULL_TILE_SOURCE_GET_CLASS
+<SUBSECTION Private>
+ChamplainNullTileSourceClass
+ChamplainNullTileSourcePrivate
+</SECTION>
+
+<SECTION>
 <FILE>champlain-tile</FILE>
 <TITLE>ChamplainTile</TITLE>
+ChamplainRenderCallbackData
 ChamplainState
 ChamplainTile
 champlain_tile_new
@@ -235,6 +298,7 @@ champlain_tile_get_modified_time
 champlain_tile_set_content
 champlain_tile_set_etag
 champlain_tile_set_modified_time
+champlain_tile_display_content
 <SUBSECTION Standard>
 CHAMPLAIN_TILE
 CHAMPLAIN_IS_TILE
@@ -302,11 +366,9 @@ champlain_point_get_type
 <FILE>champlain-tile-cache</FILE>
 <TITLE>ChamplainTileCache</TITLE>
 ChamplainTileCache
-champlain_tile_cache_get_persistent
 champlain_tile_cache_store_tile
 champlain_tile_cache_refresh_tile_time
 champlain_tile_cache_on_tile_filled
-champlain_tile_cache_clean
 <SUBSECTION Standard>
 CHAMPLAIN_TILE_CACHE
 CHAMPLAIN_IS_TILE_CACHE
@@ -324,12 +386,11 @@ ChamplainTileCachePrivate
 <FILE>champlain-map-source-factory</FILE>
 <TITLE>ChamplainMapSourceFactory</TITLE>
 ChamplainMapSourceFactory
-ChamplainMapSourceDesc
-ChamplainMapSourceConstructor
 champlain_map_source_factory_dup_default
 champlain_map_source_factory_dup_list
 champlain_map_source_factory_create
 champlain_map_source_factory_create_cached_source
+champlain_map_source_factory_create_error_source
 champlain_map_source_factory_register
 CHAMPLAIN_MAP_SOURCE_OSM_MAPNIK
 CHAMPLAIN_MAP_SOURCE_OSM_OSMARENDER
@@ -420,91 +481,6 @@ ChamplainSelectionLayerPrivate
 </SECTION>
 
 <SECTION>
-<FILE>champlain-memphis-tile-source</FILE>
-<TITLE>ChamplainMemphisTileSource</TITLE>
-ChamplainMemphisTileSource
-champlain_memphis_tile_source_new_full
-champlain_memphis_tile_source_load_rules
-champlain_memphis_tile_source_set_background_color
-champlain_memphis_tile_source_get_background_color
-champlain_memphis_tile_source_set_map_data_source
-champlain_memphis_tile_source_get_map_data_source
-champlain_memphis_tile_source_set_rule
-champlain_memphis_tile_source_get_rule
-champlain_memphis_tile_source_remove_rule
-champlain_memphis_tile_source_get_rule_ids
-<SUBSECTION Standard>
-CHAMPLAIN_MEMPHIS_TILE_SOURCE
-CHAMPLAIN_IS_MEMPHIS_TILE_SOURCE
-CHAMPLAIN_TYPE_MEMPHIS_TILE_SOURCE
-champlain_memphis_tile_source_get_type
-CHAMPLAIN_MEMPHIS_TILE_SOURCE_CLASS
-CHAMPLAIN_IS_MEMPHIS_TILE_SOURCE_CLASS
-CHAMPLAIN_MEMPHIS_TILE_SOURCE_GET_CLASS
-<SUBSECTION Private>
-ChamplainMemphisTileSourceClass
-ChamplainMemphisTileSourcePrivate
-</SECTION>
-
-<SECTION>
-<FILE>champlain-map-data-source</FILE>
-<TITLE>ChamplainMapDataSource</TITLE>
-ChamplainMapDataSource
-champlain_map_data_source_get_map_data
-<SUBSECTION Standard>
-CHAMPLAIN_MAP_DATA_SOURCE
-CHAMPLAIN_IS_MAP_DATA_SOURCE
-CHAMPLAIN_TYPE_MAP_DATA_SOURCE
-champlain_map_data_source_get_type
-CHAMPLAIN_MAP_DATA_SOURCE_CLASS
-CHAMPLAIN_IS_MAP_DATA_SOURCE_CLASS
-CHAMPLAIN_MAP_DATA_SOURCE_GET_CLASS
-<SUBSECTION Private>
-ChamplainMapDataSourceClass
-ChamplainMapDataSourcePrivate
-</SECTION>
-
-<SECTION>
-<FILE>champlain-local-map-data-source</FILE>
-<TITLE>ChamplainLocalMapDataSource</TITLE>
-ChamplainLocalMapDataSource
-champlain_local_map_data_source_new
-champlain_local_map_data_source_load_map_data
-<SUBSECTION Standard>
-CHAMPLAIN_LOCAL_MAP_DATA_SOURCE
-CHAMPLAIN_IS_LOCAL_MAP_DATA_SOURCE
-CHAMPLAIN_TYPE_LOCAL_MAP_DATA_SOURCE
-champlain_local_map_data_source_get_type
-CHAMPLAIN_LOCAL_MAP_DATA_SOURCE_CLASS
-CHAMPLAIN_IS_LOCAL_MAP_DATA_SOURCE_CLASS
-CHAMPLAIN_LOCAL_MAP_DATA_SOURCE_GET_CLASS
-<SUBSECTION Private>
-ChamplainLocalMapDataSourceClass
-ChamplainLocalMapDataSourcePrivate
-</SECTION>
-
-<SECTION>
-<FILE>champlain-network-map-data-source</FILE>
-<TITLE>ChamplainNetworkMapDataSource</TITLE>
-ChamplainNetworkMapDataSource
-champlain_network_map_data_source_new
-champlain_network_map_data_source_load_map_data
-champlain_network_map_data_source_set_api_uri
-champlain_network_map_data_source_get_api_uri
-<SUBSECTION Standard>
-CHAMPLAIN_NETWORK_MAP_DATA_SOURCE
-CHAMPLAIN_IS_NETWORK_MAP_DATA_SOURCE
-CHAMPLAIN_TYPE_NETWORK_MAP_DATA_SOURCE
-champlain_network_map_data_source_get_type
-CHAMPLAIN_NETWORK_MAP_DATA_SOURCE_CLASS
-CHAMPLAIN_IS_NETWORK_MAP_DATA_SOURCE_CLASS
-CHAMPLAIN_NETWORK_MAP_DATA_SOURCE_GET_CLASS
-<SUBSECTION Private>
-ChamplainNetworkMapDataSourceClass
-ChamplainNetworkMapDataSourcePrivate
-</SECTION>
-
-<SECTION>
 <FILE>champlain-bounding-box</FILE>
 <TITLE>ChamplainBoundingBox</TITLE>
 ChamplainBoundingBox
@@ -566,28 +542,9 @@ ChamplainTileSourcePrivate
 </SECTION>
 
 <SECTION>
-<FILE>champlain-error-tile-source</FILE>
-<TITLE>ChamplainErrorTileSource</TITLE>
-ChamplainErrorTileSource
-champlain_error_tile_source_new_full
-<SUBSECTION Standard>
-CHAMPLAIN_ERROR_TILE_SOURCE
-CHAMPLAIN_IS_ERROR_TILE_SOURCE
-CHAMPLAIN_TYPE_ERROR_TILE_SOURCE
-champlain_error_tile_source_get_type
-CHAMPLAIN_ERROR_TILE_SOURCE_CLASS
-CHAMPLAIN_IS_ERROR_TILE_SOURCE_CLASS
-CHAMPLAIN_ERROR_TILE_SOURCE_GET_CLASS
-<SUBSECTION Private>
-ChamplainErrorTileSourceClass
-ChamplainErrorTileSourcePrivate
-</SECTION>
-
-<SECTION>
 <FILE>champlain-file-cache</FILE>
 <TITLE>ChamplainFileCache</TITLE>
 ChamplainFileCache
-champlain_file_cache_new
 champlain_file_cache_new_full
 champlain_file_cache_set_size_limit
 champlain_file_cache_get_size_limit
@@ -606,3 +563,111 @@ CHAMPLAIN_FILE_CACHE_GET_CLASS
 ChamplainFileCacheClass
 ChamplainFileCachePrivate
 </SECTION>
+
+<SECTION>
+<FILE>champlain-memory-cache</FILE>
+<TITLE>ChamplainMemoryCache</TITLE>
+ChamplainMemoryCache
+champlain_memory_cache_new_full
+champlain_memory_cache_get_size_limit
+champlain_memory_cache_set_size_limit
+champlain_memory_cache_clean
+<SUBSECTION Standard>
+CHAMPLAIN_MEMORY_CACHE
+CHAMPLAIN_IS_MEMORY_CACHE
+CHAMPLAIN_TYPE_MEMORY_CACHE
+champlain_memory_cache_get_type
+CHAMPLAIN_MEMORY_CACHE_CLASS
+CHAMPLAIN_IS_MEMORY_CACHE_CLASS
+CHAMPLAIN_MEMORY_CACHE_GET_CLASS
+<SUBSECTION Private>
+ChamplainMemoryCacheClass
+ChamplainMemoryCachePrivate
+</SECTION>
+
+<SECTION>
+<FILE>champlain-renderer</FILE>
+<TITLE>ChamplainRenderer</TITLE>
+ChamplainRenderer
+champlain_renderer_set_data
+champlain_renderer_render
+<SUBSECTION Standard>
+CHAMPLAIN_RENDERER
+CHAMPLAIN_IS_RENDERER
+CHAMPLAIN_TYPE_RENDERER
+champlain_renderer_get_type
+CHAMPLAIN_RENDERER_CLASS
+CHAMPLAIN_IS_RENDERER_CLASS
+CHAMPLAIN_RENDERER_GET_CLASS
+<SUBSECTION Private>
+ChamplainRendererClass
+</SECTION>
+
+<SECTION>
+<FILE>champlain-error-tile-renderer</FILE>
+<TITLE>ChamplainErrorTileRenderer</TITLE>
+ChamplainErrorTileRenderer
+champlain_error_tile_renderer_new
+champlain_error_tile_renderer_set_tile_size
+champlain_error_tile_renderer_get_tile_size
+<SUBSECTION Standard>
+CHAMPLAIN_ERROR_TILE_RENDERER
+CHAMPLAIN_IS_ERROR_TILE_RENDERER
+CHAMPLAIN_TYPE_ERROR_TILE_RENDERER
+champlain_error_tile_renderer_get_type
+CHAMPLAIN_ERROR_TILE_RENDERER_CLASS
+CHAMPLAIN_IS_ERROR_TILE_RENDERER_CLASS
+CHAMPLAIN_ERROR_TILE_RENDERER_GET_CLASS
+<SUBSECTION Private>
+ChamplainErrorTileRendererClass
+ChamplainErrorTileRendererPrivate
+</SECTION>
+
+<SECTION>
+<FILE>champlain-image-renderer</FILE>
+<TITLE>ChamplainImageRenderer</TITLE>
+ChamplainImageRenderer
+champlain_image_renderer_new
+<SUBSECTION Standard>
+CHAMPLAIN_IMAGE_RENDERER
+CHAMPLAIN_IS_IMAGE_RENDERER
+CHAMPLAIN_TYPE_IMAGE_RENDERER
+champlain_image_renderer_get_type
+CHAMPLAIN_IMAGE_RENDERER_CLASS
+CHAMPLAIN_IS_IMAGE_RENDERER_CLASS
+CHAMPLAIN_IMAGE_RENDERER_GET_CLASS
+<SUBSECTION Private>
+ChamplainImageRendererClass
+ChamplainImageRendererPrivate
+</SECTION>
+
+<SECTION>
+<FILE>champlain-memphis-renderer</FILE>
+<TITLE>ChamplainMemphisRenderer</TITLE>
+ChamplainMemphisRenderer
+ChamplainMemphisRule
+ChamplainMemphisRuleAttr
+ChamplainMemphisRuleType
+champlain_memphis_renderer_new_full
+champlain_memphis_renderer_load_rules
+champlain_memphis_renderer_get_background_color
+champlain_memphis_renderer_set_background_color
+champlain_memphis_renderer_get_rule_ids
+champlain_memphis_renderer_set_rule
+champlain_memphis_renderer_get_rule
+champlain_memphis_renderer_remove_rule
+champlain_memphis_renderer_get_bounding_box
+champlain_memphis_renderer_set_tile_size
+champlain_memphis_renderer_get_tile_size
+<SUBSECTION Standard>
+CHAMPLAIN_MEMPHIS_RENDERER
+CHAMPLAIN_IS_MEMPHIS_RENDERER
+CHAMPLAIN_TYPE_MEMPHIS_RENDERER
+champlain_memphis_renderer_get_type
+CHAMPLAIN_MEMPHIS_RENDERER_CLASS
+CHAMPLAIN_IS_MEMPHIS_RENDERER_CLASS
+CHAMPLAIN_MEMPHIS_RENDERER_GET_CLASS
+<SUBSECTION Private>
+ChamplainMemphisRendererClass
+ChamplainMemphisRendererPrivate
+</SECTION>



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