46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Drawing;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Windows.Forms;
|
||
|
||
namespace Io.Github.Kerwinxu.LibShapes.Core.State
|
||
{
|
||
public class StateStandby : State
|
||
{
|
||
|
||
public StateStandby(UserControlCanvas canvas, PointF start_pointF):base(canvas,start_pointF)
|
||
{
|
||
|
||
}
|
||
|
||
public StateStandby(UserControlCanvas canvas) : base(canvas)
|
||
{
|
||
this.canvas.changeSelect(null);// null表示没有选择,然后就是纸张。
|
||
}
|
||
|
||
public override void LeftMouseDown(PointF pointF)
|
||
{
|
||
// 首先看看是否有选择的图形
|
||
var shape = this.canvas.shapes.getSelectShape(pointF);
|
||
if (shape != null)
|
||
{
|
||
this.canvas.changeSelect(shape); // 选择这个
|
||
this.canvas.state = new StateSelected(this.canvas, pointF); // 改变状态
|
||
this.canvas.state.LeftMouseDown(pointF); // 调用他的处理
|
||
}
|
||
else
|
||
{
|
||
this.canvas.changeSelect(null);
|
||
this.canvas.state = new ShapeRectSelect(this.canvas, pointF);
|
||
this.canvas.state.LeftMouseDown(pointF);
|
||
}
|
||
|
||
this.canvas.Refresh();
|
||
//base.LeftMouseDown(e);
|
||
}
|
||
|
||
}
|
||
}
|