class_name ColorParam extends ParamField @onready var label: Label = $Label @onready var popup_panel: PopupPanel = $PopupPanel @onready var color_rect: ColorRect = $Button/ColorRect @onready var color_picker: ColorPicker = $PopupPanel/ColorPicker func setup( dict: Dictionary, key: String) -> void: name = key _d = dict _k = key label.text = key.capitalize() color_rect.color = _d[_k] color_picker.color = _d[_k] func _on_button_pressed() -> void: popup_panel.position = get_viewport().get_mouse_position() popup_panel.show() func _on_color_picker_color_changed(color: Color) -> void: color_rect.color = color _d[_k] = color