glib-sharp2.8.0.0Gtk# is thread aware, but not thread safe; See the Gtk# Thread Programming for details.A list class used by Gtk is managed wrapper for the underlying C list
implementation used by Gtk+. Various functions on the Gtk+
API take lists or return lists in this form.
The list deals with objects, these are pointers into
unmanaged resources.
For example to create a list of widgets, you would use the
following sample:
GLib.List MakeList (Gtk.Widget a, Gtk.Widget b)
{
GLib.List l = new GLib.List ((IntPtr) 0, typeof (Gtk.Widget));
l.Append (a.Handle);
l.Append (b.Handle);
}
The argument to the
constructor, allows the list enumerator code to return
properly wrapped or demarshalled objects from the unmanaged
world into the managed world.
GLib.ListBaseConstructorConstructs a List
A handle to a .
objects are constructed by passing an unmanaged
reference to an existing , or they can use
"(IntPtr) 0" as an initial value.
Using this constructor will not track the type information
of the classes or structures kept in the list. If you
plan on tracking the type information, use the method.
Constructor
A handle to a GLib.list
To be added.
Internal constructor objects are constructed by passing an unmanaged
reference to an existing , or they can use
"(IntPtr) 0" as an initial value.
Using this constructor will track the type information
of the classes or structures kept in the list. This
information is used by the List enumerator when returning
data.
ConstructorConstructs a list of objects of a given type.
a
Gtk.Widget a = new Gtk.Widget((IntPtr) 0);
Gtk.Widget b = new Gtk.Widget((IntPtr) 0);
GLib.List l = new GLib.List (typeof (Gtk.Widget));
l.Append (a.Handle);
l.Append (b.Handle);
Constructor
Pointer to the native list.
The type of the elements contained in the list.
if the native list needs to be released on Dispose.
if the list elements need to be released on Dispose.
Creates a List.This type is only recommended for marshaling GList parameters and return values in bindings.