Struct vizia::views::Element

source ·
pub struct Element;
Expand description

A basic element with no interactivity.

An element has no children and no special rendering logic. It can be used to render a rectangle, a line or a circle using view styling rules.

§Examples

§Element without visible styling

An element can be used without visible styling which displays nothing at all. This is useful to create an invisible spacer between other views.

Element::new(cx)
    .width(Pixels(100.0))
    .height(Pixels(100.0));

§Element as a rectangle

An element can be used to display a rectangle like this black one with a size of 100 by 100 pixels.

Element::new(cx)
    .width(Pixels(100.0))
    .height(Pixels(100.0))
    .background_color(Color::black());

§Element as a line

An element can be used to display a line like this black one with a size of 100 by 1 pixels.

Element::new(cx)
     .width(Pixels(100.0))
     .height(Pixels(1.0))
     .background_color(Color::black());

§Element as a circle

An element can be used to display a circle like this black one with a diameter of 100 pixels. To create a perfect circle the width and height of the element have to be equal and the border radius has to be set to fifty percent.

Element::new(cx)
    .width(Pixels(100.0))
    .height(Pixels(100.0))
    .border_radius(Percentage(50.0))
    .background_color(Color::black());

§Element as an image

An element can be used to display an image like this 100 by 100 pixels one. The image can be set by using a stylesheet or by using a lens. The image has to be loaded manually by using the Context::load_image method.

Element::new(cx)
    .width(Pixels(100.0))
    .height(Pixels(100.0));

Implementations§

source§

impl Element

source

pub fn new(cx: &mut Context) -> Handle<'_, Element>

Creates a new element.

§Examples
Element::new(cx);

Trait Implementations§

source§

impl View for Element

source§

fn element(&self) -> Option<&'static str>

Specifies a name for the view type which can be used as an element selector in css. Read more
source§

fn build<F>(self, cx: &mut Context, content: F) -> Handle<'_, Self>
where F: FnOnce(&mut Context),

Builds the view into the tree and returns a handle which can be used to apply style and layout modifiers to the view. Read more
source§

fn event(&mut self, cx: &mut EventContext<'_>, event: &mut Event)

Handles any events received by the view. Read more
source§

fn draw(&self, cx: &mut DrawContext<'_>, canvas: &Canvas)

Provides custom drawing for the view. Read more
source§

fn accessibility(&self, cx: &mut AccessContext<'_>, node: &mut AccessNode)

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
§

impl<T> Downcast for T
where T: 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>

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)

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)

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> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same for T

source§

type Output = T

Should always be Self
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.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more