public override GH_ObjectResponse RespondToMouseUp(GH_Canvas sender, GH_CanvasMouseEvent e) { if (e.Button == MouseButtons.Left) { if (_mouseDownElement != null) { var pt = new Point((int)e.CanvasLocation.X, (int)e.CanvasLocation.Y); if (_mouseDownElement.Bounds.Contains(pt)) { _mouseDownElement.InvokeAction(); } _mouseDownElement.OnMouseUp(); _mouseDownElement = null; Owner.OnDisplayExpired(true); return(GH_ObjectResponse.Release); } } return(base.RespondToMouseUp(sender, e)); }
public override GH_ObjectResponse RespondToMouseDown(GH_Canvas sender, GH_CanvasMouseEvent e) { _mouseDownElement = null; var pt = new Point((int)e.CanvasLocation.X, (int)e.CanvasLocation.Y); if (e.Button == MouseButtons.Left) { if (_innerBounds.Contains(pt)) { if (_calcBtn.Bounds.Contains(pt)) { _mouseDownElement = _calcBtn; } else if (_checkBoxPanelBounds.Contains(pt)) { if (_cbStream.Bounds.Contains(pt)) { _mouseDownElement = _cbStream; } else if (_cbSilent.Bounds.Contains(pt)) { _mouseDownElement = _cbSilent; } } else if (_buttonPanelBounds.Contains(pt)) { if (_btnOpenExplorer.Bounds.Contains(pt)) { _mouseDownElement = _btnOpenExplorer; } if (_btnTeddy.Bounds.Contains(pt)) { _mouseDownElement = _btnTeddy; } else if (_btnAnimator.Bounds.Contains(pt)) { _mouseDownElement = _btnAnimator; } else if (_btnGraphic.Bounds.Contains(pt)) { _mouseDownElement = _btnGraphic; } else if (_btnResult.Bounds.Contains(pt)) { _mouseDownElement = _btnResult; } else if (_btnReport.Bounds.Contains(pt)) { _mouseDownElement = _btnReport; } } } } if (_mouseDownElement != null) { _mouseDownElement.OnMouseDown(); Owner.OnDisplayExpired(true); return(GH_ObjectResponse.Capture); } else { return(base.RespondToMouseDown(sender, e)); } }