[goffice] Make introspection build when libgoffice is not installed [#671699]



commit c62f5edb8dc7ca12aa0c9214dd5b0edadc7d7053
Author: Jean Brefort <jean brefort normalesup org>
Date:   Sat Mar 10 08:55:17 2012 +0100

    Make introspection build when libgoffice is not installed [#671699]

 ChangeLog                       |   10 +++
 NEWS                            |    1 +
 configure.in                    |   43 ++++++++++++-
 goffice/Makefile.am             |    2 +-
 goffice/app/file.c              |   94 +++++++++++++-------------
 goffice/app/go-plugin-service.c |    4 +-
 goffice/app/go-plugin.c         |   88 ++++++++++++------------
 goffice/graph/gog-axis.c        |  138 +++++++++++++++++++-------------------
 goffice/graph/gog-chart.c       |   32 +++++-----
 goffice/graph/gog-graph.c       |   48 +++++++-------
 goffice/graph/gog-guru.c        |   20 +++---
 goffice/graph/gog-object.c      |  118 +++++++++++++++++-----------------
 goffice/graph/gog-plot.c        |   38 +++++-----
 goffice/graph/gog-renderer.c    |   47 +++++++-------
 goffice/graph/gog-series.c      |   42 ++++++------
 goffice/graph/gog-view.c        |   58 ++++++++--------
 goffice/graph/gog-view.h        |    4 +-
 goffice/gtk/go-color-palette.c  |   10 ++--
 goffice/gtk/go-color-selector.c |    8 +-
 goffice/gtk/go-combo-box.h      |    4 +-
 goffice/gtk/go-graph-widget.c   |    6 +-
 goffice/gtk/go-image-sel.c      |    8 +-
 goffice/gtk/go-optionmenu.c     |   11 +++-
 goffice/gtk/go-selector.c       |    2 +-
 goffice/gtk/goffice-gtk.c       |   98 ++++++++++++++--------------
 goffice/math/go-cspline.c       |    4 +-
 goffice/math/go-regression.c    |   10 ++--
 goffice/utils/go-emf.c          |   11 +++-
 goffice/utils/go-pango-extras.c |    8 +-
 goffice/utils/go-pixbuf.c       |    2 +-
 goffice/utils/go-style.c        |   22 +++---
 31 files changed, 530 insertions(+), 461 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index ea77201..95b69b9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2012-03-10  Jean Brefort  <jean brefort normalesup org>
+
+	* configure.in: add a test for ghostscript to avoid crashes when using
+	libspectre.
+	* goffice/Makefile.am: make introspection build when libgoffice is not
+	installed [#671699]
+	* goffice/utils/go-emf.c (go_emf_modifyworldtransform): typo,
+	(go_emf_lineto): implement, (go_emf_parse): initialize more fields.
+	* other files: fix documentation for introspection.
+
 2012-03-08  Jean Brefort  <jean brefort normalesup org>
 
 	* configure.in: add introspection support. [#670161]
diff --git a/NEWS b/NEWS
index c2ba06f..1dff9a4 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,7 @@ goffice 0.9.3:
 
 Jean:
 	* Add introspection support. [#670161]
+	* Make introspection build when libgoffice is not installed [#671699]
 
 Morten:
 	* Fix GOImage fallback for non-GUI case.
diff --git a/configure.in b/configure.in
index baddfab..85554b5 100644
--- a/configure.in
+++ b/configure.in
@@ -142,10 +142,49 @@ dnl Should we use libspectre ?
 dnl ***************************
 
 goffice_with_eps=false
-PKG_CHECK_MODULES(EPS, libspectre >= 0.2.6,[], [goffice_with_eps=false])
+LIBGS_REQUIRED="9.06"
+LIBSPECTRE_REQUIRED="0.2.6"
+
+AC_CHECK_LIB(gs, gsapi_new_instance, have_libgs=yes, have_libgs=no)
+if test "x$have_libgs" = "xyes"; then
+    LIB_GS="-lgs"
+    save_LIBS=$LIBS
+    LIBS="$LIBS -lgs"
+    AC_LANG_PUSH(C)
+    AC_MSG_CHECKING([for libgs >= $LIBGS_REQUIRED])
+    AC_RUN_IFELSE([AC_LANG_PROGRAM(
+[[
+#include <ghostscript/iapi.h>
+]],
+[[
+    gsapi_revision_t gsrev;
+
+    if (gsapi_revision (&gsrev, sizeof (gsrev)) != 0)
+        return 1;
+    if (gsrev.revision < `echo "$LIBGS_REQUIRED" | sed -e 's/\.//'`)
+        return 1;
+]])],
+                   [have_libgs=yes],
+                   [have_libgs=no],
+                   [have_libgs=yes]
+    )
+    AC_MSG_RESULT($have_libgs)
+    AC_LANG_POP(C)
+    LIBS=$save_LIBS
+    if test "x$have_libgs" = "xno"; then
+        echo "You need libgs >= $LIBGS_REQUIRED in order to support embedded EPS"
+    else
+		PKG_CHECK_MODULES(libspectre, libspectre >= $LIBSPECTRE_REQUIRED,[goffice_with_eps=true], [goffice_with_eps=false])
+		if test "x$goffice_with_eps" = "xfalse"; then
+	        echo "You need libspectre >= $LIBSPECTRE_REQUIRED in order to support embedded EPS"
+		fi
+    fi
+else
+    echo "You need libgs in order to support embedded EPS"
+fi
 if test "x$goffice_with_eps" = "xtrue" ; then
 	AC_DEFINE(GOFFICE_WITH_EPS, 1, [Define if EPS is supported])
-	goffice_reqs="$goffice_reqs libspectre >= 0.2.6 "
+	goffice_reqs="$goffice_reqs libspectre >= $LIBSPECTRE_REQUIRED"
 	EXTRA_DEPS="$EXTRA_DEPS libspectre"
 fi
 
diff --git a/goffice/Makefile.am b/goffice/Makefile.am
index 3c09408..302a26b 100644
--- a/goffice/Makefile.am
+++ b/goffice/Makefile.am
@@ -156,7 +156,7 @@ GOffice- GOFFICE_API_VER@.gir: $(G_IR_SCANNER)
 	    --libtool="$(LIBTOOL)" \
 	    --nsversion="@GOFFICE_API_VER@" \
 	    --output $@ \
-	    --pkg libgoffice- GOFFICE_API_VER@ \
+	    --pkg libgsf-1 \
 	    -I$(top_srcdir) \
 	    `cat $(srcdir)/list_of_sources`
 
diff --git a/goffice/app/file.c b/goffice/app/file.c
index 0104660..7f01280 100644
--- a/goffice/app/file.c
+++ b/goffice/app/file.c
@@ -106,14 +106,14 @@ GSF_CLASS (GOFileOpener, go_file_opener,
 
 /**
  * go_file_opener_setup:
- * @fo          : Newly created GOFileOpener object
- * @id          : Optional ID of the opener (or NULL)
- * @description : Description of supported file format
- * @suffixes	: List of suffixes to associate with the opener
- * @mimes	: List of mime types to associate with the opener
+ * @fo: Newly created GOFileOpener object
+ * @id: Optional ID of the opener (or NULL)
+ * @description: Description of supported file format
+ * @suffixes: List of suffixes to associate with the opener
+ * @mimes: List of mime types to associate with the opener
  * @encoding_dependent: whether the opener depends on an encoding sel.
- * @probe_func  : Optional pointer to "probe" function (or NULL)
- * @open_func   : Pointer to "open" function
+ * @probe_func: Optional pointer to "probe" function (or NULL)
+ * @open_func: Pointer to "open" function
  *
  * Sets up GOFileOpener object, newly created with g_object_new function.
  * This is intended to be used only by GOFileOpener derivates.
@@ -142,12 +142,12 @@ go_file_opener_setup (GOFileOpener *fo, gchar const *id,
 
 /**
  * go_file_opener_new:
- * @id          : Optional ID of the opener (or NULL)
- * @description : Description of supported file format
- * @suffixes	: List of suffixes to associate with the opener
- * @mimes	: List of mime types to associate with the opener
- * @probe_func  : Optional pointer to "probe" function (or NULL)
- * @open_func   : Pointer to "open" function
+ * @id: Optional ID of the opener (or NULL)
+ * @description: Description of supported file format
+ * @suffixes: List of suffixes to associate with the opener
+ * @mimes: List of mime types to associate with the opener
+ * @probe_func: Optional pointer to "probe" function (or NULL)
+ * @open_func: Pointer to "open" function
  *
  * Creates new GOFileOpener object. Optional @id will be used
  * after registering it with go_file_opener_register function.
@@ -173,12 +173,12 @@ go_file_opener_new (gchar const *id,
 
 /**
  * go_file_opener_new_with_enc:
- * @id          : Optional ID of the opener (or NULL)
- * @description : Description of supported file format
- * @suffixes	: List of suffixes to associate with the opener
- * @mimes	: List of mime types to associate with the opener
- * @probe_func  : Optional pointer to "probe" function (or NULL)
- * @open_func   : Pointer to "open" function
+ * @id: Optional ID of the opener (or NULL)
+ * @description: Description of supported file format
+ * @suffixes: List of suffixes to associate with the opener
+ * @mimes: List of mime types to associate with the opener
+ * @probe_func: Optional pointer to "probe" function (or NULL)
+ * @open_func: Pointer to "open" function
  *
  * Creates new GOFileOpener object. Optional @id will be used
  * after registering it with go_file_opener_register function.
@@ -252,9 +252,9 @@ go_file_opener_get_mimes (GOFileOpener const *fo)
 
 /**
  * go_file_opener_probe:
- * @fo      : #GOFileOpener
- * @input   : #GsfInput
- * @pl	    : #GOFileProbeLevel
+ * @fo: #GOFileOpener
+ * @input: #GsfInput
+ * @pl: #GOFileProbeLevel
  *
  * Checks if a given file is supported by the opener.
  *
@@ -276,11 +276,11 @@ go_file_opener_probe (GOFileOpener const *fo, GsfInput *input, GOFileProbeLevel
 
 /**
  * go_file_opener_open:
- * @fo          : GOFileOpener object
- * @opt_enc     : Optional encoding
- * @io_context  : Context for i/o operation
+ * @fo: GOFileOpener object
+ * @opt_enc: Optional encoding
+ * @io_context: Context for i/o operation
  * @FIXME_workbook_view: Workbook View
- * @input       : Gsf input stream
+ * @input: Gsf input stream
  *
  * Reads content of @file_name file into workbook @wbv is attached to.
  * Results are reported using @io_context object, use
@@ -546,11 +546,11 @@ GSF_CLASS (GOFileSaver, go_file_saver,
 
 /**
  * go_file_saver_new:
- * @id          : Optional ID of the saver (or NULL)
- * @extension   : Optional default extension of saved files (or NULL)
- * @description : Description of supported file format
- * @level       : File format level
- * @save_func   : Pointer to "save" function
+ * @id: Optional ID of the saver (or NULL)
+ * @extension: Optional default extension of saved files (or NULL)
+ * @description: Description of supported file format
+ * @level: File format level
+ * @save_func: Pointer to "save" function
  *
  * Creates new GOFileSaver object. Optional @id will be used
  * after registering it with go_file_saver_register or
@@ -650,10 +650,10 @@ go_file_saver_set_export_options (GOFileSaver *fs,
 
 /**
  * go_file_saver_save:
- * @fs          : GOFileSaver object
- * @io_context  : Context for i/o operation
+ * @fs: GOFileSaver object
+ * @io_context: Context for i/o operation
  * @FIXME_workbook_view: Workbook View
- * @output      : Output stream
+ * @output: Output stream
  *
  * Saves @wbv and the workbook it is attached to into @output stream.
  * Results are reported using @io_context object, use
@@ -708,8 +708,8 @@ go_file_saver_save (GOFileSaver const *fs, GOIOContext *io_context,
 
 /**
  * go_file_saver_set_overwrite_files:
- * @fs          : GOFileSaver object
- * @overwrite   : A boolean value saying whether the saver should overwrite
+ * @fs: GOFileSaver object
+ * @overwrite: A boolean value saying whether the saver should overwrite
  *                existing files.
  *
  * Changes behaviour of the saver when saving a file. If @overwrite is set
@@ -784,8 +784,8 @@ cmp_int_less_than (gconstpointer list_i, gconstpointer i)
 
 /**
  * go_file_opener_register:
- * @fo          : GOFileOpener object
- * @priority    : Opener's priority
+ * @fo: GOFileOpener object
+ * @priority: Opener's priority
  *
  * Adds @fo opener to the list of available file openers, making it
  * available for Gnumeric i/o routines. The opener is registered with given
@@ -826,7 +826,7 @@ go_file_opener_register (GOFileOpener *fo, gint priority)
 
 /**
  * go_file_opener_unregister:
- * @fo          : GOFileOpener object previously registered using
+ * @fo: GOFileOpener object previously registered using
  *                go_file_opener_register
  *
  * Removes @fo opener from list of available file openers. Reference count
@@ -872,7 +872,7 @@ default_file_saver_cmp_priority (gconstpointer a, gconstpointer b)
 
 /**
  * go_file_saver_register:
- * @fs          : GOFileSaver object
+ * @fs: GOFileSaver object
  *
  * Adds @fs saver to the list of available file savers, making it
  * available for the user when selecting file format for save.
@@ -898,8 +898,8 @@ go_file_saver_register (GOFileSaver *fs)
 
 /**
  * go_file_saver_register_as_default:
- * @fs          : GOFileSaver object
- * @priority    : Saver's priority
+ * @fs: GOFileSaver object
+ * @priority: Saver's priority
  *
  * Adds @fs saver to the list of available file savers, making it
  * available for the user when selecting file format for save.
@@ -927,7 +927,7 @@ go_file_saver_register_as_default (GOFileSaver *fs, gint priority)
 
 /**
  * go_file_saver_unregister:
- * @fs          : GOFileSaver object previously registered using
+ * @fs: GOFileSaver object previously registered using
  *                go_file_saver_register or go_file_saver_register_as_default
  *
  * Removes @fs saver from list of available file savers. Reference count
@@ -1017,8 +1017,8 @@ go_file_saver_for_mime_type (gchar const *mime_type)
 }
 
 /**
- * go_file_saver_for_file_name :
- * @file_name : name
+ * go_file_saver_for_file_name:
+ * @file_name: name
  *
  * Searches for file saver with given @filename, registered using
  * go_file_opener_register
@@ -1043,7 +1043,7 @@ go_file_saver_for_file_name (char const *file_name)
 
 /**
  * go_file_opener_for_id:
- * @id : File opener's ID
+ * @id: File opener's ID
  *
  * Searches for file opener with given @id, registered using
  * go_file_opener_register
@@ -1062,7 +1062,7 @@ go_file_opener_for_id (gchar const *id)
 
 /**
  * go_file_saver_for_id:
- * @id : File saver's ID
+ * @id: File saver's ID
  *
  * Searches for file saver with given @id, registered using
  * go_file_saver_register or register_file_opener_as_default.
diff --git a/goffice/app/go-plugin-service.c b/goffice/app/go-plugin-service.c
index 83a4f0f..f4eeca6 100644
--- a/goffice/app/go-plugin-service.c
+++ b/goffice/app/go-plugin-service.c
@@ -1301,8 +1301,8 @@ go_plugin_services_shutdown (void)
 
 /**
  * go_plugin_service_define:
- * @type_str :  char const *
- * @ctor : #GOPluginServiceCreate
+ * @type_str:  char const *
+ * @ctor: #GOPluginServiceCreate
  *
  * Allow the definition of new service types
  **/
diff --git a/goffice/app/go-plugin.c b/goffice/app/go-plugin.c
index 9171d07..b7aba51 100644
--- a/goffice/app/go-plugin.c
+++ b/goffice/app/go-plugin.c
@@ -377,7 +377,7 @@ go_plugin_read_full_info_if_needed (GOPlugin *plugin)
 
 /**
  * go_plugin_get_textdomain:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: plugin's textdomain for use with textdomain(3) and d*gettext(3)
  * 	functions.
@@ -396,7 +396,7 @@ go_plugin_get_textdomain (GOPlugin *plugin)
 
 /**
  * go_plugin_is_active:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: TRUE if @plugin is active and FALSE otherwise.
  **/
@@ -429,8 +429,8 @@ static GSF_CLASS (GOPluginTypeModule, go_plugin_type_module,
 /**********************************************************/
 
 /**
- * go_plugin_get_type_module :
- * @plugin : #GOPlugin
+ * go_plugin_get_type_module:
+ * @plugin: #GOPlugin
  *
  * Returns: the GTypeModule associated with the plugin creating it if necessary.
  **/
@@ -449,7 +449,7 @@ go_plugin_get_type_module (GOPlugin *plugin)
 
 /**
  * go_plugin_get_dir_name:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: the name of the directory in which @plugin is located.
  * 	Returned string is != NULL and stays valid during @plugin's lifetime.
@@ -464,7 +464,7 @@ go_plugin_get_dir_name (GOPlugin *plugin)
 
 /**
  * go_plugin_get_id:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: the ID of @plugin (unique string used for idenfification of
  * 	plugin).  Returned string is != NULL and stays valid during @plugin's
@@ -480,7 +480,7 @@ go_plugin_get_id (GOPlugin *plugin)
 
 /**
  * go_plugin_get_name:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: textual name of @plugin. If the real name is not available
  * 	for some reason, automatically generated string will be returned.
@@ -499,7 +499,7 @@ go_plugin_get_name (GOPlugin *plugin)
 
 /**
  * go_plugin_get_description:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: textual description of @plugin or NULL if description is not
  * 	available.  Returned string stays valid during @plugin's lifetime.
@@ -517,7 +517,7 @@ go_plugin_get_description (GOPlugin *plugin)
 
 /**
  * go_plugin_is_loaded:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: TRUE if @plugin is loaded and FALSE otherwise.
  **/
@@ -534,8 +534,8 @@ go_plugin_is_loaded (GOPlugin *plugin)
 
 /**
  * plugins_register_loader:
- * @loader_id     : Loader's id
- * @service       : Plugin service of type "plugin_loader"
+ * @loader_id: Loader's id
+ * @service: Plugin service of type "plugin_loader"
  *
  * Registers new type of plugin loader identified by @loader_id (identifier
  * consists of loader's plugin id and service id concatenated using colon).
@@ -555,7 +555,7 @@ go_plugins_register_loader (gchar const *loader_id, GOPluginService *service)
 
 /**
  * plugins_unregister_loader:
- * @loader_id     : Loader's id
+ * @loader_id: Loader's id
  *
  * Unregisters a type of plugin loader identified by @loader_id. After
  * callingthis function Gnumeric will be unable to load plugins supported
@@ -919,8 +919,8 @@ plugin_get_loader_if_needed (GOPlugin *plugin, GOErrorInfo **ret_error)
 
 /**
  * go_plugin_activate:
- * @plugin : #GOPlugin
- * @ret_error   : Pointer used to report errors
+ * @plugin: #GOPlugin
+ * @ret_error: Pointer used to report errors
  *
  * Activates @plugin together with all its dependencies.
  * In case of error the plugin won't be activated and detailed error
@@ -1012,8 +1012,8 @@ go_plugin_activate (GOPlugin *plugin, GOErrorInfo **ret_error)
 
 /**
  * go_plugin_deactivate:
- * @plugin : #GOPlugin
- * @ret_error   : Pointer used to report errors
+ * @plugin: #GOPlugin
+ * @ret_error: Pointer used to report errors
  *
  * Dectivates @plugin. Its dependencies will NOT be automatically
  * deactivated.
@@ -1071,7 +1071,7 @@ go_plugin_deactivate (GOPlugin *plugin, GOErrorInfo **ret_error)
 
 /**
  * go_plugin_can_deactivate:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Tells if the plugin can be deactivated using go_plugin_deactivate.
  *
@@ -1169,9 +1169,9 @@ go_plugin_load_base (GOPlugin *plugin, GOErrorInfo **ret_error)
 
 /**
  * go_plugin_load_service:
- * @plugin : #GOPlugin
- * @service     : Plugin service
- * @ret_error   : Pointer used to report errors
+ * @plugin: #GOPlugin
+ * @service: Plugin service
+ * @ret_error: Pointer used to report errors
  *
  * Loads base part of the plugin if it is not loaded and then loads given
  * plugin service (prepares necessary part of the plugin for direct use).
@@ -1193,9 +1193,9 @@ go_plugin_load_service (GOPlugin *plugin, GOPluginService *service, GOErrorInfo
 
 /**
  * go_plugin_unload_service:
- * @plugin : #GOPlugin
- * @service     : Plugin service
- * @ret_error   : Pointer used to report errors
+ * @plugin: #GOPlugin
+ * @service: Plugin service
+ * @ret_error: Pointer used to report errors
  *
  * ...
  * This function is intended for use by GOPluginService objects.
@@ -1216,7 +1216,7 @@ go_plugin_unload_service (GOPlugin *plugin, GOPluginService *service, GOErrorInf
 
 /**
  * go_plugin_use_ref:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  */
 void
 go_plugin_use_ref (GOPlugin *plugin)
@@ -1232,7 +1232,7 @@ go_plugin_use_ref (GOPlugin *plugin)
 
 /**
  * go_plugin_use_unref:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  **/
 void
 go_plugin_use_unref (GOPlugin *plugin)
@@ -1249,7 +1249,7 @@ go_plugin_use_unref (GOPlugin *plugin)
 
 /**
  * go_plugin_get_dependencies_ids:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: the list of identifiers of plugins that @plugin depends on.
  * 	All these plugins will be automatically activated before activating the
@@ -1271,7 +1271,7 @@ go_plugin_get_dependencies_ids (GOPlugin *plugin)
 
 /**
  * go_plugin_get_services:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: A list of services.  The list must not be freed or changed.
  **/
@@ -1285,7 +1285,7 @@ go_plugin_get_services (GOPlugin *plugin)
 
 /**
  * go_plugin_get_loader:
- * @plugin : #GOPlugin
+ * @plugin: #GOPlugin
  *
  * Returns: The loader.
  **/
@@ -1442,8 +1442,8 @@ go_plugin_list_read_for_all_dirs (GOErrorInfo **ret_error)
 
 /**
  * plugin_db_activate_plugin_list:
- * @plugins     : The list of plugins
- * @ret_error   : Pointer used to report errors
+ * @plugins: The list of plugins
+ * @ret_error: Pointer used to report errors
  *
  * Activates all plugins in the list. If some of the plugins cannot be
  * activated, the function reports this via @ret_error (errors don't
@@ -1477,8 +1477,8 @@ go_plugin_db_activate_plugin_list (GSList *plugins, GOErrorInfo **ret_error)
 
 /**
  * plugin_db_deactivate_plugin_list:
- * @plugins     : The list of plugins
- * @ret_error   : Pointer used to report errors
+ * @plugins: The list of plugins
+ * @ret_error: Pointer used to report errors
  *
  * Deactivates all plugins in the list. If some of the plugins cannot be
  * deactivated, the function reports this via @ret_error (errors don't
@@ -1544,7 +1544,7 @@ go_plugins_get_active_plugins (void)
 
 /**
  * plugins_get_plugin_by_id:
- * @plugin_id    : String containing plugin ID
+ * @plugin_id: String containing plugin ID
  *
  * Returns: GOPlugin object for plugin with ID equal to @plugin_id or NULL
  * 	if there's no plugin available with given id.  Function returns
@@ -1560,8 +1560,8 @@ go_plugins_get_plugin_by_id (gchar const *plugin_id)
 }
 
 /**
- * plugin_db_mark_plugin_for_deactivation :
- * @plugin : #GOPlugin
+ * plugin_db_mark_plugin_for_deactivation:
+ * @plugin: #GOPlugin
  * @mark:
  */
 void
@@ -1582,8 +1582,8 @@ go_plugin_db_mark_plugin_for_deactivation (GOPlugin *plugin, gboolean mark)
 }
 
 /**
- * plugin_db_is_plugin_marked_for_deactivation :
- * @plugin : #GOPlugin
+ * plugin_db_is_plugin_marked_for_deactivation:
+ * @plugin: #GOPlugin
  */
 gboolean
 go_plugin_db_is_plugin_marked_for_deactivation (GOPlugin *plugin)
@@ -1602,8 +1602,8 @@ ghf_set_state_old_unused (gpointer key, gpointer value, gpointer unused)
 
 /**
  * plugins_rescan:
- * @ret_error       : Pointer used to report errors
- * @ret_new_plugins : Optional pointer to return list of new plugins
+ * @ret_error: Pointer used to report errors
+ * @ret_new_plugins: Optional pointer to return list of new plugins
  *
  *
  */
@@ -1734,12 +1734,12 @@ go_plugins_set_dirs (GSList *plugin_dirs)
 
 /**
  * go_plugins_init:
- * @context     : #GOCmdContext used to report errors
- * @known_states : A list of known states (defined how ?)
+ * @context: #GOCmdContext used to report errors
+ * @known_states: A list of known states (defined how ?)
  * @active_plugins: A list of active plugins
- * @plugin_dirs :a list of directories to search for plugins
- * @activate_new_plugins : activate plugins we have no seen before.
- * @default_loader_type : importer to use by default.
+ * @plugin_dirs:a list of directories to search for plugins
+ * @activate_new_plugins: activate plugins we have no seen before.
+ * @default_loader_type: importer to use by default.
  *
  * Initializes the plugin subsystem. Might be called several times to add
  * new plugins.
diff --git a/goffice/graph/gog-axis.c b/goffice/graph/gog-axis.c
index 1b25fd3..29c69a3 100644
--- a/goffice/graph/gog-axis.c
+++ b/goffice/graph/gog-axis.c
@@ -1546,8 +1546,8 @@ gog_axis_map_set (GogAxis *axis, char const *name)
 }
 
 /**
- * gog_axis_map_is_valid
- * @map : a #GogAxisMap
+ * gog_axis_map_is_valid:
+ * @map: a #GogAxisMap
  *
  * Tests if @map was correctly initialized, i.e. if bounds are
  * valid.
@@ -1602,9 +1602,9 @@ gog_axis_map_new (GogAxis *axis, double offset, double length)
 }
 
 /**
- * gog_axis_map :
- * @map : a #GogAxisMap
- * @value : value to map to plot space.
+ * gog_axis_map:
+ * @map: a #GogAxisMap
+ * @value: value to map to plot space.
  *
  * Converts @value to plot coordinates. A value in [0,1.0] range means a data
  * within axis bounds.
@@ -1622,9 +1622,9 @@ gog_axis_map (GogAxisMap *map, double value)
 }
 
 /**
- * gog_axis_map_from_view :
- * @map : a #GogAxisMap
- * @value : value to unmap from canvas space.
+ * gog_axis_map_from_view:
+ * @map: a #GogAxisMap
+ * @value: value to unmap from canvas space.
  *
  * Converts value from canvas space to data space.
  *
@@ -1640,9 +1640,9 @@ gog_axis_map_from_view (GogAxisMap *map, double value)
 }
 
 /**
- * gog_axis_map_to_view :
- * @map : a #GogAxisMap
- * @value : value to map to canvas space
+ * gog_axis_map_to_view:
+ * @map: a #GogAxisMap
+ * @value: value to map to canvas space
  *
  * Converts value from data space to canvas space, using
  * offset and length parameters given to gog_axis_map_new.
@@ -1659,9 +1659,9 @@ gog_axis_map_to_view (GogAxisMap *map, double value)
 }
 
 /**
- * gog_axis_map_derivative_to_view :
- * @map : a #GogAxisMap
- * @value : value to map to canvas space
+ * gog_axis_map_derivative_to_view:
+ * @map: a #GogAxisMap
+ * @value: value to map to canvas space
  *
  * Returns: the derivative of the mapping expression at value.
  **/
@@ -1675,9 +1675,9 @@ gog_axis_map_derivative_to_view (GogAxisMap *map, double value)
 }
 
 /**
- * gog_axis_map_finite :
- * @map : a #GogAxisMap
- * @value : value to test
+ * gog_axis_map_finite:
+ * @map: a #GogAxisMap
+ * @value: value to test
  *
  * Tests whether @value is valid for the given @map.
  *
@@ -1693,8 +1693,8 @@ gog_axis_map_finite (GogAxisMap *map, double value)
 }
 
 /**
- * gog_axis_map_get_baseline :
- * @map : a #GogAxisMap
+ * gog_axis_map_get_baseline:
+ * @map: a #GogAxisMap
  *
  * Returns: the baseline for @map, in view coordinates,
  * 	clipped to offset and offset+length, where offset and length
@@ -1710,9 +1710,9 @@ gog_axis_map_get_baseline (GogAxisMap *map)
 
 /**
  * gog_axis_map_get_extents:
- * @map : a #GogAxisMap
- * @start : location to store start for this axis
- * @stop : location to store stop for this axis
+ * @map: a #GogAxisMap
+ * @start: location to store start for this axis
+ * @stop: location to store stop for this axis
  *
  * Gets start and stop for the given axis map in data coordinates. If
  * axis is not inverted, start = minimum and stop = maximum.  If axis is invalid,
@@ -1753,9 +1753,9 @@ gog_axis_map_get_extents (GogAxisMap *map, double *start, double *stop)
 
 /**
  * gog_axis_map_get_bounds:
- * @map : a #GogAxisMap
- * @minimum : location to store minimum for this axis
- * @maximum : location to store maximum for this axis
+ * @map: a #GogAxisMap
+ * @minimum: location to store minimum for this axis
+ * @maximum: location to store maximum for this axis
  *
  * Gets bounds for the given axis map in data coordinates. If axis is invalid,
  * it'll return arbitrary bounds.
@@ -1822,8 +1822,8 @@ gog_axis_map_is_discrete (GogAxisMap *map)
 }
 
 /**
- * gog_axis_map_free :
- * @map : a #GogAxisMap
+ * gog_axis_map_free:
+ * @map: a #GogAxisMap
  *
  * Frees #GogAxisMap object.
  **/
@@ -2005,9 +2005,9 @@ role_label_can_add (GogObject const *parent)
 }
 
 /**
- * gog_axis_set_format :
- * @axis : #GogAxis
- * @fmt  : #GOFormat
+ * gog_axis_set_format:
+ * @axis: #GogAxis
+ * @fmt: #GOFormat
  *
  * Absorbs a reference to @fmt, and accepts NULL.
  *
@@ -2033,8 +2033,8 @@ gog_axis_set_format (GogAxis *axis, GOFormat *fmt)
 }
 
 /**
- * gog_axis_get_format :
- * @axis :#GogAxis
+ * gog_axis_get_format:
+ * @axis: #GogAxis
  *
  * Returns: the format assigned to @axis but does not add a reference.
  **/
@@ -2219,10 +2219,10 @@ gog_axis_finalize (GObject *obj)
 }
 
 /**
- * gog_axis_get_entry :
- * @axis : #GogAxis
- * @i :
- * @user_defined : an optionally NULL pointr to gboolean
+ * gog_axis_get_entry:
+ * @axis: #GogAxis
+ * @i:
+ * @user_defined: an optionally NULL pointr to gboolean
  *
  * Returns: the value of axis element @i and sets @user_defined or
  * 	NaN on error
@@ -2863,8 +2863,8 @@ GSF_CLASS_FULL (GogAxis, gog_axis,
 
 
 /**
- * gog_axis_is_center_on_ticks :
- * @axis : #GogAxis
+ * gog_axis_is_center_on_ticks:
+ * @axis: #GogAxis
  *
  * Returns: TRUE if labels are centered on ticks when @axis is discrete
  **/
@@ -2876,8 +2876,8 @@ gog_axis_is_center_on_ticks (GogAxis const *axis)
 }
 
 /**
- * gog_axis_is_discrete :
- * @axis : #GogAxis
+ * gog_axis_is_discrete:
+ * @axis: #GogAxis
  *
  * Returns: TRUE if @axis enumerates a set of discrete items, rather than a
  * 	continuous value
@@ -2890,8 +2890,8 @@ gog_axis_is_discrete (GogAxis const *axis)
 }
 
 /**
- * gog_axis_is_inverted :
- * @axis : #GogAxis
+ * gog_axis_is_inverted:
+ * @axis: #GogAxis
  *
  * Returns: TRUE if @axis is inverted.
  **/
@@ -2903,10 +2903,10 @@ gog_axis_is_inverted (GogAxis const *axis)
 }
 
 /**
- * gog_axis_get_bounds :
- * @axis : #GogAxis
- * @minima : non-NULL storage for result
- * @maxima : non-NULL storage for result
+ * gog_axis_get_bounds:
+ * @axis: #GogAxis
+ * @minima: non-NULL storage for result
+ * @maxima: non-NULL storage for result
  *
  * Returns: %TRUE if the bounds stored in @minima and @maxima are sane
  **/
@@ -2924,10 +2924,10 @@ gog_axis_get_bounds (GogAxis const *axis, double *minima, double *maxima)
 }
 
 /**
- * gog_axis_set_bounds :
- * @axis : #GogAxis
- * @minimum : axis low bound
- * @maximum : axis high bound
+ * gog_axis_set_bounds:
+ * @axis: #GogAxis
+ * @minimum: axis low bound
+ * @maximum: axis high bound
  *
  * Sets axis bounds. If minimum or maximum are not finite values, corresponding
  * bound remains unchanged.
@@ -2966,10 +2966,10 @@ gog_axis_get_effective_span (GogAxis const *axis, double *start, double *end)
 }
 
 /**
- * gog_axis_set_extents :
- * @axis : #GogAxis
- * @start : axis start bound
- * @stop : axis stop bound
+ * gog_axis_set_extents:
+ * @axis: #GogAxis
+ * @start: axis start bound
+ * @stop: axis stop bound
  *
  * Set axis exents. It's a convenience function that sets axis bounds taking
  * into account invert flag.
@@ -2987,9 +2987,9 @@ gog_axis_set_extents (GogAxis *axis, double start, double stop)
 
 
 /**
- * gog_axis_get_ticks :
- * @axis : #GogAxis
- * @ticks : an array of #GogAxisTick
+ * gog_axis_get_ticks:
+ * @axis: #GogAxis
+ * @ticks: an array of #GogAxisTick
  *
  * An accessor to @axis->ticks.
  *
@@ -3006,9 +3006,9 @@ gog_axis_get_ticks (GogAxis *axis, GogAxisTick **ticks)
 }
 
 /**
- * gog_axis_get_labels :
- * @axis : a #GogAxis
- * @plot_that_labeled_axis : a #GogPlot
+ * gog_axis_get_labels:
+ * @axis: a #GogAxis
+ * @plot_that_labeled_axis: a #GogPlot
  *
  * return value: the possibly NULL #GOData used as a label for this axis
  * along with the plot that it was associated with
@@ -3029,9 +3029,9 @@ gog_axis_get_labels (GogAxis const *axis, GogPlot **plot_that_labeled_axis)
 }
 
 /**
- * gog_axis_add_contributor :
- * @axis : #GogAxis
- * @contrib : #GogObject (can we relax this to use an interface ?)
+ * gog_axis_add_contributor:
+ * @axis: #GogAxis
+ * @contrib: #GogObject (can we relax this to use an interface ?)
  *
  * Register @contrib as taking part in the negotiation of @axis's bounds.
  **/
@@ -3047,9 +3047,9 @@ gog_axis_add_contributor (GogAxis *axis, GogObject *contrib)
 }
 
 /**
- * gog_axis_del_contributor :
- * @axis : #GogAxis
- * @contrib : #GogObject (can we relax this to use an interface ?)
+ * gog_axis_del_contributor:
+ * @axis: #GogAxis
+ * @contrib: #GogObject (can we relax this to use an interface ?)
  *
  * @contrib no longer takes part in the negotiation of @axis's bounds.
  **/
@@ -3099,9 +3099,9 @@ gog_axis_contributors (GogAxis *axis)
 }
 
 /**
- * gog_axis_bound_changed :
- * @axis : #GogAxis
- * @contrib : #GogObject
+ * gog_axis_bound_changed:
+ * @axis: #GogAxis
+ * @contrib: #GogObject
 **/
 void
 gog_axis_bound_changed (GogAxis *axis, GogObject *contrib)
diff --git a/goffice/graph/gog-chart.c b/goffice/graph/gog-chart.c
index bb91d25..68bc604 100644
--- a/goffice/graph/gog-chart.c
+++ b/goffice/graph/gog-chart.c
@@ -745,12 +745,12 @@ GSF_CLASS (GogChart, gog_chart,
 	   GOG_TYPE_OUTLINED_OBJECT)
 
 /**
- * gog_chart_get_position :
- * @chart : const #GogChart
- * @x :
- * @y :
- * @cols :
- * @rows :
+ * gog_chart_get_position:
+ * @chart: const #GogChart
+ * @x:
+ * @y:
+ * @cols:
+ * @rows:
  *
  * Returns: TRUE if the chart has been positioned.
  **/
@@ -772,7 +772,7 @@ gog_chart_get_position (GogChart const *chart,
 }
 
 /**
- * gog_chart_set_position :
+ * gog_chart_set_position:
  * @chart: #GogChart
  * @x:
  * @y:
@@ -800,9 +800,9 @@ gog_chart_set_position (GogChart *chart,
 }
 
 /**
- * gog_chart_get_plot_area :
- * @chart : #GogChart
- * @plot_area  : #GogViewAllocation
+ * gog_chart_get_plot_area:
+ * @chart: #GogChart
+ * @plot_area: #GogViewAllocation
  *
  * Stores plot area in plot_area, in fraction of chart size.
  *
@@ -819,8 +819,8 @@ gog_chart_get_plot_area (GogChart *chart, GogViewAllocation *plot_area)
 
 /**
  * gog_chart_set_plot_area:
- * @chart : #GogChart
- * @plot_area  : #GogViewAllocation
+ * @chart: #GogChart
+ * @plot_area: #GogViewAllocation
  *
  * If plot_area != NULL, sets plot area size and location, in fraction
  * of chart size, and sets GogChart::is_plot_area_manual flag to TRUE.
@@ -993,9 +993,9 @@ gog_chart_axis_set_assign (GogChart *chart, GogAxisSet axis_set)
 }
 
 /**
- * gog_chart_get_axes :
- * @chart : #GogChart
- * @target  : #GogAxisType
+ * gog_chart_get_axes:
+ * @chart: #GogChart
+ * @target: #GogAxisType
  *
  * Returns: a list which the caller must free of all axis of type @target
  * associated with @chart.
@@ -1027,7 +1027,7 @@ gog_chart_get_axes (GogChart const *chart, GogAxisType target)
 }
 
 /**
- * gog_chart_get_grid :
+ * gog_chart_get_grid:
  * @chart: #GogChart
  *
  * Returns: the grid associated with @chart if one exists
diff --git a/goffice/graph/gog-graph.c b/goffice/graph/gog-graph.c
index 2387328..b25a6e8 100644
--- a/goffice/graph/gog-graph.c
+++ b/goffice/graph/gog-graph.c
@@ -444,8 +444,8 @@ GSF_CLASS (GogGraph, gog_graph,
 	   GOG_TYPE_OUTLINED_OBJECT)
 
 /**
- * gog_graph_validate_chart_layout :
- * @graph : #GogGraph
+ * gog_graph_validate_chart_layout:
+ * @graph: #GogGraph
  *
  * Check the layout of the chart grid and ensure that there are no empty
  * cols or rows, and resize as necessary
@@ -544,10 +544,10 @@ gog_graph_num_rows (GogGraph const *graph)
 }
 
 /**
- * gog_graph_dup :
- * @graph : #GogGraph
+ * gog_graph_du :
+ * @grap : #GogGraph
  *
- * Returns: a deep copy of @graph.
+ * Returns: (transfer full) a deep copy of @graph.
  **/
 GogGraph *
 gog_graph_dup (GogGraph const *graph)
@@ -599,7 +599,7 @@ gog_graph_set_theme (GogGraph *graph, GogTheme *theme)
 }
 
 /**
- * gog_graph_get_data :
+ * gog_graph_get_data:
  * @graph: #GogGraph
  *
  * Returns: a list of the GOData objects that are data to the graph.
@@ -613,9 +613,9 @@ gog_graph_get_data (GogGraph const *graph)
 }
 
 /**
- * gog_graph_ref_data :
- * @graph : #GogGraph
- * @dat : #GOData
+ * gog_graph_ref_data:
+ * @graph: #GogGraph
+ * @dat: #GOData
  *
  * Returns: @dat or something equivalent to it that already exists in the graph.
  * 	Otherwise use @dat.  Adds a gobject ref to the target and increments a
@@ -663,9 +663,9 @@ gog_graph_ref_data (GogGraph *graph, GOData *dat)
 }
 
 /**
- * gog_graph_unref_data :
- * @graph : #GogGraph
- * @dat : #GOData
+ * gog_graph_unref_data:
+ * @graph: #GogGraph
+ * @dat: #GOData
  *
  **/
 void
@@ -718,8 +718,8 @@ cb_graph_idle (GogGraph *graph)
 }
 
 /**
- * gog_graph_request_update :
- * @graph : #GogGraph
+ * gog_graph_request_update:
+ * @graph: #GogGraph
  *
  * queue an update if one had not already be queued.
  *
@@ -743,8 +743,8 @@ gog_graph_request_update (GogGraph *graph)
 }
 
 /**
- * gog_graph_force_update :
- * @graph : #GogGraph
+ * gog_graph_force_update:
+ * @graph: #GogGraph
  *
  * Do an update now if one has been queued.
  **/
@@ -759,7 +759,7 @@ gog_graph_force_update (GogGraph *graph)
 	}
 }
 /**
- * gog_graph_get_size :
+ * gog_graph_get_size:
  * @graph: #GogGraph
  * @width: logical width in pts
  * @height: logical height in pts
@@ -1004,10 +1004,10 @@ update_action (GogGraphView *view, GogTool *tool, double x, double y)
 
 /**
  * gog_graph_view_handle_event:
- * @gview : #GogGraphView
- * @event : #GdkEvent
- * @x_offset : in pixels
- * @y_offset : in pixels
+ * @gview: #GogGraphView
+ * @event: #GdkEvent
+ * @x_offset: in pixels
+ * @y_offset: in pixels
  *
  * Handle events.
  **/
@@ -1076,7 +1076,7 @@ gog_graph_view_handle_event (GogGraphView *view, GdkEvent *event,
 #endif
 
 /**
- * gog_graph_view_get_selection :
+ * gog_graph_view_get_selection:
  * @gview: #GogGraphView
  *
  * Returns: current selected view.
@@ -1091,8 +1091,8 @@ gog_graph_view_get_selection (GogGraphView *gview)
 
 /**
  * gog_graph_view_set_selection
- * @gview : #GogGraphView
- * @gobj : new selected object
+ * @gview: #GogGraphView
+ * @gobj: new selected object
  *
  * Sets @gobj as current selection. If @gobj is different from previously
  * selected object, a selection-changed signal is emitted.
diff --git a/goffice/graph/gog-guru.c b/goffice/graph/gog-guru.c
index b26d815..807655d 100644
--- a/goffice/graph/gog-guru.c
+++ b/goffice/graph/gog-guru.c
@@ -152,10 +152,10 @@ cb_typesel_sample_plot_resize (GocCanvas *canvas,
 
 
 /*
- * graph_typeselect_minor :
+ * graph_typeselect_minor:
  *
- * @typesel :
- * @item : A CanvasItem in the selector.
+ * @typesel:
+ * @item: A CanvasItem in the selector.
  *
  * Moves the typesel::selector overlay above the @item.
  * Assumes that the item is visible
@@ -1275,8 +1275,8 @@ graph_guru_init (GraphGuruState *s)
 }
 
 /**
- * gog_guru_get_help_button :
- * @guru : #GtkWidget  (the result of gog_guru).
+ * gog_guru_get_help_button:
+ * @guru: #GtkWidget  (the result of gog_guru).
  *
  * Quick utility to allow application specific help.  Required until we clean
  * up the relationship between goffice and gnumeric to decide which parts of
@@ -1292,11 +1292,11 @@ gog_guru_get_help_button (GtkWidget *guru)
 }
 
 /**
- * gog_guru
- * @graph	: the graph to edit
- * @dalloc	: The data allocator to use for editing
- * @cc		: Where to report errors
- * @closure	: #GClosure
+ * gog_guru:
+ * @graph: the graph to edit
+ * @dalloc: The data allocator to use for editing
+ * @cc: Where to report errors
+ * @closure: #GClosure
  *
  * CHANGED 0.5.3
  * 	: drop the @toplevel window argument and have the callers handle
diff --git a/goffice/graph/gog-object.c b/goffice/graph/gog-object.c
index b5c221d..ca7a8ea 100644
--- a/goffice/graph/gog-object.c
+++ b/goffice/graph/gog-object.c
@@ -933,7 +933,7 @@ dataset_dup (GogDataset const *src, GogDataset *dst)
 }
 
 /**
- * gog_object_dup :
+ * gog_object_dup:
  * @src: #GogObject
  * @new_parent: #GogObject the parent tree for the object (can be NULL)
  * @datadup: a function to duplicate the data (a default one is used if NULL)
@@ -993,8 +993,8 @@ gog_object_dup (GogObject const *src, GogObject *new_parent, GogDataDuplicator d
 }
 
 /**
- * gog_object_get_parent :
- * @obj : a #GogObject
+ * gog_object_get_parent:
+ * @obj: a #GogObject
  *
  * Returns: @obj's parent, potentially %NULL if it has not been added to a
  * 	heirarchy yet.  does not change ref-count in any way.
@@ -1026,8 +1026,8 @@ gog_object_get_parent_typed (GogObject const *obj, GType t)
 }
 
 /**
- * gog_object_get_graph :
- * @obj : const * #GogObject
+ * gog_object_get_graph:
+ * @obj: const * #GogObject
  *
  * Returns: the parent graph.
  **/
@@ -1051,8 +1051,8 @@ gog_object_get_theme (GogObject const *obj)
 }
 
 /**
- * gog_object_get_name :
- * @obj : a #GogObject
+ * gog_object_get_name:
+ * @obj: a #GogObject
  *
  * No need to free the result
  *
@@ -1066,10 +1066,10 @@ gog_object_get_name (GogObject const *obj)
 }
 
 /**
- * gog_object_set_name :
- * @obj : #GogObject
- * @name : The new name for @obj
- * @err : #GError
+ * gog_object_set_name:
+ * @obj: #GogObject
+ * @name: The new name for @obj
+ * @err: #GError
  *
  * Assign the new name and signals that it has changed.
  * NOTE : it _absorbs_ @name rather than copying it, and generates a new name
@@ -1096,9 +1096,9 @@ gog_object_set_name (GogObject *obj, char *name, GError **err)
 }
 
 /**
- * gog_object_get_children :
- * @obj : a #GogObject
- * @filter : an optional #GogObjectRole to use as a filter
+ * gog_object_get_children:
+ * @obj: a #GogObject
+ * @filter: an optional #GogObjectRole to use as a filter
  *
  * Returns: A list of @obj's Children.  Caller must free the list, but not the
  * 		children.
@@ -1120,9 +1120,9 @@ gog_object_get_children (GogObject const *obj, GogObjectRole const *filter)
 }
 
 /**
- * gog_object_get_child_by_role :
- * @obj : a #GogObject
- * @role : a #GogObjectRole to use as a filter
+ * gog_object_get_child_by_role:
+ * @obj: a #GogObject
+ * @role: a #GogObjectRole to use as a filter
  *
  * A convenience routine to find a unique child with @role.
  *
@@ -1142,9 +1142,9 @@ gog_object_get_child_by_role (GogObject const *obj, GogObjectRole const *role)
 
 /**
  *
- * gog_object_get_child_by_name :
- * @obj : a #GogObject
- * @name : a #char to use as a role name filter
+ * gog_object_get_child_by_name:
+ * @obj: a #GogObject
+ * @name: a #char to use as a role name filter
  *
  * A convenience routine to find a unique child with role == @name
  *
@@ -1158,8 +1158,8 @@ gog_object_get_child_by_name (GogObject const *obj, char const *name)
 }
 
 /**
- * gog_object_is_deletable :
- * @obj : a #GogObject
+ * gog_object_is_deletable:
+ * @obj: a #GogObject
  *
  * Returns: %TRUE if @obj can be deleted.
  **/
@@ -1226,7 +1226,7 @@ gog_role_cmp_full (GogObjectRole const *a, GogObjectRole const *b)
 }
 
 /**
- * gog_object_possible_additions :
+ * gog_object_possible_additions:
  * @parent: a #GogObject
  *
  * Returns: a list of GogObjectRoles that could be added.
@@ -1253,10 +1253,10 @@ gog_object_possible_additions (GogObject const *parent)
 }
 
 /**
- * gog_object_can_reorder :
- * @obj : #GogObject
- * @inc_ok : optionally %NULL pointer for result.
- * @dec_ok : optionally %NULL pointer for result.
+ * gog_object_can_reorder:
+ * @obj: #GogObject
+ * @inc_ok: optionally %NULL pointer for result.
+ * @dec_ok: optionally %NULL pointer for result.
  *
  * If @obj can move forward or backward in its parents child list
  **/
@@ -1301,10 +1301,10 @@ gog_object_can_reorder (GogObject const *obj, gboolean *inc_ok, gboolean *dec_ok
 }
 
 /**
- * gog_object_reorder :
- * @obj : #GogObject
- * @inc :
- * @goto_max :
+ * gog_object_reorder:
+ * @obj: #GogObject
+ * @inc:
+ * @goto_max:
  *
  * Returns: the object just before @obj in the new ordering.
  **/
@@ -1359,7 +1359,7 @@ gog_object_reorder (GogObject const *obj, gboolean inc, gboolean goto_max)
 }
 
 /**
- * gog_object_get_editor :
+ * gog_object_get_editor:
  * @obj: a #GogObject
  * @dalloc: a #GogDataAllocator
  * @cc: a #GOCmdContext
@@ -1399,7 +1399,7 @@ gog_object_get_editor (GogObject *obj, GogDataAllocator *dalloc,
 }
 
 /**
- * gog_object_new_view :
+ * gog_object_new_view:
  * @obj: a #GogObject
  * @parent: parent view
  *
@@ -1488,7 +1488,7 @@ gog_object_emit_changed (GogObject *obj, gboolean resize)
 }
 
 /**
- * gog_object_request_editor_update :
+ * gog_object_request_editor_update:
  * @obj: #GogObject
  *
  * Emits a update-editor signal. This signal should be used by object editors
@@ -1504,8 +1504,8 @@ gog_object_request_editor_update (GogObject *obj)
 /******************************************************************************/
 
 /**
- * gog_object_clear_parent :
- * @obj : #GogObject
+ * gog_object_clear_parent:
+ * @obj: #GogObject
  *
  * Does _not_ unref the child, which in effect adds a ref by freeing up the ref
  * previously associated with the parent.
@@ -1543,7 +1543,7 @@ gog_object_clear_parent (GogObject *obj)
 }
 
 /**
- * gog_object_set_parent :
+ * gog_object_set_parent:
  * @child: #GogObject.
  * @parent: #GogObject.
  * @id: optionally %NULL.
@@ -1592,10 +1592,10 @@ gog_object_set_parent (GogObject *child, GogObject *parent,
 }
 
 /**
- * gog_object_add_by_role :
- * @parent : #GogObject
- * @role : #GogObjectRole
- * @child : #GogObject
+ * gog_object_add_by_role:
+ * @parent: #GogObject
+ * @role: #GogObjectRole
+ * @child: #GogObject
  *
  * Absorb a ref to @child if it is non-NULL.
  * Returns: @child or a newly created object with @role.  Callers do _not_ own
@@ -1645,10 +1645,10 @@ gog_object_add_by_role (GogObject *parent, GogObjectRole const *role, GogObject
 }
 
 /**
- * gog_object_add_by_name :
- * @parent : #GogObject
- * @role :
- * @child : optionally null #GogObject
+ * gog_object_add_by_name:
+ * @parent: #GogObject
+ * @role:
+ * @child: optionally null #GogObject
  *
  * Returns: a newly created child of @parent in @role.  If @child is provided,
  * it is assumed to be an unaffiliated object that will be assigned in @role.
@@ -1664,9 +1664,9 @@ gog_object_add_by_name (GogObject *parent,
 }
 
 /**
- * gog_object_set_invisible :
- * @obj : #GogObject
- * @invisible :
+ * gog_object_set_invisible:
+ * @obj: #GogObject
+ * @invisible:
  **/
 void
 gog_object_set_invisible (GogObject *obj, gboolean invisible)
@@ -1679,9 +1679,9 @@ gog_object_set_invisible (GogObject *obj, gboolean invisible)
 }
 
 /**
- * gog_object_get_position_flags :
- * @obj : #GogObject
- * @mask : #GogObjectPosition
+ * gog_object_get_position_flags:
+ * @obj: #GogObject
+ * @mask: #GogObjectPosition
  *
  * Returns: @obj's position flags, masked by @mask.
  **/
@@ -1693,7 +1693,7 @@ gog_object_get_position_flags (GogObject const *obj, GogObjectPosition mask)
 }
 
 /**
- * gog_object_set_position_flags :
+ * gog_object_set_position_flags:
  * @obj: #GogObject
  * @flags: #GogObjectPosition
  * @mask: #GogObjectPosition
@@ -1727,7 +1727,7 @@ gog_object_set_position_flags (GogObject *obj, GogObjectPosition flags, GogObjec
 }
 
 /**
- * gog_object_get_manual_position :
+ * gog_object_get_manual_position:
  * @obj: #GogObject
  * @pos: #GogViewAllocation
  *
@@ -1744,8 +1744,8 @@ gog_object_get_manual_position (GogObject *gobj, GogViewAllocation *pos)
 
 /**
  * gog_object_set_manual_position:
- * @obj : #GogObject
- * @pos : #GogViewAllocation
+ * @obj: #GogObject
+ * @pos: #GogViewAllocation
  *
  * set manual position of given object, in points.
  **/
@@ -1766,9 +1766,9 @@ gog_object_set_manual_position (GogObject *gobj, GogViewAllocation const *pos)
 
 /**
  * gog_object_get_manual_allocation:
- * @gobj : #GogObject
- * @parent_allocation : #GogViewAllocation
- * @requisition : #GogViewRequisition
+ * @gobj: #GogObject
+ * @parent_allocation: #GogViewAllocation
+ * @requisition: #GogViewRequisition
  *
  * Returns: manual allocation of a GogObject given its parent allocation and
  * its size request.
@@ -1885,7 +1885,7 @@ gog_object_allocate_roles (GogObjectClass *klass)
 }
 
 /**
- * gog_object_register_roles :
+ * gog_object_register_roles:
  * @klass: #GogObjectClass
  * @roles: #GogObjectRole
  * @n_roles: number of roles
diff --git a/goffice/graph/gog-plot.c b/goffice/graph/gog-plot.c
index badf84e..92224dc 100644
--- a/goffice/graph/gog-plot.c
+++ b/goffice/graph/gog-plot.c
@@ -445,8 +445,8 @@ gog_plot_new_by_type (GogPlotType const *type)
  **/
 
 /**
- * gog_plot_new_series :
- * @plot : #GogPlot
+ * gog_plot_new_series:
+ * @plot: #GogPlot
  *
  * Returns: a new GogSeries of a type consistent with @plot.
  **/
@@ -489,8 +489,8 @@ gog_plot_request_cardinality_update (GogPlot *plot)
 }
 
 /**
- * gog_plot_update_cardinality :
- * @plot : #GogPlot
+ * gog_plot_update_cardinality:
+ * @plot: #GogPlot
  * @index_num: index offset for this plot
  *
  * Update cardinality and cache result. See @gog_chart_get_cardinality.
@@ -667,10 +667,10 @@ gog_plot_foreach_elem (GogPlot *plot, gboolean only_visible,
 }
 
 /**
- * gog_plot_get_series :
- * @plot : #GogPlot
+ * gog_plot_get_series:
+ * @plot: #GogPlot
  *
- * Returns: A list of the series in @plot.  Do not modify or free the list.
+ * Returns: (transfer none): A list of the series in @plot.  Do not modify or free the list.
  **/
 GSList const *
 gog_plot_get_series (GogPlot const *plot)
@@ -680,10 +680,10 @@ gog_plot_get_series (GogPlot const *plot)
 }
 
 /**
- * gog_plot_get_axis_bounds :
- * @plot : #GogPlot
- * @axis : #GogAxisType
- * @bounds : #GogPlotBoundInfo
+ * gog_plot_get_axis_bounds:
+ * @plot: #GogPlot
+ * @axis: #GogAxisType
+ * @bounds: #GogPlotBoundInfo
  *
  * Queries @plot for its axis preferences for @axis and stores the results in
  * @bounds.  All elements of @bounds are initialized to sane values before the
@@ -749,8 +749,8 @@ gog_plot_axis_set_is_valid (GogPlot const *plot, GogAxisSet axis_set)
 
 /**
  * gog_plot_set_axis:
- * @plot : #GogPlot
- * @axis : #GogAxis
+ * @plot: #GogPlot
+ * @axis: #GogAxis
  *
  * Connect @axis and @plot.
  **/
@@ -834,9 +834,9 @@ gog_plot_axis_set_assign (GogPlot *plot, GogAxisSet axis_set)
 }
 
 /**
- * gog_plot_axis_clear :
- * @plot : #GogPlot
- * @filter : #GogAxisSet
+ * gog_plot_axis_clear:
+ * @plot: #GogPlot
+ * @filter: #GogAxisSet
  *
  * A utility method to clear all existing axis associations flagged by @filter
  **/
@@ -1118,9 +1118,9 @@ GSF_CLASS_ABSTRACT (GogPlotView, gog_plot_view,
 
 /**
  * gog_plot_view_get_data_at_point:
- * @view : #GogPlotView
- * @x : x position
- * @y : y position
+ * @view: #GogPlotView
+ * @x: x position
+ * @y: y position
  * @series: where to store the series
  *
  * Search a data represented at (@x,@y) in @view and set @series on success.
diff --git a/goffice/graph/gog-renderer.c b/goffice/graph/gog-renderer.c
index 1d23790..6fe9ba2 100644
--- a/goffice/graph/gog-renderer.c
+++ b/goffice/graph/gog-renderer.c
@@ -561,8 +561,8 @@ gog_renderer_push_clip_rectangle (GogRenderer *rend, double x, double y, double
 }
 
 /**
- * gog_renderer_pop_clip :
- * @rend : #GogRenderer
+ * gog_renderer_pop_clip:
+ * @rend: #GogRenderer
  *
  * End the current clipping.
  **/
@@ -721,9 +721,9 @@ gog_renderer_draw_rotated_rectangle (GogRenderer *rend, GogViewAllocation const
 
 /**
  * gog_renderer_draw_grip:
- * @renderer : #GogRenderer
- * @x : x position of grip
- * @y : y position of grip
+ * @renderer: #GogRenderer
+ * @x: x position of grip
+ * @y: y position of grip
  *
  * Draw a grip, used for moving/resizing of objects.
  **/
@@ -798,8 +798,8 @@ _get_marker_surface (GogRenderer *rend)
 }
 
 /**
- * gog_renderer_draw_marker :
- * @rend : #GogRenderer
+ * gog_renderer_draw_marker:
+ * @rend: #GogRenderer
  * @x: X-coordinate
  * @y: Y-coordinate
  **/
@@ -835,11 +835,12 @@ gog_renderer_draw_marker (GogRenderer *rend, double x, double y)
 }
 
 /**
- * gog_renderer_draw_gostring :
- * @rend   : #GogRenderer
- * @gostring : the #GOString to draw
- * @pos    : #GogViewAllocation
- * @anchor : #GOAnchorType how to draw relative to @pos
+ * gog_renderer_draw_gostring:
+ * @rend: #GogRenderer
+ * @str: the #GOString to draw
+ * @pos: #GogViewAllocation
+ * @anchor: #GOAnchorType how to draw relative to @pos
+ * @width: if positive, the maximum width to get a multiline string if needed. 
  *
  * Have @rend draw @layout in the at @pos.{x,y} anchored by the @anchor corner.
  * If @pos.w or @pos.h are >= 0 then clip the results to less than that size.
@@ -939,11 +940,11 @@ gog_renderer_draw_gostring (GogRenderer *rend, GOString *str,
 
 
 /**
- * gog_renderer_draw_text :
- * @rend   : #GogRenderer
- * @text   : the string to draw
- * @pos    : #GogViewAllocation
- * @anchor : #GtkAnchorType how to draw relative to @pos
+ * gog_renderer_draw_text:
+ * @rend: #GogRenderer
+ * @text: the string to draw
+ * @pos: #GogViewAllocation
+ * @anchor: #GtkAnchorType how to draw relative to @pos
  * @use_markup: wether to use pango markup
  *
  * Have @rend draw @text in the at @pos.{x,y} anchored by the @anchor corner.
@@ -977,7 +978,7 @@ gog_renderer_draw_text (GogRenderer *rend, char const *text,
 }
 
 /**
- * gog_renderer_get_text_OBR :
+ * gog_renderer_get_text_OBR:
  * @rend: #GogRenderer
  * @gostring: the string to draw
  * @obr: #GOGeometryOBR to store the Object Bounding Rectangle of @text.
@@ -1036,7 +1037,7 @@ gog_renderer_get_gostring_OBR (GogRenderer *rend, GOString *str,
 
 
 /**
- * gog_renderer_get_text_OBR :
+ * gog_renderer_get_text_OBR:
  * @rend: #GogRenderer
  * @text: the string to draw
  * @use_markup: wether to use pango markup
@@ -1066,7 +1067,7 @@ gog_renderer_get_text_OBR (GogRenderer *rend, char const *text,
 }
 
 /**
- * gog_renderer_get_text_AABR :
+ * gog_renderer_get_text_AABR:
  * @rend: #GogRenderer
  * @text: the string to draw
  * @use_markup: whether to use pango markup
@@ -1084,7 +1085,7 @@ gog_renderer_get_text_AABR (GogRenderer *rend, char const *text,
 }
 
 /**
- * gog_renderer_get_gostring_AABR :
+ * gog_renderer_get_gostring_AABR:
  * @rend: #GogRenderer
  * @str: the string to draw
  * @aabr: #GOGeometryAABR to store the Axis Aligned Bounding Rectangle of @text.
@@ -1403,7 +1404,7 @@ gog_renderer_update (GogRenderer *rend, double w, double h)
 
 /**
  * gog_renderer_get_pixbuf:
- * @renderer : #GogRenderer
+ * @renderer: #GogRenderer
  *
  * Returns: current pixbuf buffer from a renderer that can render into a pixbuf.
  * 	or %NULL on error.
@@ -1681,7 +1682,7 @@ gog_renderer_draw_equation (GogRenderer *renderer, LsmDomView *mathml_view, doub
 
 /**
  * gog_renderer_new:
- * @graph : graph model
+ * @graph: graph model
  *
  * Returns:  a new #GogRenderer which can render into a pixbuf, and sets @graph
  * 	as its model.
diff --git a/goffice/graph/gog-series.c b/goffice/graph/gog-series.c
index e2488d7..32dc9b4 100644
--- a/goffice/graph/gog-series.c
+++ b/goffice/graph/gog-series.c
@@ -878,8 +878,8 @@ GSF_CLASS_FULL (GogSeries, gog_series,
 		GSF_INTERFACE (gog_series_dataset_init, GOG_TYPE_DATASET))
 
 /**
- * gog_series_get_plot :
- * @series : #GogSeries
+ * gog_series_get_plot:
+ * @series: #GogSeries
  *
  * Returns: the possibly NULL plot that contains this series.
  **/
@@ -891,8 +891,8 @@ gog_series_get_plot (GogSeries const *series)
 }
 
 /**
- * gog_series_is_valid :
- * @series : #GogSeries
+ * gog_series_is_valid:
+ * @series: #GogSeries
  *
  * Returns: the current cached validity.  Does not recheck
  **/
@@ -904,8 +904,8 @@ gog_series_is_valid (GogSeries const *series)
 }
 
 /**
- * gog_series_check_validity :
- * @series : #GogSeries
+ * gog_series_check_validity:
+ * @series: #GogSeries
  *
  * Updates the is_valid flag for a series.
  * This is an internal utility that should not really be necessary for general
@@ -931,8 +931,8 @@ gog_series_check_validity (GogSeries *series)
 }
 
 /**
- * gog_series_has_legend :
- * @series : #GogSeries
+ * gog_series_has_legend:
+ * @series: #GogSeries
  *
  * Returns: TRUE if the series has a visible legend entry
  **/
@@ -944,7 +944,7 @@ gog_series_has_legend (GogSeries const *series)
 }
 
 /**
- * gog_series_set_index :
+ * gog_series_set_index:
  * @series: #GogSeries
  * @ind: >= 0 assigns a new index, < 0 resets to auto
  * @is_manual: gboolean
@@ -979,7 +979,7 @@ gog_series_set_index (GogSeries *series, int ind, gboolean is_manual)
 
 /**
  * gog_series_get_name:
- * @series : a #GogSeries
+ * @series: a #GogSeries
  *
  * Gets the _source_ of the name associated with the series.
  * NOTE : this is _NOT_ the actual name.
@@ -995,10 +995,10 @@ gog_series_get_name (GogSeries const *series)
 }
 
 /**
- * gog_series_set_name :
- * @series : a #GogSeries
- * @name_src : a #GODataScalar
- * @err : a #GError
+ * gog_series_set_name:
+ * @series: a #GogSeries
+ * @name_src: a #GODataScalar
+ * @err: a #GError
  *
  * Absorbs a ref to @name_src.
  *
@@ -1010,11 +1010,11 @@ gog_series_set_name (GogSeries *series, GODataScalar *name_src, GError **err)
 }
 
 /**
- * gog_series_set_dim :
- * @series : #GogSeries
- * @dim_i : Which dimension
- * @val   : #GOData
- * @err : optional #GError pointer
+ * gog_series_set_dim:
+ * @series: #GogSeries
+ * @dim_i: Which dimension
+ * @val: #GOData
+ * @err: optional #GError pointer
  *
  * Absorbs a ref to @val
  **/
@@ -1052,8 +1052,8 @@ gog_series_set_XL_dim (GogSeries *series, GogMSDimType ms_type, GOData *val, GEr
 }
 
 /**
- * gog_series_num_elements :
- * @series : #GogSeries
+ * gog_series_num_elements:
+ * @series: #GogSeries
  *
  * Returns: the number of elements in the series
  **/
diff --git a/goffice/graph/gog-view.c b/goffice/graph/gog-view.c
index 9e5adde..d2cfa3f 100644
--- a/goffice/graph/gog-view.c
+++ b/goffice/graph/gog-view.c
@@ -611,8 +611,8 @@ gog_view_get_model (GogView const *view)
 }
 
 /**
- * gog_view_queue_redraw :
- * @view : a #GogView
+ * gog_view_queue_redraw:
+ * @view: a #GogView
  *
  * Requests a redraw for the entire graph.
  **/
@@ -626,8 +626,8 @@ gog_view_queue_redraw (GogView *view)
 }
 
 /**
- * gog_view_queue_resize :
- * @view : a #GogView
+ * gog_view_queue_resize:
+ * @view: a #GogView
  *
  * Flags a view to have its size renegotiated; should
  * be called when a model for some reason has a new size request.
@@ -664,9 +664,9 @@ gog_view_padding_request (GogView *view, GogViewAllocation const *bbox, GogViewP
 
 /**
  * gog_view_size_request:
- * @view : a #GogView
- * @available : available space.
- * @requisition : a #GogViewRequisition.
+ * @view: a #GogView
+ * @available: available space.
+ * @requisition: a #GogViewRequisition.
  *
  * When called @available holds the available space and @requisition is populated
  * with the desired size based on that input and other elements of the view or
@@ -694,8 +694,8 @@ gog_view_size_request (GogView *view,
 }
 
 /**
- * gog_view_size_allocate :
- * @view : a #GogView
+ * gog_view_size_allocate:
+ * @view: a #GogView
  * @allocation: position and size to be allocated to @view
  *
  * Assign a size and position to a GogView.  Primarilly used by containers.
@@ -725,7 +725,7 @@ gog_view_size_allocate (GogView *view, GogViewAllocation const *allocation)
 
 /**
  * gog_view_update_sizes:
- * @view : #GogView
+ * @view: #GogView
  *
  * Returns: %TRUE if a redraw is necessary.
  **/
@@ -838,9 +838,9 @@ gog_view_size_child_request (GogView *view,
 }
 
 /**
- * gog_view_find_child_view :
- * @container : #GogView
- * @target_model : #GogObject
+ * gog_view_find_child_view:
+ * @container: #GogView
+ * @target_model: #GogObject
  *
  * Find the GogView contained in @container that corresponds to @model.
  *
@@ -884,8 +884,8 @@ gog_view_find_child_view  (GogView const *container, GogObject const *target_mod
 }
 
 /**
- * gog_view_render_toolkit :
- * @view : #GogView
+ * gog_view_render_toolkit:
+ * @view: #GogView
  *
  * Render toolkit elements.
  **/
@@ -906,8 +906,8 @@ gog_view_render_toolkit (GogView *view)
 }
 
 /**
- * gog_view_get_toolkit :
- * @view : #GogView
+ * gog_view_get_toolkit:
+ * @view: #GogView
  *
  * Returns: toolkit associated with given view.
  **/
@@ -927,10 +927,10 @@ gog_view_get_toolkit (GogView *view)
 
 /**
  * gog_view_get_tool_at_point:
- * @view : #GogView
- * @x : in coords
- * @y : in coords
- * @gobj : pointed object or NULL
+ * @view: #GogView
+ * @x: in coords
+ * @y: in coords
+ * @gobj: pointed object or NULL
  *
  * Returns: tool under cursor for a given view, or %NULL
  **/
@@ -958,11 +958,11 @@ gog_view_get_tool_at_point (GogView *view, double x, double y, GogObject **gobj)
 
 /**
  * gog_view_get_view_at_point:
- * @view : #GogView
- * @x : cursor x position
- * @y : cursor y position
- * @obj : pointed object or NULL
- * @tool : pointed tool or NULL
+ * @view: #GogView
+ * @x: cursor x position
+ * @y: cursor y position
+ * @obj: pointed object or NULL
+ * @tool: pointed tool or NULL
  *
  * Gets view under cursor, searching recursively from @view. Corresponding object
  * is stored in @obj. This object may or may not be @view->model of pointed view.
@@ -1004,9 +1004,9 @@ gog_view_get_view_at_point (GogView *view, double x, double y, GogObject **obj,
 
 /**
  * gog_view_get_tip_at_point:
- * @view : #GogView
- * @x : x position
- * @y : y position
+ * @view: #GogView
+ * @x: x position
+ * @y: y position
  *
  * Gets a tip string related to the position as defined by (@x,@y) in @view.
  *
diff --git a/goffice/graph/gog-view.h b/goffice/graph/gog-view.h
index 1a9b31d..fa36adc 100644
--- a/goffice/graph/gog-view.h
+++ b/goffice/graph/gog-view.h
@@ -85,8 +85,8 @@ typedef struct {
 	void	 (*padding_request) 		(GogView *view, GogViewAllocation const *bbox,
 						 GogViewPadding *padding);
 	void	 (*size_request)    		(GogView *view, GogViewRequisition const *available,
-						 GogViewRequisition *req);
-	void	 (*size_allocate)   		(GogView *, GogViewAllocation const *bbox);
+						 GogViewRequisition *requisition);
+	void	 (*size_allocate)   		(GogView *view, GogViewAllocation const *allocation);
 
 	void	 (*render)        		(GogView *view, GogViewAllocation const *bbox);
 
diff --git a/goffice/gtk/go-color-palette.c b/goffice/gtk/go-color-palette.c
index 8a2922c..61b1a61 100644
--- a/goffice/gtk/go-color-palette.c
+++ b/goffice/gtk/go-color-palette.c
@@ -404,9 +404,9 @@ go_color_palette_set_title (GOColorPalette *pal, char const *title)
 }
 
 /**
- * go_color_palette_set_group :
- * @p : #GOColorPalette
- * @cg : #GOColorGroup
+ * go_color_palette_set_group:
+ * @p: #GOColorPalette
+ * @cg: #GOColorGroup
  *
  **/
 void
@@ -671,8 +671,8 @@ cb_menu_custom_activate (GtkWidget *button, GOMenuColor *menu)
  * @no_color_label: color label
  * @default_color: #GOColor
  * @cg: #GOColorGroup
- * @custom_dialog_title : optional string
- * @current_color : #GOColor
+ * @custom_dialog_title: optional string
+ * @current_color: #GOColor
  *
  * Returns:  a submenu with a palette of colours.  Caller is responsible for
  * 	creating an item to point to the submenu.
diff --git a/goffice/gtk/go-color-selector.c b/goffice/gtk/go-color-selector.c
index f124341..048e0ff 100644
--- a/goffice/gtk/go-color-selector.c
+++ b/goffice/gtk/go-color-selector.c
@@ -344,7 +344,7 @@ go_color_selector_set_color (GOSelector *selector, GOColor color)
 /**
  * go_color_selector_get_color:
  * @selector: a #GOSelector
- * @is_auto : non-NULL result storage
+ * @is_auto: non-NULL result storage
  *
  * Retrieves current color selection of a #GOSelector
  * created via @go_color_selector_new. @is_auto will be set to
@@ -375,9 +375,9 @@ go_color_selector_get_color (GOSelector *selector, gboolean *is_auto)
 }
 
 /**
- * go_color_selector_set_allow_alpha :
- * @selector : #GOColorSelector
- * @allow_alpha : boolean
+ * go_color_selector_set_allow_alpha:
+ * @selector: #GOColorSelector
+ * @allow_alpha: boolean
  *
  * Should the custom colour selector allow the use of opacity.
  **/
diff --git a/goffice/gtk/go-combo-box.h b/goffice/gtk/go-combo-box.h
index 6e869a6..8e0c8e4 100644
--- a/goffice/gtk/go-combo-box.h
+++ b/goffice/gtk/go-combo-box.h
@@ -46,11 +46,11 @@ struct _GOComboBoxClass {
 	GtkBoxClass	base;
 
 	/* virtual */
-	void  (*set_title) (GOComboBox *cbox, char const *title);
+	void  (*set_title) (GOComboBox *combo, char const *title);
 
 	/* invoked when the popup has been hidden, if the signal
 	 * returns TRUE, it means it should be killed */
-	gboolean   (*pop_down_done)   (GOComboBox *cbox, GtkWidget *);
+	gboolean   (*pop_down_done)   (GOComboBox *combo, GtkWidget *);
 };
 
 /* public */
diff --git a/goffice/gtk/go-graph-widget.c b/goffice/gtk/go-graph-widget.c
index 512ca4a..206ccff 100644
--- a/goffice/gtk/go-graph-widget.c
+++ b/goffice/gtk/go-graph-widget.c
@@ -465,7 +465,7 @@ GSF_CLASS (GOGraphWidget, go_graph_widget,
  * go_graph_widget_get_graph :
  * @widget : #GOGraphWidget
  *
- * Returns: the #GogGraph embedded in the widget.
+ * Returns: (transfer none): the #GogGraph embedded in the widget.
  **/
 GogGraph *
 go_graph_widget_get_graph (GOGraphWidget *widget)
@@ -478,7 +478,7 @@ go_graph_widget_get_graph (GOGraphWidget *widget)
  * go_graph_widget_get_chart :
  * @widget : #GOGraphWidget
  *
- * Returns: the #GogChart created by go_graph_widget_new().
+ * Returns: (transfer none): the #GogChart created by go_graph_widget_new().
  **/
 GogChart *
 go_graph_widget_get_chart (GOGraphWidget *widget)
@@ -492,7 +492,7 @@ go_graph_widget_get_chart (GOGraphWidget *widget)
  * go_graph_widget_get_renderer :
  * @widget : #GOGraphWidget
  *
- * Returns: the #GogRenderer used by the widget.
+ * Returns: (transfer none): the #GogRenderer used by the widget.
  **/
 GogRenderer *go_graph_widget_get_renderer (GOGraphWidget *widget)
 {
diff --git a/goffice/gtk/go-image-sel.c b/goffice/gtk/go-image-sel.c
index 6d037a9..c411a8d 100644
--- a/goffice/gtk/go-image-sel.c
+++ b/goffice/gtk/go-image-sel.c
@@ -212,11 +212,11 @@ cb_selection_changed (GtkIconView *view, GOImageSelState *state)
 }
 
 /**
- * go_image_sel_new
- * @doc		: The #GODoc owning the image collection
- * @image	:  #GOImage
+ * go_image_sel_new:
+ * @doc: The #GODoc owning the image collection
+ * @image:  #GOImage
  *
- * Returns: and shows new image selector.
+ * Returns: (transfer full): and shows new image selector.
  **/
 GtkWidget *
 go_image_sel_new (GODoc *doc, GOCmdContext *cc, GOImage **image)
diff --git a/goffice/gtk/go-optionmenu.c b/goffice/gtk/go-optionmenu.c
index 081d176..0027750 100644
--- a/goffice/gtk/go-optionmenu.c
+++ b/goffice/gtk/go-optionmenu.c
@@ -292,6 +292,15 @@ go_option_menu_set_menu (GOOptionMenu *option_menu,
 	g_object_notify (G_OBJECT (option_menu), "menu");
 }
 
+
+/**
+ * go_option_menu_set_history:
+ * @selection: a list of indices giving the menu to select. 
+ *
+ * Selects an item. The last number in the list is the rank of the item to select
+ * in its menu and the previous ones are the ranks of the submenus containing 
+ * the item to select.
+ **/
 void
 go_option_menu_set_history (GOOptionMenu *option_menu, GSList *selection)
 {
@@ -321,7 +330,7 @@ go_option_menu_set_history (GOOptionMenu *option_menu, GSList *selection)
  *
  * Retrieves the currently selected menu item.
  *
- * Return value: the selected menu_item
+ * Returns: the selected menu_item
  **/
 
 GtkWidget *
diff --git a/goffice/gtk/go-selector.c b/goffice/gtk/go-selector.c
index dfa83cd..d5823f4 100644
--- a/goffice/gtk/go-selector.c
+++ b/goffice/gtk/go-selector.c
@@ -388,7 +388,7 @@ go_selector_set_active (GOSelector *selector, int index)
 /**
  * go_selector_get_active:
  * @selector: a #GOSelector
- * @is_auto : boolean
+ * @is_auto: boolean
  *
  * Retrieves current selection index, and set @is_auto to TRUE if
  * current selection was set by clicking on automatic palette item.
diff --git a/goffice/gtk/goffice-gtk.c b/goffice/gtk/goffice-gtk.c
index 969ac9b..34481e7 100644
--- a/goffice/gtk/goffice-gtk.c
+++ b/goffice/gtk/goffice-gtk.c
@@ -51,8 +51,8 @@
 
 /**
  * go_gtk_button_new_with_stock:
- * @text : button label
- * @stock_id : id for stock icon
+ * @text: button label
+ * @stock_id: id for stock icon
  *
  * FROM : gedit
  * Creates a new GtkButton with custom label and stock image.
@@ -71,7 +71,7 @@ go_gtk_button_new_with_stock (char const *text, char const* stock_id)
 }
 
 /**
- * go_gtk_dialog_add_button :
+ * go_gtk_dialog_add_button:
  * @dialog: dialog you want to add a button
  * @text: button label
  * @stock_id: stock icon id
@@ -137,10 +137,10 @@ apply_ui_from_file (GtkBuilder *gui, GsfInput *src, const char *uifile,
 
 
 /**
- * go_gtk_builder_new :
- * @uifile : the name of the file load
- * @domain : the translation domain
- * @gcc : #GOCmdContext
+ * go_gtk_builder_new:
+ * @uifile: the name of the file load
+ * @domain: the translation domain
+ * @gcc: #GOCmdContext
  *
  * Simple utility to open ui files
  *
@@ -242,12 +242,12 @@ go_gtk_builder_new_internal (char const *uifile,
 
 
 /**
- * go_gtk_builder_signal_connect :
- * @gui : #GtkBuilder
- * @instance_name : widget name
- * @detailed_signal : signal name
- * @c_handler : #GCallback
- * @data : arbitrary
+ * go_gtk_builder_signal_connect:
+ * @gui: #GtkBuilder
+ * @instance_name: widget name
+ * @detailed_signal: signal name
+ * @c_handler: #GCallback
+ * @data: arbitrary
  *
  * Convenience wrapper around g_signal_connect for GtkBuilder.
  *
@@ -268,12 +268,12 @@ go_gtk_builder_signal_connect	(GtkBuilder	*gui,
 }
 
 /**
- * go_xml_builder_signal_connect_swapped :
- * @gui : #GtkBuilder
- * @instance_name : widget name
- * @detailed_signal : signal name
- * @c_handler : #GCallback
- * @data : arbitary
+ * go_xml_builder_signal_connect_swapped:
+ * @gui: #GtkBuilder
+ * @instance_name: widget name
+ * @detailed_signal: signal name
+ * @c_handler: #GCallback
+ * @data: arbitary
  *
  * Convenience wrapper around g_signal_connect_swapped for GtkBuilder.
  *
@@ -294,9 +294,9 @@ go_gtk_builder_signal_connect_swapped (GtkBuilder	*gui,
 }
 
 /**
- * go_gtk_builder_get_widget :
- * @gui : the #GtkBuilder
- * @widget_name : the name of the combo box in the ui file.
+ * go_gtk_builder_get_widget:
+ * @gui: the #GtkBuilder
+ * @widget_name: the name of the combo box in the ui file.
  *
  * Simple wrapper to #gtk_builder_get_object which returns the object
  * as a GtkWidget.
@@ -310,9 +310,9 @@ go_gtk_builder_get_widget (GtkBuilder *gui, char const *widget_name)
 }
 
 /**
- * go_gtk_builder_combo_box_init_text :
- * @gui : the #GtkBuilder
- * @widget_name : the name of the combo box in the ui file.
+ * go_gtk_builder_combo_box_init_text:
+ * @gui: the #GtkBuilder
+ * @widget_name: the name of the combo box in the ui file.
  *
  * searches the #GtkComboBox in @gui and ensures it has a model and a
  * renderer appropriate for using with #gtk_combo_box_append_text and friends.
@@ -422,8 +422,8 @@ go_gtk_editable_enters (GtkWindow *window, GtkWidget *w)
 }
 
 /**
- * go_gtk_widget_disable_focus :
- * @w : #GtkWidget
+ * go_gtk_widget_disable_focus:
+ * @w: #GtkWidget
  *
  * Convenience wrapper to disable focus on a container and it's children.
  **/
@@ -437,10 +437,10 @@ go_gtk_widget_disable_focus (GtkWidget *w)
 }
 
 /**
- * go_pango_measure_string :
- * @context : #PangoContext
- * @font_desc : #PangoFontDescription
- * @str : The text to measure.
+ * go_pango_measure_string:
+ * @context: #PangoContext
+ * @font_desc: #PangoFontDescription
+ * @str: The text to measure.
  *
  * A utility function to measure text.
  *
@@ -472,9 +472,9 @@ cb_parent_mapped (GtkWidget *parent, GtkWindow *window)
 }
 
 /**
- * go_gtk_window_set_transient
- * @toplevel	: The calling window
- * @window      : the transient window
+ * go_gtk_window_set_transient:
+ * @toplevel: The calling window
+ * @window: the transient window
  *
  * Make the window a child of the workbook in the command context, if there is
  * one.  The function duplicates the positioning functionality in
@@ -517,9 +517,9 @@ cb_non_modal_dialog_keypress (GtkWidget *w, GdkEventKey *e)
 }
 
 /**
- * go_gtk_nonmodal_dialog :
- * @toplevel : #GtkWindow
- * @dialog : #GtkWindow
+ * go_gtk_nonmodal_dialog:
+ * @toplevel: #GtkWindow
+ * @dialog: #GtkWindow
  *
  * Utility to set @dialog as a transient of @toplevel
  * and to set up a handler for "Escape"
@@ -570,9 +570,9 @@ recent_func_log_func (G_GNUC_UNUSED const gchar   *log_domain,
 }
 
 /**
- * go_gtk_file_sel_dialog :
- * @toplevel : #GtkWindow
- * @w : #GtkWidget
+ * go_gtk_file_sel_dialog:
+ * @toplevel: #GtkWindow
+ * @w: #GtkWidget
  *
  * Runs a modal dialog to select a file.
  *
@@ -990,9 +990,9 @@ add_atk_relation (GtkWidget *w0, GtkWidget *w1, AtkRelationType type)
 }
 
 /**
- * go_atk_setup_label :
- * @label : #GtkWidget
- * @target : #GtkWidget
+ * go_atk_setup_label:
+ * @label: #GtkWidget
+ * @target: #GtkWidget
  *
  * A convenience routine to setup label-for/labeled-by relationship between a
  * pair of widgets
@@ -1128,9 +1128,9 @@ go_gtk_help_button_init (GtkWidget *w, char const *data_dir, char const *app, ch
 
 /**
  * go_gtk_url_is_writeable:
- * @parent : #GtkWindow
- * @uri : the uri to test.
- * @overwrite_by_default : gboolean
+ * @parent: #GtkWindow
+ * @uri: the uri to test.
+ * @overwrite_by_default: gboolean
  *
  * Check if it makes sense to try saving.
  * If it's an existing file and writable for us, ask if we want to overwrite.
@@ -1190,8 +1190,8 @@ go_gtk_url_is_writeable (GtkWindow *parent, char const *uri,
 
 /**
  * go_gtk_dialog_run:
- * @dialog : #GtkDialog
- * @parent : #GtkWindow
+ * @dialog: #GtkDialog
+ * @parent: #GtkWindow
  *
  * Pop up a dialog as child of a window.
  *
@@ -1296,7 +1296,7 @@ go_gtk_query_yes_no (GtkWindow *parent, gboolean default_answer,
 
 /**
  * go_dialog_guess_alternative_button_order:
- * @dialog : #GtkDialog
+ * @dialog: #GtkDialog
  *
  * This function inspects the buttons in the dialog and comes up
  * with a reasonable alternative dialog order.
diff --git a/goffice/math/go-cspline.c b/goffice/math/go-cspline.c
index 96c9924..7d9163a 100644
--- a/goffice/math/go-cspline.c
+++ b/goffice/math/go-cspline.c
@@ -211,7 +211,7 @@ void SUFFIX(go_cspline_destroy) (SUFFIX(GOCSpline) *sp)
 /**
  * go_cspline_get_value:
  * @sp: a spline structure returned by go_cspline_init.
- * @x : The value
+ * @x: The value
  *
  * sp must be a valid spline structure as returned by go_cspline_init.
  *
@@ -249,7 +249,7 @@ DOUBLE SUFFIX(go_cspline_get_value) (SUFFIX(GOCSpline) const *sp, DOUBLE x)
 /**
  * go_cspline_get_deriv:
  * @sp: a spline structure returned by go_cspline_init.
- * @x : the value
+ * @x: the value
  *
  * sp must be a valid spline structure as returned by go_cspline_init.
  *
diff --git a/goffice/math/go-regression.c b/goffice/math/go-regression.c
index a4b7566..c91a1ae 100644
--- a/goffice/math/go-regression.c
+++ b/goffice/math/go-regression.c
@@ -1065,7 +1065,7 @@ SUFFIX(log_fitting) (DOUBLE *xs, const DOUBLE *ys, int n,
  * @n: number of data points.
  * @affine: if true, a non-zero constant is allowed.
  * @res: output place for constant[0] and slope1[1], slope2[2],... There will be dim+1 results.
- * @stat_ : non-NULL storage for additional results.
+ * @stat_: non-NULL storage for additional results.
  *
  * Performs multi-dimensional linear regressions on the input points.
  * Fits to "y = b + a1 * x1 + ... ad * xd".
@@ -1115,7 +1115,7 @@ SUFFIX(go_linear_regression) (MATRIX xss, int dim,
  * @n: number of data points
  * @affine: if %TRUE, a non-one multiplier is allowed
  * @res: output place for constant[0] and root1[1], root2[2],... There will be dim+1 results.
- * @stat_ : non-NULL storage for additional results.
+ * @stat_: non-NULL storage for additional results.
  *
  * Performs one-dimensional linear regressions on the input points.
  * Fits to "y = b * m1^x1 * ... * md^xd " or equivalently to
@@ -1148,7 +1148,7 @@ SUFFIX(go_exponential_regression) (MATRIX xss, int dim,
  * @n: number of data points
  * @affine: if %TRUE, a non-one multiplier is allowed
  * @res: output place for constant[0] and root1[1], root2[2],... There will be dim+1 results.
- * @stat_ : non-NULL storage for additional results.
+ * @stat_: non-NULL storage for additional results.
  *
  * Performs one-dimensional linear regressions on the input points as
  * go_exponential_regression, but returns the logarithm of the coefficients instead
@@ -1215,7 +1215,7 @@ SUFFIX(go_exponential_regression_as_log) (MATRIX xss, int dim,
  * @n: number of data points
  * @affine: if %TRUE, a non-one multiplier is allowed
  * @res: output place for constant[0] and root1[1], root2[2],... There will be dim+1 results.
- * @stat_ : non-NULL storage for additional results.
+ * @stat_: non-NULL storage for additional results.
  *
  * Performs one-dimensional linear regressions on the input points.
  * Fits to "y = b * x1^m1 * ... * xd^md " or equivalently to
@@ -1293,7 +1293,7 @@ SUFFIX(go_power_regression) (MATRIX xss, int dim,
  * @n: number of data points
  * @affine: if %TRUE, a non-zero constant is allowed
  * @res: output place for constant[0] and factor1[1], factor2[2],... There will be dim+1 results.
- * @stat_ : non-NULL storage for additional results.
+ * @stat_: non-NULL storage for additional results.
  *
  * This is almost a copy of linear_regression and produces multi-dimensional
  * linear regressions on the input points after transforming xss to ln(xss).
diff --git a/goffice/utils/go-emf.c b/goffice/utils/go-emf.c
index 2de263f..6067b24 100644
--- a/goffice/utils/go-emf.c
+++ b/goffice/utils/go-emf.c
@@ -2960,7 +2960,7 @@ go_emf_setworldtransform (GOEmfState *state)
 static gboolean
 go_emf_modifyworldtransform (GOEmfState *state)
 {
-	d_(("modifyworldtransfor\n"));
+	d_(("modifyworldtransform\n"));
 	return TRUE;
 }
 
@@ -3383,7 +3383,14 @@ go_emf_extfloodfill (GOEmfState *state)
 static gboolean
 go_emf_lineto (GOEmfState *state)
 {
+	double x, y;
 	d_(("lineto\n"));
+	if (state->curDC->path == NULL)
+		return FALSE;
+	go_wmf_read_pointl (state->data, &x, &y);
+	go_emf_convert_coords (state, &x, &y);
+	go_path_line_to (state->curDC->path, x, y);
+	d_(("\tLine to x=%g y=%g\n", x, y));
 	return TRUE;
 }
 
@@ -4213,6 +4220,8 @@ go_emf_parse (GOEmf *emf, GsfInput *input, GError **error)
 		state.curDC = g_new0 (GOEmfDC, 1);
 		state.curDC->style = go_style_new ();
 		state.curDC->group = state.canvas->root;
+		state.dx = state.dy = state.wx = state.wy = 0.;
+		state.dw = state.dh = state.ww = state.wh = 1.;
 		state.mfobjs = g_hash_table_new_full (g_direct_hash, g_direct_equal,
 		                                     NULL, g_free);
 		offset = 4;
diff --git a/goffice/utils/go-pango-extras.c b/goffice/utils/go-pango-extras.c
index ebdb0df..7a2c46b 100644
--- a/goffice/utils/go-pango-extras.c
+++ b/goffice/utils/go-pango-extras.c
@@ -195,10 +195,10 @@ cb_unset2 (PangoAttribute *attr, gpointer _data)
 
 /**
  * go_pango_attr_list_unset:
- * @list : #PangoAttrList
- * @start : starting character index
- * @end : last character index
- * @type : #PangoAttrType
+ * @list: #PangoAttrList
+ * @start: starting character index
+ * @end: last character index
+ * @type: #PangoAttrType
  *
  * See http://bugzilla.gnome.org/show_bug.cgi?id=163679
  **/
diff --git a/goffice/utils/go-pixbuf.c b/goffice/utils/go-pixbuf.c
index 7816664..63f40a6 100644
--- a/goffice/utils/go-pixbuf.c
+++ b/goffice/utils/go-pixbuf.c
@@ -80,7 +80,7 @@ new_from_data (gconstpointer data, size_t length)
 
 /**
  * go_gdk_pixbuf_new_from_file:
- * @filename : pixbuf filename
+ * @filename: pixbuf filename
  *
  * Utility routine to create pixbufs from file @name in the goffice_icon_dir.
  * As a special case, @filename may have the form "res:<resource name>" in
diff --git a/goffice/utils/go-style.c b/goffice/utils/go-style.c
index fe29930..9c27eaa 100644
--- a/goffice/utils/go-style.c
+++ b/goffice/utils/go-style.c
@@ -1093,7 +1093,7 @@ go_style_new (void)
 
 /**
  * go_style_dup:
- * @style : a source #GOStyle
+ * @style: a source #GOStyle
  *
  * Duplicates @style.
  *
@@ -1148,9 +1148,9 @@ go_style_assign (GOStyle *dst, GOStyle const *src)
 }
 
 /**
- * go_style_apply_theme :
- * @dst : #GOStyle
- * @src :  #GOStyle
+ * go_style_apply_theme:
+ * @dst: #GOStyle
+ * @src:  #GOStyle
  * @fields: the fields to which the copy should be limited
  *
  * Merge the attributes from @src onto the elements of @dst that were not user
@@ -1768,9 +1768,9 @@ go_style_is_auto (GOStyle *style)
 }
 
 /**
- * go_style_set_marker :
- * @style : #GOStyle
- * @marker : #GOMarker
+ * go_style_set_marker:
+ * @style: #GOStyle
+ * @marker: #GOMarker
  *
  * Absorb a reference to @marker and assign it to @style.
  **/
@@ -1788,8 +1788,8 @@ go_style_set_marker (GOStyle *style, GOMarker *marker)
 }
 
 /**
- * go_style_get_marker :
- * @style : #GOStyle
+ * go_style_get_marker:
+ * @style: #GOStyle
  *
  * Accessor for @style::marker, without referencing it.
  *
@@ -1846,8 +1846,8 @@ go_style_set_fill_brightness (GOStyle *style, double brightness)
 
 /**
  * go_style_set_text_angle:
- * @style : #GOStyle
- * @angle : text rotation in degrees
+ * @style: #GOStyle
+ * @angle: text rotation in degrees
  *
  * Set text rotation angle in degrees. Valid values are in the range
  * [-180.0Â , 180.0Â].



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