...
 
Commits (60)
This file is no longer updated. Use
git log --format="%an <%ae>" | sort -u
for the complete list of contributors.
---
Pierre-Luc Beaudoin <pierre-luc@pierlux.com>
Jonathon Jongsma <jonathon@quotidian.org>
Lorenzo Masini <lorenxo86@gmail.com>
......@@ -41,4 +49,3 @@ Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Nirbheek Chauhan <nirbheek@gentoo.org>
William Jon McCann <jmccann@redhat.com>
Zeeshan Ali <zeeshanak@gnome.org>
This diff is collapsed.
This diff is collapsed.
Jiří Techet <techet@gmail.com>
......@@ -17,6 +17,7 @@ pkgconfigdir = $(libdir)/pkgconfig
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc --enable-gtk --enable-introspection --enable-vala-demos --disable-memphis
EXTRA_DIST = \
README.md \
champlain-gtk.pc.in \
champlain-gtk-uninstalled.pc.in \
champlain.pc.in \
......@@ -28,18 +29,3 @@ all: $(other_pcfiles)
# Have the demos build at the end as they depend on optional parts
SUBDIRS += docs demos
dist-hook:
@if test -d "$(srcdir)/.git"; \
then \
echo Creating ChangeLog && \
( cd "$(top_srcdir)" && \
echo '# Generated by Makefile. Do not edit.'; echo; \
$(top_srcdir)/missing --run git log --pretty=medium ) > ChangeLog.tmp \
&& mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
|| ( rm -f ChangeLog.tmp ; \
echo Failed to generate ChangeLog >&2 ); \
else \
echo A git clone is required to generate a ChangeLog >&2; \
fi
This diff is collapsed.
libchamplain 0.12.18 (2019-02-21)
=================================
Stable release
Changes:
* Fix incorrect so version when using meson (Jiří Techet)
* Avoid exporting marshaler functions by dropping the use of glib-genmarshal and
using the generic marshaler instead (Jiří Techet)
* Don't use glib-mkenums for champlain-gtk where it's not needed (Jiří Techet)
libchamplain 0.12.17 (2019-02-20)
=================================
Stable release
Changes:
* Use of meson build system, CI tests and automatized generation of
documentation (Martin Blanchard)
* Various map wrapping fixes (Tomasz Miąsko, Jiří Techet)
* Pass data as uint8 pointer in champlain_renderer_set_data() and make this
function introspectable (James Westman)
* Bump versions of some dependencies - clutter (1.24), glib (2.38) - and fix
depreciation warnings (Jiří Techet)
* Use https for all map sources that support it (Jiří Techet)
* Don't version-control generated vapi files (Jiří Techet)
* Combine champlain and champlain-gtk documentations into one (Jiří Techet)
* More helpful README.md with links to pages related to libchamplain
(Jiří Techet)
* Various housekeeping and cleanups (Jiří Techet, Andre Klapper)
libchamplain 0.12.16 (2017-09-06)
=================================
......
libchamplain 0.12 README
=========================
libchamplain is a Clutter based widget to display rich, eye-candy and
interactive maps.
libchamplain requires:
* glib >= 2.10
* gio >= 2.16
* gdk >= 3.0
* clutter >= 1.12
* cairo >= 1.4
* sqlite >= 3.0
* libsoup >= 2.42
If you are building libchamplain-gtk, you will also need:
* gtk >= 3.0
* clutter-gtk >= 1.0
If you are building libchamplain with local rendering support, you will
also need:
* libmemphis >= 0.2.1
The usual rules for building apply -
configure; make; sudo make install; sudo ldconfig
should do the right thing. For more details consult the INSTALL file in this
directory.
The official website is:
https://wiki.gnome.org/Projects/libchamplain
The official mailing list archive is:
http://mail.gnome.org/mailman/listinfo/libchamplain-list
New bug page on Bugzilla:
http://bugzilla.gnome.org/simple-bug-guide.cgi?product=libchamplain
libchamplain is licensed under the terms of the GNU Lesser General Public
License, version 2.1 or (at your option) later.
See README.md
libchamplain - a map widget
===========================
libchamplain is a Gtk widget displaying zoomable and pannable maps that can be
loaded from various network sources. It supports overlay layers, markers, and
custom elements displayed on top of the maps. The library is written in C but
other language mappings are also available thanks to GObject-Introspection.
libchamplain depends on the following libraries:
* [glib](https://gitlab.gnome.org/GNOME/glib)
* [gtk](https://gitlab.gnome.org/GNOME/gtk)
* [clutter](https://gitlab.gnome.org/GNOME/clutter)
* [clutter-gtk](https://gitlab.gnome.org/GNOME/clutter-gtk)
* [libsoup](https://gitlab.gnome.org/GNOME/libsoup)
* [cairo](https://www.cairographics.org)
* [sqlite](https://www.sqlite.org)
To build libchamplain from sources using [meson](https://mesonbuild.com), run:
```
meson _builddir; cd _builddir; ninja; sudo ninja install
```
It is possible to specify compilation options defined in `meson_options.txt`
by using the `-D` flag, e.g.:
```
meson _builddir -Dgtk_doc=true -Ddemos=true
```
The **repository and bug report** page is at:
* https://gitlab.gnome.org/GNOME/libchamplain
Release **tarballs** can be downloaded from:
* https://download.gnome.org/sources/libchamplain
For simple examples how to use the library, check the `demos` directory;
in particular, the `minimal-gtk.c` and `minimal.py` demos are good starting
points to see how to get the most basic map application running.
Full **documentation** can be found at:
* https://gnome.pages.gitlab.gnome.org/libchamplain/champlain
The official **mailing list** is at:
* https://mail.gnome.org/mailman/listinfo/libchamplain-list
The official **IRC channel** is at:
* irc://irc.freenode.org/#champlain
---
libchamplain is licensed under the terms of the GNU Lesser General Public
License, version 2.1 or (at your option) later.
This diff is collapsed.
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
PKG_NAME="libchamplain"
(test -f $srcdir/configure.ac) || {
echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
echo " top-level $PKG_NAME directory"
exit 1
}
which gnome-autogen.sh || {
echo "You need to install gnome-common module and make"
echo "sure the gnome-autogen.sh script is in your \$PATH."
exit 1
}
. gnome-autogen.sh
This diff is collapsed.
......@@ -11,35 +11,10 @@ libchamplain_gtk_headers_public = \
libchamplain_gtk_sources = \
gtk-champlain-embed.c
# glib-genmarshal rules
glib_marshal_list = champlain-gtk-marshal.list
glib_marshal_prefix = _champlain_gtk_marshal
include $(top_srcdir)/build/Makefile.am.marshal
# glib-mkenums rules
glib_enum_h = champlain-gtk-enum-types.h
glib_enum_c = champlain-gtk-enum-types.c
glib_enum_headers = $(libchamplain_gtk_headers_public)
include $(top_srcdir)/build/Makefile.am.enums
libchamplain_gtk_headers_built = \
champlain-gtk-enum-types.h \
champlain-gtk-marshal.h
libchamplain_gtk_sources_built = \
champlain-gtk-enum-types.c \
champlain-gtk-marshal.c
libchamplain_gtk_@CHAMPLAIN_API_VERSION@_la_SOURCES = \
$(libchamplain_gtk_headers_public) \
$(libchamplain_gtk_sources)
nodist_libchamplain_gtk_@CHAMPLAIN_API_VERSION@_la_SOURCES = \
$(libchamplain_gtk_headers_built) \
$(libchamplain_gtk_sources_built)
libchamplain_gtk_@CHAMPLAIN_API_VERSION@_la_LIBADD = \
$(GTK_LIBS) \
$(top_builddir)/champlain/libchamplain-@CHAMPLAIN_API_VERSION@.la
......@@ -58,8 +33,6 @@ libchamplain_gtkdir=$(includedir)/libchamplain-gtk-@CHAMPLAIN_API_VERSION@/champ
libchamplain_gtk_HEADERS = $(libchamplain_gtk_headers_public)
nodist_libchamplain_gtk_HEADERS = $(libchamplain_gtk_headers_built)
# Make the g-ir-scanner to find the not yet installed pkg-config files.
PKG_CONFIG_PATH := $(top_builddir):$(PKG_CONFIG_PATH)
......@@ -104,13 +77,13 @@ CLEANFILES += $(gir_DATA) $(typelib_DATA)
endif
vapidir = $(datadir)/vala/vapi
dist_vapi_DATA = champlain-gtk-@CHAMPLAIN_API_VERSION@.vapi
EXTRA_DIST += champlain-gtk-@CHAMPLAIN_API_VERSION@.vapi
if ENABLE_VALA
CLEANFILES += $(dist_vapi_DATA)
vapidir = $(datadir)/vala/vapi
vapi_DATA = champlain-gtk-@CHAMPLAIN_API_VERSION@.vapi
CLEANFILES += $(vapi_DATA)
champlain-gtk-@CHAMPLAIN_API_VERSION@.vapi: GtkChamplain-@CHAMPLAIN_API_VERSION@.gir
$(AM_V_GEN) ( $(VAPIGEN) --library champlain-gtk-@CHAMPLAIN_API_VERSION@ --vapidir=$(top_builddir)/champlain --pkg champlain-@CHAMPLAIN_API_VERSION@ --pkg clutter-gtk-1.0 --pkg cogl-pango-1.0 --pkg gtk+-3.0 --pkg atk --pkg pangocairo --girdir=$(top_builddir)/champlain $(builddir)/GtkChamplain-@CHAMPLAIN_API_VERSION@.gir )
......
This diff is collapsed.
/* champlain-gtk-0.12.vapi generated by vapigen, do not modify. */
[CCode (cprefix = "GtkChamplain", gir_namespace = "GtkChamplain", gir_version = "0.12", lower_case_cprefix = "gtk_champlain_")]
namespace GtkChamplain {
[CCode (cheader_filename = "champlain-gtk/champlain-gtk.h", type_id = "gtk_champlain_embed_get_type ()")]
public class Embed : Gtk.Alignment, Atk.Implementor, Gtk.Buildable {
[CCode (has_construct_function = false, type = "GtkWidget*")]
public Embed ();
public unowned Champlain.View get_view ();
[NoAccessorMethod]
public Champlain.View champlain_view { owned get; }
}
}
/*** BEGIN file-header ***/
#include "champlain-gtk.h"
/*** END file-header ***/
/*** BEGIN file-production ***/
/* enumerations from "@filename@" */
/*** END file-production ***/
/*** BEGIN value-header ***/
GType
@enum_name@_get_type (void)
{
static GType etype = 0;
if (G_UNLIKELY (etype == 0)) {
static const G@Type@Value values[] = {
/*** END value-header ***/
/*** BEGIN value-production ***/
{ @VALUENAME@, "@VALUENAME@", "@valuenick@" },
/*** END value-production ***/
/*** BEGIN value-tail ***/
{ 0, NULL, NULL }
};
etype = g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
}
return etype;
}
/*** END value-tail ***/
/*** BEGIN file-tail ***/
/*** END file-tail ***/
/*** BEGIN file-header ***/
#ifndef __CHAMPLAIN_GTK_ENUM_TYPES_H__
#define __CHAMPLAIN_GTK_ENUM_TYPES_H__
#include <glib-object.h>
G_BEGIN_DECLS
/*** END file-header ***/
/*** BEGIN file-production ***/
/* enumerations from "@filename@" */
/*** END file-production ***/
/*** BEGIN value-header ***/
GType @enum_name@_get_type (void) G_GNUC_CONST;
#define CHAMPLAIN_GTK_TYPE_@ENUMSHORT@ @enum_name@_get_type()
/*** END value-header ***/
/*** BEGIN file-tail ***/
G_END_DECLS
#endif /* __CHAMPLAIN_GTK_ENUM_TYPES_H__ */
/*** END file-tail ***/
......@@ -53,9 +53,6 @@ enum
/* static guint gtk_champlain_embed_embed_signals[LAST_SIGNAL] = { 0, }; */
#define GET_PRIVATE(obj) \
(G_TYPE_INSTANCE_GET_PRIVATE ((obj), GTK_CHAMPLAIN_TYPE_EMBED, GtkChamplainEmbedPrivate))
struct _GtkChamplainEmbedPrivate
{
GtkWidget *clutter_embed;
......@@ -98,7 +95,7 @@ static gboolean stage_key_press_cb (ClutterActor *actor,
ClutterEvent *event,
GtkChamplainEmbed *embed);
G_DEFINE_TYPE (GtkChamplainEmbed, gtk_champlain_embed, GTK_TYPE_ALIGNMENT);
G_DEFINE_TYPE_WITH_PRIVATE (GtkChamplainEmbed, gtk_champlain_embed, GTK_TYPE_ALIGNMENT)
static void
gtk_champlain_embed_get_property (GObject *object,
......@@ -175,8 +172,6 @@ gtk_champlain_embed_finalize (GObject *object)
static void
gtk_champlain_embed_class_init (GtkChamplainEmbedClass *klass)
{
g_type_class_add_private (klass, sizeof (GtkChamplainEmbedPrivate));
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->finalize = gtk_champlain_embed_finalize;
object_class->dispose = gtk_champlain_embed_dispose;
......@@ -222,7 +217,7 @@ set_view (GtkChamplainEmbed *embed,
static void
gtk_champlain_embed_init (GtkChamplainEmbed *embed)
{
GtkChamplainEmbedPrivate *priv = GET_PRIVATE (embed);
GtkChamplainEmbedPrivate *priv = gtk_champlain_embed_get_instance_private (embed);
ClutterActor *stage;
GdkDisplay *display;
......@@ -288,6 +283,18 @@ gdk_rgba_to_clutter_color (GdkRGBA *gdk_rgba_color,
color->blue = CLAMP (gdk_rgba_color->blue * 255, 0, 255);
color->alpha = CLAMP (gdk_rgba_color->alpha * 255, 0, 255);
}
static void
get_background_color (GtkStyleContext *context,
GtkStateFlags state,
GdkRGBA *color)
{
GdkRGBA *c;
gtk_style_context_get (context, state, "background-color", &c, NULL);
*color = *c;
gdk_rgba_free (c);
}
#endif
......@@ -343,8 +350,8 @@ view_realize_cb (GtkWidget *widget,
}
champlain_marker_set_selection_text_color (&color);
gtk_style_context_get_background_color (style, gtk_style_context_get_state (style),
&gdk_rgba_color);
get_background_color (style, gtk_style_context_get_state (style),
&gdk_rgba_color);
gdk_rgba_to_clutter_color (&gdk_rgba_color, &color);
if (color.alpha == 0)
color.alpha = 255;
......
libchamplain_gtk_public_h = [
'champlain-gtk.h',
'gtk-champlain-embed.h',
]
libchamplain_gtk_sources = [
'gtk-champlain-embed.c',
]
libchamplain_gtk_deps = [
glib_dep,
gobject_dep,
gtk_dep,
clutter_gtk_dep,
libchamplain_dep,
]
libchamplain_gtk_srcdir = include_directories('.')
libchamplain_gtk_c_args = [
'-DHAVE_CONFIG_H',
'-DCHAMPLAIN_GTK_COMPILATION',
'-DG_LOG_DOMAIN="@0@"'.format(package_gtk_name),
]
libchamplain_gtk_link_args = [
]
install_headers(
libchamplain_gtk_public_h,
install_dir: join_paths(
pkgincludedir,
'champlain-gtk',
)
)
libchamplain_gtk_sha = library(
package_gtk_string,
libchamplain_gtk_sources,
version: lib_version,
include_directories: rootdir,
dependencies: libchamplain_gtk_deps,
c_args: libchamplain_gtk_c_args,
link_args: libchamplain_gtk_link_args,
install: true,
install_dir: libdir,
)
libchamplain_gtk_dep_sources = [
]
if generate_gir
libchamplain_gtk_gir_includes = [
'GObject-2.0',
'Clutter-1.0',
'Gtk-3.0',
libchamplain_gir.get(0),
]
libchamplain_gtk_gir = gnome.generate_gir(
libchamplain_gtk_sha,
sources: libchamplain_gtk_sources + libchamplain_gtk_public_h,
nsversion: api_version,
namespace: 'GtkChamplain',
symbol_prefix: 'gtk_champlain',
identifier_prefix: 'GtkChamplain',
header: 'champlain-gtk/champlain-gtk.h',
export_packages: [package_gtk_string],
includes: ['Clutter-1.0', 'Gtk-3.0', libchamplain_gir.get(0)],
link_with: libchamplain_gtk_sha,
install: true,
install_dir_gir: girdir,
install_dir_typelib: typelibdir,
extra_args: [
'-DCHAMPLAIN_GTK_COMPILATION',
]
)
libchamplain_gtk_dep_sources += [
libchamplain_gtk_gir,
]
if generate_vapi
libchamplain_gtk_vapi_packages = [
'clutter-gtk-1.0',
'cogl-pango-1.0',
'gtk+-3.0',
'atk',
'pangocairo',
libchamplain_vapi,
]
libchamplain_gtk_vapi = gnome.generate_vapi(
package_gtk_string,
sources: libchamplain_gtk_gir.get(0),
packages: libchamplain_gtk_vapi_packages,
install: true,
install_dir: vapidir,
)
endif
endif
libchamplain_gtk_dep = declare_dependency(
link_with: libchamplain_gtk_sha,
include_directories: rootdir,
dependencies: libchamplain_gtk_deps,
sources: libchamplain_gtk_dep_sources,
)
libchamplain_gtk_pc = pkg.generate(
libchamplain_gtk_sha,
description: 'Gtk+ Widget wrapper for libchamplain',
subdirs: package_string,
install_dir: pkgconfigdir,
)
......@@ -102,11 +102,6 @@ champlain-features.h: $(top_builddir)/config.status
BUILT_SOURCES += champlain-features.h
CLEANFILES += champlain-features.h
# glib-genmarshal rules
glib_marshal_list = champlain-marshal.list
glib_marshal_prefix = _champlain_marshal
include $(top_srcdir)/build/Makefile.am.marshal
# glib-mkenums rules
glib_enum_h = champlain-enum-types.h
glib_enum_c = champlain-enum-types.c
......@@ -115,12 +110,10 @@ include $(top_srcdir)/build/Makefile.am.enums
libchamplain_headers_built = \
champlain-features.h \
champlain-enum-types.h \
champlain-marshal.h
champlain-enum-types.h
libchamplain_sources_built = \
champlain-enum-types.c \
champlain-marshal.c
champlain-enum-types.c
libchamplain_@CHAMPLAIN_API_VERSION@_la_SOURCES = \
......@@ -199,13 +192,13 @@ CLEANFILES += $(gir_DATA) $(typelib_DATA)
endif
vapidir = $(datadir)/vala/vapi
dist_vapi_DATA = champlain-@CHAMPLAIN_API_VERSION@.vapi
EXTRA_DIST += champlain-@CHAMPLAIN_API_VERSION@.vapi
if ENABLE_VALA
CLEANFILES += $(dist_vapi_DATA)
vapidir = $(datadir)/vala/vapi
vapi_DATA = champlain-@CHAMPLAIN_API_VERSION@.vapi
CLEANFILES += $(vapi_DATA)
champlain-@CHAMPLAIN_API_VERSION@.vapi: Champlain-@CHAMPLAIN_API_VERSION@.gir
$(AM_V_GEN) ( $(VAPIGEN) --library champlain-@CHAMPLAIN_API_VERSION@ --pkg clutter-1.0 --pkg cogl-pango-1.0 --pkg atk --pkg pangocairo $(builddir)/Champlain-@CHAMPLAIN_API_VERSION@.gir )
......
This diff is collapsed.
This diff is collapsed.
......@@ -26,14 +26,8 @@
#include <clutter/clutter.h>
#include "champlain-adjustment.h"
#include "champlain-marshal.h"
#include "champlain-private.h"
G_DEFINE_TYPE (ChamplainAdjustment, champlain_adjustment, G_TYPE_OBJECT)
#define ADJUSTMENT_PRIVATE(o) \
(G_TYPE_INSTANCE_GET_PRIVATE ((o), CHAMPLAIN_TYPE_ADJUSTMENT, ChamplainAdjustmentPrivate))
struct _ChamplainAdjustmentPrivate
{
gdouble lower;
......@@ -48,6 +42,8 @@ struct _ChamplainAdjustmentPrivate
gdouble new_position;
};
G_DEFINE_TYPE_WITH_PRIVATE (ChamplainAdjustment, champlain_adjustment, G_TYPE_OBJECT)
enum
{
PROP_0,
......@@ -175,8 +171,6 @@ champlain_adjustment_class_init (ChamplainAdjustmentClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
g_type_class_add_private (klass, sizeof (ChamplainAdjustmentPrivate));
object_class->get_property = champlain_adjustment_get_property;
object_class->set_property = champlain_adjustment_set_property;
object_class->dispose = champlain_adjustment_dispose;
......@@ -224,7 +218,7 @@ champlain_adjustment_class_init (ChamplainAdjustmentClass *klass)
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (ChamplainAdjustmentClass, changed),
NULL, NULL,
g_cclosure_marshal_VOID__VOID,
NULL,
G_TYPE_NONE, 0);
}
......@@ -232,7 +226,7 @@ champlain_adjustment_class_init (ChamplainAdjustmentClass *klass)
static void
champlain_adjustment_init (ChamplainAdjustment *self)
{
self->priv = ADJUSTMENT_PRIVATE (self);
self->priv = champlain_adjustment_get_instance_private (self);
}
......
......@@ -26,7 +26,6 @@
#include "champlain-coordinate.h"
#include "config.h"
#include "champlain-marshal.h"
#include "champlain-private.h"
#include "champlain-location.h"
......@@ -46,18 +45,16 @@ static gdouble get_longitude (ChamplainLocation *location);
static void location_interface_init (ChamplainLocationIface *iface);
G_DEFINE_TYPE_WITH_CODE (ChamplainCoordinate, champlain_coordinate, G_TYPE_INITIALLY_UNOWNED,
G_IMPLEMENT_INTERFACE (CHAMPLAIN_TYPE_LOCATION, location_interface_init));
#define GET_PRIVATE(obj) \
(G_TYPE_INSTANCE_GET_PRIVATE ((obj), CHAMPLAIN_TYPE_COORDINATE, ChamplainCoordinatePrivate))
struct _ChamplainCoordinatePrivate
{
gdouble longitude;
gdouble latitude;
};
G_DEFINE_TYPE_WITH_CODE (ChamplainCoordinate, champlain_coordinate, G_TYPE_INITIALLY_UNOWNED,
G_ADD_PRIVATE (ChamplainCoordinate)
G_IMPLEMENT_INTERFACE (CHAMPLAIN_TYPE_LOCATION, location_interface_init))
static void
champlain_coordinate_get_property (GObject *object,
guint prop_id,
......@@ -179,8 +176,6 @@ champlain_coordinate_finalize (GObject *object)
static void
champlain_coordinate_class_init (ChamplainCoordinateClass *coordinate_class)
{
g_type_class_add_private (coordinate_class, sizeof (ChamplainCoordinatePrivate));
GObjectClass *object_class = G_OBJECT_CLASS (coordinate_class);
object_class->finalize = champlain_coordinate_finalize;
object_class->dispose = champlain_coordinate_dispose;
......@@ -200,7 +195,7 @@ champlain_coordinate_class_init (ChamplainCoordinateClass *coordinate_class)
static void
champlain_coordinate_init (ChamplainCoordinate *coordinate)
{
ChamplainCoordinatePrivate *priv = GET_PRIVATE (coordinate);
ChamplainCoordinatePrivate *priv = champlain_coordinate_get_instance_private (coordinate);
coordinate->priv = priv;
......
......@@ -30,40 +30,23 @@
#include "champlain.h"
#include "champlain-defines.h"
#include "champlain-marshal.h"
#include "champlain-private.h"
#include <clutter/clutter.h>
#include <glib.h>
#include <glib-object.h>
enum
{
/* normal signals */
LAST_SIGNAL
};
enum
{
PROP_0,
};
struct _ChamplainCustomMarkerPrivate
{
ClutterContainer *dummy;
};
G_DEFINE_TYPE (ChamplainCustomMarker, champlain_custom_marker, CHAMPLAIN_TYPE_MARKER)
#define GET_PRIVATE(obj) \
(G_TYPE_INSTANCE_GET_PRIVATE ((obj), CHAMPLAIN_TYPE_CUSTOM_MARKER, ChamplainCustomMarkerPrivate))
G_DEFINE_TYPE_WITH_PRIVATE (ChamplainCustomMarker, champlain_custom_marker, CHAMPLAIN_TYPE_MARKER)
static void
champlain_custom_marker_class_init (ChamplainCustomMarkerClass *klass)
{
g_type_class_add_private (klass, sizeof (ChamplainCustomMarkerPrivate));
}
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.