Skip to main content

euv_core/event/
enum.rs

1use crate::*;
2
3/// Represents the name of a DOM event.
4///
5/// Covers mouse, keyboard, focus, form, drag, touch, wheel, clipboard, and media events.
6pub enum NativeEventName {
7    /// Mouse click event.
8    Click,
9    /// Mouse double-click event.
10    DblClick,
11    /// Mouse down event.
12    MouseDown,
13    /// Mouse up event.
14    MouseUp,
15    /// Mouse move event.
16    MouseMove,
17    /// Mouse enter event.
18    MouseEnter,
19    /// Mouse leave event.
20    MouseLeave,
21    /// Mouse over event.
22    MouseOver,
23    /// Mouse out event.
24    MouseOut,
25    /// Context menu event.
26    ContextMenu,
27    /// Input value change event.
28    Input,
29    /// Key down event.
30    KeyDown,
31    /// Key up event.
32    KeyUp,
33    /// Key press event.
34    KeyPress,
35    /// Focus event.
36    Focus,
37    /// Blur event.
38    Blur,
39    /// Focus in event.
40    FocusIn,
41    /// Focus out event.
42    FocusOut,
43    /// Form submit event.
44    Submit,
45    /// Change event for select/checkbox/radio.
46    Change,
47    /// Drag event.
48    Drag,
49    /// Drag start event.
50    DragStart,
51    /// Drag end event.
52    DragEnd,
53    /// Drag over event.
54    DragOver,
55    /// Drag enter event.
56    DragEnter,
57    /// Drag leave event.
58    DragLeave,
59    /// Drop event.
60    Drop,
61    /// Touch start event.
62    TouchStart,
63    /// Touch end event.
64    TouchEnd,
65    /// Touch move event.
66    TouchMove,
67    /// Touch cancel event.
68    TouchCancel,
69    /// Wheel/scroll event.
70    Wheel,
71    /// Copy event.
72    Copy,
73    /// Cut event.
74    Cut,
75    /// Paste event.
76    Paste,
77    /// Play media event.
78    Play,
79    /// Pause media event.
80    Pause,
81    /// Media ended event.
82    Ended,
83    /// Media loaded data event.
84    LoadedData,
85    /// Media can play event.
86    CanPlay,
87    /// Volume change event.
88    VolumeChange,
89    /// Time update event.
90    TimeUpdate,
91    /// Hash change event.
92    HashChange,
93    /// Internal euv signal update event.
94    EuvSignalUpdate,
95    /// A custom event with an arbitrary name.
96    Other(String),
97}
98
99/// Represents different kinds of UI events.
100///
101/// Each variant wraps the specific data associated with that event type.
102pub enum NativeEvent {
103    /// A mouse-related event.
104    Mouse(NativeMouseEvent),
105    /// An input change event.
106    Input(NativeInputEvent),
107    /// A keyboard event.
108    Keyboard(NativeKeyboardEvent),
109    /// A focus event.
110    Focus(NativeFocusEvent),
111    /// A form submit event.
112    Submit(NativeSubmitEvent),
113    /// A change event for select/checkbox/radio.
114    Change(NativeChangeEvent),
115    /// A drag and drop event.
116    Drag(NativeDragEvent),
117    /// A touch event.
118    Touch(NativeTouchEvent),
119    /// A wheel/scroll event.
120    Wheel(NativeWheelEvent),
121    /// A clipboard event.
122    Clipboard(NativeClipboardEvent),
123    /// A media event.
124    Media(NativeMediaEvent),
125    /// A generic event with no specific data.
126    Generic,
127}