Package: gtk

Class gtk:list-box

Superclasses

Documented Subclasses

None

Direct Slots

accept-unpaired-release
The accept-unpaired-release property of type :boolean (Read / Write)
Accept unpaired release.
Default value: false
activate-on-single-click
The activate-on-single-click property of type :boolean (Read / Write)
Activate row on a single click.
Default value: true
selection-mode
The selection-mode property of type gtk:selection-mode (Read / Write)
The selection mode.
Default value: :single
show-separators
The show-separators property of type :boolean (Read / Write)
Show separators between rows.
Default value: false

Details

The gtk:list-box widget is a vertical list box that contains gtk:list-box-row children. These rows can by dynamically sorted and filtered, and headers can be added dynamically depending on the row content. It also allows keyboard and mouse navigation and selection like a typical list.

Figure: GtkListBox

Using the gtk:list-box widget is often an alternative to the gtk:tree-view widget, especially when the list content has a more complicated layout than what is allowed by a gtk:cell-renderer object, or when the content is interactive, that is, has a button in it.

Although a gtk:list-box widget must have only gtk:list-box-row children you can add any kind of widget to it via the gtk:list-box-prepend, gtk:list-box-append, and gtk:list-box-insert functions, and a gtk:list-box-row widget will automatically be inserted between the list and the widget.

The gtk:list-box-row widget can be marked as activatable or selectable. If a row is activatable, the "row-activated" signal will be emitted for it when the user tries to activate it. If it is selectable, the row will be marked as selected when the user tries to select it.

CSS Nodes

list
 ╰── row[.activatable]    
The gtk:list-box implementation uses a single CSS node named list. Each gtk:list-box-row widget uses a single CSS node named row. The row nodes get the .activatable style class added when appropriate.

Signal Details

The "activate-cursor-row" signal
lambda (listbox)    :action      
listbox
The gtk:list-box widget on which the signal is emitted.
The "move-cursor" signal
lambda (listbox step count)    :action      
listbox
The gtk:list-box widget on which the signal is emitted.
step
The value of the gtk:movement-step enumeration.
count
The integer with the number of steps.
The "row-activated" signal
lambda (listbox row)    :run-last      
listbox
The gtk:list-box widget on which the signal is emitted.
row
The activated gtk:list-box-row widget.
The signal is emitted when a row has been activated by the user.
The "row-selected" signal
lambda (listbox row)    :run-last      
listbox
The gtk:list-box widget on which the signal is emitted.
row
The selected gtk:list-box-row widget.
The signal is emitted when a new row is selected, or when the selection is cleared. When the list box is using the :multiple selection mode, this signal will not give you the full picture of selection changes, and you should use the "selected-rows-changed" signal instead.
The "select-all" signal
lambda (listbox)    :action      
listbox
The gtk:list-box widget on which the signal is emitted.
The signal is a keybinding signal which gets emitted to select all children of the list box, if the selection mode permits it. The default bindings for this signal is the Ctrl-a key.
The "selected-rows-changed" signal
lambda (listbox)    :run-first      
listbox
The gtk:list-box widget on which the signal is emitted.
The signal is emitted when the set of selected rows changes.
The "toggle-cursor-row" signal
lambda (listbox)    :action      
listbox
The gtk:list-box widget on which the signal is emitted.
The "unselect-all" signal
lambda (listbox)    :action      
listbox
The gtk:list-box widget on which the signal is emitted.
The signal is a keybinding signal which gets emitted to unselect all children of the list box, if the selection mode permits it. The default bindings for this signal is the Ctrl-Shift-a key.
 

Returned by

Slot Access Functions

Inherited Slot Access Functions

See also

2024-4-12