public void Draw(IEditableFrame Editor, Func <Point, Point> PointTransform = null) { if (!_settings.DisplayScroll) { return; } if (_lastArgs is { } args) { var p = args.Location; var r = _settings.Radius; var d = 2 * r; Editor.FillEllipse(_settings.ScrollCircleColor, new RectangleF(p.X - r, p.Y - r, d, d)); var above = new Point(p.X, p.Y + r / 2); var below = new Point(p.X, p.Y - r / 2); // Scroll down if (args.Delta < 0) { (above, below) = (below, above); } Editor.DrawArrow(above, below, _settings.ScrollArrowColor, r / 4f); _lastArgs = null; } }
public override void Draw(IEditableFrame Editor, Func <Point, Point> PointTransform) { var start = StartPoint; var end = EndPoint; if (PointTransform != null) { start = PointTransform(start); end = PointTransform(end); } Editor.DrawArrow(start, end, _settings.Color, _settings.Radius); base.Draw(Editor, PointTransform); }
public override void Draw(IEditableFrame Editor, Func <Point, Point> PointTransform) { var p = Args.Location; var r = _settings.Radius; var d = 2 * r; Editor.FillEllipse(_settings.Color, new RectangleF(p.X - r, p.Y - r, d, d)); var above = new Point(p.X, p.Y + r / 2); var below = new Point(p.X, p.Y - r / 2); if (Args.Delta < 0) { (above, below) = (below, above); } Editor.DrawArrow(above, below, _settings.BorderColor, r / 4f); base.Draw(Editor, PointTransform); }