On 5/26/07, Lucas van Dijk <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I've got a FileChooserDialog, to open some files, multiple files are
> allowed. So I looked at the documentation for FileChooser and found a
> function called get_filenames(), which returns a Glib::SListHandle with the
> filenames.
>
> It also sais 'Free the returned list with Glib::slist_free(), and the
> filenames with Glib::free().', but in the Glib namespace Documentaion I
> cannot find a function called free() or slist_free. Also the documentation
> for Glib::SListHandle doesn't exists.
>
> My question is, What is exactly an SListHandle, and how can I get all the
> filenames selected? And how do I have to free them? all filesnames first
> with free(), and then slist_free() for the ListHandle? Or is only slist_free
> enough?

Hi Lucas,
That looks like a case where the GLib documentation was automatically
converted to glibmm documentation, but it doesn't really make sense.
SListHandle and ListHandle types are 'intermediate' types that you
shouldn't ever really need to use.  They just provide handy
conversions to any of the standard containers.  So, you should just be
able to use either std::list<> or std::vector<> or something like
that. So something like the following:

std::list<Glib::ustring> filenames = chooser.get_filenames();

You shouldn't have to free the list at all.  That documentation is
misleading.  I've filed a bug to get that fixed:
http://bugzilla.gnome.org/show_bug.cgi?id=441422
-- 
jonner
_______________________________________________
gtkmm-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtkmm-list

Reply via email to