ui

Macro ui 

Source
ui!() { /* proc-macro */ }
Expand description

A declarative markup macro for building GPUI UIs.

§Syntax

§Basic Elements

ui! { <div/> }                    // -> div()
ui! { <div flex/> }               // -> div().flex()
ui! { <div w={px(200.0)}/> }      // -> div().w(px(200.0))

§Children

// Single child uses .child()
ui! {
    <div>
        {"Hello"}
    </div>
}
// -> div().child("Hello")

// Multiple children use .children([...])
ui! {
    <div>
        {"First"}
        {"Second"}
    </div>
}
// -> div().children(["First", "Second"])

§Components

ui! { <Header/> }                 // -> Header::new()
ui! { <{NavItem::new(path)}/> }   // -> NavItem::new(path)

§Expression Tags

// Self-closing expression tag
ui! { <{Container::new(title)}/> }

// Expression tag with attributes and children
ui! {
    <{Container::new(title)} flex>
        {"Content"}
    </{}>
}