/// <summary> /// Initializes a new instance of the Graph class. /// </summary> public Graph() { _drawHelper = new GraphDrawingHelper(this); _integralDrawHelper = new IntegralDrawingHelper(this); _resolution = 1; _window = Window.Standard; Calculator = new Calculator(); _zoom = new ZoomMouseAdapter(this); _zoom.Zoom += delegate(object sender, GenericEventArgs<Window> e) { Window = e.Data; RestoreDefaultAdapter(); var handler = WindowChanged; if (handler != null) { handler(this, EventArgs.Empty); } }; _xRange = new XRangeMouseAdapter(this); _xRange.XRangeCreated += delegate(object sender, XRangeCreatedEventArgs e) { RestoreDefaultAdapter(); var handler = XRangeCreated; if (handler != null) { handler(this, e); } }; _dragging = new DraggingMouseAdapter(this); _current = _dragging; // Prevents flickering DoubleBuffered = true; ResizeRedraw = true; }
public void ActivateBoxZoom() { _current.Enabled = false; _current = _zoom; _current.Enabled = true; }
public void ActivateXRangeSelection() { _current.Enabled = false; _current = _xRange; _current.Enabled = true; _displayedPoint = null; Invalidate(); }
private void RestoreDefaultAdapter() { _current.Enabled = false; if (_enableWindowDragging) { _current = _dragging; _current.Enabled = true; } }