classicube_helpers\events/
pointer.rs

1use std::os::raw::{c_float, c_int};
2
3use crate::make_event_handler;
4
5make_event_handler!(
6    /// Pointer position changed (Arg is delta from last position)
7    Pointer,
8    Moved,
9    Int,
10    (
11        {
12            name: idx,
13            rust_type: c_int,
14            c_type: c_int,
15            to_rust: |a| a,
16        },
17    )
18);
19
20make_event_handler!(
21    /// Left mouse or touch is pressed (Arg is index)
22    Pointer,
23    Down,
24    Int,
25    (
26        {
27            name: idx,
28            rust_type: c_int,
29            c_type: c_int,
30            to_rust: |a| a,
31        },
32    )
33);
34
35make_event_handler!(
36    /// Left mouse or touch is released (Arg is index)
37    Pointer,
38    Up,
39    Int,
40    (
41        {
42            name: idx,
43            rust_type: c_int,
44            c_type: c_int,
45            to_rust: |a| a,
46        },
47    )
48);
49
50make_event_handler!(
51    /// Raw pointer position changed (Arg is delta)
52    Pointer,
53    RawMoved,
54    RawMove,
55    (
56        {
57            name: x_delta,
58            rust_type: c_float,
59            c_type: c_float,
60            to_rust: |a| a,
61        },
62        {
63            name: y_delta,
64            rust_type: c_float,
65            c_type: c_float,
66            to_rust: |a| a,
67        },
68    )
69);