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.