Files
barcodeManager/LibShapes/Core/Command/ShapeCommand.cs

36 lines
931 B
C#
Raw Normal View History

using Io.Github.Kerwinxu.LibShapes.Core.Shape;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Io.Github.Kerwinxu.LibShapes.Core.Command
{
/// <summary>
/// 形状方面的命令。
/// </summary>
public abstract class ShapeCommand: ICommand
{
/// <summary>
/// 原先的形状
/// </summary>
public ShapeEle OldShape { get; set; }
/// <summary>
/// 新的形状
/// </summary>
public ShapeEle NewShape { get; set; }
/// <summary>
/// 画布
/// </summary>
public UserControlCanvas canvas { get; set; }
// 如下是两个操作。
public virtual void Undo() { this.canvas.shapes.replaceShape(this.OldShape.ID, this.NewShape); }
public virtual void Redo() { this.canvas.shapes.replaceShape(this.OldShape.ID, this.OldShape); }
}
}