diff --git a/src/autorouter/invoker.rs b/src/autorouter/invoker.rs index 5f07274..55d7654 100644 --- a/src/autorouter/invoker.rs +++ b/src/autorouter/invoker.rs @@ -175,7 +175,7 @@ impl Invoker { let last_done = self.history.last_done()?; if let Some(edit) = last_done.edit() { - self.autorouter.board.apply(edit.reverse()); + self.autorouter.board.apply(&edit.reverse()); } Ok(self.history.undo()?) @@ -187,7 +187,7 @@ impl Invoker { let last_undone = self.history.last_undone()?; if let Some(edit) = last_undone.edit() { - self.autorouter.board.apply(edit.clone()); + self.autorouter.board.apply(edit); } Ok(self.history.redo()?) diff --git a/src/board/mod.rs b/src/board/mod.rs index 227b76a..d6da0e9 100644 --- a/src/board/mod.rs +++ b/src/board/mod.rs @@ -274,7 +274,7 @@ impl BendIndex, > for Board { - fn apply(&mut self, edit: LayoutEdit) { + fn apply(&mut self, edit: &LayoutEdit) { self.layout.apply(edit); } } diff --git a/src/drawing/drawing.rs b/src/drawing/drawing.rs index 05df6e6..96bbe54 100644 --- a/src/drawing/drawing.rs +++ b/src/drawing/drawing.rs @@ -1134,7 +1134,7 @@ impl BendIndex, > for Drawing { - fn apply(&mut self, edit: DrawingEdit) { + fn apply(&mut self, edit: &DrawingEdit) { self.recording_geometry_with_rtree.apply(edit); } } diff --git a/src/geometry/edit.rs b/src/geometry/edit.rs index d83cd9f..f497cf8 100644 --- a/src/geometry/edit.rs +++ b/src/geometry/edit.rs @@ -19,7 +19,7 @@ pub trait ApplyGeometryEdit< BI: GetPetgraphIndex + Into + Eq + Hash + Copy, > { - fn apply(&mut self, edit: GeometryEdit); + fn apply(&mut self, edit: &GeometryEdit); } #[derive(Debug, Clone)] diff --git a/src/geometry/recording_with_rtree.rs b/src/geometry/recording_with_rtree.rs index 4605955..b950220 100644 --- a/src/geometry/recording_with_rtree.rs +++ b/src/geometry/recording_with_rtree.rs @@ -395,7 +395,7 @@ impl< > ApplyGeometryEdit for RecordingGeometryWithRtree { - fn apply(&mut self, edit: GeometryEdit) { + fn apply(&mut self, edit: &GeometryEdit) { for (compound, (maybe_old_data, ..)) in &edit.compounds { if maybe_old_data.is_some() { self.geometry_with_rtree.remove_compound(*compound); diff --git a/src/layout/layout.rs b/src/layout/layout.rs index 4ad667c..9b89ad4 100644 --- a/src/layout/layout.rs +++ b/src/layout/layout.rs @@ -341,7 +341,7 @@ impl BendIndex, > for Layout { - fn apply(&mut self, edit: LayoutEdit) { + fn apply(&mut self, edit: &LayoutEdit) { self.drawing.apply(edit); } }