FileDialog is a preset dialog used to choose files and directories in the filesystem. It supports filter masks. FileDialog automatically sets its window title according to the file_mode. If you want to use a custom title, disable this by setting mode_overrides_title to false
.
Emitted when the user selects a directory.
Emitted when the user selects a file by double-clicking it or pressing the OK button.
Emitted when the user selects multiple files.
FILE_MODE_OPEN_FILE = 0
The dialog allows selecting one, and only one file.
FILE_MODE_OPEN_FILES = 1
The dialog allows selecting multiple files.
FILE_MODE_OPEN_DIR = 2
The dialog only allows selecting a directory, disallowing the selection of any file.
FILE_MODE_OPEN_ANY = 3
The dialog allows selecting one file or directory.
FILE_MODE_SAVE_FILE = 4
The dialog will warn when a file exists.
ACCESS_RESOURCES = 0
The dialog only allows accessing files under the Resource path (res://
).
ACCESS_USERDATA = 1
The dialog only allows accessing files under user data path (user://
).
ACCESS_FILESYSTEM = 2
The dialog allows accessing files on the whole file system.
The file system access scope. See Access constants.
Warning: Currently, in sandboxed environments such as Web builds or sandboxed macOS apps, FileDialog cannot access the host file system. See godot-proposals#1123.
The current working directory of the file dialog.
The currently selected file of the file dialog.
The currently selected file path of the file dialog.
The dialog's open or save mode, which affects the selection behavior. See FileMode.
The available file type filters. For example, this shows only .png
and .gd
files: set_filters(PackedStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"]))
. Multiple file types can also be specified in a single filter. "*.png, *.jpg, *.jpeg ; Supported Images"
will show both PNG and JPEG files when selected.
If true
, changing the file_mode property will set the window title accordingly (e.g. setting file_mode to FILE_MODE_OPEN_FILE will change the window title to "Open a File").
The number of additional OptionButtons and CheckBoxes in the dialog.
If non-empty, the given sub-folder will be "root" of this FileDialog, i.e. user won't be able to go to its parent directory.
If true
, the dialog will show hidden files.
If true
, access is set to ACCESS_FILESYSTEM, and it is supported by the current DisplayServer, OS native dialog will be used instead of custom one.
Note: On macOS, sandboxed apps always use native dialogs to access host filesystem.
Adds a comma-delimited file name filter
option to the FileDialog with an optional description
, which restricts what files can be picked.
A filter
should be of the form "filename.extension"
, where filename and extension can be *
to match any string. Filters starting with .
(i.e. empty filenames) are not allowed.
For example, a filter
of "*.png, *.jpg"
and a description
of "Images"
results in filter text "Images (*.png, *.jpg)".
Adds an additional OptionButton to the file dialog. If values
is empty, a CheckBox is added instead.
Clear all the added filters in the dialog.
Clear all currently selected items in the dialog.
Returns the LineEdit for the selected file.
Warning: This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their CanvasItem.visible property.
Returns the default value index of the OptionButton or CheckBox with index option
.
Returns the name of the OptionButton or CheckBox with index option
.
Returns an array of values of the OptionButton with index option
.
Returns a Dictionary with the selected values of the additional OptionButtons and/or CheckBoxes. Dictionary keys are names and values are selected value indices.
Returns the vertical box container of the dialog, custom controls can be added to it.
Warning: This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their CanvasItem.visible property.
Invalidate and update the current dialog content list.
Sets the default value index of the OptionButton or CheckBox with index option
.
Sets the name of the OptionButton or CheckBox with index option
.
Sets the option values of the OptionButton with index option
.