Struct nannou::ui::widget::PointPath [−][src]
pub struct PointPath<I> { pub points: I, pub common: CommonBuilder, pub style: Style, pub maybe_shift_to_centre_from: Option<[f64; 2]>, }
A simple, non-interactive widget for drawing a series of lines and/or points.
Fields
points: I
Some iterator yielding a series of Points.
common: CommonBuilder
Data necessary and common for all widget builder types.
style: Style
Unique styling for the PointPath.
maybe_shift_to_centre_from: Option<[f64; 2]>
Whether or not the points should be automatically centred to the widget position.
Implementations
impl<I> PointPath<I>
[src]
pub fn styled(points: I, style: Style) -> PointPath<I>
[src]
The same as PointPath::new but with th given style.
pub fn new(points: I) -> PointPath<I>
[src]
Build a new default PointPath widget.
Note that this does not automatically set the position of the bounding box for the
widget. It is recommended that you also see the abs
and centred
constructors for smart
positioning and layout that automatically infer the position and size of the bounding box.
This method should only be preferred if the user can also specify the correct bounding box
position and size as this will be more efficient than the abs
or centred
methods.
pub fn abs(points: I) -> PointPath<I> where
I: IntoIterator<Item = [f64; 2]> + Clone,
[src]
I: IntoIterator<Item = [f64; 2]> + Clone,
Build a new PointPath 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 PointPath::centred instead.
pub fn abs_styled(points: I, style: Style) -> PointPath<I> where
I: IntoIterator<Item = [f64; 2]> + Clone,
[src]
I: IntoIterator<Item = [f64; 2]> + Clone,
The same as PointPath::abs but constructs the PointPath with the given style.
pub fn centred(points: I) -> PointPath<I> where
I: IntoIterator<Item = [f64; 2]> + Clone,
[src]
I: IntoIterator<Item = [f64; 2]> + Clone,
Build a new PointPath and shift the location of the points so that the centre of their bounding rectangle lies at the position determined for the PointPath widget.
This is useful if your points simply describe a shape and you want to position them using conrod’s auto-layout or Positionable methods.
If you would rather centre the bounding box to the points, use PointPath::abs instead.
pub fn centred_styled(points: I, style: Style) -> PointPath<I> where
I: IntoIterator<Item = [f64; 2]> + Clone,
[src]
I: IntoIterator<Item = [f64; 2]> + Clone,
The same as PointPath::centred but constructs the PointPath with the given style.
pub fn thickness(self, thickness: f64) -> PointPath<I>
[src]
The thickness or width of the PointPath’s lines.
Use this instead of Positionable::width
for the thickness of the Line
, as width
and
height
refer to the dimensions of the bounding rectangle.
pub fn solid(self) -> PointPath<I>
[src]
Make a Solid line.
pub fn dashed(self) -> PointPath<I>
[src]
Make a line with a Dashed pattern.
pub fn dotted(self) -> PointPath<I>
[src]
Make a line with a Dotted pattern.
Trait Implementations
impl<I> Clone for PointPath<I> where
I: Clone,
[src]
I: Clone,
impl<I> Colorable for PointPath<I>
[src]
pub fn color(self, color: Color) -> PointPath<I>
[src]
pub fn rgba(self, r: f32, g: f32, b: f32, a: f32) -> Self
[src]
pub fn rgb(self, r: f32, g: f32, b: f32) -> Self
[src]
pub fn hsla(self, h: f32, s: f32, l: f32, a: f32) -> Self
[src]
pub fn hsl(self, h: f32, s: f32, l: f32) -> Self
[src]
impl<I> Common for PointPath<I>
[src]
pub fn common(&self) -> &CommonBuilder
[src]
pub fn common_mut(&mut self) -> &mut CommonBuilder
[src]
impl<I> Debug for PointPath<I> where
I: Debug,
[src]
I: Debug,
impl<I> Widget for PointPath<I> where
I: IntoIterator<Item = [f64; 2]>,
[src]
I: IntoIterator<Item = [f64; 2]>,
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
pub fn init_state(&self, Generator<'_>) -> <PointPath<I> as Widget>::State
[src]
pub fn style(&self) -> <PointPath<I> as Widget>::Style
[src]
pub fn is_over(&self) -> fn(&Container, [f64; 2], &Theme) -> IsOver
[src]
pub fn update(
self,
args: UpdateArgs<'_, '_, '_, '_, PointPath<I>>
) -> <PointPath<I> as Widget>::Event
[src]
self,
args: UpdateArgs<'_, '_, '_, '_, PointPath<I>>
) -> <PointPath<I> as Widget>::Event
Update the state of the Line.
pub fn default_x_position(&self, ui: &Ui) -> Position
[src]
pub fn default_y_position(&self, ui: &Ui) -> Position
[src]
pub fn default_x_dimension(&self, ui: &Ui) -> Dimension
[src]
pub fn default_y_dimension(&self, ui: &Ui) -> Dimension
[src]
pub fn drag_area(
&self,
_dim: [f64; 2],
_style: &Self::Style,
_theme: &Theme
) -> Option<Rect>
[src]
&self,
_dim: [f64; 2],
_style: &Self::Style,
_theme: &Theme
) -> Option<Rect>
pub fn kid_area(&self, args: KidAreaArgs<'_, Self>) -> KidArea
[src]
pub fn parent(self, parent_id: NodeIndex<u32>) -> Self
[src]
pub fn no_parent(self) -> Self
[src]
pub fn place_on_kid_area(self, b: bool) -> Self
[src]
pub fn graphics_for(self, id: NodeIndex<u32>) -> Self
[src]
pub fn floating(self, is_floating: bool) -> Self
[src]
pub fn crop_kids(self) -> Self
[src]
pub fn scroll_kids(self) -> Self
[src]
pub fn scroll_kids_vertically(self) -> Self
[src]
pub fn scroll_kids_horizontally(self) -> Self
[src]
pub fn and<F>(self, build: F) -> Self where
F: FnOnce(Self) -> Self,
[src]
F: FnOnce(Self) -> Self,
pub fn and_mut<F>(self, mutate: F) -> Self where
F: FnOnce(&mut Self),
[src]
F: FnOnce(&mut Self),
pub fn and_if<F>(self, cond: bool, build: F) -> Self where
F: FnOnce(Self) -> Self,
[src]
F: FnOnce(Self) -> Self,
pub fn and_then<T, F>(self, maybe: Option<T>, build: F) -> Self where
F: FnOnce(Self, T) -> Self,
[src]
F: FnOnce(Self, T) -> Self,
pub fn set(self, id: NodeIndex<u32>, ui_cell: &'a mut UiCell<'b>) -> Self::Event
[src]
Auto Trait Implementations
impl<I> RefUnwindSafe for PointPath<I> where
I: RefUnwindSafe,
I: RefUnwindSafe,
impl<I> Send for PointPath<I> where
I: Send,
I: Send,
impl<I> Sync for PointPath<I> where
I: Sync,
I: Sync,
impl<I> Unpin for PointPath<I> where
I: Unpin,
I: Unpin,
impl<I> UnwindSafe for PointPath<I> where
I: UnwindSafe,
I: UnwindSafe,
Blanket Implementations
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
[src]
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
pub fn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
pub fn adapt_into(self) -> D
[src]
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,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> ConvertInto<U> for T where
U: ConvertFrom<T>,
[src]
U: ConvertFrom<T>,
pub fn convert_into(self) -> U
[src]
pub fn convert_unclamped_into(self) -> U
[src]
pub fn try_convert_into(self) -> Result<U, OutOfBounds<U>>
[src]
impl<T> Downcast<T> for T
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<W> Positionable for W where
W: Widget,
[src]
W: Widget,
pub fn x_position(self, x: Position) -> W
[src]
pub fn y_position(self, y: Position) -> W
[src]
pub fn get_x_position(&self, ui: &Ui) -> Position
[src]
pub fn get_y_position(&self, ui: &Ui) -> Position
[src]
pub fn depth(self, depth: f32) -> W
[src]
pub fn get_depth(&self) -> f32
[src]
pub fn x(self, x: f64) -> Self
[src]
pub fn y(self, y: f64) -> Self
[src]
pub fn xy(self, point: [f64; 2]) -> Self
[src]
pub fn x_y(self, x: f64, y: f64) -> Self
[src]
pub fn x_position_relative(self, x: Relative) -> Self
[src]
pub fn y_position_relative(self, y: Relative) -> Self
[src]
pub fn x_y_position_relative(self, x: Relative, y: Relative) -> Self
[src]
pub fn x_position_relative_to(self, other: NodeIndex<u32>, x: Relative) -> Self
[src]
pub fn y_position_relative_to(self, other: NodeIndex<u32>, y: Relative) -> Self
[src]
pub fn x_y_position_relative_to(
self,
other: NodeIndex<u32>,
x: Relative,
y: Relative
) -> Self
[src]
self,
other: NodeIndex<u32>,
x: Relative,
y: Relative
) -> Self
pub fn x_relative(self, x: f64) -> Self
[src]
pub fn y_relative(self, y: f64) -> Self
[src]
pub fn xy_relative(self, point: [f64; 2]) -> Self
[src]
pub fn x_y_relative(self, x: f64, y: f64) -> Self
[src]
pub fn x_relative_to(self, other: NodeIndex<u32>, x: f64) -> Self
[src]
pub fn y_relative_to(self, other: NodeIndex<u32>, y: f64) -> Self
[src]
pub fn xy_relative_to(self, other: NodeIndex<u32>, xy: [f64; 2]) -> Self
[src]
pub fn x_y_relative_to(self, other: NodeIndex<u32>, x: f64, y: f64) -> Self
[src]
pub fn x_direction(self, direction: Direction, x: f64) -> Self
[src]
pub fn y_direction(self, direction: Direction, y: f64) -> Self
[src]
pub fn down(self, y: f64) -> Self
[src]
pub fn up(self, y: f64) -> Self
[src]
pub fn left(self, x: f64) -> Self
[src]
pub fn right(self, x: f64) -> Self
[src]
pub fn x_direction_from(
self,
other: NodeIndex<u32>,
direction: Direction,
x: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
direction: Direction,
x: f64
) -> Self
pub fn y_direction_from(
self,
other: NodeIndex<u32>,
direction: Direction,
y: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
direction: Direction,
y: f64
) -> Self
pub fn down_from(self, other: NodeIndex<u32>, y: f64) -> Self
[src]
pub fn up_from(self, other: NodeIndex<u32>, y: f64) -> Self
[src]
pub fn left_from(self, other: NodeIndex<u32>, x: f64) -> Self
[src]
pub fn right_from(self, other: NodeIndex<u32>, x: f64) -> Self
[src]
pub fn x_align(self, align: Align) -> Self
[src]
pub fn y_align(self, align: Align) -> Self
[src]
pub fn align_left(self) -> Self
[src]
pub fn align_middle_x(self) -> Self
[src]
pub fn align_right(self) -> Self
[src]
pub fn align_top(self) -> Self
[src]
pub fn align_middle_y(self) -> Self
[src]
pub fn align_bottom(self) -> Self
[src]
pub fn x_align_to(self, other: NodeIndex<u32>, align: Align) -> Self
[src]
pub fn y_align_to(self, other: NodeIndex<u32>, align: Align) -> Self
[src]
pub fn align_left_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn align_middle_x_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn align_right_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn align_top_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn align_middle_y_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn align_bottom_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn x_place_on(self, other: NodeIndex<u32>, place: Place) -> Self
[src]
pub fn y_place_on(self, other: NodeIndex<u32>, place: Place) -> Self
[src]
pub fn middle_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn top_left_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn top_left_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn top_left_with_margins_on(
self,
other: NodeIndex<u32>,
top: f64,
left: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
top: f64,
left: f64
) -> Self
pub fn top_right_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn top_right_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn top_right_with_margins_on(
self,
other: NodeIndex<u32>,
top: f64,
right: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
top: f64,
right: f64
) -> Self
pub fn bottom_left_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn bottom_left_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn bottom_left_with_margins_on(
self,
other: NodeIndex<u32>,
bottom: f64,
left: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
bottom: f64,
left: f64
) -> Self
pub fn bottom_right_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn bottom_right_with_margin_on(
self,
other: NodeIndex<u32>,
mgn: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
mgn: f64
) -> Self
pub fn bottom_right_with_margins_on(
self,
other: NodeIndex<u32>,
bottom: f64,
right: f64
) -> Self
[src]
self,
other: NodeIndex<u32>,
bottom: f64,
right: f64
) -> Self
pub fn mid_top_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn mid_top_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn mid_bottom_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn mid_bottom_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn mid_left_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn mid_left_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn mid_right_of(self, other: NodeIndex<u32>) -> Self
[src]
pub fn mid_right_with_margin_on(self, other: NodeIndex<u32>, mgn: f64) -> Self
[src]
pub fn x_place(self, place: Place) -> Self
[src]
pub fn y_place(self, place: Place) -> Self
[src]
pub fn middle(self) -> Self
[src]
pub fn top_left(self) -> Self
[src]
pub fn top_left_with_margin(self, mgn: f64) -> Self
[src]
pub fn top_left_with_margins(self, top: f64, left: f64) -> Self
[src]
pub fn top_right(self) -> Self
[src]
pub fn top_right_with_margin(self, mgn: f64) -> Self
[src]
pub fn top_right_with_margins(self, top: f64, right: f64) -> Self
[src]
pub fn bottom_left(self) -> Self
[src]
pub fn bottom_left_with_margin(self, mgn: f64) -> Self
[src]
pub fn bottom_left_with_margins(self, bottom: f64, left: f64) -> Self
[src]
pub fn bottom_right(self) -> Self
[src]
pub fn bottom_right_with_margin(self, mgn: f64) -> Self
[src]
pub fn bottom_right_with_margins(self, bottom: f64, right: f64) -> Self
[src]
pub fn mid_top(self) -> Self
[src]
pub fn mid_top_with_margin(self, mgn: f64) -> Self
[src]
pub fn mid_bottom(self) -> Self
[src]
pub fn mid_bottom_with_margin(self, mgn: f64) -> Self
[src]
pub fn mid_left(self) -> Self
[src]
pub fn mid_left_with_margin(self, mgn: f64) -> Self
[src]
pub fn mid_right(self) -> Self
[src]
pub fn mid_right_with_margin(self, mgn: f64) -> Self
[src]
impl<T> SetParameter for T
pub fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<W> Sizeable for W where
W: Widget,
[src]
W: Widget,
pub fn x_dimension(self, w: Dimension) -> W
[src]
pub fn y_dimension(self, h: Dimension) -> W
[src]
pub fn get_x_dimension(&self, ui: &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.
pub fn get_y_dimension(&self, ui: &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.
pub fn w(self, w: f64) -> Self
[src]
pub fn h(self, h: f64) -> Self
[src]
pub fn wh(self, wh: [f64; 2]) -> Self
[src]
pub fn w_h(self, width: f64, height: f64) -> Self
[src]
pub fn w_of(self, idx: NodeIndex<u32>) -> Self
[src]
pub fn padded_w_of(self, idx: NodeIndex<u32>, pad: f64) -> Self
[src]
pub fn h_of(self, idx: NodeIndex<u32>) -> Self
[src]
pub fn padded_h_of(self, idx: NodeIndex<u32>, pad: f64) -> Self
[src]
pub fn wh_of(self, idx: NodeIndex<u32>) -> Self
[src]
pub fn padded_wh_of(self, idx: NodeIndex<u32>, pad: f64) -> Self
[src]
pub fn kid_area_w_of(self, idx: NodeIndex<u32>) -> Self
[src]
pub fn padded_kid_area_w_of(self, idx: NodeIndex<u32>, pad: f64) -> Self
[src]
pub fn kid_area_h_of(self, idx: NodeIndex<u32>) -> Self
[src]
pub fn padded_kid_area_h_of(self, idx: NodeIndex<u32>, pad: f64) -> Self
[src]
pub fn kid_area_wh_of(self, idx: NodeIndex<u32>) -> Self
[src]
pub fn padded_kid_area_wh_of(self, idx: NodeIndex<u32>, pad: f64) -> Self
[src]
pub fn get_w(&self, ui: &Ui) -> Option<f64>
[src]
pub fn get_h(&self, ui: &Ui) -> Option<f64>
[src]
pub fn get_wh(&self, ui: &Ui) -> Option<[f64; 2]>
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub 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.
pub 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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Upcast<T> for T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,