winit::event_loop

Trait ActiveEventLoop

source
pub trait ActiveEventLoop: AsAny {
Show 13 methods // Required methods fn create_proxy(&self) -> EventLoopProxy; fn create_window( &self, window_attributes: WindowAttributes, ) -> Result<Box<dyn Window>, RequestError>; fn create_custom_cursor( &self, custom_cursor: CustomCursorSource, ) -> Result<CustomCursor, RequestError>; fn available_monitors(&self) -> Box<dyn Iterator<Item = MonitorHandle>>; fn primary_monitor(&self) -> Option<MonitorHandle>; fn listen_device_events(&self, allowed: DeviceEvents); fn system_theme(&self) -> Option<Theme>; fn set_control_flow(&self, control_flow: ControlFlow); fn control_flow(&self) -> ControlFlow; fn exit(&self); fn exiting(&self) -> bool; fn owned_display_handle(&self) -> OwnedDisplayHandle; fn rwh_06_handle(&self) -> &dyn HasDisplayHandle;
}

Required Methods§

source

fn create_proxy(&self) -> EventLoopProxy

Creates an EventLoopProxy that can be used to dispatch user events to the main event loop, possibly from another thread.

source

fn create_window( &self, window_attributes: WindowAttributes, ) -> Result<Box<dyn Window>, RequestError>

Create the window.

Possible causes of error include denied permission, incompatible system, and lack of memory.

§Platform-specific
  • Web: The window is created but not inserted into the Web page automatically. Please see the Web platform module for more information.
source

fn create_custom_cursor( &self, custom_cursor: CustomCursorSource, ) -> Result<CustomCursor, RequestError>

Create custom cursor.

§Platform-specific

iOS / Android / Orbital: Unsupported.

source

fn available_monitors(&self) -> Box<dyn Iterator<Item = MonitorHandle>>

Returns the list of all the monitors available on the system.

§Platform-specific

Web: Only returns the current monitor without detailed monitor permissions.

source

fn primary_monitor(&self) -> Option<MonitorHandle>

Returns the primary monitor of the system.

Returns None if it can’t identify any monitor as a primary one.

§Platform-specific
  • Wayland: Always returns None.
  • Web: Always returns None without detailed monitor permissions.
source

fn listen_device_events(&self, allowed: DeviceEvents)

Change if or when DeviceEvents are captured.

Since the DeviceEvent capture can lead to high CPU usage for unfocused windows, winit will ignore them by default for unfocused windows on Linux/BSD. This method allows changing this at runtime to explicitly capture them again.

§Platform-specific
  • Wayland / macOS / iOS / Android / Orbital: Unsupported.
source

fn system_theme(&self) -> Option<Theme>

Returns the current system theme.

Returns None if it cannot be determined on the current platform.

§Platform-specific
  • iOS / Android / Wayland / x11 / Orbital: Unsupported.
source

fn set_control_flow(&self, control_flow: ControlFlow)

Sets the ControlFlow.

source

fn control_flow(&self) -> ControlFlow

Gets the current ControlFlow.

source

fn exit(&self)

This exits the event loop.

See exiting.

source

fn exiting(&self) -> bool

Returns if the EventLoop is about to stop.

See exit().

source

fn owned_display_handle(&self) -> OwnedDisplayHandle

Gets a persistent reference to the underlying platform display.

See the OwnedDisplayHandle type for more information.

source

fn rwh_06_handle(&self) -> &dyn HasDisplayHandle

Get the raw-window-handle handle.

Trait Implementations§

source§

impl ActiveEventLoopExtWayland for dyn ActiveEventLoop + '_

source§

fn is_wayland(&self) -> bool

True if the ActiveEventLoop uses Wayland.
source§

impl ActiveEventLoopExtX11 for dyn ActiveEventLoop + '_

source§

fn is_x11(&self) -> bool

True if the ActiveEventLoop uses X11.
source§

impl EventLoopExtStartupNotify for dyn ActiveEventLoop + '_

source§

fn read_token_from_env(&self) -> Option<ActivationToken>

Read the token from the environment. Read more
source§

impl HasDisplayHandle for dyn ActiveEventLoop + '_

source§

fn display_handle(&self) -> Result<DisplayHandle<'_>, HandleError>

Get a handle to the display controller of the windowing system.

Implementors§