pub struct PaintList(_);
Expand description
A list of Shape
s paired with a clip rectangle.
Implementations§
source§impl PaintList
impl PaintList
pub fn is_empty(&self) -> bool
sourcepub fn add(&mut self, clip_rect: Rect, shape: Shape) -> ShapeIdx
pub fn add(&mut self, clip_rect: Rect, shape: Shape) -> ShapeIdx
Returns the index of the new Shape
that can be used with PaintList::set
.
pub fn extend<I: IntoIterator<Item = Shape>>(
&mut self,
clip_rect: Rect,
shapes: I
)
sourcepub fn set(&mut self, idx: ShapeIdx, clip_rect: Rect, shape: Shape)
pub fn set(&mut self, idx: ShapeIdx, clip_rect: Rect, shape: Shape)
Modify an existing Shape
.
Sometimes you want to paint a frame behind some contents, but don’t know how large the frame needs to be
until the contents have been added, and therefor also painted to the PaintList
.
The solution is to allocate a Shape
using let idx = paint_list.add(cr, Shape::Noop);
and then later setting it using paint_list.set(idx, cr, frame);
.