tawasuyu

tawasuyu/taffy

A high performance rust-powered UI layout library

Rust 499HTML 245JavaScript 8Markdown 71218 Sutichaykuna

⎇ ebd376fbebd0ba73c79aa00d1835918680ef82a0 benches/generated/grid_repeat_mixed.rs Rust · 38 siq'ikuna · 2.0 KB Ñawpa willay Pi imata llamkarqan ch'uya

Grid: Add support for repeat() with an integer repetition count (#342) ebd376fbe · Nico Burns ·

1pub fn compute() {
2    #[allow(unused_imports)]
3    use taffy::prelude::*;
4    let mut taffy = taffy::Taffy::new();
5    let node0 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
6    let node1 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
7    let node2 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
8    let node3 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
9    let node4 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
10    let node5 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
11    let node6 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
12    let node7 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
13    let node8 = taffy.new_leaf(taffy::style::Style { ..Default::default() }).unwrap();
14    let node = taffy
15        .new_with_children(
16            taffy::style::Style {
17                display: taffy::style::Display::Grid,
18                grid_template_rows: vec![
19                    points(40f32),
20                    repeat(GridTrackRepetition::Count(1u16), vec![points(40f32)]),
21                    repeat(GridTrackRepetition::AutoFill, vec![points(40f32)]),
22                ],
23                grid_template_columns: vec![
24                    points(40f32),
25                    repeat(GridTrackRepetition::Count(1u16), vec![points(40f32)]),
26                    repeat(GridTrackRepetition::AutoFill, vec![points(40f32)]),
27                ],
28                size: taffy::geometry::Size {
29                    width: taffy::style::Dimension::Points(120f32),
30                    height: taffy::style::Dimension::Points(120f32),
31                },
32                ..Default::default()
33            },
34            &[node0, node1, node2, node3, node4, node5, node6, node7, node8],
35        )
36        .unwrap();
37    taffy.compute_layout(node, taffy::geometry::Size::MAX_CONTENT).unwrap();
38}