Added a dynamic layout system where UI elements can be moved about on a tiled grid.
This commit is contained in:
1 parent
ea6ba54666
commit
26c29df4ad
34 files changed
+1269
No files matched your search
@@ -0,0 +1,27 @@
|
||||
@tool
|
||||
extends ColorRect
|
||||
|
||||
@export var grid_size := Vector2i(32, 18):
|
||||
set(value):
|
||||
grid_size = value
|
||||
if is_node_ready():
|
||||
_update_material()
|
||||
@export var monitor_boundary := 0:
|
||||
set(value):
|
||||
monitor_boundary = value
|
||||
if is_node_ready():
|
||||
_update_material()
|
||||
|
||||
func _ready() -> void:
|
||||
theme_changed.connect(_update_material)
|
||||
_update_material()
|
||||
|
||||
func _gui_input(_event: InputEvent) -> void:
|
||||
accept_event()
|
||||
|
||||
func _update_material() -> void:
|
||||
var shader_material := material as ShaderMaterial
|
||||
shader_material.set_shader_parameter("grid_size", Vector2(grid_size))
|
||||
shader_material.set_shader_parameter("monitor_boundary", float(monitor_boundary))
|
||||
shader_material.set_shader_parameter("line_color", get_theme_color("instrument_grid", "SurfaceSide"))
|
||||
shader_material.set_shader_parameter("boundary_color", get_theme_color("accent", "SurfaceSide"))
|
||||
Reference in new issue
Block a user