Skip to content

Commit 86ff668

Browse files
committed
Merge pull request #105154 from AThousandShips/fix_pack_zip
[Editor] Use separate `EditorFileDialog` for "Pack Project as ZIP"
2 parents 36ff5d3 + 787cad1 commit 86ff668

File tree

2 files changed

+12
-8
lines changed

2 files changed

+12
-8
lines changed

editor/editor_node.cpp

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3030,14 +3030,9 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
30303030
String resource_path = ProjectSettings::get_singleton()->get_resource_path();
30313031
const String base_path = resource_path.substr(0, resource_path.rfind_char('/')) + "/";
30323032

3033-
file->set_file_mode(EditorFileDialog::FILE_MODE_SAVE_FILE);
3034-
file->set_access(EditorFileDialog::ACCESS_FILESYSTEM);
3035-
file->clear_filters();
3036-
file->set_current_path(base_path);
3037-
file->set_current_file(ProjectZIPPacker::get_project_zip_safe_name());
3038-
file->add_filter("*.zip", "ZIP Archive");
3039-
file->set_title(TTR("Pack Project as ZIP..."));
3040-
file->popup_file_dialog();
3033+
file_pack_zip->set_current_path(base_path);
3034+
file_pack_zip->set_current_file(ProjectZIPPacker::get_project_zip_safe_name());
3035+
file_pack_zip->popup_file_dialog();
30413036
} break;
30423037

30433038
case FILE_UNDO: {
@@ -8067,6 +8062,14 @@ EditorNode::EditorNode() {
80678062
gui_base->add_child(file_script);
80688063
file_script->connect("file_selected", callable_mp(this, &EditorNode::_dialog_action));
80698064

8065+
file_pack_zip = memnew(EditorFileDialog);
8066+
file_pack_zip->connect("file_selected", callable_mp(this, &EditorNode::_dialog_action));
8067+
file_pack_zip->set_file_mode(EditorFileDialog::FILE_MODE_SAVE_FILE);
8068+
file_pack_zip->set_access(EditorFileDialog::ACCESS_FILESYSTEM);
8069+
file_pack_zip->add_filter("*.zip", "ZIP Archive");
8070+
file_pack_zip->set_title(TTR("Pack Project as ZIP..."));
8071+
gui_base->add_child(file_pack_zip);
8072+
80708073
file_menu->connect(SceneStringName(id_pressed), callable_mp(this, &EditorNode::_menu_option));
80718074
file_menu->connect("about_to_popup", callable_mp(this, &EditorNode::_update_file_menu_opened));
80728075

editor/editor_node.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,7 @@ class EditorNode : public Node {
385385
EditorFileDialog *file_export_lib = nullptr;
386386
EditorFileDialog *file_script = nullptr;
387387
EditorFileDialog *file_android_build_source = nullptr;
388+
EditorFileDialog *file_pack_zip = nullptr;
388389
String current_path;
389390
MenuButton *update_spinner = nullptr;
390391

0 commit comments

Comments
 (0)