77 lines
2.8 KiB
C#
77 lines
2.8 KiB
C#
|
using System.Numerics;
|
||
|
|
||
|
namespace Dashboard.Events
|
||
|
{
|
||
|
public enum UiEventType
|
||
|
{
|
||
|
None,
|
||
|
AnimationTick, // Generic timer event.
|
||
|
|
||
|
// Text input related events.
|
||
|
KeyDown, // Keyboard key down.
|
||
|
KeyUp, // Keyboard key up.
|
||
|
TextInput, // Non-IME text event.
|
||
|
TextEdit, // IME text event.
|
||
|
TextCandidates, // IME text candidate list.
|
||
|
TextLanguage, // Keyboard language changed event.
|
||
|
|
||
|
// Mouse & touch related events
|
||
|
MouseButtonDown, // Mouse button down.
|
||
|
MouseButtonUp, // Mouse button up.
|
||
|
MouseMove, // Mouse moved.
|
||
|
MouseScroll, // Mouse scrolled.
|
||
|
|
||
|
// Reserved event names
|
||
|
StylusEnter, // The stylus has entered the hover region.
|
||
|
StylusLeave, // The stylus has left the hover region.
|
||
|
StylusMove, // The stylus has moved.
|
||
|
StylusDown, // The stylus is touching.
|
||
|
StylusUp, // The stylus is no longer touching.
|
||
|
StylusButtonUp, // Stylus button up.
|
||
|
StylusButtonDown, // Stylus button down.
|
||
|
StylusAxes, // Extra stylus axes data.
|
||
|
|
||
|
// Window & Control Events
|
||
|
ControlInvalidateVisual, // Force rendering the control again.
|
||
|
ControlStateChanged, // Control state changed.
|
||
|
ControlMoved, // Control moved.
|
||
|
ControlResized, // Control resized.
|
||
|
ControlEnter, // The pointing device entered the control.
|
||
|
ControlLeave, // The pointing device left the control.
|
||
|
ControlFocusGet, // The control acquired focus.
|
||
|
ControlFocusLost, // The control lost focus.
|
||
|
WindowClose, // The window closed.
|
||
|
|
||
|
UserRangeStart = 1 << 12,
|
||
|
}
|
||
|
|
||
|
public class UiEventArgs : EventArgs
|
||
|
{
|
||
|
public UiEventType Type { get; }
|
||
|
|
||
|
public UiEventArgs(UiEventType type)
|
||
|
{
|
||
|
Type = type;
|
||
|
}
|
||
|
|
||
|
public static readonly UiEventArgs None = new UiEventArgs(UiEventType.None);
|
||
|
}
|
||
|
|
||
|
public class ControlMovedEventArgs : UiEventArgs
|
||
|
{
|
||
|
public Vector2 OldPosition { get; }
|
||
|
public Vector2 NewPosition { get; }
|
||
|
|
||
|
public ControlMovedEventArgs(Vector2 oldPosition, Vector2 newPosition) : base(UiEventType.ControlMoved)
|
||
|
{
|
||
|
OldPosition = oldPosition;
|
||
|
NewPosition = newPosition;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public class ControlResizedEventArgs
|
||
|
{
|
||
|
|
||
|
}
|
||
|
}
|