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"}
</{}>
}