gtk4::prelude

Trait SorterExt

Source
pub trait SorterExt: IsA<Sorter> + 'static {
    // Provided methods
    fn changed(&self, change: SorterChange) { ... }
    fn compare(
        &self,
        item1: &impl IsA<Object>,
        item2: &impl IsA<Object>,
    ) -> Ordering { ... }
    fn order(&self) -> SorterOrder { ... }
    fn connect_changed<F: Fn(&Self, SorterChange) + 'static>(
        &self,
        f: F,
    ) -> SignalHandlerId { ... }
}
Expand description

Provided Methods§

Source

fn changed(&self, change: SorterChange)

Notifies all users of the sorter that it has changed.

This emits the changed signal. Users of the sorter should then update the sort order via Gtk::Sorter::compare().

Depending on the @change parameter, it may be possible to update the sort order without a full resorting. Refer to the SorterChange documentation for details.

This function is intended for implementers of Sorter subclasses and should not be called from other functions.

§change

How the sorter changed

Source

fn compare( &self, item1: &impl IsA<Object>, item2: &impl IsA<Object>, ) -> Ordering

Source

fn order(&self) -> SorterOrder

Gets the order that @self conforms to.

See SorterOrder for details of the possible return values.

This function is intended to allow optimizations.

§Returns

The order

Source

fn connect_changed<F: Fn(&Self, SorterChange) + 'static>( &self, f: F, ) -> SignalHandlerId

Emitted whenever the sorter changed.

Users of the sorter should then update the sort order again via gtk_sorter_compare().

SortListModel handles this signal automatically.

Depending on the @change parameter, it may be possible to update the sort order without a full resorting. Refer to the SorterChange documentation for details.

§change

how the sorter changed

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<O: IsA<Sorter>> SorterExt for O