pub struct LinePlot<X: Axis<X>, Y: Axis<Y>> {
draw: Drawable,
max_x: X,
max_y: Y,
closest: FindClosest<String>,
hovering: Option<Hovering<X, Y>>,
top_left: ScreenPt,
dims: ScreenDims,
unit_fmt: UnitFmt,
}Fields§
§draw: Drawable§max_x: X§max_y: Y§closest: FindClosest<String>§hovering: Option<Hovering<X, Y>>§top_left: ScreenPt§dims: ScreenDims§unit_fmt: UnitFmtImplementations§
Source§impl<X: Axis<X>, Y: Axis<Y>> LinePlot<X, Y>
impl<X: Axis<X>, Y: Axis<Y>> LinePlot<X, Y>
Sourcepub fn new_widget(
ctx: &EventCtx<'_>,
label: &str,
series: Vec<Series<X, Y>>,
opts: PlotOptions<X, Y>,
unit_fmt: UnitFmt,
) -> Widget
pub fn new_widget( ctx: &EventCtx<'_>, label: &str, series: Vec<Series<X, Y>>, opts: PlotOptions<X, Y>, unit_fmt: UnitFmt, ) -> Widget
label is used to name the actual LinePlot widget. The result of this call can’t be
usefully named, since the plot is wrapped in some containers for formatting.
pub fn get_hovering(&self) -> Vec<(X, Y)>
Sourcepub fn set_hovering(&mut self, ctx: &mut EventCtx<'_>, label: &str, x: X, y: Y)
pub fn set_hovering(&mut self, ctx: &mut EventCtx<'_>, label: &str, x: X, y: Y)
Programmatically show a tooltip at the given x/y.
Useful (e.g.) when points on the line plot corresponds to a point on the map - as the user hovers on the map you can highlight the corresponding details on the plot.
Trait Implementations§
Source§impl<X: Axis<X>, Y: Axis<Y>> WidgetImpl for LinePlot<X, Y>
impl<X: Axis<X>, Y: Axis<Y>> WidgetImpl for LinePlot<X, Y>
Source§fn get_dims(&self) -> ScreenDims
fn get_dims(&self) -> ScreenDims
What width and height does the widget occupy? If this changes, be sure to set
redo_layout to true in event.Source§fn set_pos(&mut self, top_left: ScreenPt)
fn set_pos(&mut self, top_left: ScreenPt)
Your widget’s top left corner should be here. Handle mouse events and draw appropriately.
Source§fn event(&mut self, ctx: &mut EventCtx<'_>, _: &mut WidgetOutput)
fn event(&mut self, ctx: &mut EventCtx<'_>, _: &mut WidgetOutput)
Your chance to react to an event. Any side effects outside of this widget are communicated
through the output.
Source§fn draw(&self, g: &mut GfxCtx<'_>)
fn draw(&self, g: &mut GfxCtx<'_>)
Draw the widget. Be sure to draw relative to the top-left specified by
set_pos.Source§fn can_restore(&self) -> bool
fn can_restore(&self) -> bool
If a new Panel is being created to replace an older one, all widgets have the chance to
preserve state from the previous version.
Source§fn restore(&mut self, _: &mut EventCtx<'_>, _prev: &dyn WidgetImpl)
fn restore(&mut self, _: &mut EventCtx<'_>, _prev: &dyn WidgetImpl)
Restore state from the previous version of this widget, with the same ID. Implementors must
downcast.
Auto Trait Implementations§
impl<X, Y> Freeze for LinePlot<X, Y>
impl<X, Y> RefUnwindSafe for LinePlot<X, Y>where
X: RefUnwindSafe,
Y: RefUnwindSafe,
impl<X, Y> !Send for LinePlot<X, Y>
impl<X, Y> !Sync for LinePlot<X, Y>
impl<X, Y> Unpin for LinePlot<X, Y>
impl<X, Y> UnwindSafe for LinePlot<X, Y>where
X: UnwindSafe,
Y: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.