2010-12-22 Murray Cumming Variant: Fix compiler warnings. * glib/src/variant.ccg: Remove some uses of the typename keyword to avoid warnings about using them outside of templates (they were in template specializations, which I guess is different). 2010-12-22 José Alburquerque Variant< std::vector >: Correct the getting of the array. * glib/src/variant.{ccg,hg} (get): Use g_variant_get_bytestring_array() in the get() methods instead of g_variant_get_strv(). * examples/dbus/well-known-address-client.cc: Use a VariantContainerBase to get the result of the proxy's call method instead of a Variant. Also corrected the comment about why it is done that way. 2010-12-21 José Alburquerque DBus: Well known service example: Complete the example. * examples/dbus/well-known-address-client.cc: Complete the well known service example by calling the 'ListNames' method of the user's session bus. 2010-12-21 José Alburquerque Add Variant< std::vector<[Glib::ustring|std::string]> specializations. * glib/src/variant.{ccg,hg}: Add two Variant specializations to deal specifically with arrays of UTF8 and non-UTF8 strings both reflecting the API of the specialization that deals with regular arrays. (docs, typos): Minor corrections. (Variant>::get): Have the method that gets the vector return the vector instead of setting an output parameter because returning the vector on the call stack should not be costly and it's probably more intuitive for the programmer. * tests/glibmm_variant/main.cc: Adapt test according to the above change. Correct minor typos. 2010-12-20 José Alburquerque Allow giomm to build under mingw32. * gio/src/unixcredentialsmessage.hg: * gio/src/unixfdlist.hg: * gio/src/unixfdmessage.hg: * gio/src/unixsocketaddress.hg: Add the _GTKMM_WIN_NO_WRAP macro to newly added giomm classes so that giomm builds under mingw32. Fixes Bug #636754 2010-12-20 José Alburquerque Variant: Add a VariantStringBase and a VariantContainerBase class. * glib/src/variant.{ccg,hg} (VariantStringBase): Implement a new class from which the Glib::Variant<> string class (like Glib::Variant) now derive. The new class has methods for determining/creating object paths and signatures. The new instances are created by setting output parameters. (VaraintContainerBase): Implement this new class from which variant containers should derive. (VariantContainerBase::get_n_children, get, get_maybe): Moved from Variant (castitem constructors): Corrected all GVariant* castitem constructors to accept a 'take_a_reference' bool parameter. (Variant< std::vector >::create, get, get_iter): Re-wrote these methods to use the Glib::VariantType class to get variant types instead of using strings. Also Re-wrote to work specifically with fixed arrays (see g_variant_get_fixed_array). This means that this class will not work with vectors of strings because g_variant_get_strv() and g_variant_get_bytestring_array() need to be used in those cases. (std::vector get): Re-wrote to use an output parameter. * glib/src/variant_basictypes.h.m4: Corrected the castitem constructors as above. * tests/Makefile.am: * tests/glibmm_variant/main.cc: Added a small test for the Variant< std::vector > methods. * gio/src/dbuserror.hg: * gio/src/error.hg: Wrap the GDBusError enum as a GError, moving its declaration to error.hg. 2010-12-16 José Alburquerque Added a new Glib::Variant<> specialization to deal with arrays. * glib/src/variant.{ccg,hg} (VariantBase::get_maybe): Move the method that gets a maybe of a container to Variant because it a container specific method. (Variant::get): Correct this method so that it uses an output parameter instead of returning a VariantBase. (Variant< std::vector >): Added a new specialization designed to deal with variant arrays. Similar types dealing with array of strings should also be added. (typedefs): Added some typedefs that might possibly be useful later. (docs): Added docs to methods without them. * glib/src/variant_basictypes.{cc,h}.m4: (variant_type): Made all the static variant_type() methods return a Glib::VariantType so the C++ wrapper is used. * glib/src/variantiter.{ccg,hg}: Corrected the includes so variantiter.h can be included in variant.h. 2010-12-15 José Alburquerque glibmm: Add a Variant specialization. * glib/src/variant.ccg: * glib/src/variant.hg: Add a Variant specialization based on the already existing Variant one. A way has to be found to create object paths and signatures (see g_variant_new_object_path() and g_variant_new_signature()) which are also strings and have their own GVariantType. 2010-12-15 José Alburquerque Variant[Iter,Type]: Add class docs. * glib/src/variantiter.hg: * glib/src/varianttype.hg: Add class docs. * glib/src/keyfile.hg: * glib/src/optiongroup.hg: Correct @newin{}s from 2,26 to 2,28. * glib/src/variant.hg (VariantBase): Move the get_n_children() method to Variant since all containers essentially are created in the C API as a GVariant containing one (or more) GVariant(s). The C++ container types (such as arrays, etc.) can derive from Glib::Variant to inherit the get_n_children() method. * gio/src/gio_extra_objects.defs: Add GDBusProxy. 2010-12-15 Murray Cumming Tell the documentation generator about MatchInfo. * glib/src/glib_extra_objects.defs: Added GMatchInfo here.