GTK+ Reference Manual | |||
---|---|---|---|
<<< Previous Page | Home | Up | Next Page >>> |
"selection-changed" void user_function (GtkList *list, gpointer user_data); "select-child" void user_function (GtkList *list, GtkWidget *widget, gpointer user_data); "unselect-child" void user_function (GtkList *list, GtkWidget *widget, gpointer user_data); |
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.
GtkWidget* gtk_list_new (void); |
Creates a new GtkList.
Returns : | the newly created GtkList |
void gtk_list_insert_items (GtkList *list, GList *items, gint position); |
Inserts items into the list at the position position. The GList items must not be freed after.
void gtk_list_append_items (GtkList *list, GList *items); |
Adds items to the end of the list.
void gtk_list_prepend_items (GtkList *list, GList *items); |
Inserts items at the beginning of the list.
void gtk_list_remove_items (GtkList *list, GList *items); |
Removes the items from the list.
void gtk_list_remove_items_no_unref (GtkList *list, GList *items); |
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.
void gtk_list_clear_items (GtkList *list, gint start, gint end); |
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.
void gtk_list_select_item (GtkList *list, gint item); |
Selects the child number item of the list. Nothing happens if item is out of bounds. The signal GtkList::select-child will be emitted.
void gtk_list_unselect_item (GtkList *list, gint item); |
Unselects the child number item of the list. Nothing happens if item is out of bounds. The signal GtkList::unselect-child will be emitted.
void gtk_list_select_child (GtkList *list, GtkWidget *child); |
Selects the given child. The signal GtkList::select-child will be emitted.
void gtk_list_unselect_child (GtkList *list, GtkWidget *child); |
Unselects the given child. The signal GtkList::unselect-child will be emitted.
gint gtk_list_child_position (GtkList *list, GtkWidget *child); |
Searches the children of list for the index of child.
void gtk_list_set_selection_mode (GtkList *list, GtkSelectionMode mode); |
Set the list selection mode. The selection mode can be any value in GtkSelectionMode:
Zero or one element may be selected.
Exactly one element is always selected (this can be false after you have changed the selection mode).
Any number of elements may be selected. Clicks toggle the state of an item.
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.
void gtk_list_extend_selection (GtkList *list, GtkScrollType scroll_type, gfloat position, gboolean auto_start_selection); |
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. |
void gtk_list_start_selection (GtkList *list); |
Starts a selection (or part of selection) at the focused child. Only in GTK_SELECTION_EXTENDED mode.
void gtk_list_end_selection (GtkList *list); |
Ends the selection. Used with gtk_list_extend_selection and gtk_list_start_selection. Only in GTK_SELECTION_EXTENDED.
void gtk_list_select_all (GtkList *list); |
Selects all children of list. A signal will be emitted for each newly selected child.
void gtk_list_unselect_all (GtkList *list); |
Unselects all children of list. A signal will be emitted for each newly unselected child.
void gtk_list_scroll_horizontal (GtkList *list, GtkScrollType scroll_type, gfloat position); |
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.
void gtk_list_scroll_vertical (GtkList *list, GtkScrollType scroll_type, gfloat position); |
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.
void gtk_list_toggle_add_mode (GtkList *list); |
Toggles between adding to the selection and beginning a new selection. Only in GTK_SELECTION_EXTENDED. Useful with gtk_list_extend_selection.
void gtk_list_toggle_focus_row (GtkList *list); |
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.
void gtk_list_toggle_row (GtkList *list, GtkWidget *item); |
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.
void gtk_list_undo_selection (GtkList *list); |
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".
void gtk_list_end_drag_selection (GtkList *list); |
Stops the drag selection mode and ungrabs the pointer. This has no effect if a drag selection is not active.
void user_function (GtkList *list, gpointer user_data); |
The selection of the widget has just changed.
void user_function (GtkList *list, GtkWidget *widget, gpointer user_data); |
The child widget has just been selected.
For functions that apply to every GtkContainer (like GtkList).
Children of a GtkList widget must be of this type.