From e0ffc66bc39dd86eeaa01f3e66c1891ff1ed20ff Mon Sep 17 00:00:00 2001 From: BimDav Date: Wed, 14 Feb 2024 14:21:59 +0100 Subject: [PATCH] select file to export to --- sources/language_tool/prof_tool_menu.gd | 17 +++++++++++++++-- sources/language_tool/prof_tool_menu.tscn | 8 ++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/sources/language_tool/prof_tool_menu.gd b/sources/language_tool/prof_tool_menu.gd index c096acc7..71cc7341 100644 --- a/sources/language_tool/prof_tool_menu.gd +++ b/sources/language_tool/prof_tool_menu.gd @@ -8,6 +8,7 @@ var save_file: ProfToolSave @onready var new_language_container: = %NewLanguageContainer @onready var line_edit: = %LineEdit @onready var file_dialog: = $FileDialog +@onready var file_dialog_export: = $FileDialogExport @onready var add_word_list_button: = $VBoxContainer/AddWordListButton @@ -73,7 +74,7 @@ func _on_data_loader_button_2_pressed() -> void: get_tree().change_scene_to_file("res://sources/language_tool/gp_video_descriptions.tscn") -func _on_export_button_pressed() -> void: +func _on_export_filename_selected(filename: String) -> void: for i in Database.get_lessons_count(): print("Lesson %s --------------------" % i) print("\t \t Words ---") @@ -87,7 +88,7 @@ func _on_export_button_pressed() -> void: print(e.Sentence) print("\n\n") var folder_zipper: = FolderZipper.new() - folder_zipper.compress(base_path.path_join(Database.language), "user://language_export.zip") + folder_zipper.compress(base_path.path_join(Database.language), filename) func _get_available_languages() -> Array[String]: @@ -157,6 +158,18 @@ func _on_import_language_button_pressed() -> void: file_dialog.show() +func _on_export_button_pressed() -> void: + file_dialog_export.filters = [] + file_dialog_export.add_filter("*.zip", "zip") + + for connection in file_dialog_export.file_selected.get_connections(): + connection["signal"].disconnect(connection["callable"]) + + file_dialog_export.file_selected.connect(_on_export_filename_selected) + + file_dialog_export.show() + + func _language_data_selected(file_path: String) -> void: if FileAccess.file_exists(file_path): var folder_unzipper: = FolderUnzipper.new() diff --git a/sources/language_tool/prof_tool_menu.tscn b/sources/language_tool/prof_tool_menu.tscn index 8dc43966..b61c457e 100644 --- a/sources/language_tool/prof_tool_menu.tscn +++ b/sources/language_tool/prof_tool_menu.tscn @@ -171,6 +171,14 @@ ok_button_text = "Ouvrir" file_mode = 0 access = 2 +[node name="FileDialogExport" type="FileDialog" parent="."] +initial_position = 2 +size = Vector2i(1500, 1000) +always_on_top = true +popup_window = true +ok_button_text = "Enregistrer" +access = 2 + [connection signal="pressed" from="CenterContainer/VBoxContainer/GPListButton" to="." method="_on_gp_list_button_pressed"] [connection signal="pressed" from="CenterContainer/VBoxContainer/WordListButton" to="." method="_on_word_list_button_pressed"] [connection signal="pressed" from="CenterContainer/VBoxContainer/SyllableListButton" to="." method="_on_syllable_list_button_pressed"]