[go: up one dir, main page]

Enum egui::Event[][src]

pub enum Event {
Show 13 variants Copy, Cut, Text(String), Key { key: Key, pressed: bool, modifiers: Modifiers, }, PointerMoved(Pos2), PointerButton { pos: Pos2, button: PointerButton, pressed: bool, modifiers: Modifiers, }, PointerGone, Scroll(Vec2), Zoom(f32), CompositionStart, CompositionUpdate(String), CompositionEnd(String), Touch { device_id: TouchDeviceId, id: TouchId, phase: TouchPhase, pos: Pos2, force: f32, },
}
Expand description

An input event generated by the integration.

This only covers events that egui cares about.

Variants

Copy

The integration detected a “copy” event (e.g. Cmd+C).

Cut

The integration detected a “cut” event (e.g. Cmd+X).

Text(String)

Tuple Fields

0: String

Text input, e.g. via keyboard or paste action.

When the user presses enter/return, do not send a Text (just Key::Enter).

Key

Fields

key: Key
pressed: bool
modifiers: Modifiers

PointerMoved(Pos2)

Tuple Fields

0: Pos2

PointerButton

Fields

pos: Pos2
button: PointerButton
pressed: bool
modifiers: Modifiers

The state of the modifier keys at the time of the event

PointerGone

The mouse left the screen, or the last/primary touch input disappeared.

This means there is no longer a cursor on the screen for hovering etc.

On touch-up first send PointerButton{pressed: false, …} followed by PointerLeft.

Scroll(Vec2)

Tuple Fields

0: Vec2

How many points (logical pixels) the user scrolled.

Zoom(f32)

Tuple Fields

0: f32

Zoom scale factor this frame (e.g. from ctrl-scroll or pinch gesture).

  • zoom = 1: no change.
  • zoom < 1: pinch together
  • zoom > 1: pinch spread

CompositionStart

IME composition start.

CompositionUpdate(String)

Tuple Fields

0: String

A new IME candidate is being suggested.

CompositionEnd(String)

Tuple Fields

0: String

IME composition ended with this final result.

Touch

Fields

device_id: TouchDeviceId

Hashed device identifier (if available; may be zero). Can be used to separate touches from different devices.

id: TouchId

Unique identifier of a finger/pen. Value is stable from touch down to lift-up

phase: TouchPhase
pos: Pos2

Position of the touch (or where the touch was last detected)

force: f32

Describes how hard the touch device was pressed. May always be 0 if the platform does not support pressure sensitivity. The value is in the range from 0.0 (no pressure) to 1.0 (maximum pressure).

On touch screens, report this in addition to Self::PointerMoved, Self::PointerButton, Self::PointerGone

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.