Struct freya_components::VirtualScrollViewProps
source · pub struct VirtualScrollViewProps<Builder: 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + 'static + PartialEq = ()> {
pub theme: Option<ScrollViewThemeWith>,
pub scrollbar_theme: Option<ScrollBarThemeWith>,
pub length: usize,
pub item_size: f32,
pub builder: Builder,
pub builder_args: Option<BuilderArgs>,
pub direction: String,
pub show_scrollbar: bool,
pub scroll_with_arrows: bool,
pub cache_elements: bool,
}
Expand description
VirtualScrollView
component properties.
Fields§
§theme: Option<ScrollViewThemeWith>
Theme override.
scrollbar_theme: Option<ScrollBarThemeWith>
Theme override for the scrollbars.
length: usize
Quantity of items in the VirtualScrollView.
item_size: f32
Size of the items, height for vertical direction and width for horizontal.
builder: Builder
The item builder function.
builder_args: Option<BuilderArgs>
The values for the item builder function.
direction: String
Direction of the VirtualScrollView, vertical
or horizontal
.
show_scrollbar: bool
Show the scrollbar, visible by default.
scroll_with_arrows: bool
Enable scrolling with arrow keys.
cache_elements: bool
Cache elements or not, changing builder_args
will invalidate the cache if enabled.
Default is true
.
Implementations§
source§impl<Builder: 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + 'static + PartialEq> VirtualScrollViewProps<Builder, BuilderArgs>
impl<Builder: 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + 'static + PartialEq> VirtualScrollViewProps<Builder, BuilderArgs>
sourcepub fn builder(
) -> VirtualScrollViewPropsBuilder<((), (), (), (), (), (), (), (), (), ()), Builder, BuilderArgs>
pub fn builder( ) -> VirtualScrollViewPropsBuilder<((), (), (), (), (), (), (), (), (), ()), Builder, BuilderArgs>
Create a builder for building VirtualScrollViewProps
.
On the builder, call .theme(...)
(optional), .scrollbar_theme(...)
(optional), .length(...)
, .item_size(...)
, .builder(...)
, .builder_args(...)
(optional), .direction(...)
(optional), .show_scrollbar(...)
(optional), .scroll_with_arrows(...)
(optional), .cache_elements(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of VirtualScrollViewProps
.
Trait Implementations§
source§impl<Builder: Clone + 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + Clone + 'static + PartialEq> Clone for VirtualScrollViewProps<Builder, BuilderArgs>
impl<Builder: Clone + 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + Clone + 'static + PartialEq> Clone for VirtualScrollViewProps<Builder, BuilderArgs>
source§fn clone(&self) -> VirtualScrollViewProps<Builder, BuilderArgs>
fn clone(&self) -> VirtualScrollViewProps<Builder, BuilderArgs>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<BuilderArgs: Clone + PartialEq, Builder: Clone + Fn(usize, &Option<BuilderArgs>) -> Element> PartialEq for VirtualScrollViewProps<Builder, BuilderArgs>
impl<BuilderArgs: Clone + PartialEq, Builder: Clone + Fn(usize, &Option<BuilderArgs>) -> Element> PartialEq for VirtualScrollViewProps<Builder, BuilderArgs>
source§impl<Builder: 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + 'static + PartialEq> Properties for VirtualScrollViewProps<Builder, BuilderArgs>where
Self: Clone,
impl<Builder: 'static + Clone + Fn(usize, &Option<BuilderArgs>) -> Element, BuilderArgs: Clone + 'static + PartialEq> Properties for VirtualScrollViewProps<Builder, BuilderArgs>where
Self: Clone,
§type Builder = VirtualScrollViewPropsBuilder<((), (), (), (), (), (), (), (), (), ()), Builder, BuilderArgs>
type Builder = VirtualScrollViewPropsBuilder<((), (), (), (), (), (), (), (), (), ()), Builder, BuilderArgs>
source§fn memoize(&mut self, new: &Self) -> bool
fn memoize(&mut self, new: &Self) -> bool
§fn into_vcomponent<M>(
self,
render_fn: impl ComponentFunction<Self, M>,
component_name: &'static str
) -> VComponentwhere
M: 'static,
fn into_vcomponent<M>(
self,
render_fn: impl ComponentFunction<Self, M>,
component_name: &'static str
) -> VComponentwhere
M: 'static,
Auto Trait Implementations§
impl<Builder, BuilderArgs> RefUnwindSafe for VirtualScrollViewProps<Builder, BuilderArgs>where
Builder: RefUnwindSafe,
BuilderArgs: RefUnwindSafe,
impl<Builder, BuilderArgs> Send for VirtualScrollViewProps<Builder, BuilderArgs>
impl<Builder, BuilderArgs> Sync for VirtualScrollViewProps<Builder, BuilderArgs>
impl<Builder, BuilderArgs> Unpin for VirtualScrollViewProps<Builder, BuilderArgs>
impl<Builder, BuilderArgs> UnwindSafe for VirtualScrollViewProps<Builder, BuilderArgs>where
Builder: UnwindSafe,
BuilderArgs: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.