Added a dynamic layout system where UI elements can be moved about on a tiled grid.

This commit is contained in:
RedNicStone committed 2026-11-09 18:14:52 +01:00
1 parent ea6ba54666
commit 26c29df4ad
34 files changed
+1269

No files matched your search

+66
View File
@@ -0,0 +1,66 @@
[gd_scene format=3]
[ext_resource type="Script" path="res://scripts/layout_library.gd" id="1"]
[node name="LayoutLibrary" type="PanelContainer"]
visible = false
z_index = 300
layout_mode = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -424.0
offset_top = 80.0
offset_right = -24.0
offset_bottom = 720.0
theme_type_variation = &"VehicleBackground"
script = ExtResource("1")
[node name="Margin" type="MarginContainer" parent="."]
layout_mode = 2
theme_override_constants/margin_left = 16
theme_override_constants/margin_right = 16
theme_override_constants/margin_top = 12
theme_override_constants/margin_bottom = 12
[node name="Body" type="VBoxContainer" parent="Margin"]
layout_mode = 2
theme_override_constants/separation = 12
[node name="Header" type="HBoxContainer" parent="Margin/Body"]
layout_mode = 2
[node name="Title" type="Label" parent="Margin/Body/Header"]
layout_mode = 2
size_flags_horizontal = 3
text = "ELEMENT LIBRARY"
theme_override_font_sizes/font_size = 20
[node name="Close" type="Button" parent="Margin/Body/Header"]
layout_mode = 2
text = "×"
tooltip_text = "Close library"
[node name="List" type="ItemList" parent="Margin/Body"]
custom_minimum_size = Vector2(0, 180)
layout_mode = 2
size_flags_vertical = 3
theme_type_variation = &"LayoutLibraryList"
same_column_width = true
fixed_icon_size = Vector2i(24, 24)
[node name="Description" type="Label" parent="Margin/Body"]
custom_minimum_size = Vector2(0, 78)
layout_mode = 2
autowrap_mode = 3
[node name="Size" type="Label" parent="Margin/Body"]
layout_mode = 2
[node name="Status" type="Label" parent="Margin/Body"]
layout_mode = 2
autowrap_mode = 3
[node name="Add" type="Button" parent="Margin/Body"]
layout_mode = 2
text = "Add element"
tooltip_text = "Place in the first available space, using the minimum size if needed"