29 lines
649 B
GDScript
29 lines
649 B
GDScript
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
|