FileDialog

Inherits: ConfirmationDialog < AcceptDialog < WindowDialog < Popup < Control < CanvasItem < Node < Object

Dialog for selecting files or directories in the filesystem.

Description

FileDialog is a preset dialog used to choose files and directories in the filesystem. It supports filter masks. The FileDialog automatically sets its window title according to the mode. If you want to use a custom title, disable this by setting mode_overrides_title to false.

Properties

Accessaccess0
Stringcurrent_dir“res://“
Stringcurrent_file“”
Stringcurrent_path“res://“
booldialog_hide_on_okfalse (parent override)
PoolStringArrayfiltersPoolStringArray(  )
Modemode4
boolmode_overrides_titletrue
boolshow_hidden_filesfalse
Stringwindow_title“Save a File” (parent override)

Methods

voidadd_filter ( String filter )
voidclear_filters ( )
voiddeselect_items ( )
LineEditget_line_edit ( )
VBoxContainerget_vbox ( )
voidinvalidate ( )

Theme Properties

Texturefile 
Colorfile_icon_modulateColor( 1, 1, 1, 1 )
Colorfiles_disabledColor( 0, 0, 0, 0.7 )
Texturefolder 
Colorfolder_icon_modulateColor( 1, 1, 1, 1 )
Textureparent_folder 
Texturereload 
Texturetoggle_hidden 

Signals

Emitted when the user selects a directory.


  • file_selected ( String path )

Emitted when the user selects a file by double-clicking it or pressing the OK button.


Emitted when the user selects multiple files.

Enumerations

enum Mode:

  • MODE_OPEN_FILE = 0 —- The dialog allows selecting one, and only one file.
  • MODE_OPEN_FILES = 1 —- The dialog allows selecting multiple files.
  • MODE_OPEN_DIR = 2 —- The dialog only allows selecting a directory, disallowing the selection of any file.
  • MODE_OPEN_ANY = 3 —- The dialog allows selecting one file or directory.
  • MODE_SAVE_FILE = 4 —- The dialog will warn when a file exists.

enum Access:

  • 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.

Property Descriptions

Default0
Setterset_access(value)
Getterget_access()

The file system access scope. See enum Access constants.

Warning: Currently, in sandboxed environments such as HTML5 builds or sandboxed macOS apps, FileDialog cannot access the host file system. See godot-proposals#1123.


Default“res://“
Setterset_current_dir(value)
Getterget_current_dir()

The current working directory of the file dialog.


Default“”
Setterset_current_file(value)
Getterget_current_file()

The currently selected file of the file dialog.


Default“res://“
Setterset_current_path(value)
Getterget_current_path()

The currently selected file path of the file dialog.


DefaultPoolStringArray(  )
Setterset_filters(value)
Getterget_filters()

The available file type filters. For example, this shows only .png and .gd files: set_filters(PoolStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"])).


Default4
Setterset_mode(value)
Getterget_mode()

The dialog’s open or save mode, which affects the selection behavior. See enum Mode constants.


  • bool mode_overrides_title
Defaulttrue
Setterset_mode_overrides_title(value)
Getteris_mode_overriding_title()

If true, changing the Mode property will set the window title accordingly (e.g. setting mode to MODE_OPEN_FILE will change the window title to “Open a File”).


  • bool show_hidden_files
Defaultfalse
Setterset_show_hidden_files(value)
Getteris_showing_hidden_files()

If true, the dialog will show hidden files.

Method Descriptions

  • void add_filter ( String filter )

Adds filter as a custom filter; filter should be of the form "filename.extension ; Description". For example, "*.png ; PNG Images".


  • void clear_filters ( )

Clear all the added filters in the dialog.


  • void deselect_items ( )

Clear currently selected items in the dialog.


Returns the LineEdit for the selected file.


Returns the vertical box container of the dialog, custom controls can be added to it.


  • void invalidate ( )

Invalidate and update the current dialog content list.