protected override void OnMouseDown(MouseEventArgs e) { //clear _isMouseDown = true; var selectedFactory = cmbPixelTools.SelectedItem as PixelToolControllerFactory; if (selectedFactory == null) { return; } //-------------------------------------------------- //create new tools _currentTool = selectedFactory.CreateNewTool(); _currentTool.SetPreviousPixelControllerObjects(pixelToolControllers); if (_currentTool.IsDrawingTool) { pixelToolControllers.Add(_currentTool); } //test //switch to high speed _g.SmoothingMode = SmoothingMode.HighSpeed; _currentTool.InvokeMouseDown(e.X, e.Y); UpdateOutput(_g); base.OnMouseDown(e); }
protected override void OnMouseUp(MouseEventArgs e) { if (_currentTool != null) { _currentTool.InvokeMouseUp(e.X, e.Y); _currentTool = null; } //test //switch back to anti alias _g.SmoothingMode = SmoothingMode.AntiAlias; UpdateOutput(_g); base.OnMouseUp(e); _isMouseDown = false; }