Struct conrod::widget::primitive::shape::polygon::Polygon
[−]
[src]
pub struct Polygon<I> { pub common: CommonBuilder, pub points: I, pub style: Style, pub maybe_shift_to_centre_from: Option<Point>, }
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.
Methods
impl<I> Polygon<I>
[src]
fn styled(points: I, style: Style) -> Self
[src]
Build a polygon with the given points and style.
fn fill(points: I) -> Self
[src]
Build a Polygon with the default Fill style.
fn fill_with(points: I, color: Color) -> Self
[src]
Build a Polygon Filled with the given Color.
fn outline(points: I) -> Self
[src]
Build a Polygon with the default Outline style.
fn outline_styled(points: I, style: Style) -> Self
[src]
Build a Polygon Outlineed with the given line style.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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: Copy> Copy for Polygon<I>
[src]
impl<I: Clone> Clone for Polygon<I>
[src]
fn clone(&self) -> Polygon<I>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
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]
Return the initial State of the Widget. Read more
fn style(&self) -> Self::Style
[src]
Return the styling of the widget. Read more
fn is_over(&self) -> IsOverFn
[src]
Returns either of the following: Read more
fn update(self, args: UpdateArgs<Self>) -> Self::Event
[src]
Update the state of the Polygon.
fn default_x_position(&self, ui: &Ui) -> Position
[src]
The default Position for the widget along the x axis. Read more
fn default_y_position(&self, ui: &Ui) -> Position
[src]
The default Position for the widget along the y axis. Read more
fn default_x_dimension(&self, ui: &Ui) -> Dimension
[src]
The default width for the Widget. Read more
fn default_y_dimension(&self, ui: &Ui) -> Dimension
[src]
The default height of the widget. Read more
fn drag_area(
&self,
_dim: Dimensions,
_style: &Self::Style,
_theme: &Theme
) -> Option<Rect>
[src]
&self,
_dim: Dimensions,
_style: &Self::Style,
_theme: &Theme
) -> Option<Rect>
If the widget is draggable, implement this method and return the position and dimensions of the draggable space. The position should be relative to the center of the widget. Read more
fn kid_area(&self, args: KidAreaArgs<Self>) -> KidArea
[src]
The area on which child widgets will be placed when using the Place
Position
methods.
fn parent(self, parent_id: Id) -> Self
[src]
Set the parent widget for this Widget by passing the WidgetId of the parent. Read more
fn no_parent(self) -> Self
[src]
Specify that this widget has no parent widgets.
fn place_on_kid_area(self, b: bool) -> Self
[src]
Set whether or not the Widget should be placed on the kid_area. Read more
fn graphics_for(self, id: Id) -> Self
[src]
Indicates that the Widget is used as a non-interactive graphical element for some other widget. Read more
fn floating(self, is_floating: bool) -> Self
[src]
Set whether or not the widget is floating (the default is false
). A typical example of a floating widget would be a pop-up or alert window. Read more
fn crop_kids(self) -> Self
[src]
Indicates that all widgets who are children of this widget should be cropped to the kid_area
of this widget. Read more
fn scroll_kids(self) -> Self
[src]
Makes the widget's KidArea
scrollable. Read more
fn scroll_kids_vertically(self) -> Self
[src]
Makes the widget's KidArea
scrollable. Read more
fn scroll_kids_horizontally(self) -> Self
[src]
Set whether or not the widget's KidArea
is scrollable (the default is false). Read more
fn and<F>(self, build: F) -> Self where
F: FnOnce(Self) -> Self,
[src]
F: FnOnce(Self) -> Self,
A builder method that "lifts" the Widget through the given build
function. Read more
fn and_mut<F>(self, mutate: F) -> Self where
F: FnOnce(&mut Self),
[src]
F: FnOnce(&mut Self),
A builder method that mutates the Widget with the given mutate
function. Read more
fn and_if<F>(self, cond: bool, build: F) -> Self where
F: FnOnce(Self) -> Self,
[src]
F: FnOnce(Self) -> Self,
A method that conditionally builds the Widget with the given build
function. Read more
fn and_then<T, F>(self, maybe: Option<T>, build: F) -> Self where
F: FnOnce(Self, T) -> Self,
[src]
F: FnOnce(Self, T) -> Self,
A method that optionally builds the Widget with the given build
function. Read more
fn set<'a, 'b>(self, id: Id, ui_cell: &'a mut UiCell<'b>) -> Self::Event
[src]
Note: There should be no need to override this method. Read more
impl<I> Colorable for Polygon<I>
[src]
fn color(self, color: Color) -> Self
[src]
Set the color of the widget.
fn rgba(self, r: f32, g: f32, b: f32, a: f32) -> Self
[src]
Set the color of the widget from rgba values.
fn rgb(self, r: f32, g: f32, b: f32) -> Self
[src]
Set the color of the widget from rgb values.
fn hsla(self, h: f32, s: f32, l: f32, a: f32) -> Self
[src]
Set the color of the widget from hsla values.
fn hsl(self, h: f32, s: f32, l: f32) -> Self
[src]
Set the color of the widget from hsl values.