pub struct PathCaches { /* private fields */ }Expand description
The PathCaches of a plot that is rebuilt on every render, kept in the
window’s element state so they outlive the plot value.
Plots are plain values built by render and painted once, so a cache
held by the plot would be empty every frame; this keeps them under the
element id the plot paints in (plus key), for as long as the plot is
painted on consecutive frames.
ⓘ
fn paint(&mut self, bounds: Bounds<Pixels>, window: &mut Window, cx: &mut App) {
let caches = PathCaches::for_paint("lines", window, cx);
caches.update(cx, |caches, _| {
for (ix, line) in lines.iter().enumerate() {
line.paint_cached(&bounds, caches.slot(ix), window);
}
});
}Implementations§
Source§impl PathCaches
impl PathCaches
Sourcepub fn for_paint(
key: impl Into<ElementId>,
window: &mut Window,
cx: &mut App,
) -> Entity<Self>
pub fn for_paint( key: impl Into<ElementId>, window: &mut Window, cx: &mut App, ) -> Entity<Self>
The caches for the plot painting under the window’s current element
id; key tells apart several groups of shapes in one plot.
Trait Implementations§
Source§impl Default for PathCaches
impl Default for PathCaches
Source§fn default() -> PathCaches
fn default() -> PathCaches
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PathCaches
impl RefUnwindSafe for PathCaches
impl Send for PathCaches
impl Sync for PathCaches
impl Unpin for PathCaches
impl UnsafeUnpin for PathCaches
impl UnwindSafe for PathCaches
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().