diff --git a/doc/classes/EditorInterface.xml b/doc/classes/EditorInterface.xml
index f8002c260f3b..06b72fceb74b 100644
--- a/doc/classes/EditorInterface.xml
+++ b/doc/classes/EditorInterface.xml
@@ -262,10 +262,16 @@
Restarts the editor. This closes the editor and then opens the same project. If [param save] is [code]true[/code], the project will be saved before restarting.
+
+
+
+ Saves all opened scenes in the editor.
+
+
- Saves the scene. Returns either [constant OK] or [constant ERR_CANT_CREATE].
+ Saves the currently active scene. Returns either [constant OK] or [constant ERR_CANT_CREATE].
@@ -273,7 +279,7 @@
- Saves the scene as a file at [param path].
+ Saves the currently active scene as a file at [param path].
diff --git a/editor/editor_interface.cpp b/editor/editor_interface.cpp
index d9d9dc01c0d7..6b5f8e27aca3 100644
--- a/editor/editor_interface.cpp
+++ b/editor/editor_interface.cpp
@@ -337,6 +337,10 @@ void EditorInterface::mark_scene_as_unsaved() {
EditorUndoRedoManager::get_singleton()->set_history_as_unsaved(EditorNode::get_editor_data().get_current_edited_scene_history_id());
}
+void EditorInterface::save_all_scenes() {
+ EditorNode::get_singleton()->save_all_scenes();
+}
+
// Scene playback.
void EditorInterface::play_main_scene() {
@@ -434,6 +438,7 @@ void EditorInterface::_bind_methods() {
ClassDB::bind_method(D_METHOD("save_scene"), &EditorInterface::save_scene);
ClassDB::bind_method(D_METHOD("save_scene_as", "path", "with_preview"), &EditorInterface::save_scene_as, DEFVAL(true));
+ ClassDB::bind_method(D_METHOD("save_all_scenes"), &EditorInterface::save_all_scenes);
ClassDB::bind_method(D_METHOD("mark_scene_as_unsaved"), &EditorInterface::mark_scene_as_unsaved);
diff --git a/editor/editor_interface.h b/editor/editor_interface.h
index f7e8cf8d4c60..a348023e4d97 100644
--- a/editor/editor_interface.h
+++ b/editor/editor_interface.h
@@ -130,6 +130,7 @@ class EditorInterface : public Object {
Error save_scene();
void save_scene_as(const String &p_scene, bool p_with_preview = true);
void mark_scene_as_unsaved();
+ void save_all_scenes();
// Scene playback.