[−][src]Struct conrod_core::widget::primitive::shape::polygon::Polygon
A basic, non-interactive, arbitrary Polygon widget.
The Polygon is described by specifying its corners in order.
Polygon will automatically close all shapes, so the given list of points does not need to start and end with the same position.
Fields
common: CommonBuilder
Data necessary and common for all widget builder types.
points: I
The points describing the corners of the Polygon.
style: Style
Unique styling for the Polygon.
maybe_shift_to_centre_from: Option<Point>
Whether or not the points should be automatically centred to the widget position.
Implementations
impl<I> Polygon<I>
[src]
pub fn styled(points: I, style: Style) -> Self
[src]
Build a polygon with the given points and style.
pub fn fill(points: I) -> Self
[src]
Build a Polygon with the default Fill style.
pub fn fill_with(points: I, color: Color) -> Self
[src]
Build a Polygon Filled with the given Color.
pub fn outline(points: I) -> Self
[src]
Build a Polygon with the default Outline style.
pub fn outline_styled(points: I, style: Style) -> Self
[src]
Build a Polygon Outlineed with the given line style.
pub fn abs_styled(points: I, style: Style) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
Build a new filled Polygon whose bounding box is fit to the absolute co-ordinates of the points.
This requires that the points
iterator is Clone
so that we may iterate through and
determine the bounding box of the points
.
If you would rather centre the points to the middle of the bounding box, use the Polygon::centred methods instead.
pub fn abs_fill(points: I) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::abs_styled but builds the Polygon with the default Fill style.
pub fn abs_fill_with(points: I, color: Color) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::abs_styled but builds the Polygon Filled with the given Color.
pub fn abs_outline(points: I) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::abs_styled but builds the Polygon with the default Outline style.
pub fn abs_outline_styled(points: I, style: Style) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::abs_styled but builds the Polygon with the given Outline styling.
pub fn centred_styled(points: I, style: Style) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
Build a new Polygon and shift the location of the points so that the centre of their bounding rectangle lies at the position determined for the Polygon widget.
This is useful if your points simply describe a shape and you want to position them using conrod's auto-layout and/or Positionable methods.
If you would rather centre the bounding box to the points, use the Polygon::abs constructor method instead.
pub fn centred_fill(points: I) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::centred_styled but constructs the Polygon with the default Fill style.
pub fn centred_fill_with(points: I, color: Color) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::centred_styled but constructs the Polygon Filled with the given color.
pub fn centred_outline(points: I) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::centred_styled but constructs the Polygon with the default Outline style.
pub fn centred_outline_styled(points: I, style: Style) -> Self where
I: IntoIterator<Item = Point> + Clone,
[src]
I: IntoIterator<Item = Point> + Clone,
The same as Polygon::centred_styled but constructs the Polygon Outlined with the given styling.
Trait Implementations
impl<I: Clone> Clone for Polygon<I>
[src]
impl<I> Colorable for Polygon<I>
[src]
fn color(self, color: Color) -> Self
[src]
fn rgba(self, r: f32, g: f32, b: f32, a: f32) -> Self
[src]
fn rgb(self, r: f32, g: f32, b: f32) -> Self
[src]
fn hsla(self, h: f32, s: f32, l: f32, a: f32) -> Self
[src]
fn hsl(self, h: f32, s: f32, l: f32) -> Self
[src]
impl<I> Common for Polygon<I>
[src]
fn common(&self) -> &CommonBuilder
[src]
fn common_mut(&mut self) -> &mut CommonBuilder
[src]
impl<I: Copy> Copy for Polygon<I>
[src]
impl<I: Debug> Debug for Polygon<I>
[src]
impl<I> Widget for Polygon<I> where
I: IntoIterator<Item = Point>,
[src]
I: IntoIterator<Item = Point>,
type State = State
State to be stored within the Ui
s widget cache. Read more
type Style = Style
Every widget is required to have its own associated Style
type. This type is intended to
contain high-level styling information for the widget that can be optionally specified by
a user of the widget. Read more
type Event = ()
The type of event yielded by the widget, returned via the Widget::set
function. Read more
fn init_state(&self, _: Generator<'_>) -> Self::State
[src]
fn style(&self) -> Self::Style
[src]
fn is_over(&self) -> IsOverFn
[src]
fn update(self, args: UpdateArgs<'_, '_, '_, '_, Self>) -> Self::Event
[src]
Update the state of the Polygon.
fn default_x_position(&self, ui: &Ui) -> Position
[src]
fn default_y_position(&self, ui: &Ui) -> Position
[src]
fn default_x_dimension(&self, ui: &Ui) -> Dimension
[src]
fn default_y_dimension(&self, ui: &Ui) -> Dimension
[src]
fn drag_area(
&self,
_dim: Dimensions,
_style: &Self::Style,
_theme: &Theme
) -> Option<Rect>
[src]
&self,
_dim: Dimensions,
_style: &Self::Style,
_theme: &Theme
) -> Option<Rect>
fn kid_area(&self, args: KidAreaArgs<'_, Self>) -> KidArea
[src]
fn parent(self, parent_id: Id) -> Self
[src]
fn no_parent(self) -> Self
[src]
fn place_on_kid_area(self, b: bool) -> Self
[src]
fn graphics_for(self, id: Id) -> Self
[src]
fn floating(self, is_floating: bool) -> Self
[src]
fn crop_kids(self) -> Self
[src]
fn scroll_kids(self) -> Self
[src]
fn scroll_kids_vertically(self) -> Self
[src]
fn scroll_kids_horizontally(self) -> Self
[src]
fn and<F>(self, build: F) -> Self where
F: FnOnce(Self) -> Self,
[src]
F: FnOnce(Self) -> Self,
fn and_mut<F>(self, mutate: F) -> Self where
F: FnOnce(&mut Self),
[src]
F: FnOnce(&mut Self),
fn and_if<F>(self, cond: bool, build: F) -> Self where
F: FnOnce(Self) -> Self,
[src]
F: FnOnce(Self) -> Self,
fn and_then<T, F>(self, maybe: Option<T>, build: F) -> Self where
F: FnOnce(Self, T) -> Self,
[src]
F: FnOnce(Self, T) -> Self,
fn set<'a, 'b>(self, id: Id, ui_cell: &'a mut UiCell<'b>) -> Self::Event
[src]
Auto Trait Implementations
impl<I> RefUnwindSafe for Polygon<I> where
I: RefUnwindSafe,
I: RefUnwindSafe,
impl<I> Send for Polygon<I> where
I: Send,
I: Send,
impl<I> Sync for Polygon<I> where
I: Sync,
I: Sync,
impl<I> Unpin for Polygon<I> where
I: Unpin,
I: Unpin,
impl<I> UnwindSafe for Polygon<I> where
I: UnwindSafe,
I: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<W> Positionable for W where
W: Widget,
[src]
W: Widget,
fn x_position(Self, Position) -> W
[src]
fn y_position(Self, Position) -> W
[src]
fn get_x_position(&Self, &Ui) -> Position
[src]
fn get_y_position(&Self, &Ui) -> Position
[src]
fn depth(Self, f32) -> W
[src]
fn get_depth(&Self) -> f32
[src]
fn x(self, x: Scalar) -> Self
[src]
fn y(self, y: Scalar) -> Self
[src]
fn xy(self, point: Point) -> Self
[src]
fn x_y(self, x: Scalar, y: Scalar) -> Self
[src]
fn x_position_relative(self, x: Relative) -> Self
[src]
fn y_position_relative(self, y: Relative) -> Self
[src]
fn x_y_position_relative(self, x: Relative, y: Relative) -> Self
[src]
fn x_position_relative_to(self, other: Id, x: Relative) -> Self
[src]
fn y_position_relative_to(self, other: Id, y: Relative) -> Self
[src]
fn x_y_position_relative_to(self, other: Id, x: Relative, y: Relative) -> Self
[src]
fn x_relative(self, x: Scalar) -> Self
[src]
fn y_relative(self, y: Scalar) -> Self
[src]
fn xy_relative(self, point: Point) -> Self
[src]
fn x_y_relative(self, x: Scalar, y: Scalar) -> Self
[src]
fn x_relative_to(self, other: Id, x: Scalar) -> Self
[src]
fn y_relative_to(self, other: Id, y: Scalar) -> Self
[src]
fn xy_relative_to(self, other: Id, xy: Point) -> Self
[src]
fn x_y_relative_to(self, other: Id, x: Scalar, y: Scalar) -> Self
[src]
fn x_direction(self, direction: Direction, x: Scalar) -> Self
[src]
fn y_direction(self, direction: Direction, y: Scalar) -> Self
[src]
fn down(self, y: Scalar) -> Self
[src]
fn up(self, y: Scalar) -> Self
[src]
fn left(self, x: Scalar) -> Self
[src]
fn right(self, x: Scalar) -> Self
[src]
fn x_direction_from(self, other: Id, direction: Direction, x: Scalar) -> Self
[src]
fn y_direction_from(self, other: Id, direction: Direction, y: Scalar) -> Self
[src]
fn down_from(self, other: Id, y: Scalar) -> Self
[src]
fn up_from(self, other: Id, y: Scalar) -> Self
[src]
fn left_from(self, other: Id, x: Scalar) -> Self
[src]
fn right_from(self, other: Id, x: Scalar) -> Self
[src]
fn x_align(self, align: Align) -> Self
[src]
fn y_align(self, align: Align) -> Self
[src]
fn align_left(self) -> Self
[src]
fn align_middle_x(self) -> Self
[src]
fn align_right(self) -> Self
[src]
fn align_top(self) -> Self
[src]
fn align_middle_y(self) -> Self
[src]
fn align_bottom(self) -> Self
[src]
fn x_align_to(self, other: Id, align: Align) -> Self
[src]
fn y_align_to(self, other: Id, align: Align) -> Self
[src]
fn align_left_of(self, other: Id) -> Self
[src]
fn align_middle_x_of(self, other: Id) -> Self
[src]
fn align_right_of(self, other: Id) -> Self
[src]
fn align_top_of(self, other: Id) -> Self
[src]
fn align_middle_y_of(self, other: Id) -> Self
[src]
fn align_bottom_of(self, other: Id) -> Self
[src]
fn x_place_on(self, other: Id, place: Place) -> Self
[src]
fn y_place_on(self, other: Id, place: Place) -> Self
[src]
fn middle_of(self, other: Id) -> Self
[src]
fn top_left_of(self, other: Id) -> Self
[src]
fn top_left_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn top_left_with_margins_on(self, other: Id, top: Scalar, left: Scalar) -> Self
[src]
fn top_right_of(self, other: Id) -> Self
[src]
fn top_right_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn top_right_with_margins_on(
self,
other: Id,
top: Scalar,
right: Scalar
) -> Self
[src]
self,
other: Id,
top: Scalar,
right: Scalar
) -> Self
fn bottom_left_of(self, other: Id) -> Self
[src]
fn bottom_left_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn bottom_left_with_margins_on(
self,
other: Id,
bottom: Scalar,
left: Scalar
) -> Self
[src]
self,
other: Id,
bottom: Scalar,
left: Scalar
) -> Self
fn bottom_right_of(self, other: Id) -> Self
[src]
fn bottom_right_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn bottom_right_with_margins_on(
self,
other: Id,
bottom: Scalar,
right: Scalar
) -> Self
[src]
self,
other: Id,
bottom: Scalar,
right: Scalar
) -> Self
fn mid_top_of(self, other: Id) -> Self
[src]
fn mid_top_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn mid_bottom_of(self, other: Id) -> Self
[src]
fn mid_bottom_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn mid_left_of(self, other: Id) -> Self
[src]
fn mid_left_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn mid_right_of(self, other: Id) -> Self
[src]
fn mid_right_with_margin_on(self, other: Id, mgn: Scalar) -> Self
[src]
fn x_place(self, place: Place) -> Self
[src]
fn y_place(self, place: Place) -> Self
[src]
fn middle(self) -> Self
[src]
fn top_left(self) -> Self
[src]
fn top_left_with_margin(self, mgn: Scalar) -> Self
[src]
fn top_left_with_margins(self, top: Scalar, left: Scalar) -> Self
[src]
fn top_right(self) -> Self
[src]
fn top_right_with_margin(self, mgn: Scalar) -> Self
[src]
fn top_right_with_margins(self, top: Scalar, right: Scalar) -> Self
[src]
fn bottom_left(self) -> Self
[src]
fn bottom_left_with_margin(self, mgn: Scalar) -> Self
[src]
fn bottom_left_with_margins(self, bottom: Scalar, left: Scalar) -> Self
[src]
fn bottom_right(self) -> Self
[src]
fn bottom_right_with_margin(self, mgn: Scalar) -> Self
[src]
fn bottom_right_with_margins(self, bottom: Scalar, right: Scalar) -> Self
[src]
fn mid_top(self) -> Self
[src]
fn mid_top_with_margin(self, mgn: Scalar) -> Self
[src]
fn mid_bottom(self) -> Self
[src]
fn mid_bottom_with_margin(self, mgn: Scalar) -> Self
[src]
fn mid_left(self) -> Self
[src]
fn mid_left_with_margin(self, mgn: Scalar) -> Self
[src]
fn mid_right(self) -> Self
[src]
fn mid_right_with_margin(self, mgn: Scalar) -> Self
[src]
impl<W> Sizeable for W where
W: Widget,
[src]
W: Widget,
fn x_dimension(Self, Dimension) -> W
[src]
fn y_dimension(Self, Dimension) -> W
[src]
fn get_x_dimension(&Self, &Ui) -> Dimension
[src]
We attempt to retrieve the x
Dimension for the widget via the following:
- Check for specified value at
maybe_x_dimension
- Otherwise, use the default returned by Widget::default_x_dimension.
fn get_y_dimension(&Self, &Ui) -> Dimension
[src]
We attempt to retrieve the y
Dimension for the widget via the following:
- Check for specified value at
maybe_y_dimension
- Otherwise, use the default returned by Widget::default_y_dimension.
fn w(self, w: Scalar) -> Self
[src]
fn h(self, h: Scalar) -> Self
[src]
fn wh(self, wh: Dimensions) -> Self
[src]
fn w_h(self, width: Scalar, height: Scalar) -> Self
[src]
fn w_of(self, idx: Id) -> Self
[src]
fn padded_w_of(self, idx: Id, pad: Scalar) -> Self
[src]
fn h_of(self, idx: Id) -> Self
[src]
fn padded_h_of(self, idx: Id, pad: Scalar) -> Self
[src]
fn wh_of(self, idx: Id) -> Self
[src]
fn padded_wh_of(self, idx: Id, pad: Scalar) -> Self
[src]
fn kid_area_w_of(self, idx: Id) -> Self
[src]
fn padded_kid_area_w_of(self, idx: Id, pad: Scalar) -> Self
[src]
fn kid_area_h_of(self, idx: Id) -> Self
[src]
fn padded_kid_area_h_of(self, idx: Id, pad: Scalar) -> Self
[src]
fn kid_area_wh_of(self, idx: Id) -> Self
[src]
fn padded_kid_area_wh_of(self, idx: Id, pad: Scalar) -> Self
[src]
fn get_w(&self, ui: &Ui) -> Option<Scalar>
[src]
fn get_h(&self, ui: &Ui) -> Option<Scalar>
[src]
fn get_wh(&self, ui: &Ui) -> Option<Dimensions>
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,