using PaintDotNet.Annotation.Enum;
using System.Drawing;
using System.Windows.Forms;
namespace PaintDotNet.Annotation
{
///
/// 所有形状的抽象基类
///
public abstract class Tool
{
///
/// 鼠标按下的虚函数
///
///
///
public static void OnMouseDownOne(ISurfaceBox surfacebox, MouseEventArgs e)
{
if (surfacebox != null && surfacebox.GraphicsList != null
&& surfacebox.GraphicsList.Count>0)
{
surfacebox.SetMouseStatus(true);
}
}
///
/// 鼠标移动的虚函数(左键按下的移动或没有按下按键的移动)
///
///
///
public static void OnMouseMoveOne(ISurfaceBox surfacebox, MouseEventArgs e)
{
if (surfacebox != null && surfacebox.GraphicsList != null
&& surfacebox.GraphicsList.Count > 0 && surfacebox.GraphicsList[0] != null)
{
surfacebox.SetMouseStatus(true);
surfacebox.GraphicsList.OnSelectChanged();
}
}
///
/// 鼠标左键抬起
///
///
///
public static void OnMouseUpOne(ISurfaceBox surfacebox, MouseEventArgs e)
{
if (surfacebox != null && surfacebox.GraphicsList != null
&& surfacebox.GraphicsList.Count > 0 && surfacebox.GraphicsList[0] != null)
{
surfacebox.SetMouseStatus(false);
}
}
///
///
///
///
///
///
protected static Point GetEventPointInArea(ISurfaceBox surfacebox, Point piont)
{
Point p = surfacebox.GetScalePoint(piont);
return p;
/*Point p = surfacebox.GetChaPoint(piont);
Point p = new Point(Math.Abs(drawArea.AutoScrollPosition.X) + e.X, Math.Abs(drawArea.AutoScrollPosition.Y) + e.Y);
string status = "X: " + p.X + ", Y: " + p.Y;
((MainForm)drawArea.Parent).SetStatusStrip(status);
return p;*/
}
}
}