pub struct ImageViewer { /* private fields */ }Expand description
Image viewer component.
Handles async loading, caching, and error states for images.
See ImageSource for all supported image sources.
§Example
fn app() -> impl IntoElement {
let source: ImageSource = (
"rust-logo",
include_bytes!("../../../examples/rust_logo.png"),
)
.into();
ImageViewer::new(source)
}§Preview
Implementations§
Source§impl ImageViewer
impl ImageViewer
pub fn new(source: impl Into<ImageSource>) -> ImageViewer
Source§impl ImageViewer
impl ImageViewer
pub fn corner_radius( self, corner_radius: impl Into<CornerRadius>, ) -> ImageViewer
Sourcepub fn loading_placeholder(self, placeholder: impl Into<Element>) -> ImageViewer
pub fn loading_placeholder(self, placeholder: impl Into<Element>) -> ImageViewer
Custom element rendered while loading.
Sourcepub fn asset_age(self, asset_age: impl Into<AssetAge>) -> ImageViewer
pub fn asset_age(self, asset_age: impl Into<AssetAge>) -> ImageViewer
Customize how long the image will remain cached after no longer being used.
Defaults to AssetAge::default (1h).
Sourcepub fn error_renderer(
self,
renderer: impl Into<Callback<String, Element>>,
) -> ImageViewer
pub fn error_renderer( self, renderer: impl Into<Callback<String, Element>>, ) -> ImageViewer
Custom element rendered when the image fails to load.
Trait Implementations§
Source§impl AccessibilityExt for ImageViewer
impl AccessibilityExt for ImageViewer
Source§fn get_accessibility_data(&mut self) -> &mut AccessibilityData
fn get_accessibility_data(&mut self) -> &mut AccessibilityData
Returns a mutable reference to the element’s accessibility data.
§fn accessibility(self, accessibility: AccessibilityData) -> Self
fn accessibility(self, accessibility: AccessibilityData) -> Self
Replace all of the element’s accessibility data at once. See
AccessibilityData.§fn a11y_id(self, a11y_id: impl Into<Option<NodeId>>) -> Self
fn a11y_id(self, a11y_id: impl Into<Option<NodeId>>) -> Self
Set an explicit accessibility id instead of an autogenerated one. See
AccessibilityId.§fn a11y_focusable(self, a11y_focusable: impl Into<Focusable>) -> Self
fn a11y_focusable(self, a11y_focusable: impl Into<Focusable>) -> Self
Set whether the element can receive keyboard focus. See
Focusable.§fn a11y_auto_focus(self, a11y_auto_focus: impl Into<bool>) -> Self
fn a11y_auto_focus(self, a11y_auto_focus: impl Into<bool>) -> Self
Request that the element be focused automatically when it is mounted.
§fn a11y_member_of(self, a11y_member_of: impl Into<NodeId>) -> Self
fn a11y_member_of(self, a11y_member_of: impl Into<NodeId>) -> Self
Mark the element as a member of the group identified by the given
AccessibilityId.§fn a11y_role(self, a11y_role: impl Into<Role>) -> Self
fn a11y_role(self, a11y_role: impl Into<Role>) -> Self
Set the accessibility role exposed in the accessibility tree. See
AccessibilityRole.§fn a11y_alt(self, value: impl Into<Box<str>>) -> Self
fn a11y_alt(self, value: impl Into<Box<str>>) -> Self
Set the text label that describes the element in the accessibility tree.
§fn a11y_builder(self, with: impl FnOnce(&mut Node)) -> Self
fn a11y_builder(self, with: impl FnOnce(&mut Node)) -> Self
Edit the underlying
accesskit node directly for advanced accessibility properties.Source§impl ChildrenExt for ImageViewer
impl ChildrenExt for ImageViewer
Source§fn get_children(&mut self) -> &mut Vec<Element>
fn get_children(&mut self) -> &mut Vec<Element>
Returns a mutable reference to the internal children vector. Read more
§fn children(self, children: impl IntoIterator<Item = Element>) -> Self
fn children(self, children: impl IntoIterator<Item = Element>) -> Self
§fn maybe_child<C>(self, child: Option<C>) -> Selfwhere
C: IntoElement,
fn maybe_child<C>(self, child: Option<C>) -> Selfwhere
C: IntoElement,
§fn child<C>(self, child: C) -> Selfwhere
C: IntoElement,
fn child<C>(self, child: C) -> Selfwhere
C: IntoElement,
Appends a single child element. Read more
Source§impl Component for ImageViewer
impl Component for ImageViewer
fn render(&self) -> impl IntoElement
fn render_key(&self) -> DiffKey
Source§impl ContainerSizeExt for ImageViewer
impl ContainerSizeExt for ImageViewer
Source§impl ContainerWithContentExt for ImageViewer
impl ContainerWithContentExt for ImageViewer
§fn direction(self, direction: Direction) -> Self
fn direction(self, direction: Direction) -> Self
Set the axis children are stacked along. See
Direction.§fn main_align(self, main_align: Alignment) -> Self
fn main_align(self, main_align: Alignment) -> Self
Set how children are aligned along the direction axis. See
Alignment.§fn cross_align(self, cross_align: Alignment) -> Self
fn cross_align(self, cross_align: Alignment) -> Self
Set how children are aligned across the direction axis. See
Alignment.§fn spacing(self, spacing: impl Into<f32>) -> Self
fn spacing(self, spacing: impl Into<f32>) -> Self
Set the gap inserted between adjacent children, in pixels.
§fn content(self, content: Content) -> Self
fn content(self, content: Content) -> Self
Set how children share the available space along the direction axis. See
Content.§fn offset_x(self, offset_x: impl Into<f32>) -> Self
fn offset_x(self, offset_x: impl Into<f32>) -> Self
Shift the element’s children horizontally by the given pixels.
§fn offset_y(self, offset_y: impl Into<f32>) -> Self
fn offset_y(self, offset_y: impl Into<f32>) -> Self
Shift the element’s children vertically by the given pixels.
§fn vertical(self) -> Self
fn vertical(self) -> Self
Stack children vertically. Shorthand for
direction set to Direction::Vertical.§fn horizontal(self) -> Self
fn horizontal(self) -> Self
Stack children horizontally. Shorthand for
direction set to Direction::Horizontal.Source§impl EffectExt for ImageViewer
impl EffectExt for ImageViewer
Source§fn get_effect(&mut self) -> &mut EffectData
fn get_effect(&mut self) -> &mut EffectData
Returns a mutable reference to the element’s effect data.
§fn effect(self, effect: EffectData) -> Self
fn effect(self, effect: EffectData) -> Self
Replace all of the element’s effect data at once. See
EffectData.§fn overflow(self, overflow: impl Into<Overflow>) -> Self
fn overflow(self, overflow: impl Into<Overflow>) -> Self
Set whether content overflowing the element’s bounds is clipped. See
Overflow.§fn blur(self, blur: impl Into<f32>) -> Self
fn blur(self, blur: impl Into<f32>) -> Self
Apply a gaussian blur of the given radius to the element.
§fn rotation(self, rotation: impl Into<f32>) -> Self
fn rotation(self, rotation: impl Into<f32>) -> Self
Rotate the element by the given angle in degrees.
§fn opacity(self, opacity: impl Into<f32>) -> Self
fn opacity(self, opacity: impl Into<f32>) -> Self
Set the element’s opacity, from
0.0 (transparent) to 1.0 (opaque).§fn transform_origin(self, transform_origin: impl Into<TransformOrigin>) -> Self
fn transform_origin(self, transform_origin: impl Into<TransformOrigin>) -> Self
Set the point that the scale and rotation effects pivot around. Read more
Source§impl ImageExt for ImageViewer
impl ImageExt for ImageViewer
Source§fn get_image_data(&mut self) -> &mut ImageData
fn get_image_data(&mut self) -> &mut ImageData
Returns a mutable reference to the element’s image data.
§fn image_data(self, image_data: ImageData) -> Self
fn image_data(self, image_data: ImageData) -> Self
Replace all of the element’s image data at once. See
ImageData.§fn sampling_mode(self, sampling_mode: SamplingMode) -> Self
fn sampling_mode(self, sampling_mode: SamplingMode) -> Self
Set the filtering used when the image is scaled. See
SamplingMode.§fn aspect_ratio(self, aspect_ratio: AspectRatio) -> Self
fn aspect_ratio(self, aspect_ratio: AspectRatio) -> Self
Set how the image is scaled to fit its bounds. See
AspectRatio.§fn image_cover(self, image_cover: ImageCover) -> Self
fn image_cover(self, image_cover: ImageCover) -> Self
Set how the image is positioned within its bounds. See
ImageCover.Source§impl KeyExt for ImageViewer
impl KeyExt for ImageViewer
Source§impl LayoutExt for ImageViewer
impl LayoutExt for ImageViewer
Source§fn get_layout(&mut self) -> &mut LayoutData
fn get_layout(&mut self) -> &mut LayoutData
Returns a mutable reference to the element’s layout data.
§fn layout(self, layout: LayoutData) -> Self
fn layout(self, layout: LayoutData) -> Self
Replace all of the element’s layout data at once. See
LayoutData.Source§impl PartialEq for ImageViewer
impl PartialEq for ImageViewer
impl StructuralPartialEq for ImageViewer
Auto Trait Implementations§
impl !Freeze for ImageViewer
impl !RefUnwindSafe for ImageViewer
impl !Send for ImageViewer
impl !Sync for ImageViewer
impl Unpin for ImageViewer
impl UnsafeUnpin for ImageViewer
impl !UnwindSafe for ImageViewer
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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
Mutably borrows from an owned value. Read more
§impl<T> ComponentKey for Twhere
T: Component,
impl<T> ComponentKey for Twhere
T: Component,
fn default_key(&self) -> DiffKey
§impl<T> ComponentProps for T
impl<T> ComponentProps for 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>
Convert
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>
Convert
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)
Convert
&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)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more