Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
bevyengine
GitHub Repository: bevyengine/bevy
Path: blob/main/examples/input/mouse_input_events.rs
6595 views
1
//! Prints all mouse events to the console.
2
3
use bevy::{
4
input::{
5
gestures::*,
6
mouse::{MouseButtonInput, MouseMotion, MouseWheel},
7
},
8
prelude::*,
9
};
10
11
fn main() {
12
App::new()
13
.add_plugins(DefaultPlugins)
14
.add_systems(Update, print_mouse_events_system)
15
.run();
16
}
17
18
/// This system prints out all mouse events as they come in
19
fn print_mouse_events_system(
20
mut mouse_button_input_events: EventReader<MouseButtonInput>,
21
mut mouse_motion_events: EventReader<MouseMotion>,
22
mut cursor_moved_events: EventReader<CursorMoved>,
23
mut mouse_wheel_events: EventReader<MouseWheel>,
24
mut pinch_gesture_events: EventReader<PinchGesture>,
25
mut rotation_gesture_events: EventReader<RotationGesture>,
26
mut double_tap_gesture_events: EventReader<DoubleTapGesture>,
27
) {
28
for event in mouse_button_input_events.read() {
29
info!("{:?}", event);
30
}
31
32
for event in mouse_motion_events.read() {
33
info!("{:?}", event);
34
}
35
36
for event in cursor_moved_events.read() {
37
info!("{:?}", event);
38
}
39
40
for event in mouse_wheel_events.read() {
41
info!("{:?}", event);
42
}
43
44
// This event will only fire on macOS
45
for event in pinch_gesture_events.read() {
46
info!("{:?}", event);
47
}
48
49
// This event will only fire on macOS
50
for event in rotation_gesture_events.read() {
51
info!("{:?}", event);
52
}
53
54
// This event will only fire on macOS
55
for event in double_tap_gesture_events.read() {
56
info!("{:?}", event);
57
}
58
}
59
60