protected override void OnMouseUp(MouseEventArgs e)
{
MouseX = e.X;
MouseY = e.Y;
TextPoint pos = Painter.CharFromPixel(e.X, e.Y);
Row row = null;
if (pos.Y >= 0 && pos.Y < Document.Count)
row = Document[pos.Y];
#region RowEvent
var rea = new RowMouseEventArgs {Row = row, Button = e.Button, MouseX = MouseX, MouseY = MouseY};
if (e.X >= View.TextMargin - 7)
{
rea.Area = RowArea.TextArea;
}
else if (e.X < View.GutterMarginWidth)
{
rea.Area = RowArea.GutterArea;
}
else if (e.X < View.LineNumberMarginWidth +
View.GutterMarginWidth)
{
rea.Area = RowArea.LineNumberArea;
}
else if (e.X < View.TextMargin - 7)
{
rea.Area = RowArea.FoldingArea;
}
OnRowMouseUp(rea);
#endregion
if (View.Action == EditAction.None)
{
if (e.X > View.TotalMarginWidth)
{
if (IsOverSelection(e.X, e.Y) && e.Button == MouseButtons.Left)
{
View.Action = EditAction.SelectText;
Caret.SetPos(Painter.CharFromPixel(e.X, e.Y));
Selection.ClearSelection();
Redraw();
}
}
}
View.Action = EditAction.None;
base.OnMouseUp(e);
}