@@ -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
0 commit comments