using PaintDotNet.Annotation.Enum;
using System.Drawing;
using System.Windows.Forms;
namespace PaintDotNet.Annotation.Other
{
///
/// 工具->划痕处理
///
public class ToolScratchTreatmentLine : ToolObject
{
public static void OnMouseDown(ISurfaceBox drawArea, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point pointscroll = GetEventPointInArea(drawArea, e.Location);
DrawScratchTreatmentLine line = new DrawScratchTreatmentLine(drawArea, pointscroll.X, pointscroll.Y, pointscroll.X + 1, pointscroll.Y + 1);
line.ISurfaceBox = drawArea;
AddNewObject(drawArea, line);
}
}
public static void OnMouseMove(ISurfaceBox drawArea, MouseEventArgs e)
{
Point pointscroll = GetEventPointInArea(drawArea, e.Location);
if (e.Button == MouseButtons.Left)
{
if (drawArea.GraphicsList[0] != null)
{
drawArea.GraphicsList[0].MoveHandleTo(pointscroll, 2);
drawArea.Refresh();
drawArea.GraphicsList.Dirty = true;
}
}
}
public static void OnMouseUp(ISurfaceBox drawArea, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (!drawArea.ContinuousDrawingLabel())
{
drawArea.ActiveTool = DrawToolType.Pointer;
}
}
}
///
/// Remove selected object
///
///
///
public static void OnDel2KeyDown(ISurfaceBox drawArea, MouseEventArgs e)
{
if (drawArea != null && drawArea.GraphicsList != null && drawArea.GraphicsList.Count > 0)
{
for (int i = drawArea.GraphicsList.Count - 1; i >= 0; i--)
{
if (drawArea.GraphicsList[i].drawToolType == DrawToolType.DrawScratchTreatmentLine/*drawArea.GraphicsList[i].Selected == true*/)
{
drawArea.GraphicsList.RemoveObj(drawArea.GraphicsList[i]);
}
}
drawArea.Refresh();
}
}
public static void OnMouseClick(ISurfaceBox drawArea, MouseEventArgs e)
{
}
///
/// 鼠标左键双击
///
///
///
public static void OnMouseLeftDoubleClick(ISurfaceBox surfacebox, MouseEventArgs e)
{
}
///
/// 删除按键
///
///
///
public static void OnDelKeyDown(ISurfaceBox surfacebox, MouseEventArgs e)
{
}
///
/// 清空全部时调用该方法,将可能未绘制完的对象清空
///
public static void beginWithNewObject()
{
}
/////
///// Remove selected object
/////
/////
/////
//public override void OnDelKeyDown(ISurfaceBox drawArea, MouseEventArgs e)
//{
// if (drawArea != null && drawArea.GraphicsList != null && drawArea.GraphicsList.Count > 0)
// {
// for (int i = drawArea.GraphicsList.Count - 1; i >= 0; i--)
// {
// if (drawArea.GraphicsList[i].Selected == true)
// {
// //对数字标记做单独处理
// if (drawArea.GraphicsList[i].drawToolType == DrawToolType.DrawNumberMark)
// {
// DrawNumberMark drawNumberMark = (DrawNumberMark)drawArea.GraphicsList[i];
// List objList = drawArea.GraphicsList.GetDrawToolTypeList(DrawToolType.DrawNumberMark);
// if (objList != null && objList.Count > 0)
// {
// for (int j = 0; j < objList.Count; j++)
// {
// DrawNumberMark modifyNum = (DrawNumberMark)objList[j];
// if (modifyNum.nowNum > drawNumberMark.nowNum)
// {
// modifyNum.nowNum -= 1;
// }
// }
// }
// }
// drawArea.GraphicsList.RemoveObj(drawArea.GraphicsList[i]);
// }
// }
// drawArea.Refresh();
// }
//}
}
}