Struct amethyst_ui::UiTransform[][src]

pub struct UiTransform {
    pub id: String,
    pub anchor: Anchor,
    pub stretch: Stretch,
    pub local_x: f32,
    pub local_y: f32,
    pub local_z: f32,
    pub width: f32,
    pub height: f32,
    pub tab_order: i32,
    pub scale_mode: ScaleMode,
    pub opaque: bool,
    // some fields omitted
}

The UiTransform represents the transformation of a ui element. Values are in pixel and the position is calculated from the top left of the screen to the center of the ui element's area.

Fields

An identifier. Serves no purpose other than to help you distinguish between UI elements.

Indicates where the element sits, relative to the parent (or to the screen, if there is no parent)

If a child ui element needs to fill its parent this can be used to stretch it to the appropriate size.

X coordinate, 0 is the left edge of the screen. If scale_mode is set to pixel then the width of the screen in pixel is the right edge. If scale_mode is percent then the right edge is 1.

Centered in the middle of the ui element.

Y coordinate, 0 is the top edge of the screen. If scale_mode is set to pixel then the height of the screen in pixel is the bottom edge. If scale_mode is percent then the bottom edge is 1.

Centered in the middle of the ui element.

Z order, entities with a lower Z order will be rendered on top of entities with a higher Z order.

The width of this UI element.

The height of this UI element.

The UI element tab order. When the player presses tab the UI focus will shift to the UI element with the next highest tab order, or if another element with the same tab_order as this one exists they are ordered according to Entity creation order. Shift-tab walks this ordering backwards.

The scale mode indicates if the position is in pixel or is relative (%) (WIP!) to the parent's size.

Indicates if actions on the ui can go through this element. If set to false, the element will behaves as if it was transparent and will let events go to the next element (for example, the text on a button).

Methods

impl UiTransform
[src]

Creates a new UiTransform. By default, it is considered opaque.

Checks if the input position is in the UiTransform rectangle. Uses local coordinates (ignores layouting).

Checks if the input position is in the UiTransform rectangle.

Renders this UI element by evaluating transform as a percentage of the parent size, rather than rendering it with pixel units.

Sets the opaque variable to false, allowing ui events to go through this ui element.

Adds stretching to this ui element so it can fill its parent.

Returns the global x coordinate of this UiTransform as computed by the UiTransformSystem.

Returns the global y coordinate of this UiTransform as computed by the UiTransformSystem.

Returns the global z order of this UiTransform as computed by the UiTransformSystem.

Trait Implementations

impl Clone for UiTransform
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Debug for UiTransform
[src]

Formats the value using the given formatter. Read more

impl Component for UiTransform
[src]

Associated storage type for this component.

Auto Trait Implementations

impl Send for UiTransform

impl Sync for UiTransform