2010-12-22  Murray Cumming  <[email protected]>

       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  <[email protected]>

       Variant< std::vector<std::string> >: 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<VariantBase>.  Also corrected the comment about
       why it is done that way.

2010-12-21  José Alburquerque  <[email protected]>

       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  <[email protected]>

       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<std::vector<T>>::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  <[email protected]>

       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  <[email protected]>

       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<Glib::ustring>) 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<VariantBase>
       (castitem constructors): Corrected all GVariant* castitem constructors
       to accept a 'take_a_reference' bool parameter.
       (Variant< std::vector<T> >::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<T> 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<T> > 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  <[email protected]>

       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<VariantBase> because it a
       container specific method.
       (Variant<VariantBase>::get): Correct this method so that it uses an
       output parameter instead of returning a VariantBase.
       (Variant< std::vector<T> >): 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  <[email protected]>

       glibmm: Add a Variant<std::string> specialization.

       * glib/src/variant.ccg:
       * glib/src/variant.hg: Add a Variant<std::string> specialization based
       on the already existing Variant<Glib::ustring> 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  <[email protected]>

       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<VariantBase> 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<VariantBase> to inherit the get_n_children() method.

       * gio/src/gio_extra_objects.defs: Add GDBusProxy.

2010-12-15  Murray Cumming  <[email protected]>

       Tell the documentation generator about MatchInfo.

       * glib/src/glib_extra_objects.defs: Added GMatchInfo here.