2.27.5.1: 2010-12-30 José Alburquerque VariantContainerBase::create: Don't use pointers to pass the children. * glib/src/variant.{ccg,hg} (VariantContainerBase::create): Don't use pointers to the variant children to pass the array of variants, but instead use copies which might be more intuitive for new programmers. It is not clear whether this method should remain or not. We'll have to wait for the example to be written. 2010-12-30 José Alburquerque VariantContainerBase: Add a create() method from an array of variants. * glib/src/variant.{ccg,hg}: (VariantContainerBase::create): Add this method that accepts a VariantType (describing what kind of container should be created), and a vector of VariantBase. Theoretically, this method should make creation of tuples possible. There is no tuple class in standard C++ so something like this would be necessary in cases where tuples need to be created (to be returned, for example, from some method call). The future server/client D-Bus example should put this method to the test. (VariantStringBase::create_*_path): Sink the variant after creation in these methods which was forgotten. * gio/src/dbusconnection.hg: Typos. 2010-12-28 José Alburquerque Variant test: Use the dictionary variant classes in the test. * glib/src/variant.{ccg,hg} (get_iter): Make all the get_iter() methods in the variant container classes const. (Variant< std::pair >::get): (Variant< std::map >::lookup): (std::map Variant< std::map >::get): Correct the getting of a std::pair<> from the Variant<> and the getting of children from the parent VariantContainerBase class. (Variant< std::map >::create): Create the dictionary entries as Variants and then use g_variant_builder_add_value() to add them instead of g_variant_add() which is easier. * tests/glibmm_variant/main.cc: Use the updated dictionary classes in the test. 2010-12-26 José Alburquerque Variant: Add dictionary entry and dictionary specializations. * glib/src/varianttype.hg: * glib/src/variant_basictypes.h.m4: Renamed the glibmmVariant doxygen group to 'Variant'. * glib/src/variant.{ccg,hg}: Throw a std::out_of_range exception instead of a std::runtime_error one from methods that throw them because of indexes being out of bounds. (Variant< std::pair >): Added this specialization to deal with a dictionary entry variant type. (Variant< std::map >): Added this specialization to deal with variant dictionary types. (VariantContainerBase::get): Have this method throw a std::out_of_range exception if the index is out of range. (Variant< std::vector >::get) (Variant< std::vector >::get): Free the shallow copy of the returned string arrays in the get methods of the string variant arrays as the docs of the C API say. * gio/src/dbusconnection.hg: Added missing _IGNORE()'s. * gio/src/dbusproxy.hg: Updated a TODO. * examples/dbus/well-known-address-client.cc: Typo. 2010-12-23 Krzesimir Nowak Add a valuearray test to build. * tests/Makefile.am: Added a valuearray test to build instead of value test thrice. 2010-12-23 José Alburquerque DBusConnection: Add register/unregister_object() methods. * gio/src/dbusconnection.{ccg,hg}: Add register_object() and unregister_object() methods. Use a C++ wrapper class for the GDBusInterfaceVTable structure so that it is possible to use slots for the registration. Fixes Bug #637587 (Yannick Guesnet) 2010-12-22 José Alburquerque gmmproc: _CLASS_GOBJECT: Remove __REAL_* additional arguments. * tools/m4/class_gobject.m4: * tools/m4/class_shared.m4: Remove the use of the __REAL_[CNAME|CPARENT]__ variables needed to wrap some classes in gtkmm that were typedef to their base type (such as GdkWindow and GdkPixmap). These classes have been fixed in gtk+-3 thus eliminating the need for the special arguments in _CLASS_GOBJECT. 2010-08-10 David Kozub RefPtr: Make it work with sorted containers (e.g. std::set >). * glib/glibmm/refptr.h: Add operators <, <=, >, >= that compare RefPtrs by their underlying pointer. This makes RefPtr work with sorted containers (e.g. std::set >) Bug #626858 2010-12-22 Yannick Guesnet giomm: Application: Add the open signal. * gio/src/application.[hg|ccg]: Add signal_open(), by hand-coding instead of using _WRAP_SIGNAL(), because we need to change the number of parameters. 2.27.5: