Skip to main content

Mouse

Struct Mouse 

Source
pub struct Mouse {
    pub x: u16,
    pub y: u16,
    pub button: MouseButton,
    pub modifiers: KeyModifiers,
}
Expand description

Mouse-event payload with position, button, and modifier state.

Coordinates are zero-based; (0, 0) is the upper-left corner of the terminal. In normal mouse modes, x and y are cell coordinates. When the application has enabled SGR-Pixel encoding (DEC mode 1016), the same fields contain pixel offsets instead; call mouse_pixel_to_cell if cell coordinates are needed.

Fields§

§x: u16

Horizontal coordinate.

Interpreted as a column in normal mouse modes and a pixel offset in SGR-Pixel mode.

§y: u16

Vertical coordinate.

Interpreted as a row in normal mouse modes and a pixel offset in SGR-Pixel mode.

§button: MouseButton

Button, wheel direction, or no-button marker associated with the event.

§modifiers: KeyModifiers

Keyboard modifiers that were active when the mouse event was reported.

Implementations§

Source§

impl Mouse

Source

pub fn new(x: u16, y: u16, button: MouseButton, modifiers: KeyModifiers) -> Self

Construct a mouse payload from decoded coordinates, button, and modifiers.

The constructor stores its arguments unchanged. Pass zero-based cell coordinates for ordinary mouse modes, or zero-based pixel offsets for SGR-Pixel mode. It never allocates or panics.

Trait Implementations§

Source§

impl Clone for Mouse

Source§

fn clone(&self) -> Mouse

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Mouse

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for Mouse

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for Mouse

Source§

fn eq(&self, other: &Mouse) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Mouse

Source§

impl Eq for Mouse

Source§

impl StructuralPartialEq for Mouse

Auto Trait Implementations§

§

impl Freeze for Mouse

§

impl RefUnwindSafe for Mouse

§

impl Send for Mouse

§

impl Sync for Mouse

§

impl Unpin for Mouse

§

impl UnsafeUnpin for Mouse

§

impl UnwindSafe for Mouse

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> ErasedDestructor for T
where T: 'static,