From 810cd5ec88c7377b258ad5670aef671ba36996f4 Mon Sep 17 00:00:00 2001 From: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com> Date: Tue, 31 Dec 2019 03:44:27 +0200 Subject: [PATCH] Disconnected palette button signals from Main.gd and connected them to PaletteContainer.gd --- Main.tscn | 12 ++++---- Scripts/Main.gd | 28 +---------------- Scripts/Palette/PaletteContainer.gd | 48 ++++++++++++++++++++--------- 3 files changed, 40 insertions(+), 48 deletions(-) diff --git a/Main.tscn b/Main.tscn index 298149b..7080271 100644 --- a/Main.tscn +++ b/Main.tscn @@ -1331,7 +1331,6 @@ margin_right = 224.0 margin_bottom = 199.0 [node name="PaletteVBoxContainer" type="VBoxContainer" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc"] -editor/display_folded = true margin_top = 203.0 margin_right = 224.0 margin_bottom = 355.0 @@ -1421,6 +1420,7 @@ margin_right = 224.0 margin_bottom = 390.0 [node name="LayerVBoxContainer" type="VBoxContainer" parent="MenuAndUI/UI/LayerPanel/LayersAndMisc"] +editor/display_folded = true margin_top = 394.0 margin_right = 224.0 margin_bottom = 604.0 @@ -1740,9 +1740,9 @@ visible = false [connection signal="value_changed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons/PastOnionSkinning" to="." method="_on_PastOnionSkinning_value_changed"] [connection signal="value_changed" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons/FutureOnionSkinning" to="." method="_on_FutureOnionSkinning_value_changed"] [connection signal="toggled" from="MenuAndUI/UI/CanvasAndTimeline/AnimationTimeline/AnimationContainer/OnionSkinningButtons/BlueRedMode" to="." method="_on_BlueRedMode_toggled"] -[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="." method="_on_AddPalette_pressed"] -[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="." method="_on_EditPalette_pressed"] -[connection signal="item_selected" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="." method="_on_PaletteOptionButton_item_selected"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/CenterContainer/PaletteButtons/AddPalette" to="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_AddPalette_pressed"] +[connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/CenterContainer/PaletteButtons/EditPalette" to="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_edit_palette"] +[connection signal="item_selected" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/CenterContainer/PaletteButtons/PaletteOptionButton" to="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="_on_PaletteOptionButton_item_selected"] [connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/LayerVBoxContainer/CenterLayerButtons/LayerButtons/AddLayer" to="." method="add_layer"] [connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/LayerVBoxContainer/CenterLayerButtons/LayerButtons/RemoveLayer" to="." method="_on_RemoveLayerButton_pressed"] [connection signal="pressed" from="MenuAndUI/UI/LayerPanel/LayersAndMisc/LayerVBoxContainer/CenterLayerButtons/LayerButtons/MoveUpLayer" to="." method="change_layer_order" binds= [ 1 ]] @@ -1764,8 +1764,8 @@ visible = false [connection signal="popup_hide" from="AboutDialog" to="." method="_can_draw_true"] [connection signal="confirmed" from="QuitDialog" to="." method="_on_QuitDialog_confirmed"] [connection signal="popup_hide" from="QuitDialog" to="." method="_can_draw_true"] -[connection signal="confirmed" from="NewPaletteDialog" to="." method="_on_NewPaletteDialog_confirmed"] -[connection signal="file_selected" from="PaletteImportFileDialog" to="." method="_on_PaletteImportFileDialog_file_selected"] +[connection signal="confirmed" from="NewPaletteDialog" to="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_new_palette_confirmed"] +[connection signal="file_selected" from="PaletteImportFileDialog" to="MenuAndUI/UI/LayerPanel/LayersAndMisc/PaletteVBoxContainer/ScrollPalette/CenterPalette/PaletteContainer" method="on_palette_import_file_selected"] [connection signal="timeout" from="AnimationTimer" to="." method="_on_AnimationTimer_timeout"] [editable path="BrushesPopup/TabContainer/File/FileBrushContainer/CircleBrushButton"] diff --git a/Scripts/Main.gd b/Scripts/Main.gd index 25925b8..8b0182a 100644 --- a/Scripts/Main.gd +++ b/Scripts/Main.gd @@ -102,7 +102,6 @@ func _ready() -> void: view_menu = Global.view_menu.get_popup() var image_menu : PopupMenu = Global.image_menu.get_popup() var help_menu : PopupMenu = Global.help_menu.get_popup() - var add_palette_menu : PopupMenu = Global.add_palette_button.get_child(0) var i = 0 for item in file_menu_items.keys(): @@ -135,7 +134,6 @@ func _ready() -> void: view_menu.connect("id_pressed", self, "view_menu_id_pressed") image_menu.connect("id_pressed", self, "image_menu_id_pressed") help_menu.connect("id_pressed", self, "help_menu_id_pressed") - add_palette_menu.connect("id_pressed", self, "add_palette_menu_id_pressed") var root = get_tree().get_root() # Node, left mouse shortcut, right mouse shortcut @@ -913,28 +911,4 @@ func _on_QuitDialog_confirmed() -> void: # (it won't respond to user input in this state). modulate = Color(0.5, 0.5, 0.5) - get_tree().quit() - -func _on_AddPalette_pressed() -> void: - Global.add_palette_button.get_child(0).popup(Rect2(Global.add_palette_button.rect_global_position, Vector2.ONE)) - -func _on_EditPalette_pressed() -> void: - Global.palette_container.on_edit_palette() - -func _on_PaletteOptionButton_item_selected(ID) -> void: - var palette_name = Global.palette_option_button.get_item_metadata(ID) - Global.palette_container.on_palette_select(palette_name) - -func add_palette_menu_id_pressed(id) -> void: - match id: - 0: # New Empty Palette - Global.palette_container.on_new_empty_palette() - 1: # Import Palette - Global.palette_container.on_import_palette() - -func _on_NewPaletteDialog_confirmed() -> void: - Global.palette_container.on_new_palette_confirmed() - -func _on_PaletteImportFileDialog_file_selected(path) -> void: - Global.palette_container.on_palette_import_file_selected(path) - + get_tree().quit() \ No newline at end of file diff --git a/Scripts/Palette/PaletteContainer.gd b/Scripts/Palette/PaletteContainer.gd index d61c93f..dfb177b 100644 --- a/Scripts/Palette/PaletteContainer.gd +++ b/Scripts/Palette/PaletteContainer.gd @@ -12,6 +12,9 @@ func _ready() -> void: # Select default palette "Default" on_palette_select(current_palette) + var add_palette_menu : PopupMenu = Global.add_palette_button.get_child(0) + add_palette_menu.connect("id_pressed", self, "add_palette_menu_id_pressed") + func _clear_swatches() -> void: for child in get_children(): if child is BaseButton: @@ -57,21 +60,8 @@ func on_palette_import_file_selected(path) -> void: Global.error_dialog.set_text("Invalid Palette file!") Global.error_dialog.popup_centered() -func on_edit_palette() -> void: - var palette : Dictionary = Global.palettes[current_palette] - - var create_new_palette := true # Create new palette by default - if palette.editable: - create_new_palette = false # Edit if already a custom palette - - if create_new_palette: - from_palette = Global.palettes[current_palette] - Global.new_palette_dialog.window_title = "Create a new custom palette from existing default?" - Global.new_palette_name_line_edit.text = "Custom_" + current_palette - Global.new_palette_dialog.popup_centered() - else: - from_palette = null - Global.edit_palette_popup.open(current_palette) +func _on_AddPalette_pressed() -> void: + Global.add_palette_button.get_child(0).popup(Rect2(Global.add_palette_button.rect_global_position, Vector2.ONE)) func on_new_palette_confirmed() -> void: var new_palette_name : String = Global.new_palette_name_line_edit.text @@ -80,6 +70,13 @@ func on_new_palette_confirmed() -> void: Global.error_dialog.set_text(result) Global.error_dialog.popup_centered() +func add_palette_menu_id_pressed(id) -> void: + match id: + 0: # New Empty Palette + Global.palette_container.on_new_empty_palette() + 1: # Import Palette + Global.palette_container.on_import_palette() + func create_new_palette(name : String, _from_palette : Palette) -> String: # Returns empty string, else error string var new_palette : Palette = Palette.new() @@ -108,6 +105,26 @@ func create_new_palette(name : String, _from_palette : Palette) -> String: # Ret on_palette_select(name) return "" +func on_edit_palette() -> void: + var palette : Dictionary = Global.palettes[current_palette] + + var create_new_palette := true # Create new palette by default + if palette.editable: + create_new_palette = false # Edit if already a custom palette + + if create_new_palette: + from_palette = Global.palettes[current_palette] + Global.new_palette_dialog.window_title = "Create a new custom palette from existing default?" + Global.new_palette_name_line_edit.text = "Custom_" + current_palette + Global.new_palette_dialog.popup_centered() + else: + from_palette = null + Global.edit_palette_popup.open(current_palette) + +func _on_PaletteOptionButton_item_selected(ID : int) -> void: + var palette_name = Global.palette_option_button.get_item_metadata(ID) + on_palette_select(palette_name) + func _display_palette(palette : Palette) -> void: var index := 0 @@ -173,3 +190,4 @@ func get_palette_files(path : String) -> Array: func save_palette(palette_name : String, filename : String) -> void: var palette = Global.palettes[palette_name] palette.save_to_file(palettes_path.plus_file(filename)) +