Skip to main content

SliverFixedExtentListWidget

Struct SliverFixedExtentListWidget 

Source
pub struct SliverFixedExtentListWidget { /* private fields */ }
Expand description

The retained widget for a SliverFixedExtentListView: the materialised rows, the constraints rebuild windows against, and the near-edge state.

Implementations§

Source§

impl SliverFixedExtentListWidget

Source

pub fn window(&self) -> &[usize]

The item indices currently materialised, ascending.

Source

pub fn item_count(&self) -> usize

How many items the list holds.

Trait Implementations§

Source§

impl SliverWidget for SliverFixedExtentListWidget

Source§

fn layout_sliver( &mut self, ctx: &mut LayoutCtx<'_>, sc: &SliverConstraints, ) -> SliverGeometry

Lay the sliver out under sc and report its geometry, which must satisfy SliverGeometry::debug_assert_valid against sc.
Source§

impl Widget for SliverFixedExtentListWidget

Source§

fn layout(&mut self, ctx: &mut LayoutCtx<'_>, bc: &BoxConstraints) -> Size

Outside a viewport the list lays out as if it were the only sliver of a viewport bc.max() long, scrolled to its start: it materialises (at the next rebuild) and sizes itself to the rows that fit, or to all of them under an unbounded constraint.

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, event: &InputEvent) -> EventResult

Delivers a near-edge fire observed at layout, then routes the event to the rows: the viewport only delivers a positional event inside this sliver’s paint extent, where only painted rows sit.

Source§

fn paint(&mut self, ctx: &mut PaintCtx<'_>, scene: &mut dyn PaintScene)

Emit draw commands for this widget into scene. Read more
Source§

fn semantics(&self, ctx: &mut SemanticsCtx)

Contribute this widget’s accessibility node(s) into ctx. Read more
Source§

fn as_sliver(&mut self) -> Option<&mut dyn SliverWidget>

This widget as a sliver, if it speaks the sliver protocol — the opt-in seam a scrolling viewport lays its children out through (see crate::sliver and ChildPod::layout_sliver_child). Read more
Source§

fn visit_children(&self, visitor: &mut dyn FnMut(&ChildPod))

Visit this widget’s owned ChildPods, in declaration (paint) order — the read-only seam that makes the retained hierarchy enumerable. Read more
Source§

fn type_name(&self) -> &'static str

This widget’s concrete type name, for read-only tooling. Read more

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> ErasedDestructor for T
where T: 'static,

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> StorageAccess<T> for T

Source§

fn as_borrowed(&self) -> &T

Borrows the value.
Source§

fn into_taken(self) -> T

Takes the value.
Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.