Skip to main content

ListPatch

Enum ListPatch 

Source
pub enum ListPatch {
    Reload,
    Splice(Vec<RowDelta>),
    RowSizeInvalidated {
        cell: usize,
        height: f64,
    },
    ScrollToEnd,
    ScrollToRow(usize),
    Selected(Vec<usize>),
    Editing(bool),
}

Variants§

§

Reload

The row set changed (count/order/content): the host re-queries its ListSource.

§

Splice(Vec<RowDelta>)

The row set changed by exactly these deltas: a host that can, animates each row in, out, or across; one that cannot treats this as ListPatch::Reload. The data source answers with the final state throughout.

§

RowSizeInvalidated

An Automatic-height row was re-laid at a new height after its first layout (its text changed, a wrapped line appeared, the backend corrected its width): the host gives the row bound to physical cell cell (the handle ListSource::bind_row got, as usize) the new height, padding included, the same value ListSource::cell_height now answers for it.

Sent from inside a day-core layout pass, with the tree borrowed: a host applies it after the pass (posted to its main loop), never by asking the source anything synchronously, which would read a 0.0 height (docs/list.md “Row heights”).

Fields

§cell: usize
§height: f64
§

ScrollToEnd

Imperatively scroll the native list so its last row is fully visible (a chat timeline sticking to the newest message). No-op when the list is empty (docs/list.md).

§

ScrollToRow(usize)

Imperatively scroll the native list so this row is visible, realizing it if needed (docs/list.md). Clamped to the row count; no-op when the list is empty.

§

Selected(Vec<usize>)

Programmatic selection sync (row indices; empty = clear): toolkits apply without re-emitting a selection event, like every other programmatic sync.

§

Editing(bool)

Enter (true) or leave (false) the platform’s list editing mode, animated (docs/list.md, ListProps::editing). Ignored where Cap::ListEditing is Unsupported.

Trait Implementations§

Source§

impl Clone for ListPatch

Source§

fn clone(&self) -> ListPatch

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ListPatch

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ListPatch

Source§

fn eq(&self, other: &ListPatch) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for ListPatch

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Day API ↩ Guides· daybrite.dev