pub enum Binding {
Key(KeyChord),
Physical(PhysicalKey),
Mouse(PointerButton),
Pad(GamepadButton),
Axis {
axis: GamepadAxis,
threshold: f32,
},
}Expand description
One physical source that can drive an action: keyboard, pad, or axis. Several bindings can point at the same action.
Variants§
Key(KeyChord)
Keyboard chord (key + modifiers), same shape as repose shortcuts. Logical meaning: shortcuts, text entry, glyph-bound actions.
Physical(PhysicalKey)
Physical key position, layout-independent. Movement and other
position-bound actions: PhysicalKey::KeyW is the US W position
(AZERTY Z), so non-US layouts move the same.
Mouse(PointerButton)
Mouse button press.
Pad(GamepadButton)
Gamepad button press.
Axis
Active while value >= threshold for positive threshold,
value <= threshold for negative; -0.5 on LeftStickX is left past half.
Implementations§
Source§impl Binding
impl Binding
pub fn from_entry(entry: &KeymapEntry) -> Option<Self>
Sourcepub fn axis_active(threshold: f32, value: f32) -> bool
pub fn axis_active(threshold: f32, value: f32) -> bool
True while the latest axis value holds past the threshold. Zero threshold means any non-zero deflection; rest at 0.0 reads inactive.
Trait Implementations§
impl Eq for Binding
Auto Trait Implementations§
impl Freeze for Binding
impl RefUnwindSafe for Binding
impl Send for Binding
impl Sync for Binding
impl Unpin for Binding
impl UnsafeUnpin for Binding
impl UnwindSafe for Binding
Blanket Implementations§
impl<T> ActionLike for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ConditionalSend for Twhere
T: Send,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.