From bc1aa17aeb860ac24b57b2b98f1b3de23b5be731 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 16 Mar 2026 14:32:36 +0000 Subject: [PATCH 1/2] Initial plan From 98d2ecaba889c7391979b4bc81367fb4f4f6f452 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 16 Mar 2026 14:42:10 +0000 Subject: [PATCH 2/2] Fix copy+paste Peg Line Generator creating Brick Line instead Co-authored-by: IntelOrca <1482259+IntelOrca@users.noreply.github.com> --- .../Levels/Children/BrickCurveGenerator.cs | 7 +++++++ .../Levels/Children/CurveGenerator.cs | 4 +--- .../Levels/Children/PegCurveGenerator.cs | 7 +++++++ 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/IntelOrca.PeggleEdit.Tools/Levels/Children/BrickCurveGenerator.cs b/src/IntelOrca.PeggleEdit.Tools/Levels/Children/BrickCurveGenerator.cs index 9af386e..65ed208 100644 --- a/src/IntelOrca.PeggleEdit.Tools/Levels/Children/BrickCurveGenerator.cs +++ b/src/IntelOrca.PeggleEdit.Tools/Levels/Children/BrickCurveGenerator.cs @@ -11,6 +11,13 @@ public class BrickCurveGenerator : CurveGenerator public override int Type => LevelEntryTypes.BrickCurveGenerator; + public override object Clone() + { + var copy = new BrickCurveGenerator(Level); + base.CloneTo(copy); + return copy; + } + public BrickCurveGenerator(Level level) : base(level) { diff --git a/src/IntelOrca.PeggleEdit.Tools/Levels/Children/CurveGenerator.cs b/src/IntelOrca.PeggleEdit.Tools/Levels/Children/CurveGenerator.cs index e74a3ab..8f5b86f 100644 --- a/src/IntelOrca.PeggleEdit.Tools/Levels/Children/CurveGenerator.cs +++ b/src/IntelOrca.PeggleEdit.Tools/Levels/Children/CurveGenerator.cs @@ -177,12 +177,10 @@ private PointF GetVisualLocation(PointF location) return location; } - public override object Clone() + protected void CloneTo(CurveGenerator copy) { - var copy = new BrickCurveGenerator(Level); base.CloneTo(copy); copy.BezierPath = BezierPath.Clone(); - return copy; } public void RecalculateOrigin() diff --git a/src/IntelOrca.PeggleEdit.Tools/Levels/Children/PegCurveGenerator.cs b/src/IntelOrca.PeggleEdit.Tools/Levels/Children/PegCurveGenerator.cs index f27717c..ef9d85e 100644 --- a/src/IntelOrca.PeggleEdit.Tools/Levels/Children/PegCurveGenerator.cs +++ b/src/IntelOrca.PeggleEdit.Tools/Levels/Children/PegCurveGenerator.cs @@ -16,6 +16,13 @@ public PegCurveGenerator(Level level) public override int Type => LevelEntryTypes.PegCurveGenerator; + public override object Clone() + { + var copy = new PegCurveGenerator(Level); + base.CloneTo(copy); + return copy; + } + public override void InvalidatePath() { _cache.Clear();