Enum conrod::render::PrimitiveKind [] [src]

pub enum PrimitiveKind<'a> {
    Rectangle {
        color: Color,
    },
    Polygon {
        color: Color,
        points: &'a [Point],
    },
    Lines {
        color: Color,
        cap: Cap,
        thickness: Scalar,
        points: &'a [Point],
    },
    Image {
        color: Option<Color>,
        source_rect: Option<Rect>,
    },
    Text {
        color: Color,
        text: Text<'a>,
        font_id: Id,
    },
    Other(&'a Container),
}

The unique kind for each primitive element in the Ui.

Variants

A filled Rectangle.

These are produced by the Rectangle and BorderedRectangle primitive widgets. A Filled Rectangle widget produces a single Rectangle. The BorderedRectangle produces two Rectangles, the first for the outer border and the second for the inner on top.

Fields of Rectangle

The fill colour for the rectangle.

A filled Polygon.

These are produced by the Oval and Polygon primitive widgets.

Fields of Polygon

The fill colour for the inner part of the polygon

The ordered points that, when joined with lines, represent each side of the Polygon.

The first and final points should always be the same.

A series of consecutive Lines.

These are produces via the Line and PointPath primitive widgets, or the shape primitives if they are instantiated with an Outline style.

Fields of Lines

The colour of each Line.

Whether the end of the lines should be Flat or Round.

The thickness of the lines, i.e. the width of a vertical line or th height of a horizontal line.

The ordered points which should be joined by lines.

A single Image, produced by the primitive Image widget.

Fields of Image

When Some, colours the Image. When None, the Image uses its regular colours.

The area of the texture that will be drawn to the Image's Rect.

A single block of Text, produced by the primitive Text widget.

Fields of Text

The colour of the Text.

All glyphs within the Text laid out in their correct positions in order from top-left to bottom right.

The unique identifier for the font, useful for the glyph_cache.rect_for(id, glyph) method when using the conrod::text::GlyphCache (rusttype's GPU Cache).

An Other variant will be yielded for every non-primitive widget in the list.

Most of the time, this variant can be ignored, however it is useful for users who need to render widgets in ways that cannot be covered by the other PrimitiveKind variants.

For example, a Shader widget might be required for updating uniforms in user rendering code. In order to access the unique state of this widget, the user can check Other variants for a container whose kind field matches the unique kind of the Shader widget. They can then retrieve the unique state of the widget and cast it to its actual type using either of the Container::state_and_style or Container::unique_widget_state methods.