Class

GtkMapListModel

Description [src]

final class Gtk.MapListModel : GObject.Object {
  /* No available fields */
}

A GtkMapListModel maps the items in a list model to different items.

GtkMapListModel uses a Gtk.MapListModelMapFunc.

Example: Create a list of GtkEventControllers

static gpointer
map_to_controllers (gpointer widget,
                    gpointer data)
{
  gpointer result = gtk_widget_observe_controllers (widget);
  g_object_unref (widget);
  return result;
}

widgets = gtk_widget_observe_children (widget);

controllers = gtk_map_list_model_new (G_TYPE_LIST_MODEL,
                                      widgets,
                                      map_to_controllers,
                                      NULL, NULL);

model = gtk_flatten_list_model_new (GTK_TYPE_EVENT_CONTROLLER,
                                    controllers);

GtkMapListModel will attempt to discard the mapped objects as soon as they are no longer needed and recreate them if necessary.

Hierarchy

hierarchy this GtkMapListModel implements_0 GListModel this--implements_0 ancestor_0 GObject ancestor_0--this

Ancestors

Implements

Constructors

gtk_map_list_model_new

Creates a new GtkMapListModel for the given arguments.

Instance methods

gtk_map_list_model_get_model

Gets the model that is currently being mapped or NULL if none.

gtk_map_list_model_has_map

Checks if a map function is currently set on self.

gtk_map_list_model_set_map_func

Sets the function used to map items.

gtk_map_list_model_set_model

Sets the model to be mapped.

Methods inherited from GObject (42)

Properties

Gtk.MapListModel:has-map

If a map is set for this model.

Gtk.MapListModel:model

The model being mapped.

Signals

Signals inherited from GObject (1)

Class structure

struct GtkMapListModelClass {
  GObjectClass parent_class;
  
}
Class members
parent_class
GObjectClass
  No description available.