public static void SetActiveElement(IMouseElement element) { lock (_mouseEventLock) { if (_activeElement == element) { return; } if (_rightMouseDown) { if (_activeElement != null) { _activeElement.OnMouseRightButtonUp(_activeElement, null); } } if (_leftMouseDown) { if (_activeElement != null) { _activeElement.OnMouseLeftButtonUp(_activeElement, null); } } _activeElement = element; } }
/// <summary> /// Called by other controls to let MouseHelpers handle the mouse event instead. /// </summary> /// <param name="element"></param> /// <param name="sender"></param> /// <param name="e"></param> public static void PreprocessLeftMouseButtonDown(IMouseElement element, object sender, MouseButtonEventArgs e) { PopupManager.CloseActivePopup(); lock (_mouseEventLock) { _leftMouseDown = true; if (_activeElement == null || !_activeElement.HasCapture) { element.OnMouseLeftButtonDown(sender, e); return; } _activeElement.OnMouseLeftButtonDown(sender, e); } }
public static void SetActiveElement(IMouseElement element) { lock (_mouseEventLock) { if (_activeElement == element) return; if (_rightMouseDown) { if (_activeElement != null) _activeElement.OnMouseRightButtonUp(_activeElement, null); } if (_leftMouseDown) { if (_activeElement != null) _activeElement.OnMouseLeftButtonUp(_activeElement, null); } _activeElement = element; } }
/// <summary> /// Called by other controls to let MouseHelpers handle the mouse event instead. /// </summary> /// <param name="element"></param> /// <param name="sender"></param> /// <param name="e"></param> public static void PreprocessRightMouseButtonDown(IMouseElement element, object sender, MouseButtonEventArgs e) { PopupManager.CloseActivePopup(); lock (_mouseEventLock) { _rightMouseDown = true; if (_activeElement == null || !_activeElement.HasCapture) { element.OnMouseRightButtonDown(sender,e); return; } _activeElement.OnMouseRightButtonDown(sender,e); } }