diff options
Diffstat (limited to 'src/SMAPI/Events/EventArgsMouseStateChanged.cs')
-rw-r--r-- | src/SMAPI/Events/EventArgsMouseStateChanged.cs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/SMAPI/Events/EventArgsMouseStateChanged.cs b/src/SMAPI/Events/EventArgsMouseStateChanged.cs new file mode 100644 index 00000000..57298164 --- /dev/null +++ b/src/SMAPI/Events/EventArgsMouseStateChanged.cs @@ -0,0 +1,42 @@ +using System; +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Input; + +namespace StardewModdingAPI.Events +{ + /// <summary>Event arguments for a <see cref="ControlEvents.MouseChanged"/> event.</summary> + public class EventArgsMouseStateChanged : EventArgs + { + /********* + ** Accessors + *********/ + /// <summary>The previous mouse state.</summary> + public MouseState PriorState { get; } + + /// <summary>The current mouse state.</summary> + public MouseState NewState { get; } + + /// <summary>The previous mouse position on the screen adjusted for the zoom level.</summary> + public Point PriorPosition { get; } + + /// <summary>The current mouse position on the screen adjusted for the zoom level.</summary> + public Point NewPosition { get; } + + + /********* + ** Public methods + *********/ + /// <summary>Construct an instance.</summary> + /// <param name="priorState">The previous mouse state.</param> + /// <param name="newState">The current mouse state.</param> + /// <param name="priorPosition">The previous mouse position on the screen adjusted for the zoom level.</param> + /// <param name="newPosition">The current mouse position on the screen adjusted for the zoom level.</param> + public EventArgsMouseStateChanged(MouseState priorState, MouseState newState, Point priorPosition, Point newPosition) + { + this.PriorState = priorState; + this.NewState = newState; + this.PriorPosition = priorPosition; + this.NewPosition = newPosition; + } + } +} |