[gd_scene load_steps=13 format=3 uid="uid://wplk62pbgih4"]

[ext_resource type="Texture2D" uid="uid://biyn51upnlxle" path="res://assets/graphics/palette/edit.png" id="2"]
[ext_resource type="Texture2D" uid="uid://d1urikaf1lxwl" path="res://assets/graphics/timeline/new_frame.png" id="2_j1lig"]
[ext_resource type="Texture2D" uid="uid://b7ydn1tt37rcl" path="res://assets/graphics/palette/add.png" id="3"]
[ext_resource type="Texture2D" uid="uid://bt72662c3gp2f" path="res://assets/graphics/timeline/remove_frame.png" id="3_0e27e"]
[ext_resource type="Texture2D" uid="uid://db4i3w3yencxg" path="res://assets/graphics/palette/sort.png" id="4_hcsuy"]
[ext_resource type="Script" path="res://src/Palette/PaletteGrid.gd" id="5"]
[ext_resource type="Script" path="res://src/Palette/PaletteScroll.gd" id="6"]
[ext_resource type="Script" path="res://src/Palette/PalettePanel.gd" id="8"]

[sub_resource type="InputEventAction" id="InputEventAction_4n3yg"]
action = &"edit_palette"

[sub_resource type="Shortcut" id="Shortcut_jl8vt"]
events = [SubResource("InputEventAction_4n3yg")]

[sub_resource type="InputEventAction" id="InputEventAction_mdfjt"]
action = &"new_palette"

[sub_resource type="Shortcut" id="Shortcut_6f4gc"]
events = [SubResource("InputEventAction_mdfjt")]

[node name="PalettePanel" type="MarginContainer"]
size_flags_horizontal = 3
size_flags_vertical = 3
script = ExtResource("8")

[node name="PaletteVBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 2

[node name="PaletteButtons" type="HBoxContainer" parent="PaletteVBoxContainer"]
layout_mode = 2

[node name="AddColor" type="Button" parent="PaletteVBoxContainer/PaletteButtons" groups=["UIButtons"]]
unique_name_in_owner = true
custom_minimum_size = Vector2(24, 24)
layout_mode = 2
tooltip_text = "Add a new color"
mouse_default_cursor_shape = 2

[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/PaletteButtons/AddColor"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -6.0
offset_top = -6.0
offset_right = 6.0
offset_bottom = 6.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 0
size_flags_vertical = 0
texture = ExtResource("2_j1lig")

[node name="DeleteColor" type="Button" parent="PaletteVBoxContainer/PaletteButtons" groups=["UIButtons"]]
unique_name_in_owner = true
custom_minimum_size = Vector2(24, 0)
layout_mode = 2
tooltip_text = "Remove a selected color"
mouse_default_cursor_shape = 2

[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/PaletteButtons/DeleteColor"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -6.0
offset_top = -1.0
offset_right = 6.0
offset_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 0
size_flags_vertical = 0
texture = ExtResource("3_0e27e")

[node name="Sort" type="MenuButton" parent="PaletteVBoxContainer/PaletteButtons" groups=["UIButtons"]]
unique_name_in_owner = true
custom_minimum_size = Vector2(24, 0)
layout_mode = 2
tooltip_text = "Sort palette"
mouse_default_cursor_shape = 2
flat = false

[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/PaletteButtons/Sort"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -6.0
offset_top = -6.0
offset_right = 6.0
offset_bottom = 6.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 0
size_flags_vertical = 0
texture = ExtResource("4_hcsuy")

[node name="PaletteSelect" type="OptionButton" parent="PaletteVBoxContainer/PaletteButtons"]
unique_name_in_owner = true
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
size_flags_horizontal = 3
tooltip_text = "Choose a palette"
mouse_default_cursor_shape = 2
alignment = 1
clip_text = true

[node name="EditPalette" type="Button" parent="PaletteVBoxContainer/PaletteButtons" groups=["UIButtons"]]
custom_minimum_size = Vector2(22, 22)
layout_mode = 2
tooltip_text = "Edit currently selected palette"
mouse_default_cursor_shape = 2
shortcut = SubResource("Shortcut_jl8vt")

[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/PaletteButtons/EditPalette"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 0
size_flags_vertical = 0
texture = ExtResource("2")
stretch_mode = 3

[node name="AddPalette" type="Button" parent="PaletteVBoxContainer/PaletteButtons" groups=["UIButtons"]]
custom_minimum_size = Vector2(22, 22)
layout_mode = 2
tooltip_text = "Create a new palette"
mouse_default_cursor_shape = 2
shortcut = SubResource("Shortcut_6f4gc")

[node name="TextureRect" type="TextureRect" parent="PaletteVBoxContainer/PaletteButtons/AddPalette"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 0
size_flags_vertical = 0
texture = ExtResource("3")
stretch_mode = 3

[node name="HSeparator" type="HSeparator" parent="PaletteVBoxContainer"]
layout_mode = 2

[node name="SwatchesContainer" type="HBoxContainer" parent="PaletteVBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3

[node name="PaletteScroll" type="VBoxContainer" parent="PaletteVBoxContainer/SwatchesContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
script = ExtResource("6")

[node name="HBoxContainer" type="HBoxContainer" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
alignment = 1

[node name="VBoxContainer" type="VBoxContainer" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
alignment = 1

[node name="ScrollContainer" type="ScrollContainer" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
horizontal_scroll_mode = 3
vertical_scroll_mode = 3

[node name="PaletteGrid" type="GridContainer" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer/ScrollContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/h_separation = 3
theme_override_constants/v_separation = 3
script = ExtResource("5")

[node name="HScrollBar" type="HScrollBar" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer"]
unique_name_in_owner = true
visible = false
layout_mode = 2
step = 1.0
page = 8.0
custom_step = 1.0

[node name="MarginContainer" type="MarginContainer" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer"]
layout_mode = 2
theme_override_constants/margin_bottom = 15

[node name="VScrollBar" type="VScrollBar" parent="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/MarginContainer"]
unique_name_in_owner = true
visible = false
layout_mode = 2
step = 1.0
page = 8.0
custom_step = 1.0

[node name="HiddenColorPickerButton" type="ColorPickerButton" parent="."]
unique_name_in_owner = true
visible = false
layout_mode = 2

[connection signal="gui_input" from="PaletteVBoxContainer/PaletteButtons/AddColor" to="." method="_on_AddColor_gui_input"]
[connection signal="gui_input" from="PaletteVBoxContainer/PaletteButtons/DeleteColor" to="." method="_on_DeleteColor_gui_input"]
[connection signal="item_selected" from="PaletteVBoxContainer/PaletteButtons/PaletteSelect" to="." method="_on_PaletteSelect_item_selected"]
[connection signal="pressed" from="PaletteVBoxContainer/PaletteButtons/EditPalette" to="." method="_on_EditPalette_pressed"]
[connection signal="pressed" from="PaletteVBoxContainer/PaletteButtons/AddPalette" to="." method="_on_AddPalette_pressed"]
[connection signal="gui_input" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" to="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" method="_on_PaletteScroll_gui_input"]
[connection signal="resized" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" to="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" method="_on_PaletteScroll_resized"]
[connection signal="gui_input" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer/ScrollContainer/PaletteGrid" to="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" method="_on_PaletteGrid_gui_input"]
[connection signal="swatch_double_clicked" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer/ScrollContainer/PaletteGrid" to="." method="_on_PaletteGrid_swatch_double_clicked"]
[connection signal="swatch_dropped" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer/ScrollContainer/PaletteGrid" to="." method="_on_PaletteGrid_swatch_dropped"]
[connection signal="swatch_pressed" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer/ScrollContainer/PaletteGrid" to="." method="_on_PaletteGrid_swatch_pressed"]
[connection signal="value_changed" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/VBoxContainer/HScrollBar" to="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" method="_on_HSlider_value_changed"]
[connection signal="value_changed" from="PaletteVBoxContainer/SwatchesContainer/PaletteScroll/HBoxContainer/MarginContainer/VScrollBar" to="PaletteVBoxContainer/SwatchesContainer/PaletteScroll" method="_on_VSlider_value_changed"]
[connection signal="color_changed" from="HiddenColorPickerButton" to="." method="_on_ColorPicker_color_changed"]
[connection signal="popup_closed" from="HiddenColorPickerButton" to="." method="_on_HiddenColorPickerButton_popup_closed"]
