protected override void Update(GameTime gameTime)
{
base.Update(gameTime);
var mState = XnaMouse.GetState();
// Save the mouse position...
this.Position = mState.Position.ToVector2();
// Update the mouse button states...
this[MouseButton.Left].TrySetState(mState.LeftButton);
this[MouseButton.Middle].TrySetState(mState.MiddleButton);
this[MouseButton.Right].TrySetState(mState.RightButton);
if (this.ScrollWheelValue != mState.ScrollWheelValue)
{ // If the scroll value has been updated...
_oldScrollWheelValue = this.ScrollWheelValue;
this.ScrollWheelValue = mState.ScrollWheelValue;
this.OnScrollWheelValueChanged?.Invoke(
sender: this,
args: new ScrollWheelArgs(
value: this.ScrollWheelValue,
delta: this.ScrollWheelValue - _oldScrollWheelValue));
}
}