Trait IntoNode

Source
pub trait IntoNode<'a, Message: 'a>: 'a + Sized {
    // Required method
    fn into_node(self) -> Node<'a, Message>;

    // Provided methods
    fn class(self, class: &'a str) -> Node<'a, Message> { ... }
    fn key<K: Hash>(self, key: K) -> Node<'a, Message> { ... }
}
Expand description

Convert widget to a Node. All widgets should implement this trait. It is also implemented by Node itself, which simply returns self.

Required Methods§

Source

fn into_node(self) -> Node<'a, Message>

Perform the conversion.

Provided Methods§

Source

fn class(self, class: &'a str) -> Node<'a, Message>

Convenience function that converts to a node and then adds a style class to the resulting Node.

Source

fn key<K: Hash>(self, key: K) -> Node<'a, Message>

Convenience function that converts to a node and then sets a custom id to the resulting Node.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'a, Message: 'a> IntoNode<'a, Message> for Node<'a, Message>

Source§

impl<'a, T, F, S> IntoNode<'a, T> for Input<'a, T, F, S>
where T: 'a + Send, F: 'a + Send + Fn(String) -> T, S: 'a + Send + AsRef<str>,

Source§

impl<'a, T: 'a + Send> IntoNode<'a, T> for Button<'a, T>

Source§

impl<'a, T: 'a + Send> IntoNode<'a, T> for Column<'a, T>

Source§

impl<'a, T: 'a + Send> IntoNode<'a, T> for Layers<'a, T>

Source§

impl<'a, T: 'a + Send, F: 'a + Send + Fn(bool) -> T> IntoNode<'a, T> for Toggle<T, F>

Source§

impl<'a, T: 'a + Send, F: 'a + Send + Fn(usize) -> T> IntoNode<'a, T> for Dropdown<'a, T, F>

Source§

impl<'a, T: 'a + Send, S: 'a + Send + AsRef<[MenuItem<'a, T>]> + AsMut<[MenuItem<'a, T>]>> IntoNode<'a, T> for Menu<'a, T, S>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Dummy

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Frame<'a, T>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Image<'a>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Panel<'a, T>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Progress<'a, T>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Row<'a, T>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Scroll<'a, T>

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Spacer

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Text

Source§

impl<'a, T: 'a> IntoNode<'a, T> for Window<'a, T>

Source§

impl<'a, T: 'a, F: 'a + Send + Fn(f32) -> T> IntoNode<'a, T> for Slider<'a, T, F>

Source§

impl<'a, T: 'a, S: 'a + Into<String>> IntoNode<'a, T> for S

Source§

impl<'a, T: DragDropId + Send + Sync, Message: 'a> IntoNode<'a, Message> for Drag<'a, T, Message>

Source§

impl<'a, T: DragDropId + Send + Sync, Message: 'a, OnAccept, OnDrop> IntoNode<'a, Message> for Drop<'a, T, Message, OnAccept, OnDrop>
where OnAccept: Send + Fn(T) -> bool + 'a, OnDrop: Send + Fn(T, (f32, f32)) -> Message + 'a,