util.rs

 1use windows::Win32::Foundation::{LPARAM, WPARAM};
 2
 3pub(crate) trait HiLoWord {
 4    fn hiword(&self) -> u16;
 5    fn loword(&self) -> u16;
 6}
 7
 8impl HiLoWord for WPARAM {
 9    fn hiword(&self) -> u16 {
10        ((self.0 >> 16) & 0xFFFF) as u16
11    }
12
13    fn loword(&self) -> u16 {
14        (self.0 & 0xFFFF) as u16
15    }
16}
17
18impl HiLoWord for LPARAM {
19    fn hiword(&self) -> u16 {
20        ((self.0 >> 16) & 0xFFFF) as u16
21    }
22
23    fn loword(&self) -> u16 {
24        (self.0 & 0xFFFF) as u16
25    }
26}