pub enum Primitive {
    None,
    Group {
        primitives: Vec<Primitive>,
    },
    Text {
        content: String,
        bounds: Rectangle,
        color: Color,
        size: f32,
        font: Font,
        horizontal_alignment: Horizontal,
        vertical_alignment: Vertical,
    },
    Quad {
        bounds: Rectangle,
        background: Background,
        border_radius: f32,
        border_width: f32,
        border_color: Color,
    },
    Image {
        handle: Handle,
        bounds: Rectangle,
    },
    Svg {
        handle: Handle,
        bounds: Rectangle,
    },
    Clip {
        bounds: Rectangle,
        content: Box<Primitive>,
    },
    Translate {
        translation: Vector,
        content: Box<Primitive>,
    },
    Mesh2D {
        buffers: Mesh2D,
        size: Size,
        style: Style,
    },
    Cached {
        cache: Arc<Primitive>,
    },
}
Expand description

A rendering primitive.

Variants

None

An empty primitive

Group

Fields

primitives: Vec<Primitive>

The primitives of the group

A group of primitives

Text

Fields

content: String

The contents of the text

bounds: Rectangle

The bounds of the text

color: Color

The color of the text

size: f32

The size of the text

font: Font

The font of the text

horizontal_alignment: Horizontal

The horizontal alignment of the text

vertical_alignment: Vertical

The vertical alignment of the text

A text primitive

Quad

Fields

bounds: Rectangle

The bounds of the quad

background: Background

The background of the quad

border_radius: f32

The border radius of the quad

border_width: f32

The border width of the quad

border_color: Color

The border color of the quad

A quad primitive

Image

Fields

handle: Handle

The handle of the image

bounds: Rectangle

The bounds of the image

An image primitive

Svg

Fields

handle: Handle

The path of the SVG file

bounds: Rectangle

The bounds of the viewport

An SVG primitive

Clip

Fields

bounds: Rectangle

The bounds of the clip

content: Box<Primitive>

The content of the clip

A clip primitive

Translate

Fields

translation: Vector

The translation vector

content: Box<Primitive>

The primitive to translate

A primitive that applies a translation

Mesh2D

Fields

buffers: Mesh2D

The vertex and index buffers of the mesh

size: Size

The size of the drawable region of the mesh.

Any geometry that falls out of this region will be clipped.

style: Style

The shader of the mesh

A low-level primitive to render a mesh of triangles.

It can be used to render many kinds of geometry freely.

Cached

Fields

cache: Arc<Primitive>

The cached primitive

A cached primitive.

This can be useful if you are implementing a widget where primitive generation is expensive.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Convert the source color to the destination color using the specified method Read more
Convert the source color to the destination color using the bradford method by default Read more
Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

Convert into T with values clamped to the color defined bounds Read more
Convert into T. The resulting color might be invalid in its color space Read more
The alignment of pointer.
The type for initializers.
Initializes a with the given initializer. Read more
Dereferences the given pointer. Read more
Mutably dereferences the given pointer. Read more
Drops the object pointed to by the given pointer. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more