That's great Jose! So it means that this will be available in gtkmm 3.7?

On Fri, Dec 28, 2012 at 11:32 AM, José Alburquerque <
[email protected]> wrote:

> On Fri, 2012-12-21 at 17:47 -0800, Andrew Potter wrote:
> > On Fri, Dec 21, 2012 at 3:12 PM, Phong Cao <[email protected]>
> > wrote:
> >         For example, what should "a{sv}" be implemented as in
> >         Glib::VariantContainerBase? Should it be
> >         Glib::Variant<std::vector<std::map<Glib::ustring,
> >         Glib::VariantBase> > >?
>
> That would just be Glib::Variant< std::map< Glib::ustring,
> Glib::Variant<T> > with 'T' being the underlying type in the variant.
> Using Glib::VariantBase instead of Glib::Variant<T> is possible only
> that to get the value in the variant, it has to be cast to the actual
> Glib::Variant<T> type.  Of course, none of this is possible presently
> without the below mentioned commit.
>
> > Right now it seems that you can only create arrays of basic types
> > (int, float, strings) with Glibmm. To create an array of variants,
> > you'll need to call a C function:
>
> Yes, the following commit makes it possible to have array of types more
> complex than the basic types:
>
>
> http://git.gnome.org/browse/glibmm/commit/?id=8460377403f9cb02f2fd3972a9dcfa1d978ab7ab
>
> It also adds a Glib::Variant< Glib::Variant<T> > class so that it is
> possible to include more complex types in a variant.  See the modified
> test as an example of what is possible.
>
>
> --
> José
>
>
>
>
_______________________________________________
gtkmm-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/gtkmm-list

Reply via email to