Struct wayland_server::EventLoop [] [src]

pub struct EventLoop { /* fields omitted */ }

Methods

impl EventLoop
[src]

Dispatch pending requests to their respective handlers

If no request is pending, will block at most timeout ms if specified, or indefinitely if timeout is None.

Returns the number of requests dispatched or an error.

Runs the event loop

This method will call repetitively the dispatch method, until one of the handlers call the stop_loop method on the EventLoopHandle.

If this event loop is attached to a display, it will also flush the events to the clients between two calls to dispatch().

Register a global object to the display.

Specify the version of the interface to advertize, as well as the handler that will receive requests to create an object.

The handler must implement the appropriate GlobalHandler<R> trait.

Panics:

  • if the event loop is not associated to a display
  • if the provided H type does not match the actual type of the handler

Get an handle to the internal state

The returned guard object allows you to get references to the handler objects you previously inserted in this event loop.

Methods from Deref<Target=EventLoopHandle>

Register a resource to a handler of this event loop.

The H type must be provided and match the type of the targetted Handler, or it will panic.

This overwrites any precedently set Handler for this resource and removes its destructor if any.

Register a resource to a handler of this event loop with a destructor

The H type must be provided and match the type of the targetted Handler, or it will panic.

The D type is the one whose Destroy<R> impl will be used as destructor.

This overwrites any precedently set Handler and destructor for this resource.

Checks if a resource is registered with a given handler

The H type must be provided and match the type of the targetted Handler, or it will panic.

Insert a new handler to this EventLoop

Returns the index of this handler in the internal array, needed register proxies to it.

Insert a new handler with init

Allows you to insert handlers that require some interaction with the event loop in their initialization, like registering some objects to it.

The handler must implement the Init trait, and its init method will be called after its insertion.

Stop looping

If the event loop this handle belongs to is currently running its run() method, it'll stop and return as soon as the current dispatching session ends.

Trait Implementations

impl Send for EventLoop
[src]

impl Deref for EventLoop
[src]

The resulting type after dereferencing

The method called to dereference a value

impl DerefMut for EventLoop
[src]

The method called to mutably dereference a value