diff --git a/doc/classes/FileDialog.xml b/doc/classes/FileDialog.xml
index 921fb0b7146..aced51b906c 100644
--- a/doc/classes/FileDialog.xml
+++ b/doc/classes/FileDialog.xml
@@ -151,6 +151,7 @@
If [code]true[/code], changing the [member file_mode] property will set the window title accordingly (e.g. setting [member file_mode] to [constant FILE_MODE_OPEN_FILE] will change the window title to "Open a File").
+
The number of additional [OptionButton]s and [CheckBox]es in the dialog.
diff --git a/scene/gui/file_dialog.cpp b/scene/gui/file_dialog.cpp
index d685da9a52c..b9450fd77f0 100644
--- a/scene/gui/file_dialog.cpp
+++ b/scene/gui/file_dialog.cpp
@@ -637,8 +637,10 @@ void FileDialog::deselect_all() {
set_ok_button_text(ETR("Select Current Folder"));
break;
case FILE_MODE_OPEN_ANY:
+ set_ok_button_text(ETR("Open"));
+ break;
case FILE_MODE_SAVE_FILE:
- // FIXME: Implement, or refactor to avoid duplication with set_mode
+ set_ok_button_text(ETR("Save"));
break;
}
}
@@ -657,7 +659,13 @@ void FileDialog::_tree_selected() {
if (!d["dir"]) {
file->set_text(d["name"]);
- } else if (mode == FILE_MODE_OPEN_DIR) {
+ if (mode == FILE_MODE_SAVE_FILE) {
+ set_ok_button_text(ETR("Save"));
+ } else {
+ set_ok_button_text(ETR("Open"));
+ }
+ } else if (mode == FILE_MODE_OPEN_DIR || mode == FILE_MODE_OPEN_ANY) {
+ file->set_text("");
set_ok_button_text(ETR("Select This Folder"));
}