Layout containers manage child buffer placement automatically through flex-like stacks (`Row`, `Column`), resizable splitters (`SplitPane`), and multi-track grids (`Grid`).
| Method | Description |
|---|
| objects.tuix_stack_add_object(obj_ptr, scene_name, builder_name, width_mod, height_mod) -> int | Creates and attaches a new child widget into the stack container. |
| objects.tuix_stack_attach_child(obj_ptr, scene_name, child_uid) -> int | Attaches an existing child widget UID to the stack. |
| objects.tuix_stack_set_gap(obj_ptr, gap: int) -> int | Sets cell spacing between adjacent children. |
| objects.tuix_stack_set_padding(obj_ptr, left, top, right, bottom) -> int | Sets inner padding margins. |
| objects.tuix_stack_set_justify(obj_ptr, justify: int) -> int | Sets main-axis justification (`START`, `CENTER`, `END`, `SPACE_BETWEEN`). |
| objects.tuix_stack_set_align(obj_ptr, align: int) -> int | Sets cross-axis alignment (`START`, `CENTER`, `END`, `STRETCH`). |
| Method | Description |
|---|
| objects.tuix_splitpane_set_orientation(obj_ptr, orientation: int) -> int | Sets horizontal (`AXIS_HORIZONTAL`) or vertical (`AXIS_VERTICAL`) split divider orientation. |
| objects.tuix_splitpane_set_split_ratio(obj_ptr, ratio: float) -> int | Sets proportional split ratio (e.g. 0.35 for 35% / 65% split). |
| objects.tuix_splitpane_set_min_sizes(obj_ptr, first_min: int, second_min: int) -> int | Enforces minimum cell dimensions on both panes. |
| Method | Description |
|---|
| objects.tuix_grid_set_columns(obj_ptr, tracks: list[tuple[int, int]]) -> int | Configures column tracks with `GRID_TRACK_FIXED` (cell units) or `GRID_TRACK_WEIGHT` (fr units). |
| objects.tuix_grid_set_rows(obj_ptr, tracks: list[tuple[int, int]]) -> int | Configures row tracks. |
| objects.tuix_grid_set_gaps(obj_ptr, row_gap: int, col_gap: int) -> int | Sets cell spacing between grid tracks. |