protected void MouseMoveHandler(object sender, MouseEventArgs e) { if (_mousePressedOnButton) { var diff = e.GetPosition(this).X - _mouseRefPosition.X; if (!_dragHasModifiedValue && Math.Abs(diff) > SystemParameters.MinimumHorizontalDragDistance) { if (StartManipulationEvent != null) { _mouseRefPosition = e.GetPosition(this); diff = 0; StartManipulationEvent(this, EventArgs.Empty); } _dragHasModifiedValue = true; } if (_dragHasModifiedValue) { if (UpdateManipulationEvent != null) { var offset = (float)(diff * UIHelper.SubScaleFromKeyboardModifiers()); UpdateManipulationEvent(this, new ParameterGroupManipulatedEventArgs(offset)); } } } e.Handled = true; }
public void ParameterRow_UpdateManipulaitonHandler(object sender, ParameterGroupManipulatedEventArgs e) { var factor = (float)(e.Offset / 100.0 * UIHelper.SubScaleFromKeyboardModifiers() + 1); var metaInput = ValueHolder.Parent.GetMetaInput(ValueHolder); var newValue = _keepValueBeforeManipulation * (1 + factor * metaInput.Scale); newValue = Core.Utilities.Clamp(newValue, metaInput.Min, metaInput.Max); _setValueCommand.Value = new Core.Float(newValue); _setValueCommand.Do(); App.Current.UpdateRequiredAfterUserInteraction = true; }
private void MouseWheelHandler(object sender, MouseWheelEventArgs e) { float delta = (e.Delta > 0) ? 0.1f : -0.1f; if (!_textBox.IsVisible && !_manipulating) { StartManipulation(); ManipulateValue(Value + Scale * (float)(delta * UIHelper.SubScaleFromKeyboardModifiers())); EndManipulation(); } e.Handled = true; }
public void UpdateManipulationHandler(object sender, ParameterGroupManipulatedEventArgs e) { var factor = (float)(e.Offset * UIHelper.SubScaleFromKeyboardModifiers() * 0.01); int index = 0; foreach (var opPart in _operatorParts) { var metaInput = opPart.Parent.GetMetaInput(opPart); var newValue = _keepValuesBeforeManipulation[index] * (factor * metaInput.Scale + 1); newValue = Core.Utilities.Clamp(newValue, metaInput.Min, metaInput.Max); UpdateManipulationCommand(_parameterControls[index], newValue); index++; } App.Current.UpdateRequiredAfterUserInteraction = true; _updateValueGroupMacroCommand.Do(); }
protected void MouseMoveHandler(object sender, MouseEventArgs e) { if (m_MousePressedOnButton) { var diff = e.GetPosition(this).X - m_MouseRefPosition.X; if (!m_DragHasModifiedValue && Math.Abs(diff) > SystemParameters.MinimumHorizontalDragDistance) { m_DragHasModifiedValue = true; } if (m_DragHasModifiedValue) { ManipulateValue(m_ValueRefOnDown + (float)(diff * Scale * UIHelper.SubScaleFromKeyboardModifiers())); } } e.Handled = true; }