[−][src]Trait iced_native::overlay::Overlay
An interactive component that can be displayed on top of other widgets.
Required methods
fn layout(&self, renderer: &Renderer, bounds: Size, position: Point) -> Node
Returns the layout Node of the Overlay.
This Node is used by the runtime to compute the Layout of the
user interface.
fn draw(
&self,
renderer: &mut Renderer,
defaults: &Renderer::Defaults,
layout: Layout<'_>,
cursor_position: Point
) -> Renderer::Output
&self,
renderer: &mut Renderer,
defaults: &Renderer::Defaults,
layout: Layout<'_>,
cursor_position: Point
) -> Renderer::Output
Draws the Overlay using the associated Renderer.
fn hash_layout(&self, state: &mut Hasher, position: Point)
Computes the layout hash of the Overlay.
The produced hash is used by the runtime to decide if the Layout
needs to be recomputed between frames. Therefore, to ensure maximum
efficiency, the hash should only be affected by the properties of the
Overlay that can affect layouting.
For example, the Text widget does not hash its color property, as
its value cannot affect the overall Layout of the user interface.
Provided methods
fn on_event(
&mut self,
_event: Event,
_layout: Layout<'_>,
_cursor_position: Point,
_messages: &mut Vec<Message>,
_renderer: &Renderer,
_clipboard: Option<&dyn Clipboard>
)
&mut self,
_event: Event,
_layout: Layout<'_>,
_cursor_position: Point,
_messages: &mut Vec<Message>,
_renderer: &Renderer,
_clipboard: Option<&dyn Clipboard>
)
Processes a runtime Event.
It receives:
- an
Eventdescribing user interaction - the computed
Layoutof theOverlay - the current cursor position
- a mutable
Messagelist, allowing theOverlayto produce new messages based on user interaction. - the
Renderer - a
Clipboard, if available
By default, it does nothing.