ferroui_base/input/raw/
raw_mouse_wheel_event_args.rs1use super::raw_input_event_args::raw_input_event_args;
2use super::{RawPointerEventArgs, RawPointerEventType};
3use crate::input::{IInputDevice, IInputRoot, RawInputModifiers};
4use crate::{Point, Vector};
5use std::rc::Rc;
6
7pub struct RawMouseWheelEventArgs {
9 base: RawPointerEventArgs,
10 delta: Vector,
11}
12
13raw_input_event_args!(RawMouseWheelEventArgs: RawPointerEventArgs);
14
15impl RawMouseWheelEventArgs {
16 pub fn new(
18 device: Rc<dyn IInputDevice>,
19 timestamp: u64,
20 root: Rc<dyn IInputRoot>,
21 position: Point,
22 delta: Vector,
23 input_modifiers: RawInputModifiers,
24 ) -> Self {
25 Self {
26 base: RawPointerEventArgs::new(device, timestamp, root, RawPointerEventType::Wheel, position, input_modifiers),
27 delta,
28 }
29 }
30
31 #[inline]
33 pub fn delta(&self) -> Vector {
34 self.delta
35 }
36}