diff options
| author | Laurenz <laurmaedje@gmail.com> | 2023-03-16 17:36:04 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2023-03-17 11:30:58 +0100 |
| commit | e8435df5ec718e8ecc8a2ad48e4eb3ddd1f92a72 (patch) | |
| tree | 58d8356ec1c615f898e342a479b5f967a8177468 /library/src/visualize | |
| parent | ecb5543985cc0788d9c01e8c2e28d8ca6d8e19b6 (diff) | |
More jump targets
Diffstat (limited to 'library/src/visualize')
| -rw-r--r-- | library/src/visualize/image.rs | 2 | ||||
| -rw-r--r-- | library/src/visualize/line.rs | 2 | ||||
| -rw-r--r-- | library/src/visualize/shape.rs | 9 |
3 files changed, 9 insertions, 4 deletions
diff --git a/library/src/visualize/image.rs b/library/src/visualize/image.rs index 4509cf5a..129e07c5 100644 --- a/library/src/visualize/image.rs +++ b/library/src/visualize/image.rs @@ -97,7 +97,7 @@ impl Layout for ImageNode { // the frame to the target size, center aligning the image in the // process. let mut frame = Frame::new(fitted); - frame.push(Point::zero(), Element::Image(image, fitted)); + frame.push(Point::zero(), Element::Image(image, fitted, self.span())); frame.resize(target, Align::CENTER_HORIZON); // Create a clipping group if only part of the image should be visible. diff --git a/library/src/visualize/line.rs b/library/src/visualize/line.rs index b39170f0..6614e3ee 100644 --- a/library/src/visualize/line.rs +++ b/library/src/visualize/line.rs @@ -76,7 +76,7 @@ impl Layout for LineNode { let mut frame = Frame::new(target); let shape = Geometry::Line(delta.to_point()).stroked(stroke); - frame.push(start.to_point(), Element::Shape(shape)); + frame.push(start.to_point(), Element::Shape(shape, self.span())); Ok(Fragment::frame(frame)) } } diff --git a/library/src/visualize/shape.rs b/library/src/visualize/shape.rs index 02b45ed5..de459949 100644 --- a/library/src/visualize/shape.rs +++ b/library/src/visualize/shape.rs @@ -158,6 +158,7 @@ impl Layout for RectNode { self.inset(styles), self.outset(styles), self.radius(styles), + self.span(), ) } } @@ -267,6 +268,7 @@ impl Layout for SquareNode { self.inset(styles), self.outset(styles), self.radius(styles), + self.span(), ) } } @@ -348,6 +350,7 @@ impl Layout for EllipseNode { self.inset(styles), self.outset(styles), Corners::splat(Rel::zero()), + self.span(), ) } } @@ -454,6 +457,7 @@ impl Layout for CircleNode { self.inset(styles), self.outset(styles), Corners::splat(Rel::zero()), + self.span(), ) } } @@ -471,6 +475,7 @@ fn layout( mut inset: Sides<Rel<Abs>>, outset: Sides<Rel<Abs>>, radius: Corners<Rel<Abs>>, + span: Span, ) -> SourceResult<Fragment> { let resolved = sizing .zip(regions.base()) @@ -524,9 +529,9 @@ fn layout( let size = frame.size() + outset.sum_by_axis(); let pos = Point::new(-outset.left, -outset.top); let shape = ellipse(size, fill, stroke.left); - frame.prepend(pos, Element::Shape(shape)); + frame.prepend(pos, Element::Shape(shape, span)); } else { - frame.fill_and_stroke(fill, stroke, outset, radius); + frame.fill_and_stroke(fill, stroke, outset, radius, span); } } |
