pub struct ButtonController {
pub mouse_cursor_inside: bool,
pub was_inside: bool,
pub pressed: bool,
pub pressed_instant: Option<Instant>,
pub events: Vec<ButtonEvent>,
}
Expand description
Stores state and events of a button.
Fields§
§mouse_cursor_inside: bool
Whether mouse cursor is inside button.
was_inside: bool
Whether mouse cursor was inside.
pressed: bool
Whether button is pressed.
pressed_instant: Option<Instant>
When button was pressed.
events: Vec<ButtonEvent>
Stores button events.
Implementations§
Source§impl ButtonController
impl ButtonController
Sourcepub fn new() -> ButtonController
pub fn new() -> ButtonController
Creates a new button controller.
Sourcepub fn event<E: GenericEvent>(
&mut self,
layout: Rectangle,
transform: Matrix2d,
e: &E,
)
pub fn event<E: GenericEvent>( &mut self, layout: Rectangle, transform: Matrix2d, e: &E, )
Handles event.
Sourcepub fn touch_event<E: GenericEvent, S: Into<[u32; 2]>>(
&mut self,
layout: Rectangle,
transform: Matrix2d,
window_size: S,
e: &E,
)
pub fn touch_event<E: GenericEvent, S: Into<[u32; 2]>>( &mut self, layout: Rectangle, transform: Matrix2d, window_size: S, e: &E, )
Handle touch events.
Sourcepub fn appear_pressed(&self, pressed_duration_secs: f64) -> bool
pub fn appear_pressed(&self, pressed_duration_secs: f64) -> bool
Returns true
if keep pressed appearance for some duration to give user feedback.
Sourcepub fn state(&self, pressed_duration_secs: f64) -> ButtonState
pub fn state(&self, pressed_duration_secs: f64) -> ButtonState
Returns the visual button state.
Auto Trait Implementations§
impl Freeze for ButtonController
impl RefUnwindSafe for ButtonController
impl Send for ButtonController
impl Sync for ButtonController
impl Unpin for ButtonController
impl UnwindSafe for ButtonController
Blanket Implementations§
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