You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kev/Drawer/Module/GeoSigmaViewer/DrawToolRectangularCSGrid.cs

69 lines
1.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing;
namespace GeoSigmaViewer
{
public class DrawToolRectangularCSGrid : DrawTool
{
private MouseMoveResult mmResult;
private RectangularCSGridDialog dlg = null;
public DrawToolRectangularCSGrid()
{
ToolCursor = DrawCursors.Range;
ItemType = DrawItemType.ITEM_GRID;
mmResult = new MouseMoveResult();
}
public override void Start()
{
drawer.Cursor = DrawCursors.Range;
}
public override void End()
{
drawer.Cursor = DrawCursors.Select;
if (dlg != null)
{
if (dlg.IsAccessible)
dlg.Close();
dlg = null;
}
}
public override void OnLButtonDown(Drawer drawArea, MouseEventArgs e)
{
drawArea.Geo.OnLButtonDown(e.X, e.Y);
//base.OnLButtonDown(drawArea, e);
}
public override void OnMouseMove(Drawer drawArea, MouseEventArgs e)
{
//drawArea.Cursor=ToolCursor;
if (e.Button == MouseButtons.Left)
{
Graphics g = drawArea.CreateGraphics();
drawArea.Geo.ItemMouseMove(g.GetHdc(), e.X, e.Y, ref mmResult);
}
}
public override void OnLButtonUp(Drawer drawArea, MouseEventArgs e)
{
drawArea.Geo.OnLButtonUp(e.X, e.Y);
if (dlg != null)
{
if (dlg.IsAccessible)
dlg.Close();
}
dlg = new RectangularCSGridDialog(ref drawer);
dlg.Show();
}
}
}