Add bitmasks to Modifier enum
This commit is contained in:
@ -3,16 +3,23 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::keys::Key;
|
||||
|
||||
#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
#[repr(u8)]
|
||||
#[derive(Clone, Copy, Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
pub enum Modifier {
|
||||
LShift,
|
||||
LCtrl,
|
||||
LAlt,
|
||||
LMod,
|
||||
RShift,
|
||||
RCtrl,
|
||||
RAlt,
|
||||
RMod,
|
||||
LCtrl = 0x01,
|
||||
LShift = 0x02,
|
||||
LAlt = 0x04,
|
||||
LMod = 0x08,
|
||||
RCtrl = 0x10,
|
||||
RShift = 0x20,
|
||||
RAlt = 0x40,
|
||||
RMod = 0x80,
|
||||
}
|
||||
|
||||
impl From<Modifier> for u8 {
|
||||
fn from(modifier: Modifier) -> Self {
|
||||
modifier as u8
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, PartialEq, Eq, Serialize, Deserialize)]
|
||||
|
||||
Reference in New Issue
Block a user