GtkList
Widget for packing a list of selectable items.
The #GtkList widget is a container whose children are displayed
vertically in order, and can be selected.
The list has many selection modes, which are programmer selective and
depend on how many elements are able to be selected at the same time.
#GtkContainer
For functions that apply to every #GtkContainer
(like #GtkList).
#GtkListitem
Children of a #GtkList widget must be of this
type.
Creates a new #GtkList.
@Returns: the newly-created #GtkList
Inserts @items into the @list at the position @position. The #GList items
must not be freed after.
@list: the list widget.
@items: the items.
@position: the position to insert @items, starting at 0.
Adds @items to the end of the @list.
@list: the list widget.
@items: the items.
Inserts @items at the beginning of the @list.
@list: the list widget.
@items: the items.
Removes the @items from the @list.
@list: the list widget.
@items: the items to remove.
Removes the @items from the @list, without unreferencing them. It
may be useful if you want to move the items from one list to another.
@list: the list widget.
@items: the items.
Removes the items between index @start (included) and @end (excluded)
from the @list. If @end is negative, or greater than the number of
children of @list, it's assumed to be exactly the number of
elements. If @start is greater than or equal to @end, nothing is
done.
@list: the list widget.
@start: the index of the first item to remove.
@end: the index of the lest item to remove plus one.
Selects the child number @item of the @list. Nothing happens if @item
is out of bounds. The signal GtkList::select-child will be emitted.
@list: the list widget.
@item: the index of the child to select.
Unselects the child number @item of the @list. Nothing happens if
@item is out of bounds. The signal GtkList::unselect-child will be
emitted.
@list: the list widget.
@item: the index of the child to unselect.
Selects the given @child. The signal GtkList::select-child will be
emitted.
@list: the list widget
@child: the child to select.
Unselects the given @child. The signal GtkList::unselect-child will be
emitted.
@list: the list widget.
@child: the child to unselect.
Searches the children of @list for the index of @child.
@list: the list widget.
@child: the child to look for.
@Returns: the index of the child, -1 if not found.
Set the list selection mode. The selection mode can be any value in
#GtkSelectionMode:
#GTK_SELECTION_SINGLE
Zero or one element may be selected.
#GTK_SELECTION_BROWSE
Exactly one element is always selected (this can be false after you have
changed the selection mode).
#GTK_SELECTION_MULTIPLE
Any number of elements may be selected. Clicks toggle the state of an
item.
#GTK_SELECTION_EXTENDED
Any number of elements may be selected. Click-drag selects a range of
elements; the Ctrl key may be used to enlarge the selection, and
Shift key to select between the focus and the child pointed to.
@list: the list widget.
@mode: the new selection mode.
Extends the selection by moving the anchor according to @scroll_type. Only
in #GTK_SELECTION_EXTENDED.
@list: the list widget.
@scroll_type: the direction and length.
@position: the position if @scroll_type is #GTK_SCROLL_JUMP.
@auto_start_selection: if %TRUE, gtk_list_start_selection() is automatically
carried out before extending the selection.
Starts a selection (or part of selection) at the focused child. Only in
#GTK_SELECTION_EXTENDED mode.
@list: the list widget.
Ends the selection. Used with gtk_list_extend_selection() and
gtk_list_start_selection(). Only in #GTK_SELECTION_EXTENDED mode.
@list: the list widget.
Selects all children of @list. A signal will be emitted for each
newly selected child.
@list: the list widget.
Unselects all children of @list. A signal will be emitted for each
newly unselected child.
@list: the list widget.
Scrolls @list horizontaly. This supposes that the list is packed into a
scrolled window or something similar, and adjustments are well
set. Step and page increment are those from the horizontal adjustment
of @list. Backward means to the left, and forward to the
right. Out of bounds values are truncated.
@scroll_type may be any valid #GtkScrollType. If @scroll_type is
#GTK_SCROLL_NONE, nothing is done. If it's #GTK_SCROLL_JUMP, the list
scrolls to the ratio @position: 0 is full left, 1 is full right.
@list: the list widget.
@scroll_type: the scrolling type.
@position: the position if @scroll_type is #GTK_SCROLL_JUMP
Scrolls @list vertically. This supposes that the list is packed into a
scrolled window or something similar, and adjustments are well
set. Step and page increment are those from the vertical adjustment
of @list. Backward means up, and forward down. Out of bounds values are
truncated.
@scroll_type may be any valid #GtkScrollType. If @scroll_type is
#GTK_SCROLL_NONE, nothing is done. If it's #GTK_SCROLL_JUMP, the list
scrolls to the ratio @position: 0 is top, 1 is bottom.
@list: the list widget.
@scroll_type: the scrolling type.
@position: the position if @scroll_type is #GTK_SCROLL_JUMP
Toggles between adding to the selection and beginning a new selection. Only
in #GTK_SELECTION_EXTENDED. Useful with gtk_list_extend_selection().
@list: the list widget.
Toggles the focus row. If the focus row is selected, it's
unselected. If the focus row is unselected, it's selected. If the
selection mode of @list is #GTK_SELECTION_BROWSE, this has no effect,
as the selection is always at the focus row.
@list: the list widget.
Toggles the child @item of list. If the selection mode of @list is
#GTK_SELECTION_BROWSE, the item is selected, and the others are
unselected.
@list: the list widget.
@item: the child to toggle.
Restores the selection in the last state, only if selection mode is
#GTK_SELECTION_EXTENDED. If this function is called twice, the selection is
cleared. This function sometimes gives stranges "last states".
@list: the list widget.
Stops the drag selection mode and ungrabs the pointer. This has no
effect if a drag selection is not active.
@list: the list widget.
The child @widget has just been selected.
@list: the object which received the signal.
@widget: the newly selected child.
The selection of the widget has just changed.
@list: the object which received the signal.
The child @widget has just been unselected.
@list: the object which received the signal.
@widget: the newly unselected child.