35 lines
1.1 KiB
Rust
35 lines
1.1 KiB
Rust
use taffy::prelude::*;
|
|
|
|
fn main() -> Result<(), taffy::TaffyError> {
|
|
let mut taffy: TaffyTree<()> = TaffyTree::new();
|
|
|
|
let child = taffy.new_leaf(Style {
|
|
size: Size { width: Dimension::Percent(0.5), height: Dimension::Auto },
|
|
..Default::default()
|
|
})?;
|
|
|
|
let node = taffy.new_with_children(
|
|
Style {
|
|
size: Size { width: Dimension::Length(100.0), height: Dimension::Length(100.0) },
|
|
justify_content: Some(JustifyContent::Center),
|
|
..Default::default()
|
|
},
|
|
&[child],
|
|
)?;
|
|
|
|
println!("Compute layout with 100x100 viewport:");
|
|
taffy.compute_layout(
|
|
node,
|
|
Size { height: AvailableSpace::Definite(100.0), width: AvailableSpace::Definite(100.0) },
|
|
)?;
|
|
println!("node: {:#?}", taffy.layout(node)?);
|
|
println!("child: {:#?}", taffy.layout(child)?);
|
|
|
|
println!("Compute layout with undefined (infinite) viewport:");
|
|
taffy.compute_layout(node, Size::MAX_CONTENT)?;
|
|
println!("node: {:#?}", taffy.layout(node)?);
|
|
println!("child: {:#?}", taffy.layout(child)?);
|
|
|
|
Ok(())
|
|
}
|