UI

UiGrid

Grid UI layout.

Places UI children in a grid.

Base node: UiLayout

Source: perro_source/core/perro_ui/src/lib.rs

Fields

columnsh_spacingv_spacing
pub struct UiGrid {    pub base: UiLayout,    pub columns: usize,}

Scene template

[node_instance]tags = ["runtime", "demo"]parent = @rootscript = "res://script.rs"script_vars = { speed = 4.0, health = 100 }   [UiGrid]    columns = 1    h_spacing = 0    v_spacing = 0  [/UiGrid][/node_instance]

Script API

Create

let node_id = create_node!(ctx, UiGrid, "Spawned Node", ["enemy", "runtime"], parent_id);

Access / mutate

let value = with_node!(ctx, UiGrid, node_id, |node| {    node.columns}); let pair = with_node!(ctx, UiGrid, node_id, |node| {    (node.columns, node.h_spacing)}); with_node_mut!(ctx, UiGrid, node_id, |node| {    node.columns = 1;});