Struct PaintDamage
pub struct PaintDamage { /* private fields */ }Expand description
Retains only draw caches; no document state, history or input is stored here.
Implementations§
§impl PaintDamage
impl PaintDamage
pub fn record(&mut self, bounds: Rect, frame: Option<PaintFrame>)
pub fn record(&mut self, bounds: Rect, frame: Option<PaintFrame>)
A missing proof explicitly requests conservative full bounds.
pub fn is_recorded(&self) -> bool
pub fn is_recorded(&self) -> bool
Whether this draw supplied a proof or explicitly requested full bounds.
pub fn collect(&self, fallback: Rect, regions: &mut Vec<Rect>)
pub fn collect(&self, fallback: Rect, regions: &mut Vec<Rect>)
Collect after drawing and before mark_drawn, as the native host does.
pub fn covers_own_bounds(&self) -> bool
pub fn covers_own_bounds(&self) -> bool
Whether this frame’s paint was recorded, so Self::collect covers
every pixel it changed: where its parts were and are, or its whole
extent then and now.
pub fn release_scene_cache(&mut self)
pub fn release_scene_cache(&mut self)
Drop duplicate encoded scenes when an outer cache owns the draw. Bounds remain available to clear old ink on the next full rebuild.
pub fn mark_drawn(&mut self)
pub fn mark_drawn(&mut self)
Adopt only the frame the ordinary draw lifecycle accepted.
Trait Implementations§
§impl Default for PaintDamage
impl Default for PaintDamage
§fn default() -> PaintDamage
fn default() -> PaintDamage
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PaintDamage
impl !RefUnwindSafe for PaintDamage
impl Send for PaintDamage
impl Sync for PaintDamage
impl Unpin for PaintDamage
impl UnsafeUnpin for PaintDamage
impl !UnwindSafe for PaintDamage
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.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 more§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.