Disconnected palette button signals from Main.gd and connected them to PaletteContainer.gd

This commit is contained in:
OverloadedOrama 2019-12-31 03:44:27 +02:00
parent ff47ae26c0
commit 810cd5ec88
3 changed files with 40 additions and 48 deletions

View file

@ -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"]

View file

@ -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()

View file

@ -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))