private void drawingBoard_MouseMove(object sender, MouseEventArgs e) { if (IsInRange(e.Location)) { switch (Utils.Registry.MouseStatus) { case Utils.Registry.MouseCondition.ZeroStart: case Utils.Registry.MouseCondition.ZeroEnd: case Utils.Registry.MouseCondition.OneStart: case Utils.Registry.MouseCondition.OneEnd: StateHovered?.Invoke(this, e); _ishovered = true; break; default: break; } if (!_ishovered) { StateHovered?.Invoke(this, e); _ishovered = true; } } else { if (_ishovered) { StateLeaveHovered?.Invoke(this, e); _ishovered = false; } } }
private void drawingBoard_MouseClicked(object sender, MouseEventArgs e) { if (!IsInRange(e.Location)) { return; } if (e.Button == MouseButtons.Left) { StateClicked?.Invoke(this, e); switch (Utils.Registry.MouseStatus) { case Utils.Registry.MouseCondition.DeleteState: StateDeleted?.Invoke(this, e); break; case Utils.Registry.MouseCondition.StartState: StateSetStart?.Invoke(this, e); break; case Utils.Registry.MouseCondition.Accept: StateSetAccept?.Invoke(this, e); break; case Utils.Registry.MouseCondition.ZeroStart: StateZeroStart?.Invoke(this, e); break; case Utils.Registry.MouseCondition.ZeroEnd: StateZeroEnd?.Invoke(this, e); break; case Utils.Registry.MouseCondition.OneStart: StateOneStart?.Invoke(this, e); break; case Utils.Registry.MouseCondition.OneEnd: StateOneEnd?.Invoke(this, e); break; default: break; } } }
public void RePaint() { OnRepaint?.Invoke(this, new MouseEventArgs(MouseButtons.Right, 1, 1, 1, 1)); }