<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="GObject" version="2.0"/>
  <include name="Gtk" version="3.0"/>
  <c:include name="osm-gps-map.h"/>
  <doc:format name="unknown"/>
  <namespace name="OsmGpsMap"
             version="1.0"
             shared-library="libosmgpsmap-1.0.so.1"
             c:identifier-prefixes="OsmGps"
             c:symbol-prefixes="osm_gps">
    <function-macro name="MAP" c:identifier="OSM_GPS_MAP" introspectable="0">
      <source-position filename="osm-gps-map-widget.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="MAP_CACHE_AUTO"
              value="auto://"
              c:type="OSM_GPS_MAP_CACHE_AUTO">
      <source-position filename="osm-gps-map-widget.h" line="76"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="MAP_CACHE_DISABLED"
              value="none://"
              c:type="OSM_GPS_MAP_CACHE_DISABLED">
      <source-position filename="osm-gps-map-widget.h" line="75"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="MAP_CACHE_FRIENDLY"
              value="friendly://"
              c:type="OSM_GPS_MAP_CACHE_FRIENDLY">
      <source-position filename="osm-gps-map-widget.h" line="77"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <function-macro name="MAP_CLASS"
                    c:identifier="OSM_GPS_MAP_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-widget.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_GET_CLASS"
                    c:identifier="OSM_GPS_MAP_GET_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-widget.h" line="38"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IMAGE"
                    c:identifier="OSM_GPS_MAP_IMAGE"
                    introspectable="0">
      <source-position filename="osm-gps-map-image.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IMAGE_CLASS"
                    c:identifier="OSM_GPS_MAP_IMAGE_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-image.h" line="33"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IMAGE_GET_CLASS"
                    c:identifier="OSM_GPS_MAP_IMAGE_GET_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-image.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="MAP_INVALID" value="0" c:type="OSM_GPS_MAP_INVALID">
      <source-position filename="osm-gps-map-widget.h" line="74"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="MAP_IS_IMAGE"
                    c:identifier="OSM_GPS_MAP_IS_IMAGE"
                    introspectable="0">
      <source-position filename="osm-gps-map-image.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_IMAGE_CLASS"
                    c:identifier="OSM_GPS_MAP_IS_IMAGE_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-image.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_LAYER"
                    c:identifier="OSM_GPS_MAP_IS_LAYER"
                    introspectable="0">
      <source-position filename="osm-gps-map-layer.h" line="37"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_MAP"
                    c:identifier="OSM_GPS_MAP_IS_MAP"
                    introspectable="0">
      <source-position filename="osm-gps-map-widget.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_MAP_CLASS"
                    c:identifier="OSM_GPS_MAP_IS_MAP_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-widget.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_OSD"
                    c:identifier="OSM_GPS_MAP_IS_OSD"
                    introspectable="0">
      <source-position filename="osm-gps-map-osd.h" line="30"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_OSD_CLASS"
                    c:identifier="OSM_GPS_MAP_IS_OSD_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-osd.h" line="31"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_POLYGON"
                    c:identifier="OSM_GPS_MAP_IS_POLYGON"
                    introspectable="0">
      <source-position filename="osm-gps-map-polygon.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_POLYGON_CLASS"
                    c:identifier="OSM_GPS_MAP_IS_POLYGON_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-polygon.h" line="34"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_TRACK"
                    c:identifier="OSM_GPS_MAP_IS_TRACK"
                    introspectable="0">
      <source-position filename="osm-gps-map-track.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_IS_TRACK_CLASS"
                    c:identifier="OSM_GPS_MAP_IS_TRACK_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-track.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_LAYER"
                    c:identifier="OSM_GPS_MAP_LAYER"
                    introspectable="0">
      <source-position filename="osm-gps-map-layer.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_LAYER_GET_INTERFACE"
                    c:identifier="OSM_GPS_MAP_LAYER_GET_INTERFACE"
                    introspectable="0">
      <source-position filename="osm-gps-map-layer.h" line="38"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_OSD"
                    c:identifier="OSM_GPS_MAP_OSD"
                    introspectable="0">
      <source-position filename="osm-gps-map-osd.h" line="28"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_OSD_CLASS"
                    c:identifier="OSM_GPS_MAP_OSD_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-osd.h" line="29"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_OSD_GET_CLASS"
                    c:identifier="OSM_GPS_MAP_OSD_GET_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-osd.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_POLYGON"
                    c:identifier="OSM_GPS_MAP_POLYGON"
                    introspectable="0">
      <source-position filename="osm-gps-map-polygon.h" line="31"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_POLYGON_CLASS"
                    c:identifier="OSM_GPS_MAP_POLYGON_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-polygon.h" line="32"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_POLYGON_GET_CLASS"
                    c:identifier="OSM_GPS_MAP_POLYGON_GET_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-polygon.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_TRACK"
                    c:identifier="OSM_GPS_MAP_TRACK"
                    introspectable="0">
      <source-position filename="osm-gps-map-track.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_TRACK_CLASS"
                    c:identifier="OSM_GPS_MAP_TRACK_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-track.h" line="33"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MAP_TRACK_GET_CLASS"
                    c:identifier="OSM_GPS_MAP_TRACK_GET_CLASS"
                    introspectable="0">
      <source-position filename="osm-gps-map-track.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Map"
           c:symbol-prefix="map"
           c:type="OsmGpsMap"
           parent="Gtk.DrawingArea"
           glib:type-name="OsmGpsMap"
           glib:get-type="osm_gps_map_get_type"
           glib:type-struct="MapClass">
      <source-position filename="osm-gps-map-widget.h" line="55"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="osm_gps_map_new">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3204">Returns a new #OsmGpsMap object, defaults to showing data from
&lt;ulink url="http://www.openstreetmap.org"&gt;&lt;citetitle&gt;OpenStreetMap&lt;/citetitle&gt;&lt;/ulink&gt;

See the properties description for more information about construction
parameters than could be passed to g_object_new()</doc>
        <source-position filename="osm-gps-map-widget.h" line="81"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3213">a newly created #OsmGpsMap object.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <function name="get_default_cache_directory"
                c:identifier="osm_gps_map_get_default_cache_directory">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3265">Returns (transfer full): the default cache directory for the library, that is the base
directory to which the full cache path is appended. If
#OsmGpsMap:tile-cache-base is omitted from the constructor then this value
is used.</doc>
        <source-position filename="osm-gps-map-widget.h" line="83"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
      </function>
      <function name="source_get_copyright"
                c:identifier="osm_gps_map_source_get_copyright"
                version="1.2.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="56">Get copyright information for the source</doc>
        <source-position filename="osm-gps-map-source.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="62">Source copyright information</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="58">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_get_friendly_name"
                c:identifier="osm_gps_map_source_get_friendly_name"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="46">Get friendly name for source</doc>
        <source-position filename="osm-gps-map-source.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="52">Nice printable source name</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="48">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_get_image_format"
                c:identifier="osm_gps_map_source_get_image_format"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="76">Get tile image format for the source</doc>
        <source-position filename="osm-gps-map-source.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="82">source tile image format</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="78">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_get_max_zoom"
                c:identifier="osm_gps_map_source_get_max_zoom"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="96">Get maximum zoom level for the source</doc>
        <source-position filename="osm-gps-map-source.h" line="105"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="102">source maximum zoom level</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="98">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_get_min_zoom"
                c:identifier="osm_gps_map_source_get_min_zoom"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="86">Get minimum zoom level for the source</doc>
        <source-position filename="osm-gps-map-source.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="92">source minimum zoom level</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="88">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_get_repo_uri"
                c:identifier="osm_gps_map_source_get_repo_uri"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="66">Get repository URI address for the source</doc>
        <source-position filename="osm-gps-map-source.h" line="75"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="72">Source repo URI</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="68">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_is_valid"
                c:identifier="osm_gps_map_source_is_valid"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-source.h"
             line="106">Check whether source is considered valid</doc>
        <source-position filename="osm-gps-map-source.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-source.h"
               line="112">Validity of the source (whether repo uri is not null)</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-source.h"
                 line="108">a #OsmGpsMapSource_t source id</doc>
            <type name="MapSource_t" c:type="OsmGpsMapSource_t"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="draw_gps_point">
        <source-position filename="osm-gps-map-widget.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="cr" transfer-ownership="none">
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="convert_geographic_to_screen"
              c:identifier="osm_gps_map_convert_geographic_to_screen"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3733">Convert the given location on the globe to the corresponding
pixel locations on the map.</doc>
        <source-position filename="osm-gps-map-widget.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3735">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="pt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3736">location</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
          <parameter name="pixel_x"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3737">pixel location on map, x axis</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
          <parameter name="pixel_y"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3738">pixel location on map, y axis</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="convert_screen_to_geographic"
              c:identifier="osm_gps_map_convert_screen_to_geographic"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3704">Convert the given pixel location on the map into corresponding
location on the globe</doc>
        <source-position filename="osm-gps-map-widget.h" line="116"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3706">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="pixel_x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3707">pixel location on map, x axis</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="pixel_y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3708">pixel location on map, y axis</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="pt"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3709">location</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="download_cancel_all"
              c:identifier="osm_gps_map_download_cancel_all"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2995">Cancels all tiles currently being downloaded. Typically used if you wish to
cacel a large number of tiles queued using osm_gps_map_download_maps()</doc>
        <source-position filename="osm-gps-map-widget.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="2997">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="download_maps" c:identifier="osm_gps_map_download_maps">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2926">Downloads all tiles over the supplied zoom range in the rectangular
region specified by pt1 (north west corner) to pt2 (south east corner)</doc>
        <source-position filename="osm-gps-map-widget.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="2928">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="pt1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="2929">nort west corner</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
          <parameter name="pt2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="2930">south east corner</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
          <parameter name="zoom_start" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="2931">start of zoom range</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="zoom_end" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="2932">end of zoom range</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_bbox" c:identifier="osm_gps_map_get_bbox">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3011">Returns the geographic locations of the bounding box describing the contents
of the current window, i.e the top left and bottom right corners.</doc>
        <source-position filename="osm-gps-map-widget.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3013">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="pt1"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3014">point to be filled with the top left location</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
          <parameter name="pt2"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3015">point to be filled with the bottom right location</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_event_location"
              c:identifier="osm_gps_map_get_event_location"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3764">A convenience function for getting the geographic location of events,
such as mouse clicks, on the map

Free returned point with g_free</doc>
        <source-position filename="osm-gps-map-widget.h" line="118"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3774">The point on the globe corresponding to the click</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3766">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3767">A #GtkEventButton that occured on the map</doc>
            <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_scale" c:identifier="osm_gps_map_get_scale">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3245">Get the scale of the map at the center, in meters/pixel.</doc>
        <source-position filename="osm-gps-map-widget.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3251">the scale of the map at the center, in meters/pixel.</doc>
          <type name="gfloat" c:type="float"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3247">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="gps_add"
              c:identifier="osm_gps_map_gps_add"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3457">Set current GPS point to given lat/lon point with given heading.
If record-trip-history is set, add point to trip history</doc>
        <source-position filename="osm-gps-map-widget.h" line="104"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3459">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3460">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3461">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="heading" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3462">GPS degrees or #OSM_GPS_MAP_INVALID to disable showing heading</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <method name="gps_clear"
              c:identifier="osm_gps_map_gps_clear"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3414">Clear GPS track history</doc>
        <source-position filename="osm-gps-map-widget.h" line="105"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3416">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="gps_get_track"
              c:identifier="osm_gps_map_gps_get_track"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3439">Get internal GPS track history</doc>
        <source-position filename="osm-gps-map-widget.h" line="106"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3445">The #OsmGpsMapTrack of the internal GPS track,
i.e. that which is modified when calling osm_gps_map_gps_add(). You must
not free this.</doc>
          <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3441">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="image_add"
              c:identifier="osm_gps_map_image_add"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3495">Creates @OsmGpsMapImage with given params and adds it to map images</doc>
        <source-position filename="osm-gps-map-widget.h" line="107"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3504">A #OsmGpsMapImage representing the added pixbuf</doc>
          <type name="MapImage" c:type="OsmGpsMapImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3497">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3498">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3499">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3500">Image pixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <method name="image_add_with_alignment"
              c:identifier="osm_gps_map_image_add_with_alignment"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3538">Creates @OsmGpsMapImage with given params and adds it to map images</doc>
        <source-position filename="osm-gps-map-widget.h" line="109"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3549">A #OsmGpsMapImage representing the added pixbuf</doc>
          <type name="MapImage" c:type="OsmGpsMapImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3540">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3541">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3542">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3543">Image pixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
          <parameter name="xalign" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3544">x-align of image</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="yalign" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3545">y-align of image</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <method name="image_add_with_alignment_z"
              c:identifier="osm_gps_map_image_add_with_alignment_z"
              version="0.7.4">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3567">Creates @OsmGpsMapImage with given params and adds it to map images</doc>
        <source-position filename="osm-gps-map-widget.h" line="110"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3579">A #OsmGpsMapImage representing the added pixbuf</doc>
          <type name="MapImage" c:type="OsmGpsMapImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3569">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3570">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3571">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3572">Image pixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
          <parameter name="xalign" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3573">x-align of image</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="yalign" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3574">y-align of image</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="zorder" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3575">z-order of image</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="image_add_z"
              c:identifier="osm_gps_map_image_add_z"
              version="0.7.4">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3513">Creates @OsmGpsMapImage with given params and adds it to map images</doc>
        <source-position filename="osm-gps-map-widget.h" line="108"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3523">A #OsmGpsMapImage representing the added pixbuf</doc>
          <type name="MapImage" c:type="OsmGpsMapImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3515">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3516">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3517">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3518">Image pixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
          <parameter name="zorder" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3519">z-order of image</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="image_remove"
              c:identifier="osm_gps_map_image_remove"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3604">Remove image from list of images</doc>
        <source-position filename="osm-gps-map-widget.h" line="111"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3611">true if image was on list of images</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3606">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3607">a @OsmGpsMapImage to remove</doc>
            <type name="MapImage" c:type="OsmGpsMapImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="image_remove_all"
              c:identifier="osm_gps_map_image_remove_all"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3628">Remove all images from map</doc>
        <source-position filename="osm-gps-map-widget.h" line="112"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3630">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="layer_add"
              c:identifier="osm_gps_map_layer_add"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3645">Add layer to map</doc>
        <source-position filename="osm-gps-map-widget.h" line="113"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3647">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3648">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </parameter>
        </parameters>
      </method>
      <method name="layer_remove"
              c:identifier="osm_gps_map_layer_remove"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3664">Remove layer from map</doc>
        <source-position filename="osm-gps-map-widget.h" line="114"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3671">whether layer was found and removed</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3666">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="layer" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3667">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </parameter>
        </parameters>
      </method>
      <method name="layer_remove_all"
              c:identifier="osm_gps_map_layer_remove_all"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3687">Remove all layers from map</doc>
        <source-position filename="osm-gps-map-widget.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3689">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="map_redraw" c:identifier="osm_gps_map_map_redraw">
        <source-position filename="osm-gps-map-widget.h" line="119"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="map_redraw_idle"
              c:identifier="osm_gps_map_map_redraw_idle">
        <source-position filename="osm-gps-map-widget.h" line="120"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="polygon_add" c:identifier="osm_gps_map_polygon_add">
        <source-position filename="osm-gps-map-widget.h" line="101"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="poly" transfer-ownership="none">
            <type name="MapPolygon" c:type="OsmGpsMapPolygon*"/>
          </parameter>
        </parameters>
      </method>
      <method name="polygon_remove" c:identifier="osm_gps_map_polygon_remove">
        <source-position filename="osm-gps-map-widget.h" line="103"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="poly" transfer-ownership="none">
            <type name="MapPolygon" c:type="OsmGpsMapPolygon*"/>
          </parameter>
        </parameters>
      </method>
      <method name="polygon_remove_all"
              c:identifier="osm_gps_map_polygon_remove_all">
        <source-position filename="osm-gps-map-widget.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="scroll" c:identifier="osm_gps_map_scroll">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3221">Scrolls the map by @dx, @dy pixels (positive north, east)</doc>
        <source-position filename="osm-gps-map-widget.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3223">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="dx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3224">pixels to scroll in NS (positive: scroll nort, negative: scroll south)</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="dy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3225">pixels to scroll in EW (positive: scroll east, negative: scroll west)</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_center" c:identifier="osm_gps_map_set_center">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3074">Set map center, does not change zoom level</doc>
        <source-position filename="osm-gps-map-widget.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3076">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3077">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3078">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_center_and_zoom"
              c:identifier="osm_gps_map_set_center_and_zoom"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3057">Set map center and desired zoom level</doc>
        <source-position filename="osm-gps-map-widget.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3059">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3060">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3061">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="zoom" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3062">desired zoom level</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_keyboard_shortcut"
              c:identifier="osm_gps_map_set_keyboard_shortcut">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3283">Associates a keyboard shortcut with the supplied @keyval
(as returned by #gdk_keyval_from_name or simiar). The action given in @key
will be triggered when the corresponding @keyval is pressed. By default
no keyboard shortcuts are associated.</doc>
        <source-position filename="osm-gps-map-widget.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3285">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3286">a #OsmGpsMapKey_t</doc>
            <type name="MapKey_t" c:type="OsmGpsMapKey_t"/>
          </parameter>
          <parameter name="keyval" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3287">a keyval to bind</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_zoom" c:identifier="osm_gps_map_set_zoom">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3133">Set map zoom to the desired zoom level</doc>
        <source-position filename="osm-gps-map-widget.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3140">zoom level</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3135">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="zoom" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3136">Desired zoom level</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_zoom_offset"
              c:identifier="osm_gps_map_set_zoom_offset">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3110">Set tile zoom offset</doc>
        <source-position filename="osm-gps-map-widget.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3112">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="zoom_offset" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3113">tile zoom offset</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="track_add"
              c:identifier="osm_gps_map_track_add"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3305">Add a track to map</doc>
        <source-position filename="osm-gps-map-widget.h" line="98"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3307">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3308">a @OsmGpsMapTrack object</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </parameter>
        </parameters>
      </method>
      <method name="track_remove"
              c:identifier="osm_gps_map_track_remove"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3349">Remove given track from map</doc>
        <source-position filename="osm-gps-map-widget.h" line="100"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3351">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3352">a #OsmGpsMapTrack object</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </parameter>
        </parameters>
      </method>
      <method name="track_remove_all"
              c:identifier="osm_gps_map_track_remove_all"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3332">Remove all tracks</doc>
        <source-position filename="osm-gps-map-widget.h" line="99"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3334">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="zoom_fit_bbox"
              c:identifier="osm_gps_map_zoom_fit_bbox"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3035">Zoom and center the map so that both points fit inside the window.</doc>
        <source-position filename="osm-gps-map-widget.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3037">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
          <parameter name="latitude1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3038">latitude of 1st point in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="latitude2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3039">latitude of 2nd point in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3040">longtitude of 1st point in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="longitude2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3041">longtitude of 2nd point in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <method name="zoom_in" c:identifier="osm_gps_map_zoom_in">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3172">Zoom in by 1 step</doc>
        <source-position filename="osm-gps-map-widget.h" line="93"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3178">zoom level</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3174">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="zoom_out" c:identifier="osm_gps_map_zoom_out">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="3188">Zoom out by 1 step</doc>
        <source-position filename="osm-gps-map-widget.h" line="94"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-widget.c"
               line="3194">zoom level</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-widget.c"
                 line="3190">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="auto-center"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="auto-center-threshold"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.250000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="auto-download"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="drag-limit"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="10">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="gps-track-highlight-radius"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="20">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="gps-track-point-radius"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="5">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="gps-track-width"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="4.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="image-format"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="png">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="latitude"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="longitude"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="map-source"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2867">A #OsmGpsMapSource_t representing the tile repository to use

&lt;note&gt;
&lt;para&gt;
If you do not wish to use the default map tiles (provided by OpenStreeMap)
it is recommened that you set this property at construction, instead
of setting #OsmGpsMap:repo-uri.
&lt;/para&gt;
&lt;/note&gt;</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="map-x"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="890">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="map-y"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="515">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="max-zoom"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="20">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="min-zoom"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="1">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="proxy-uri"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="record-trip-history"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="repo-uri"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="https://tile.openstreetmap.org/#Z/#X/#Y.png">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2591">A URI string which defines the location and format to fetch tiles
for the map. The string is of the format
"http://tile.openstreetmap.org/&amp;num;Z/&amp;num;X/&amp;num;Y.png". Characters
that begin with &amp;num; are treated as tokens and replaced according to
the following rules;

&lt;itemizedlist&gt;
&lt;listitem&gt;
&lt;para&gt;
\#X - X-tile, slippy map format
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#Y - Y-tile, slippy map format, mercator projection
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#Z - Zoom level, where min_zoom &amp;gt;= zoom &amp;lt;= max_zoom
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#S - Zoom level, where -max_zoom &amp;gt;= (zoom-max_zoom) &amp;lt;= min_zoom
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#Q - Quad tree format, set of "qrts"
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#Q0 - Quad tree format, set of "0123"
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#YS - Not Implemented
&lt;/para&gt;
&lt;/listitem&gt;
&lt;listitem&gt;
&lt;para&gt;
\#R - Random integer in range [0,4]
&lt;/para&gt;
&lt;/listitem&gt;
&lt;/itemizedlist&gt;

&lt;note&gt;
&lt;para&gt;
If you do not wish to use the default map tiles (provided by OpenStreeMap)
it is recommened that you use one of the predefined map sources, and thus
you should construct the map by setting #OsmGpsMap:map-source and not
#OsmGpsMap:repo-uri. The #OsmGpsMap:repo-uri property is primarily
designed for applications that wish complete control of tile repository
management, or wish to use #OsmGpsMap with a tile repository it does not
explicitly support.
&lt;/para&gt;
&lt;/note&gt;</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="show-gps-point"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2568">Controls whether the current gps point is shown on the map. Note that
for derived classes that implement the draw_gps_point vfunc, if this
property is %FALSE</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-trip-history"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="tile-cache"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="auto://">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2687">Either a full path or one of the special format URIs
#OSM_GPS_MAP_CACHE_DISABLED, #OSM_GPS_MAP_CACHE_AUTO,
#OSM_GPS_MAP_CACHE_FRIENDLY. Also see #OsmGpsMap:tile-cache-base for a
full understanding.

#OSM_GPS_MAP_CACHE_DISABLED disables the on disk tile cache (so all tiles
are fetched from the network. #OSM_GPS_MAP_CACHE_AUTO causes the tile
cache to be /tile-cache-base/md5(repo-uri), where md5 is the md5sum
of #OsmGpsMap:repo-uri. #OSM_GPS_MAP_CACHE_FRIENDLY
causes the tile cache to be /tile-cache-base/friendlyname(repo-uri).

Any other string is interpreted as a local path, i.e. /path/to/cache</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="tile-cache-base"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2711">The base directory of the tile cache when you have constructed
the map with #OsmGpsMap:tile-cache set to #OSM_GPS_MAP_CACHE_AUTO or
#OSM_GPS_MAP_CACHE_FRIENDLY

The string is interpreted as a local path, i.e. /path/to/cache. If NULL
is supplied, map tiles are cached starting in the users cache directory,
(as outlined in the
&lt;ulink url="http://www.freedesktop.org/wiki/Specifications/basedir-spec"&gt;
&lt;citetitle&gt;XDG Base Directory Specification&lt;/citetitle&gt;&lt;/ulink&gt;). To get the
base directory where map tiles will be cached call
osm_gps_map_get_default_cache_directory()</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="tile-zoom-offset"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="tiles-queued"
                transfer-ownership="none"
                default-value="0">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2821">The number of tiles currently waiting to download. Connect to
::notify::tiles-queued if you want to be informed when this changes</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="user-agent"
                version="1.2.0"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2671">The default user-agent for downloading tiles from the #OsmGpsMap:map-source
is "libosmgpsmap/VERSION". The value of #OsmGpsMap:user-agent will be
appended to it.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="zoom"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="3">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2735">The map zoom level. Connect to ::notify::zoom if you want to be informed
when this changes.</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.DrawingArea" c:type="GtkDrawingArea"/>
      </field>
      <field name="priv">
        <type name="MapPrivate" c:type="OsmGpsMapPrivate*"/>
      </field>
      <glib:signal name="changed" when="first">
        <doc xml:space="preserve"
             filename="osm-gps-map-widget.c"
             line="2908">The #OsmGpsMap::changed signal is emitted any time the map zoom or map center
is chaged (such as by dragging or zooming).

&lt;note&gt;
&lt;para&gt;
If you are only interested in the map zoom, then you can simply connect
to ::notify::zoom
&lt;/para&gt;
&lt;/note&gt;</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="MapClass"
            c:type="OsmGpsMapClass"
            glib:is-gtype-struct-for="Map">
      <source-position filename="osm-gps-map-widget.h" line="55"/>
      <field name="parent_class">
        <type name="Gtk.DrawingAreaClass" c:type="GtkDrawingAreaClass"/>
      </field>
      <field name="draw_gps_point">
        <callback name="draw_gps_point">
          <source-position filename="osm-gps-map-widget.h" line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="map" transfer-ownership="none">
              <type name="Map" c:type="OsmGpsMap*"/>
            </parameter>
            <parameter name="cr" transfer-ownership="none">
              <type name="cairo.Context" c:type="cairo_t*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="MapImage"
           c:symbol-prefix="map_image"
           c:type="OsmGpsMapImage"
           parent="GObject.Object"
           glib:type-name="OsmGpsMapImage"
           glib:get-type="osm_gps_map_image_get_type"
           glib:type-struct="MapImageClass">
      <source-position filename="osm-gps-map-image.h" line="52"/>
      <constructor name="new"
                   c:identifier="osm_gps_map_image_new"
                   version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-image.h"
             line="64">Create new image</doc>
        <source-position filename="osm-gps-map-image.h" line="72"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-image.h"
               line="69">New image</doc>
          <type name="MapImage" c:type="OsmGpsMapImage*"/>
        </return-value>
      </constructor>
      <method name="draw"
              c:identifier="osm_gps_map_image_draw"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-image.h"
             line="73">Draw image to given cairo context</doc>
        <source-position filename="osm-gps-map-image.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="75">a #OsmGpsMapImage</doc>
            <type name="MapImage" c:type="OsmGpsMapImage*"/>
          </instance-parameter>
          <parameter name="cr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="76">cairo context</doc>
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
          <parameter name="rect"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="77">bounding rectangle</doc>
            <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_point"
              c:identifier="osm_gps_map_image_get_point"
              glib:get-property="point"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-image.h"
             line="84">Get image location point</doc>
        <source-position filename="osm-gps-map-image.h" line="93"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-image.h"
               line="90">location point</doc>
          <type name="MapPoint" c:type="const OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="86">a #OsmGpsMapImage</doc>
            <type name="MapImage" c:type="OsmGpsMapImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rotation"
              c:identifier="osm_gps_map_image_get_rotation"
              glib:get-property="rotation"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-image.h"
             line="104">Get image rotation</doc>
        <source-position filename="osm-gps-map-image.h" line="113"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-image.h"
               line="110">rotation</doc>
          <type name="gfloat" c:type="float"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="106">a #OsmGpsMapImage</doc>
            <type name="MapImage" c:type="OsmGpsMapImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_zorder"
              c:identifier="osm_gps_map_image_get_zorder"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-image.h"
             line="94">Get image z-order</doc>
        <source-position filename="osm-gps-map-image.h" line="103"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-image.h"
               line="100">z-order</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="96">a #OsmGpsMapImage</doc>
            <type name="MapImage" c:type="OsmGpsMapImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_rotation"
              c:identifier="osm_gps_map_image_set_rotation"
              glib:set-property="rotation"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-image.h"
             line="114">Set image rotation</doc>
        <source-position filename="osm-gps-map-image.h" line="122"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="116">a #OsmGpsMapImage</doc>
            <type name="MapImage" c:type="OsmGpsMapImage*"/>
          </instance-parameter>
          <parameter name="rot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-image.h"
                 line="117">image rotation in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <property name="pixbuf"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="GdkPixbuf.Pixbuf"/>
      </property>
      <property name="point"
                writable="1"
                construct="1"
                transfer-ownership="none"
                getter="get_point">
        <type name="MapPoint"/>
      </property>
      <property name="rotation"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_rotation"
                getter="get_rotation"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="x-align"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.500000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="y-align"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.500000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="z-order"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="MapImagePrivate" c:type="OsmGpsMapImagePrivate*"/>
      </field>
    </class>
    <record name="MapImageClass"
            c:type="OsmGpsMapImageClass"
            glib:is-gtype-struct-for="MapImage">
      <source-position filename="osm-gps-map-image.h" line="52"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="MapImagePrivate"
            c:type="OsmGpsMapImagePrivate"
            disguised="1"
            opaque="1">
      <source-position filename="osm-gps-map-image.h" line="40"/>
    </record>
    <enumeration name="MapKey_t" c:type="OsmGpsMapKey_t">
      <source-position filename="osm-gps-map-widget.h" line="72"/>
      <member name="fullscreen"
              value="0"
              c:identifier="OSM_GPS_MAP_KEY_FULLSCREEN">
      </member>
      <member name="zoomin" value="1" c:identifier="OSM_GPS_MAP_KEY_ZOOMIN">
      </member>
      <member name="zoomout" value="2" c:identifier="OSM_GPS_MAP_KEY_ZOOMOUT">
      </member>
      <member name="up" value="3" c:identifier="OSM_GPS_MAP_KEY_UP">
      </member>
      <member name="down" value="4" c:identifier="OSM_GPS_MAP_KEY_DOWN">
      </member>
      <member name="left" value="5" c:identifier="OSM_GPS_MAP_KEY_LEFT">
      </member>
      <member name="right" value="6" c:identifier="OSM_GPS_MAP_KEY_RIGHT">
      </member>
      <member name="max" value="7" c:identifier="OSM_GPS_MAP_KEY_MAX">
      </member>
    </enumeration>
    <interface name="MapLayer"
               c:symbol-prefix="map_layer"
               c:type="OsmGpsMapLayer"
               glib:type-name="OsmGpsMapLayer"
               glib:get-type="osm_gps_map_layer_get_type"
               glib:type-struct="MapLayerIface">
      <source-position filename="osm-gps-map-layer.h" line="52"/>
      <virtual-method name="busy" invoker="busy" version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="87">Check whether layer is busy (eg drawing an animation)</doc>
        <source-position filename="osm-gps-map-layer.h" line="50"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-layer.h"
               line="93">layer busy state</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="89">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="button_press"
                      invoker="button_press"
                      version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="98">Handle button event</doc>
        <source-position filename="osm-gps-map-layer.h" line="51"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-layer.h"
               line="106">whether even had been handled</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="100">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
          <parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="101">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="102">a #GdkEventButton event</doc>
            <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="draw" invoker="draw" version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="75">Draw layer on map</doc>
        <source-position filename="osm-gps-map-layer.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="77">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
          <parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="78">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </parameter>
          <parameter name="cr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="79">a cairo context to draw to</doc>
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="render" invoker="render" version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="64">Render layer on map</doc>
        <source-position filename="osm-gps-map-layer.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="66">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
          <parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="67">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="busy"
              c:identifier="osm_gps_map_layer_busy"
              version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="87">Check whether layer is busy (eg drawing an animation)</doc>
        <source-position filename="osm-gps-map-layer.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-layer.h"
               line="93">layer busy state</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="89">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="button_press"
              c:identifier="osm_gps_map_layer_button_press"
              version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="98">Handle button event</doc>
        <source-position filename="osm-gps-map-layer.h" line="109"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-layer.h"
               line="106">whether even had been handled</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="100">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
          <parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="101">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="102">a #GdkEventButton event</doc>
            <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
          </parameter>
        </parameters>
      </method>
      <method name="draw"
              c:identifier="osm_gps_map_layer_draw"
              version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="75">Draw layer on map</doc>
        <source-position filename="osm-gps-map-layer.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="77">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
          <parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="78">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </parameter>
          <parameter name="cr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="79">a cairo context to draw to</doc>
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="render"
              c:identifier="osm_gps_map_layer_render"
              version="0.6.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-layer.h"
             line="64">Render layer on map</doc>
        <source-position filename="osm-gps-map-layer.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="66">a #OsmGpsMapLayer object</doc>
            <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
          </instance-parameter>
          <parameter name="map" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="67">a #OsmGpsMap widget</doc>
            <type name="Map" c:type="OsmGpsMap*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="MapLayerIface"
            c:type="OsmGpsMapLayerIface"
            glib:is-gtype-struct-for="MapLayer">
      <source-position filename="osm-gps-map-layer.h" line="52"/>
      <field name="parent">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="render">
        <callback name="render">
          <source-position filename="osm-gps-map-layer.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="66">a #OsmGpsMapLayer object</doc>
              <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
            </parameter>
            <parameter name="map" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="67">a #OsmGpsMap widget</doc>
              <type name="Map" c:type="OsmGpsMap*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="draw">
        <callback name="draw">
          <source-position filename="osm-gps-map-layer.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="77">a #OsmGpsMapLayer object</doc>
              <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
            </parameter>
            <parameter name="map" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="78">a #OsmGpsMap widget</doc>
              <type name="Map" c:type="OsmGpsMap*"/>
            </parameter>
            <parameter name="cr" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="79">a cairo context to draw to</doc>
              <type name="cairo.Context" c:type="cairo_t*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="busy">
        <callback name="busy">
          <source-position filename="osm-gps-map-layer.h" line="50"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="93">layer busy state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="89">a #OsmGpsMapLayer object</doc>
              <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="button_press">
        <callback name="button_press">
          <source-position filename="osm-gps-map-layer.h" line="51"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-layer.h"
                 line="106">whether even had been handled</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="100">a #OsmGpsMapLayer object</doc>
              <type name="MapLayer" c:type="OsmGpsMapLayer*"/>
            </parameter>
            <parameter name="map" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="101">a #OsmGpsMap widget</doc>
              <type name="Map" c:type="OsmGpsMap*"/>
            </parameter>
            <parameter name="event" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="osm-gps-map-layer.h"
                   line="102">a #GdkEventButton event</doc>
              <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="MapOsd"
           c:symbol-prefix="map_osd"
           c:type="OsmGpsMapOsd"
           parent="GObject.Object"
           glib:type-name="OsmGpsMapOsd"
           glib:get-type="osm_gps_map_osd_get_type"
           glib:type-struct="MapOsdClass">
      <source-position filename="osm-gps-map-osd.h" line="52"/>
      <implements name="MapLayer"/>
      <constructor name="new" c:identifier="osm_gps_map_osd_new">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="616">Creates a new instance of #OsmGpsMapOsd.</doc>
        <source-position filename="osm-gps-map-osd.h" line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-osd.c"
               line="621">the newly created #OsmGpsMapOsd instance</doc>
          <type name="MapOsd" c:type="OsmGpsMapOsd*"/>
        </return-value>
      </constructor>
      <property name="dpad-radius"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="30">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="360">The dpad radius property.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="osd-x"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="10">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="332">The osd x property.</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="osd-y"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="10">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="346">The osd y property.</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="show-coordinates"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="386">The show coordinates of map centre property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-copyright"
                version="1.2.0"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="458">The show copyright property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-crosshair"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="398">The show crosshair at map centre property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-dpad"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="410">The show dpad for map navigation property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-gps-in-dpad"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="434">The show gps indicator in middle of dpad property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-gps-in-zoom"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="446">The show gps indicator in middle of zoom control property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-scale"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="374">The show scale on the map property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-zoom"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="osm-gps-map-osd.c"
             line="422">The show zoom control for map navigation property.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="MapOsdPrivate" c:type="OsmGpsMapOsdPrivate*"/>
      </field>
    </class>
    <record name="MapOsdClass"
            c:type="OsmGpsMapOsdClass"
            glib:is-gtype-struct-for="MapOsd">
      <source-position filename="osm-gps-map-osd.h" line="52"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="MapOsdPrivate"
            c:type="OsmGpsMapOsdPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="osm-gps-map-osd.h" line="36"/>
    </record>
    <record name="MapPoint"
            c:type="OsmGpsMapPoint"
            glib:type-name="OsmGpsMapPoint"
            glib:get-type="osm_gps_map_point_get_type"
            c:symbol-prefix="map_point">
      <source-position filename="osm-gps-map-point.h" line="38"/>
      <field name="rlat" writable="1">
        <type name="gfloat" c:type="float"/>
      </field>
      <field name="rlon" writable="1">
        <type name="gfloat" c:type="float"/>
      </field>
      <field name="user_data" writable="1">
        <type name="gpointer" c:type="gpointer"/>
      </field>
      <constructor name="new_degrees"
                   c:identifier="osm_gps_map_point_new_degrees"
                   version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="46">Create point with specified params</doc>
        <source-position filename="osm-gps-map-point.h" line="42"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-point.c"
               line="53">new point object</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <parameter name="lat" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="48">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="lon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="49">longtitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_degrees_with_user_data"
                   c:identifier="osm_gps_map_point_new_degrees_with_user_data"
                   version="1.2.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="86">Create point with specified params</doc>
        <source-position filename="osm-gps-map-point.h" line="44"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-point.c"
               line="94">new point object</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <parameter name="lat" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="88">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="lon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="89">longtitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="90">user data</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_radians"
                   c:identifier="osm_gps_map_point_new_radians"
                   version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="66">Create point with specified params</doc>
        <source-position filename="osm-gps-map-point.h" line="43"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-point.c"
               line="73">new point object</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <parameter name="rlat" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="68">latitude in radians</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="rlon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="69">longtitude in radians</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_radians_with_user_data"
                   c:identifier="osm_gps_map_point_new_radians_with_user_data"
                   version="1.2.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="107">Create point with specified params</doc>
        <source-position filename="osm-gps-map-point.h" line="45"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-point.c"
               line="115">new point object</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <parameter name="rlat" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="109">latitude in radians</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="rlon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="110">longtitude in radians</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="111">user data</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="copy"
              c:identifier="osm_gps_map_point_copy"
              version="0.7.2">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="226">Create a copy of a point</doc>
        <source-position filename="osm-gps-map-point.h" line="53"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-point.c"
               line="232">Copied point</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="228">a #OsmGpsMapPoint object</doc>
            <type name="MapPoint" c:type="const OsmGpsMapPoint*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free"
              c:identifier="osm_gps_map_point_free"
              version="0.7.2">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="244">Free point object</doc>
        <source-position filename="osm-gps-map-point.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="246">a #OsmGpsMapPoint object</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_degrees"
              c:identifier="osm_gps_map_point_get_degrees"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="128">Returns the lagitude and longitude in degrees.</doc>
        <source-position filename="osm-gps-map-point.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="130">The point ( latitude and longitude in radian )</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
          <parameter name="lat"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="131">latitude in degrees</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
          <parameter name="lon"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="132">longitude in degrees</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_radians"
              c:identifier="osm_gps_map_point_get_radians"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="145">Returns the lagitude and longitude in radians.</doc>
        <source-position filename="osm-gps-map-point.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="147">The #OsmGpsMapPoint point ( latitude and longitude in radian )</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
          <parameter name="rlat"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="148">latitude in radians</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
          <parameter name="rlon"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="149">longitude in radians</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_user_data"
              c:identifier="osm_gps_map_point_get_user_data"
              version="1.2.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="196">Get user data stored in point</doc>
        <source-position filename="osm-gps-map-point.h" line="50"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="osm-gps-map-point.c"
               line="202">The #OsmGpsMapPoint user data</doc>
          <type name="gpointer" c:type="gpointer"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="198">The #OsmGpsMapPoint point</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_degrees"
              c:identifier="osm_gps_map_point_set_degrees"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="162">Sets the lagitude and longitude in degrees.</doc>
        <source-position filename="osm-gps-map-point.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="164">The #OsmGpsMapPoint point ( latitude and longitude in radian )</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
          <parameter name="lat" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="165">latitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="lon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="166">longitude in degrees</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_radians"
              c:identifier="osm_gps_map_point_set_radians"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="179">Sets the lagitude and longitude in radians.</doc>
        <source-position filename="osm-gps-map-point.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="181">The #OsmGpsMapPoint point ( latitude and longitude in radian )</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
          <parameter name="rlat" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="182">latitude in radians</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="rlon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="183">longitude in radians</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_user_data"
              c:identifier="osm_gps_map_point_set_user_data"
              version="1.2.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-point.c"
             line="211">Store user data in point</doc>
        <source-position filename="osm-gps-map-point.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="213">The #OsmGpsMapPoint point</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </instance-parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="osm-gps-map-point.c"
                 line="214">user data</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <class name="MapPolygon"
           c:symbol-prefix="map_polygon"
           c:type="OsmGpsMapPolygon"
           parent="GObject.Object"
           glib:type-name="OsmGpsMapPolygon"
           glib:get-type="osm_gps_map_polygon_get_type"
           glib:type-struct="MapPolygonClass">
      <source-position filename="osm-gps-map-polygon.h" line="51"/>
      <constructor name="new" c:identifier="osm_gps_map_polygon_new">
        <source-position filename="osm-gps-map-polygon.h" line="55"/>
        <return-value transfer-ownership="full">
          <type name="MapPolygon" c:type="OsmGpsMapPolygon*"/>
        </return-value>
      </constructor>
      <method name="get_track"
              c:identifier="osm_gps_map_polygon_get_track"
              glib:get-property="track">
        <doc xml:space="preserve"
             filename="osm-gps-map-polygon.h"
             line="57">Get track from the polygon</doc>
        <source-position filename="osm-gps-map-polygon.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-polygon.h"
               line="63">The #OsmGpsMapTrack of the polygon</doc>
          <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
        </return-value>
        <parameters>
          <instance-parameter name="poly" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-polygon.h"
                 line="59">a #OsmGpsMapPolygon</doc>
            <type name="MapPolygon" c:type="OsmGpsMapPolygon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="breakable"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="editable"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="shade-alpha"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.500000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="shaded"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="track"
                writable="1"
                construct="1"
                transfer-ownership="none"
                getter="get_track">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="visible"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="MapPolygonPrivate" c:type="OsmGpsMapPolygonPrivate*"/>
      </field>
    </class>
    <record name="MapPolygonClass"
            c:type="OsmGpsMapPolygonClass"
            glib:is-gtype-struct-for="MapPolygon">
      <source-position filename="osm-gps-map-polygon.h" line="51"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="MapPolygonPrivate"
            c:type="OsmGpsMapPolygonPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="osm-gps-map-polygon.h" line="39"/>
    </record>
    <record name="MapPrivate"
            c:type="OsmGpsMapPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="osm-gps-map-widget.h" line="42"/>
    </record>
    <enumeration name="MapSource_t" c:type="OsmGpsMapSource_t">
      <source-position filename="osm-gps-map-source.h" line="44"/>
      <member name="null" value="0" c:identifier="OSM_GPS_MAP_SOURCE_NULL">
      </member>
      <member name="openstreetmap"
              value="1"
              c:identifier="OSM_GPS_MAP_SOURCE_OPENSTREETMAP">
      </member>
      <member name="openstreetmap_renderer"
              value="2"
              c:identifier="OSM_GPS_MAP_SOURCE_OPENSTREETMAP_RENDERER">
      </member>
      <member name="openaerialmap"
              value="3"
              c:identifier="OSM_GPS_MAP_SOURCE_OPENAERIALMAP">
      </member>
      <member name="maps_for_free"
              value="4"
              c:identifier="OSM_GPS_MAP_SOURCE_MAPS_FOR_FREE">
      </member>
      <member name="opencyclemap"
              value="5"
              c:identifier="OSM_GPS_MAP_SOURCE_OPENCYCLEMAP">
      </member>
      <member name="osm_public_transport"
              value="6"
              c:identifier="OSM_GPS_MAP_SOURCE_OSM_PUBLIC_TRANSPORT">
      </member>
      <member name="google_street"
              value="7"
              c:identifier="OSM_GPS_MAP_SOURCE_GOOGLE_STREET">
      </member>
      <member name="google_satellite"
              value="8"
              c:identifier="OSM_GPS_MAP_SOURCE_GOOGLE_SATELLITE">
      </member>
      <member name="google_hybrid"
              value="9"
              c:identifier="OSM_GPS_MAP_SOURCE_GOOGLE_HYBRID">
      </member>
      <member name="virtual_earth_street"
              value="10"
              c:identifier="OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_STREET">
      </member>
      <member name="virtual_earth_satellite"
              value="11"
              c:identifier="OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_SATELLITE">
      </member>
      <member name="virtual_earth_hybrid"
              value="12"
              c:identifier="OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_HYBRID">
      </member>
      <member name="osmc_trails"
              value="13"
              c:identifier="OSM_GPS_MAP_SOURCE_OSMC_TRAILS">
      </member>
      <member name="last" value="14" c:identifier="OSM_GPS_MAP_SOURCE_LAST">
      </member>
    </enumeration>
    <class name="MapTrack"
           c:symbol-prefix="map_track"
           c:type="OsmGpsMapTrack"
           parent="GObject.Object"
           glib:type-name="OsmGpsMapTrack"
           glib:get-type="osm_gps_map_track_get_type"
           glib:type-struct="MapTrackClass">
      <source-position filename="osm-gps-map-track.h" line="52"/>
      <constructor name="new"
                   c:identifier="osm_gps_map_track_new"
                   version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="64">Create new track</doc>
        <source-position filename="osm-gps-map-track.h" line="72"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="osm-gps-map-track.h"
               line="69">New track</doc>
          <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
        </return-value>
      </constructor>
      <function name="add_point"
                c:identifier="osm_gps_map_track_add_point"
                version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="73">Add a point to track</doc>
        <source-position filename="osm-gps-map-track.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="track"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="75">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </parameter>
          <parameter name="point" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="76">a #OsmGpsMapPoint point to add</doc>
            <type name="MapPoint" c:type="const OsmGpsMapPoint*"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_color"
              c:identifier="osm_gps_map_track_get_color"
              glib:get-property="color"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="103">Get track color</doc>
        <source-position filename="osm-gps-map-track.h" line="112"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="105">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="106">track color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_length"
              c:identifier="osm_gps_map_track_get_length"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="160">Get track length in meters</doc>
        <source-position filename="osm-gps-map-track.h" line="169"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-track.h"
               line="166">the length of the track in meters.</doc>
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="162">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_point"
              c:identifier="osm_gps_map_track_get_point"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="148">Get a #OsmGpsMapPoint point at @pos of given track</doc>
        <source-position filename="osm-gps-map-track.h" line="158"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-track.h"
               line="155">a #OsmGpsMapPoint</doc>
          <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="150">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="151">Position of the point to get</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_points"
              c:identifier="osm_gps_map_track_get_points"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="83">Get list of points in the track</doc>
        <source-position filename="osm-gps-map-track.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-track.h"
               line="89">list of #OsmGpsMapPoint</doc>
          <type name="GLib.SList" c:type="GSList*">
            <type name="MapPoint"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="85">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="insert_point"
              c:identifier="osm_gps_map_track_insert_point"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="136">Instert point @np at given postition @pos</doc>
        <source-position filename="osm-gps-map-track.h" line="146"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="138">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
          <parameter name="np" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="139">a #OsmGpsMapPoint</doc>
            <type name="MapPoint" c:type="OsmGpsMapPoint*"/>
          </parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="140">Position for the point</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="n_points"
              c:identifier="osm_gps_map_track_n_points"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="125">Get number of points in the track</doc>
        <source-position filename="osm-gps-map-track.h" line="134"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="osm-gps-map-track.h"
               line="131">the number of points in the track.</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="127">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_point"
              c:identifier="osm_gps_map_track_remove_point"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="114">Remove track point at @pos position in point list</doc>
        <source-position filename="osm-gps-map-track.h" line="123"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="116">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="117">Position of the point to remove</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color"
              c:identifier="osm_gps_map_track_set_color"
              glib:set-property="color"
              version="1.1.0">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.h"
             line="93">Set track color</doc>
        <source-position filename="osm-gps-map-track.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="track" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="95">a #OsmGpsMapTrack</doc>
            <type name="MapTrack" c:type="OsmGpsMapTrack*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.h"
                 line="96">new track color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <property name="alpha"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.600000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="color"
                writable="1"
                transfer-ownership="none"
                setter="set_color"
                getter="get_color">
        <type name="Gdk.RGBA"/>
      </property>
      <property name="editable"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="line-width"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="4.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="track"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
      <property name="visible"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="MapTrackPrivate" c:type="OsmGpsMapTrackPrivate*"/>
      </field>
      <glib:signal name="point-added" when="first">
        <doc xml:space="preserve"
             filename="osm-gps-map-track.c"
             line="229">The #OsmGpsMapTrack::point-added signal is emitted whenever a #OsmGpsMapPoint
is added to the #OsmGpsMapTrack.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="osm-gps-map-track.c"
                 line="232">The added #OsmGpsMapPoint</doc>
            <type name="MapPoint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="point-changed" when="first">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="point-inserted" when="first">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="point-removed" when="first">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="MapTrackClass"
            c:type="OsmGpsMapTrackClass"
            glib:is-gtype-struct-for="MapTrack">
      <source-position filename="osm-gps-map-track.h" line="52"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="MapTrackPrivate"
            c:type="OsmGpsMapTrackPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="osm-gps-map-track.h" line="40"/>
    </record>
    <docsection name="osm-gps-map">
      <doc xml:space="preserve"
           filename="osm-gps-map-widget.c"
           line="26">#OsmGpsMap is a widget for displaying a map, optionally overlaid with a
track(s) of GPS co-ordinates, images, points of interest or on screen display
controls. #OsmGpsMap downloads (and caches for offline use) map data from a
number of websites, including
&lt;ulink url="http://www.openstreetmap.org"&gt;&lt;citetitle&gt;OpenStreetMap&lt;/citetitle&gt;&lt;/ulink&gt;

&lt;example&gt;
 &lt;title&gt;Showing a map&lt;/title&gt;
 &lt;programlisting&gt;
int main (int argc, char **argv)
{
    g_thread_init(NULL);
    gtk_init (&amp;argc, &amp;argv);

    GtkWidget *map = osm_gps_map_new ();
    GtkWidget *w = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_container_add (GTK_CONTAINER(w), map);
    gtk_widget_show_all (w);

    gtk_main ();
    return 0;
}
 &lt;/programlisting&gt;
&lt;/example&gt;

#OsmGpsMap allows great flexibility in customizing how the map tiles are
cached, see #OsmGpsMap:tile-cache-base and #OsmGpsMap:tile-cache for more
information.

A number of different map sources are supported, see #OsmGpsMapSource_t. The
default source, %OSM_GPS_MAP_SOURCE_OPENSTREETMAP always works. Other sources,
particular those from proprietary providers may work occasionally, and then
cease to work. To check if a source is supported for the given version of
this library, call osm_gps_map_source_is_valid().

&lt;example&gt;
 &lt;title&gt;Map with custom source and cache dir&lt;/title&gt;
 &lt;programlisting&gt;
int main (int argc, char **argv)
{
    g_thread_init(NULL);
    gtk_init (&amp;argc, &amp;argv);
    OsmGpsMapSource_t source = OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_SATELLITE;

    if ( !osm_gps_map_source_is_valid(source) )
        return 1;

    GtkWidget *map = g_object_new (OSM_TYPE_GPS_MAP,
                     "map-source", source,
                     "tile-cache", "/tmp/",
                      NULL);
    GtkWidget *w = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_container_add (GTK_CONTAINER(w), map);
    gtk_widget_show_all (w);

    gtk_main ();
    return 0;
}
 &lt;/programlisting&gt;
&lt;/example&gt;

Finally, if you wish to use a custom map source not supported by #OsmGpsMap,
such as a custom map created with
&lt;ulink url="http://www.cloudmade.com"&gt;&lt;citetitle&gt;CloudMade&lt;/citetitle&gt;&lt;/ulink&gt;
then you can also pass a specially formatted string to #OsmGpsMap:repo-uri.

&lt;example&gt;
 &lt;title&gt;Map using custom CloudMade map and on screen display&lt;/title&gt;
 &lt;programlisting&gt;
int main (int argc, char **argv)
{
    g_thread_init(NULL);
    gtk_init (&amp;argc, &amp;argv);
    const gchar *cloudmate = "http://a.tile.cloudmade.com/YOUR_API_KEY/1/256/&amp;num;Z/&amp;num;X/&amp;num;Y.png";

    GtkWidget *map = g_object_new (OSM_TYPE_GPS_MAP,
                     "repo-uri", cloudmate,
                      NULL);
    OsmGpsMapOsd *osd = osm_gps_map_osd_new ();
    GtkWidget *w = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    osm_gps_map_layer_add (OSM_GPS_MAP(map), OSM_GPS_MAP_LAYER(osd));
    gtk_container_add (GTK_CONTAINER(w), map);
    gtk_widget_show_all (w);

    gtk_main ();
    return 0;
}
 &lt;/programlisting&gt;
&lt;/example&gt;</doc>
    </docsection>
    <docsection name="osm-gps-map-image">
      <doc xml:space="preserve"
           filename="osm-gps-map-image.c"
           line="20">#OsmGpsMapImage represents an image (a #GdkPixbuf) shown on the map
(osm_gps_map_image_add()) at a specific location (a #OsmGpsMapPoint).</doc>
    </docsection>
    <docsection name="osm-gps-map-layer">
      <doc xml:space="preserve"
           filename="osm-gps-map-layer.c"
           line="20">#OsmGpsMapLayer is an interface implemented by objects that wish
to draw on top of the map respond to button press events. The most
common implementation of this interface is #OsmGpsMapOsd</doc>
    </docsection>
    <docsection name="osm-gps-map-point">
      <doc xml:space="preserve"
           filename="osm-gps-map-point.c"
           line="20">#OsmGpsMapPoint describes a geographic location (latitude, longitude).
Helper functions exist to create such a point from either radian co-ordinates
(osm_gps_map_point_new_radians()) or degrees (osm_gps_map_new_degrees()).</doc>
    </docsection>
    <docsection name="osm-gps-map-track">
      <doc xml:space="preserve"
           filename="osm-gps-map-track.c"
           line="20">#OsmGpsMapTrack stores multiple #OsmGpsMapPoint objects, i.e. a track, and
describes how such a track should be drawn on the map
(see osm_gps_map_track_add()), including its colour, width, etc.</doc>
    </docsection>
  </namespace>
</repository>
