pub struct EventLoopBuilder<T: 'static> { /* private fields */ }
Expand description
Object that allows building the event loop.
This is used to make specifying options that affect the whole application easier. But note that constructing multiple event loops is not supported.
Implementations§
Source§impl<T> EventLoopBuilder<T>
impl<T> EventLoopBuilder<T>
Sourcepub fn with_user_event() -> Self
pub fn with_user_event() -> Self
Start building a new event loop, with the given type as the user event type.
Sourcepub fn build(&mut self) -> EventLoop<T>
pub fn build(&mut self) -> EventLoop<T>
Builds a new event loop.
For cross-platform compatibility, the EventLoop
must be created on the main thread.
Attempting to create the event loop on a different thread will panic. This restriction isn’t
strictly necessary on all platforms, but is imposed to eliminate any nasty surprises when
porting to platforms that require it. EventLoopBuilderExt::any_thread
functions are exposed
in the relevant platform
module if the target platform supports creating an event loop on
any thread.
Usage will result in display backend initialisation, this can be controlled on linux
using an environment variable WINIT_UNIX_BACKEND
. Legal values are x11
and wayland
.
If it is not set, winit will try to connect to a wayland connection, and if it fails will
fallback on x11. If this variable is set with any other value, winit will panic.
§Platform-specific
- iOS: Can only be called on the main thread.