2.35.8 (unstable);

2013-02-21  Murray Cumming  <murrayc@murrayc.com>

	Fix the build  with --enable-warnings=fatal.

	* glib/src/threads.hg: The GThread definition is now deprecated,
	meaning it should only be used via a pointer.
	However, we depend on it, so this temporarily undefs the
	deprecation, so we can still use those checks elsewhere in the build.
	It looks like we will have to do a third version of Glib::Threads,
	after already replacing Glib::Thread.
	This fixes make distcheck.

2013-02-21  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Signal*::connect(): Make them less thread-unsafe.

	* glib/glibmm/main.cc: Make SignalTimeout::connect(), connect_seconds(),
	SignalIdle::connect() and SignalChildWatch::connect() less thread-unsafe
	by moving conn_node->install() to before g_source_attach().
	* glib/glibmm/main.h: Describe that the Signal*::connect*() methods that
	return a sigc::connection are not thread-safe. Bug #396958.

2013-02-20  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Signal[Timeout|Idle]::connect_once() docs: Warn about thread-unsafety.

	* glib/glibmm/main.cc: Fix an incomplete comment.
	* glib/glibmm/main.h: SignalTimeout::connect_once(), connect_seconds_once(),
	SignalIdle::connect_once(): Describe the caution necessary because
	sigc::trackable-derived objects are not thread-safe. Bug #396963.

2013-02-20  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	ThreadPool::push() docs: Note that sigc::trackable is not thread-safe.

	* glib/glibmm/threadpool.h: push(): Describe how sigc::trackable-derived
	classes can be used in a thread-safe way.
	* glib/src/threads.hg: create(): Correct the description added in the
	previous commit. Bug #512348.

2013-02-20  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Threads::Thread::create(): Update the documentation.

	* examples/thread/thread.cc: Don't derive from sigc::trackable.
	* glib/src/threads.hg: create(): Describe how sigc::trackable-derived classes
	can be used in a thread-safe way. Bug #512348.

2013-01-30  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Predefine G_OS_UNIX or G_OS_WIN32 in Doxygen's configuration file.

	* docs/reference/Doxyfile.in: Predefine either G_OS_UNIX or G_OS_WIN32,
	depending on HOST_WINDOWS_NATIVE. Update to Doxygen 1.8.3 status.
	* glib/src/iochannel.hg: Remove the DOXYGEN_SHOULD_SKIP_THIS that was added
	just to get Windows-specific methods included in the documentation.

2013-01-30  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	DBus::[Connection|Proxy]: Change ifdef G_OS_LINUX to ifdef G_OS_UNIX.

	* gio/src/dbusconnection.[ccg|hg]:
	* gio/src/dbusproxy.[ccg|hg]: Change G_OS_LINUX to G_OS_UNIX. Glib does not
	define G_OS_LINUX. Correct function declarations for DBus::Proxy::call().

2013-01-29  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	gmmproc: Improve the conversion of documentation to Doxygen format.

	* tools/defs_gen/docextract.py: Handle 'Since ' without a colon.
	* tools/m4/signal.m4:
	* tools/pm/Output.pm: When a function declaration is surrounded by
	ifdef/endif, put its documentation inside the ifdef/endif.
	* tools/pm/DocsParser.pm: Handle 'Since ' without a colon. Escape most
	backslashes, not just \r and \n. Convert more <tags> to something that
	Doxygen understands.

2013-01-27  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Documentation: Fix many warnings from Doxygen.

	* gio/src/gio_docs_override.xml:
	* glib/src/glib_docs_override.xml: Move "Since: n.m" from the <return> to the
	<description> entries. gmmproc adds a period at the end of the @return
	Doxygen command, and Doxygen warns for "@newin{n,m}.".
	* glib/glibmm/interface.h:
	* glib/glibmm/stringutils.h:
	* glib/glibmm/vectorutils.h:
	* gio/src/*.hg:
	* glib/src/*.hg: (Here "*" means "many", not "all") Examples of changes:
	Add missing @param. Change names of parameters, to make them equal in
	function declaration and @param command. Change "@name" to "@a name".
	Change "<ulink url=" to "<a href=".	

2013-01-17  José Alburquerque  <jaalburquerque@gmail.com>

	TlsConnection: Wrap the virtual functions.

	* gio/src/tlsconnection.hg: Wrap the three virtual functions that were
	left as TODO's now that it's possible to wrap virtual functions with
	slots.
	* tools/m4/vfunc.m4: Use 'retval' instead of 'result' for variables
	that store the result of the C base virtual function invocation and
	the C++ virtual function invocation because 'result' conflicts with
	the AsyncResult 'result' parameter of the handshake_finish_vfunc().

2013-01-16  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: _WRAP_VFUNC: Support the wrapping of slots.

	* tools/pm/WrapParser.pm (on_wrap_vfunc): Add support for parsing the
	additional 'slot_name', 'slot_callback', and 'no_slot_copy' options
	that do the same thing as the corresponding _WRAP_METHOD options (ie.
	specify the name of the C++ slot parameter, the name of the callback
	function and whether to use the original slot or a copy of it,
	respectively.  Also pass the options along to:
	(output_wrap_vfunc): Store the options in the C++ virtual function
	object so they can be tested for when converting the parameters and
	composing the _VFUNC* m4 macro calls.
	* tools/pm/Output.pm (output_wrap_vfunc_cc):
	- Append the additional 'slot_type', 'slot_name' and 'no_slot_copy'
	parameters to the _VFUNC_CC m4 macro invocation so that it can include
	code for the vfunc to copy the slot parameter and pass it on to the C
	function.
	- Also append the additional 'slot_type' and 'c_data_param_name' to
	the _VFUNC_PCC m4 macro so that it knows the slot type and the C
	gpointer parameter name that contains the slot so that the macro can
	generate code to extract the slot from the data parameter and pass the
	slot on to the C++ virtual function.
	(convert_args_c_to_cpp):
	- Rewritten so that it loops through the C++ parameters so that it is
	possible to re-order the parameters using the existing mapping
	functionality that allows parameters to be re-ordered for the
	_WRAP_[CREATE|CTOR|METHOD] macros.  Also re-written so that it knows
	how to deal with slot parameters.
	* tools/m4/vfunc.m4 (_VFUNC_PCC): Modified to accept the additional
	'slot_type' and 'c_data_param_name' arguments and to insert code to
	extract the slot from the C gpointer data parameter to be passed on
	to the C++ virtual function.
	(_VFUNC_CC): Modified to accept the additional 'slot_type',
	'slot_name' and 'no_slot_copy' arguments and to insert code to either
	copy the slot in a 'slot_copy' variable or set the variable to the
	actual slot (if it's so been specified) which is then passed on to the
	C function.

2013-01-16  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: _WRAP_[CREATE|CTOR|METHOD]: Allow any order of {} options.

	* tools/pm/Function.pm: Make it possible to use any order desired of
	the options to specify whether parameters should be optional or should
	be re-ordered in the _WRAP_* directives.

2013-01-14  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Gio::File: Remove refreturn to avoid memory leaks.

	* gio/src/file.hg: Remove the refreturn argument from _WRAP_METHOD for read()
	and 13 other methods. The glib functions add a ref.
	Change @newin2p24 to @newin{2,24}. Bug #691606.

2013-01-09  José Alburquerque  <jaalburquerque@gmail.com>

	giomm.h: Add the tls[client|server]connection.h headers.

	* gio/giomm.h: Add the two new headers.

2013-01-08  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the Tls[Client|Server]Connection classes.

	* gio/src/tlsclientconnection.{ccg,hg}: Add the new client sources
	wrapping the methods and properties.
	* gio/src/tlsserverconnection.{ccg,hg}: Add the new server sources
	wrapping its single property.
	* gio/src/filelist.am: Include the new sources in the list of files to
	be built.
	* gio/src/enums.hg: Add the TlsAuthenticationMode enum needed for the
	server class here because it is documented in the Tls Overview section
	of the C API's documentation and not as part of any other class.
	* tools/m4/convert_gio.m4: Add a necessary conversion.

	* gio/src/tlsdatabase.{ccg,hg}: Fix the includes so that the
	tlscertificate.h header file does not have to be included in the .h
	file but instead in the .c file.

2013-01-07  José Alburquerque  <jaalburquerque@gmail.com>

	giomm.h: Add the new tls*.h headers.

	* gio/giomm.h: Add the
	tls[connection|database|filedatabase|interaction].h headers.

2013-01-07  José Alburquerque  <jaalburquerque@gmail.com>

	Tls[Database|Interaction|Passowrd]: Const corrections.

	* gio/src/tlsdatabase.hg (verify_chain):
	(verify_chain_async): Accept the SocketConnectable as a const because
	it is used to check for certificates that have been pinned (marked as
	good) for a specific domain in a browser session and not modified.
	(lookup_certificate_issuer)
	(lookup_certificate_issuer_async): Accept the TlsCertificate for which
	to look for the issuer as const because it is not modified according
	to the docs.
	* gio/src/tlsinteraction.hg (ask_password):
	(ask_password_async)
	(invoke_ask_password): Accept the TlsPassword as non-const because the
	docs say that it is filled in by the methods, not used to compare a
	user entry with an existing password.
	* gio/src/tlspassword.hg (get_value_vfunc):
	(get_default_warning_vfunc): Make these const because they are getter
	functions.
	* tools/m4/convert_gio.m4: Adjust the conversions according to above
	changes.

2013-01-07  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	gmmproc: _WRAP_ENUM: Skip enum constants whose names are deleted.

	* tools/pm/Enum.pm, build_element_list(): If a custom substitution argument
	in _WRAP_ENUM() removes all of an enum constant's name, exclude that constant
	from the element list. Useful for GdkEventType. Bug #544694.

2013-01-07  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	gmmproc: Improve the search for documentation of enums.

	* tools/pm/Enum.pm, build_element_list(): Search for value documentation
	before custom substitutions are applied to the element name. Bug #544694.

2013-01-03  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the TlsConnection class.

	* gio/src/filelist.am:
	* gio/src/tlsconnection.{ccg,hg}: Add the new sources wrapping the
	methods, properties and signals of the new class.  Also add the
	sources to the list of files to be built and add the virtual
	functions as a TODO.
	* gio/src/gio_vfuncs.defs: Add the definitions of the virtual
	functions of the class for when the virtual functions are wrapped.
	* tools/m4/convert_gio.m4: Add conversions relevant to wrapping the
	class.

2013-01-03  José Alburquerque  <jaalburquerque@gmail.com>

	TlsDatabase: Add a TODO to wrap virtual functions.

	* gio/src/tlsdatabase.hg: Add the virtual functions but as a TODO so
	that the parameters can be properly ordered according to the order in
	the methods.
	* gio/src/gio_vfuncs.defs: Add the virtual function definitions for
	when the vfuncs are wrapped.

	* gio/src/tlscertificate.hg: Do not wrap a write-only construct-only
	property.

2013-01-03  José Alburquerque  <jaalburquerque@gmail.com>

	TlsDatabase: Reorder parameters so that flags can have defaults.

	* gio/src/tlsdatabase.hg (lookup_certificate_issuer):
	(lookup_certificate_issuer_async): Reorder the parameters in these
	methods as is done in the other methods so that the flag parameter can
	be last and have a default value.

2013-01-03  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the TlsDatabase class which implements TlsFileDatabase.

	* gio/src/filelist.am:
	* gio/src/tlsdatabase.{ccg,hg}: Add the sources wrapping the C
	functions and include the sources in the list of files to be built.
	* tools/m4/convert_gio.m4: Add the necessary conversions for the
	wrapped methods in the sources.

	* gio/src/tlsfiledatabase.hg: Add a TODO.

2013-01-02  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the TlsFileDatabase interface.

	* gio/src/filelist.am:
	* gio/src/tlsfiledatabase.{ccg,hg}: Add the new sources wrapping a
	single property and include them in the list of files to be built.
	* gio/src/tlsinteraction.hg: Correct a typo.

2013-01-01  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the TlsInteraction class.

	* gio/src/tlsinteraction.{ccg,hg}:
	* gio/src/filelist.am: Add the sources wrapping the C functions and
	include the sources in the build.
	* gio/src/gio_vfuncs.defs: Add the virtual functions of the class.
	The vfuncs are not wrapped yet so that gmmproc can be modified so that
	virtual functions with slot parameters can be wrapped as is already
	possible with methods.
	* tools/m4/convert_gio.m4: Add necessary conversions.

2012-12-28  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: _WRAP_METHOD: Ensure that slot parameters can be optional.

	* tools/pm/Output.pm (output_wrap_meth): Only pass the slot parameters
	to the m4 _*METHOD() macros if convert_args_cpp_to_c() signals that a
	possible slot parameter should be included.
	(convert_args_cpp_to_c): Add a boolean called 'include_slot' to the
	objCppfunc object that is by default false that is set when a slot
	parameter is encountered and should converted.

2012-12-28  José Alburquerque  <jaalburquerque@gmail.com>

	Variant: Allow containing complex types in arrays and in variants.

	* glib/src/variant.hg (Variant< Variant<T> >): Add a new class capable
	of containing any Variant<>.  The class is just like
	Variant<VariantBase> except that with it, it is now possible to store
	and handle complex variant types in a variant easily in a C++ way.
	The modified test below exemplifies.
	(Variant< std::vector<T> >::create): Create a Variant<> for each of
	the members in the vector and then use g_variant_builder_add_value()
	to add the underlying GVariant of the wrapped elements in the builder
	instead of using the variadic g_variant_builder_add() function which
	causes problems when dealing with types that are more complex than
	basic ones.
	(Variant< std::vector<T> >::get_child): Rewritten to get the child as
	a GVariant, wrap the GVariant in a Variant<> and then get its value
	instead of assuming that the array in the variant is a fixed array of
	basic types so that complex types are supported in arrays.
	(Variant< std::vector<T> >::get): Rewritten as get_child() above so
	that the elements in the array are gotten as a GVariant, wrapped in a
	Variant<> and then retrieved and placed in the resulting vector,
	again, to ensure that a vector of complex types can be stored in a
	variant.
	* tests/glibmm_variant/main.cc: Modify the test to ensure that any
	type other than basic ones are supported.

2012-12-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	Gio::Action: Add more documentation of get_state_hint() and get_state().

	* gio/src/action.hg: get_state_hint() and get_state() returns void, which
	makes them useless. That can't be fixed until the next ABI break. Explain in
	the documentation what to do instead of calling these methods. Bug #690134.

2012-12-27  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>

	SignalProxy: Fix the documentation, especially of connect_notify().

	* glib/src/signalproxy.h.m4: Many small fixes of the documentation, and a
	more thorough rewrite of the doc of SignalProxy[0-6]::connect_notify().
	Bug #126213, comment 5.

2012-12-18  Andrew Potter  <agpotter@gmail.com>

	VariantBase: Add operator for BoolExpr (const void*).

	* glib/src/variant.{ccg,hg}: Adds operator BoolExpr.
	Also deletes relational operators to prevent unexpected conversion.
	Bug #690121.

2012-12-13  Andrew Potter  <agpotter@gmail.com>

	SimpleAction: Fix stateful action constructor typo, allowing use.

	* gio/src/simpleaction.hg: Fix 'sate' typo to 'state', allowing
	the constructor to be used. Bug #690122.

2012-12-12  Andrew Potter  <agpotter@gmail.com>

	Threads: Add create(slot, name).

	* glib/src/threads.{ccg,hg}: Add a method to create named threads.

	Bug #689863.

2012-11-20  Andrew Potter  <agpotter@gmail.com>

	VariantType: Add create_tuple().

	* glib/src/varianttype.{ccg,hg}: Add the method following the style of
	VariantContainerBase::create_tuple(), completing a TODO.

	Bug #688682.

2012-11-20  José Alburquerque  <jaalburquerque@gmail.com>

	VariantType: Correct the referencing in the create*() methods.

	* tools/m4/convert_glib.m4: Correct the 'GVarianType*' to VariantType
	conversion to not take an extra reference when wrapping the
	GVariantType in the VariantType.
	* glib/src/variant.hg:
	* glib/src/varianttype.hg: Also move the 'const GVariantType'
	conversion from the global glib convert file (above) to these local
	files because it takes an extra reference of the GVariantType.  

	Bug #688440 (Andrew Potter).

2012-11-18  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: Documentation: Adjust if the method has a slot param.

	* tools/pm/WrapParser.pm (on_wrap_method): Pass the objCppfunc object
	to the DocParser::lookup_documentation() subroutine so that it can
	decide if the final parameter of the C function should be excluded
	from the docs.  The final parameter (which would be a gpointer
	user_data parameter) would be omitted if the C++ method has a slot
	parameter.
	* tools/pm/DocsParser.pm (lookup_documentation): Pass the objCppfunc
	on to the append_parameter_docs() subroutine which does what's
	described above.
	(append_parameter_documentation): Decide whether to skip the final C
	parameter as described above.  Also rename 'callback' parameters to
	'slot' and use '@a slot' instead of '@a callback' in the main
	description.
	(substitute_identifiers): Replace C *Callback types to C++ Slot*
	types.

	Bug #688587.

2012-11-18  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: _WRAP_METHOD: Support wrapping methods with slots.

	* tools/pm/WrapParser.pm (on_wrap_method): Add code to parse the
	additional 'slot_name', 'slot_callback' and 'no_slot_copy' options.
	- The 'slot_name' options specifies the name of the slot parameter in
	  the C++ method declaration.
	- The 'slot_callback' option specifies the name of the callback to
	  pass to the C function.
	- The 'no_slot_copy' option specifies that the actual slot should be
	  passed to the C function in the data parameter and not a copy.  By
	  default, a copy is used.
	* tools/pm/Output.pm (output_wrap_meth): Pass the new slot options
	along to the *METHOD() m4 macros.
	(convert_args_cpp_to_c):
	- If there is a slot parameter, ignore the final user_data parameter
	  in the C function when comparing the argument count in the C++
	  method and the C function.
	- Convert a possible slot parameter to the address of the specified
	  slot callback (with the 'slot_callback' option).  Report an error if
	  no callback has been specified.
	- Pass a 'slot_copy' variable as the final user data parameter to the
	  C function.  The variable is declared by the _*METHOD() m4 macros.
	* tools/m4/method.m4 (_METHOD):
	(_STATIC_METHOD):
	- Accept the new 'slot_type', 'slot_name' and 'no_slot_copy' options
	  which specify the C++ slot type (without the const and the &), the
	  C++ slot parameter name and whether to create a copy of the slot or
	  not respectively.
	- Insert code to declare a 'slot_copy' variable that is either a copy
	  of the slot or a pointer to the actual C++ slot based on the
	  'no_slot_copy' option.

	Bug #688587.

2012-11-15  José Alburquerque  <jaalburquerque@gmail.com>

	giomm.h: Include the tlspassword.h header file.

	* gio/giomm.h:

2012-11-14  Debarshi Ray  <debarshir@src.gnome.org>

	ustring docs: The global locale should be set when using C++ streams.

	* glib/glibmm/ustring.h: Replace output.imbue(std::locale("")) by
	std::locale::global(std::locale("")) in the description of how to use
	std::ostringstream. Bug #661588.

2012-11-13  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the TlsPassword class.

	* gio/src/tlspassword.{ccg,hg}:
	* gio/src/filelist.am: Add the new sources containing the constructor,
	methods, properties and virtual functions and include the sources in
	the build.
	* gio/src/gio_vfuncs.defs: Add the GTlsPassword virtual functions so
	that they are recognized by gmmproc.
	* tools/m4/convert_gio.m4: Add an enum conversion.

2012-11-13  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the GTls* GTypes to the extra defs generation utility.

	* tools/extra_defs_gen/generate_defs_gio.cc: Add the GTypes.
	* gio/src/gio_signals.defs: And regenerate the signal and property
	defs file.

2012-11-13  José Alburquerque  <jaalburquerque@gmail.com>

	giomm.h: Re-add an accidentally removed include.

	* gio/giomm.h: Re-add 'simpleaction.h' which was accidentally removed.
	Also re-sort the includes by the base filename (without the .h) as
	they were before.

2012-11-12  José Alburquerque  <jaalburquerque@gmail.com>

	giomm.h: Include missing headers.

	* gio/giomm.h: Include all the headers generated from the .hg files.

2012-11-11  José Alburquerque  <jaalburquerque@gmail.com>

	giomm: Add the TlsCertificate class.

	* gio/src/filelist.am:
	* gio/src/tlscertificate.{ccg,hg}: Add the sources wrapping the
	constructors, methods and (most) properties and include the sources in
	the build.
	* gio/src/enums.hg: Add the TlsCertificateFlags enum (wrapping the C
	enum).
	* tools/extra_defs_gen/generate_defs_gio.cc: Add the GTlsCertificate
	GType to the list of types for which signal and property defs are to
	be generated.
	* gio/src/gio_signals.defs: Regenerate the signal and property defs
	file.
	* tools/m4/convert_gio.m4: Add necessary conversions.

	* gio/src/gio_extra_objects.defs: Add TlsClientConnection to avoid a
	gmmproc docs warning.

2012-11-08  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: _WRAP_CTOR: Handle *_new() functions with a final GError**.

	* tools/pm/WrapParser.pm (on_wrap_ctor): Add code to parse an
	additional "errthrow" optional option in a _WRAP_CTOR() macro.
	* tools/pm/Output.pm (output_wrap_ctor): Pass the "errorthrow" option
	along as a string to:
	(get_ctor_properties): Ignore the final GError** parameter of the C
	*_new() function because it does not form part of the property list
	that the constructor to has to set.

	Bug #687959.

2012-11-07  José Alburquerque  <jaalburquerque@gmail.com>

	DesktopAppInfo: Add some new getter methods.

	* gio/src/desktopappinfo.hg: Add the get_keywords(),
	get_startup_wm_class(), get_generic_name(), get_show_in(),
	get_nodisplay() and get_categories() getter methods wrapping the
	corresponding C functions.

2012-11-06  José Alburquerque  <jaalburquerque@gmail.com>

	Variant: Don't refsink variants created using the custom cast ctor.

	* glib/src/variant.ccg:
	* glib/src/variant.hg:
	* glib/src/variant_basictypes.cc.m4: Remove the call to
	g_variant_ref_sink() in the create() methods of the variant types that
	use the custom cast constructor to wrap the newly created C object
	because the custom cast constructor already refsinks the object if
	necessary.

2012-11-06  José Alburquerque  <jaalburquerque@gmail.com>

	MemoryOutputStream: Add the steal_as_bytes() method.

	* gio/src/memoryoutputstream.{ccg,hg}: Add the method that wraps the
	corresponding C function.

2012-11-06  José Alburquerque  <jaalburquerque@gmail.com>

	AppInfo: Add create_duplicate().

	* gio/src/appinfo.{hg,ccg}: Add the new method (which creates a
	duplicate of the AppInfo).  Also, use gmmproc's optional parameter
	functionality to wrap the launch_default_for_uri() method without the
	optional AppLaunchContext parameter.

2012-11-06  José Alburquerque  <jaalburquerque@gmail.com>

	Variant< std::vector<std::string> >: Add create_from_object_paths().

	* glib/src/variant.hg: Add the new method that creates a variant of
	vector of strings out of object paths.  This is so the type of the
	variant is rightly set to G_VARIANT_TYPE_OBJECT_PATH_ARRAY and not
	G_VARIANT_TYPE_BYTESTRING_ARRAY in case some application needs to make
	a distinction.  
	  Also _IGNORE the g_variant_get_objv() and g_variant_dup_objv()
	functions because it's possible to get object paths from a variant of
	vector of strings if it contains them with the existing getter
	methods because object paths are merely strings.
	* glib/src/variantiter.hg: Add an _IGNORE.
	* glib/src/checksum.ccg:
	* glib/src/convert.ccg: Whitespace.

2012-11-05  José Alburquerque  <jaalburquerque@gmail.com>

	Regenerate the XML docs files for glibmm and giomm.

	* gio/src/gio_docs.xml:
	* glib/src/glib_docs.xml: These files now include enum XML
	documentation.
	* glib/src/glib_extra_objects.defs: Add IOChannel to avoid a gmmproc
	documentation warning.

2012-11-04  José Alburquerque  <jaalburquerque@gmail.com>

	gmmproc: Make enum documentation possible.

	* tools/defs_gen/docextract.py (enum_name_pattern): Add a new regular
	expression that recognizes gtk-doc enum comment blocks (though
	imperfectly because it also catches things such as structure comment
	blocks).
	(identifier_patterns): Append the new enum_name_pattern to the list of
	patterns used to test each gtk-doc block's identifier to see what type
	of block it is.
	(parse_file): Do not add a particular gtk-doc block if it has been
	marked as a block initially thought to be an enum comment block but
	later found not to be so.
	(skip_to_identifier): Mark the current comment block as an enum type
	if the enum_name_pattern matches the identifier.
	(process_params): Mark the current block as invalid if the block was
	recognized as an enum type but no parameters are found or if any of
	the parameter names are not all caps.
	(parse_dir): Include .h files for processing because gtk-doc enum
	comment blocks are included in those files.
	* tools/defs_gen/docextract_to_xml.py: Add an option to not print out
	enum docs.  Assume that enum docs should be printed out by default.
	* tools/pm/DocsParser.pm (parse_on_start):
	(parse_on_end): Add logic to correctly parse an <enum> tag (which is
	just like the already existing <function> and <signal> tags.  The only
	difference is in the name of the tags.  The function name syntax is
	the same as a C function name, the signal name has the form
	'CStructName::signal-name' while the enum name has the form
	'CEnumName')
	(lookup_enum_description): Add this subroutine that gets the
	the description of the specified enum.
	(lookup_enum_value_documentation): Add this subroutine that gets the
	description of an enum value as a Doxygen block.
	(lookup_documentation): Use the new remove_example_code subroutine
	described below.
	(remove_example_code): Add this subroutine that removes example code
	from the specified text so that it can be used in other places.
	* tools/pm/Enum.pm (c_prefix): Add a new field to the class storing
	the enum's C prefix.  This field is used when looking up an enum's
	value documentation.
	(parse_values): Modified to store the C prefix of the enum.
	(build_element_list): Modified to lookup the documentation of the
	values of the enum and insert the Doxygen block just before each
	value.  This allows Doxygen to document each value of the enum.
	* tools/pm/Output.pm (output_wrap_enum): Modified to lookup
	the description of the enum previously parsed by the DocParser and
	merge it with an already passed in comment for the enum which is then
	passed as before to the _ENUM macro.
	* tools/m4/enum.m4: Whitespace correction.

	Bug #544694.