pub trait ListBoxRowExt: 'static {
Show 16 methods fn changed(&self); fn is_activatable(&self) -> bool; fn child(&self) -> Option<Widget>; fn header(&self) -> Option<Widget>; fn index(&self) -> i32; fn is_selectable(&self) -> bool; fn is_selected(&self) -> bool; fn set_activatable(&self, activatable: bool); fn set_child(&self, child: Option<&impl IsA<Widget>>); fn set_header(&self, header: Option<&impl IsA<Widget>>); fn set_selectable(&self, selectable: bool); fn connect_activate<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; fn emit_activate(&self); fn connect_activatable_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId; fn connect_child_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId; fn connect_selectable_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId;
Expand description

Trait containing all ListBoxRow methods.



Required Methods

Marks @self as changed, causing any state that depends on this to be updated.

This affects sorting, filtering and headers.

Note that calls to this method must be in sync with the data used for the row functions. For instance, if the list is mirroring some external data set, and two rows changed in the external data set then when you call gtk_list_box_row_changed() on the first row the sort function must only read the new data for the first of the two changed rows, otherwise the resorting of the rows will be wrong.

This generally means that if you don’t fully control the data model you have to duplicate the data that affects the listbox row functions into the row widgets themselves. Another alternative is to call ListBox::invalidate_sort() on any model change, but that is more expensive.

Gets whether the row is activatable.


true if the row is activatable

Gets the child widget of @self.


the child widget of @self

Returns the current header of the @self.

This can be used in a `callback::Gtk::ListBoxUpdateHeaderFunc to see if there is a header set already, and if so to update the state of it.


the current header

Gets the current index of the @self in its ListBox container.


the index of the @self, or -1 if the @self is not in a listbox

Gets whether the row can be selected.


true if the row is selectable

Returns whether the child is currently selected in its ListBox container.


true if @self is selected

Set whether the row is activatable.


true to mark the row as activatable

Sets the child widget of @self_.


the child widget

Sets the current header of the @self.

This is only allowed to be called from a `callback::Gtk::ListBoxUpdateHeaderFunc. It will replace any existing header in the row, and be shown in front of the row in the listbox.

the header

Set whether the row can be selected.


true to mark the row as selectable

This is a keybinding signal, which will cause this row to be activated.

If you want to be notified when the user activates a row (by key or not), use the signal::ListBox::row-activated signal on the row’s parent ListBox.