summaryrefslogtreecommitdiff
path: root/src/library/graphics
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2022-06-12 17:45:52 +0200
committerLaurenz <laurmaedje@gmail.com>2022-06-12 20:51:31 +0200
commit7660978ee5d842648e244e2972273264d94ca37b (patch)
tree74e1c8bc578afa616ddcd6c4c9e79c3c3d311d78 /src/library/graphics
parent6e3b1a2c80428d581d00b9d65e1c45401df2e210 (diff)
Move `Arc` into `Frame`
Diffstat (limited to 'src/library/graphics')
-rw-r--r--src/library/graphics/hide.rs4
-rw-r--r--src/library/graphics/image.rs4
-rw-r--r--src/library/graphics/line.rs4
-rw-r--r--src/library/graphics/shape.rs8
-rw-r--r--src/library/graphics/transform.rs8
5 files changed, 14 insertions, 14 deletions
diff --git a/src/library/graphics/hide.rs b/src/library/graphics/hide.rs
index c969ef76..0ed02d1b 100644
--- a/src/library/graphics/hide.rs
+++ b/src/library/graphics/hide.rs
@@ -17,12 +17,12 @@ impl Layout for HideNode {
ctx: &mut Context,
regions: &Regions,
styles: StyleChain,
- ) -> TypResult<Vec<Arc<Frame>>> {
+ ) -> TypResult<Vec<Frame>> {
let mut frames = self.0.layout(ctx, regions, styles)?;
// Clear the frames.
for frame in &mut frames {
- Arc::make_mut(frame).clear();
+ frame.clear();
}
Ok(frames)
diff --git a/src/library/graphics/image.rs b/src/library/graphics/image.rs
index d0bcfa44..1781eb8a 100644
--- a/src/library/graphics/image.rs
+++ b/src/library/graphics/image.rs
@@ -38,7 +38,7 @@ impl Layout for ImageNode {
ctx: &mut Context,
regions: &Regions,
styles: StyleChain,
- ) -> TypResult<Vec<Arc<Frame>>> {
+ ) -> TypResult<Vec<Frame>> {
let img = ctx.images.get(self.0);
let pxw = img.width() as f64;
let pxh = img.height() as f64;
@@ -90,7 +90,7 @@ impl Layout for ImageNode {
frame.link(url.clone());
}
- Ok(vec![Arc::new(frame)])
+ Ok(vec![frame])
}
}
diff --git a/src/library/graphics/line.rs b/src/library/graphics/line.rs
index 8e5ceae1..15c54f46 100644
--- a/src/library/graphics/line.rs
+++ b/src/library/graphics/line.rs
@@ -43,7 +43,7 @@ impl Layout for LineNode {
_: &mut Context,
regions: &Regions,
styles: StyleChain,
- ) -> TypResult<Vec<Arc<Frame>>> {
+ ) -> TypResult<Vec<Frame>> {
let stroke = styles.get(Self::STROKE).unwrap_or_default();
let origin = self
@@ -64,7 +64,7 @@ impl Layout for LineNode {
let shape = Geometry::Line(delta.to_point()).stroked(stroke);
frame.push(origin.to_point(), Element::Shape(shape));
- Ok(vec![Arc::new(frame)])
+ Ok(vec![frame])
}
}
diff --git a/src/library/graphics/shape.rs b/src/library/graphics/shape.rs
index 6c315c24..bf581815 100644
--- a/src/library/graphics/shape.rs
+++ b/src/library/graphics/shape.rs
@@ -79,7 +79,7 @@ impl<const S: ShapeKind> Layout for ShapeNode<S> {
ctx: &mut Context,
regions: &Regions,
styles: StyleChain,
- ) -> TypResult<Vec<Arc<Frame>>> {
+ ) -> TypResult<Vec<Frame>> {
let mut frames;
if let Some(child) = &self.0 {
let mut inset = styles.get(Self::INSET);
@@ -94,7 +94,7 @@ impl<const S: ShapeKind> Layout for ShapeNode<S> {
frames = child.layout(ctx, &pod, styles)?;
for frame in frames.iter_mut() {
- Arc::make_mut(frame).apply_role(Role::GenericBlock);
+ frame.apply_role(Role::GenericBlock);
}
// Relayout with full expansion into square region to make sure
@@ -131,10 +131,10 @@ impl<const S: ShapeKind> Layout for ShapeNode<S> {
size = regions.expand.select(regions.first, size);
}
- frames = vec![Arc::new(Frame::new(size))];
+ frames = vec![Frame::new(size)];
}
- let frame = Arc::make_mut(&mut frames[0]);
+ let frame = &mut frames[0];
// Add fill and/or stroke.
let fill = styles.get(Self::FILL);
diff --git a/src/library/graphics/transform.rs b/src/library/graphics/transform.rs
index 7176a683..2a0149bc 100644
--- a/src/library/graphics/transform.rs
+++ b/src/library/graphics/transform.rs
@@ -28,13 +28,13 @@ impl Layout for MoveNode {
ctx: &mut Context,
regions: &Regions,
styles: StyleChain,
- ) -> TypResult<Vec<Arc<Frame>>> {
+ ) -> TypResult<Vec<Frame>> {
let mut frames = self.child.layout(ctx, regions, styles)?;
let delta = self.delta.resolve(styles);
for frame in &mut frames {
let delta = delta.zip(frame.size()).map(|(d, s)| d.relative_to(s));
- Arc::make_mut(frame).translate(delta.to_point());
+ frame.translate(delta.to_point());
}
Ok(frames)
@@ -89,7 +89,7 @@ impl<const T: TransformKind> Layout for TransformNode<T> {
ctx: &mut Context,
regions: &Regions,
styles: StyleChain,
- ) -> TypResult<Vec<Arc<Frame>>> {
+ ) -> TypResult<Vec<Frame>> {
let origin = styles.get(Self::ORIGIN).unwrap_or(Align::CENTER_HORIZON);
let mut frames = self.child.layout(ctx, regions, styles)?;
@@ -99,7 +99,7 @@ impl<const T: TransformKind> Layout for TransformNode<T> {
.pre_concat(self.transform)
.pre_concat(Transform::translate(-x, -y));
- Arc::make_mut(frame).transform(transform);
+ frame.transform(transform);
}
Ok(frames)