//////////////////////////////////////////////////////////////// // // // Neoforce Controls // // // //////////////////////////////////////////////////////////////// // // // File: EventArgs.cs // // // // Version: 0.7 // // // // Date: 11/09/2010 // // // // Author: Tom Shane // // // //////////////////////////////////////////////////////////////// // // // Copyright (c) by Tom Shane // // // //////////////////////////////////////////////////////////////// #region //// Using ///////////// //////////////////////////////////////////////////////////////////////////// using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Input; //////////////////////////////////////////////////////////////////////////// #endregion namespace TomShane.Neoforce.Controls { #region //// Classes /////////// //////////////////////////////////////////////////////////////////////////// public class EventArgs: System.EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public bool Handled = false; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Consructors /////// //////////////////////////////////////////////////////////////////////////// public EventArgs() { } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class KeyEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public Keys Key = Keys.None; public bool Control = false; public bool Shift = false; public bool Alt = false; public bool Caps = false; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// public KeyEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public KeyEventArgs(Keys key) { Key = key; Control = false; Shift = false; Alt = false; Caps = false; } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public KeyEventArgs(Keys key, bool control, bool shift, bool alt, bool caps) { Key = key; Control = control; Shift = shift; Alt = alt; Caps = caps; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class MouseEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public MouseState State = new MouseState(); public MouseButton Button = MouseButton.None; public Point Position = new Point(0, 0); public Point Difference = new Point(0, 0); /// /// Mouse scroll direction /// public MouseScrollDirection ScrollDirection = MouseScrollDirection.None; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// public MouseEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public MouseEventArgs(MouseState state, MouseButton button, Point position) { State = state; Button = button; Position = position; } //////////////////////////////////////////////////////////////////////////// /// /// Creates a new initialized instace of the MouseEventArgs class. /// Mouse state at the time of the event. /// Mouse button state at the time of the event. /// Mosue cursor position at the time of the event. /// Mouse scroll direction at the time of the event. public MouseEventArgs(MouseState state, MouseButton button, Point position, MouseScrollDirection scrollDirection) : this(state, button, position) { ScrollDirection = scrollDirection; } //////////////////////////////////////////////////////////////////////////// public MouseEventArgs(MouseEventArgs e) : this(e.State, e.Button, e.Position) { Difference = e.Difference; ScrollDirection = e.ScrollDirection; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class GamePadEventArgs : EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public PlayerIndex PlayerIndex = PlayerIndex.One; public GamePadState State = new GamePadState(); public GamePadButton Button = GamePadButton.None; public GamePadVectors Vectors; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// /* public GamePadEventArgs() { }*/ //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public GamePadEventArgs(PlayerIndex playerIndex) { PlayerIndex = playerIndex; } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public GamePadEventArgs(PlayerIndex playerIndex, GamePadButton button) { PlayerIndex = playerIndex; Button = button; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class DrawEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public Renderer Renderer = null; public Rectangle Rectangle = Rectangle.Empty; public GameTime GameTime = null; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// public DrawEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public DrawEventArgs(Renderer renderer, Rectangle rectangle, GameTime gameTime) { Renderer = renderer; Rectangle = rectangle; GameTime = gameTime; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class ResizeEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public int Width = 0; public int Height = 0; public int OldWidth = 0; public int OldHeight = 0; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// public ResizeEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public ResizeEventArgs(int width, int height, int oldWidth, int oldHeight) { Width = width; Height = height; OldWidth = oldWidth; OldHeight = oldHeight; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class MoveEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public int Left = 0; public int Top = 0; public int OldLeft = 0; public int OldTop = 0; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// public MoveEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public MoveEventArgs(int left, int top, int oldLeft, int oldTop) { Left = left; Top = top; OldLeft = oldLeft; OldTop = oldTop; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class DeviceEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public PreparingDeviceSettingsEventArgs DeviceSettings = null; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Constructors ////// //////////////////////////////////////////////////////////////////////////// public DeviceEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public DeviceEventArgs(PreparingDeviceSettingsEventArgs deviceSettings) { DeviceSettings = deviceSettings; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class WindowClosingEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public bool Cancel = false; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Consructors /////// //////////////////////////////////////////////////////////////////////////// public WindowClosingEventArgs() { } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class WindowClosedEventArgs: EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public bool Dispose = false; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Consructors /////// //////////////////////////////////////////////////////////////////////////// public WindowClosedEventArgs() { } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public class ConsoleMessageEventArgs : EventArgs { #region //// Fields //////////// //////////////////////////////////////////////////////////////////////////// public ConsoleMessage Message; //////////////////////////////////////////////////////////////////////////// #endregion #region //// Consructors /////// //////////////////////////////////////////////////////////////////////////// public ConsoleMessageEventArgs() { } //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// public ConsoleMessageEventArgs(ConsoleMessage message) { Message = message; } //////////////////////////////////////////////////////////////////////////// #endregion } //////////////////////////////////////////////////////////////////////////// #endregion }