class-description NEWS COMMUNITY STORE TUTORIALS SIGN UP LOGIN LOGOUT ROKOJORI NEWSLETTER SIGN UP LOGIN LOGOUT NEWS COMMUNITY STORE TUTORIALS TOGGLE FULLSCREEN VOLLBILD AN/AUS ObjectNodeViewportWindowAcceptDialogConfirmationDialog FileDialog
A dialog for selecting files or directories in the filesystem.

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.

Signal dir_selected<>( String dir=, dir:String=, ):Signal

Emitted when the user selects a directory.

Signal file_selected<>( String path=, path:String=, ):Signal

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

Signal filename_filter_changed<>( String filter=, filter:String=, ):Signal

Emitted when the filter for file names changes.

Signal files_selected<>( PackedStringArray paths=, paths:PackedStringArray=, ):Signal

Emitted when the user selects multiple files.

Enum FileMode<>():Enum

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.

Enum Access<>():Enum

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.

Access access<>():Access

The file system access scope. See Access constants.

Warning: In Web builds, FileDialog cannot access the host file system. In sandboxed Linux and macOS environments, use_native_dialog is automatically used to allow limited access to host file system.

String current_dir<>():String

The current working directory of the file dialog.

Note: For native file dialogs, this property is only treated as a hint and may not be respected by specific OS implementations.

String current_file<>():String

The currently selected file of the file dialog.

String current_path<>():String

The currently selected file path of the file dialog.

FileMode file_mode<>():FileMode

The dialog's open or save mode, which affects the selection behavior. See FileMode.

String filename_filter<>():String

The filter for file names (case-insensitive). When set to a non-empty string, only files that contains the substring will be shown. filename_filter can be edited by the user with the filter button at the top of the file dialog.

See also filters, which should be used to restrict the file types that can be selected instead of filename_filter which is meant to be set by the user.

PackedStringArray filters<>():PackedStringArray

The available file type filters. Each filter string in the array should be formatted like this: *.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg. The description text of the filter is optional and can be omitted. Both file extensions and MIME type should be always set.

Note: Embedded file dialog and Windows file dialog support only file extensions, while Android, Linux, and macOS file dialogs also support MIME types.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedStringArray for more details.

bool mode_overrides_title<>():bool

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").

int option_count<>():int

The number of additional OptionButtons and CheckBoxes in the dialog.

String root_subfolder<>():String

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.

Note: This property is ignored by native file dialogs.

bool show_hidden_files<>():bool

If true, the dialog will show hidden files.

Note: This property is ignored by native file dialogs on Android and Linux.

bool use_native_dialog<>():bool

If true, and if supported by the current DisplayServer, OS native dialog will be used instead of custom one.

Note: On Android, it is only supported when using ACCESS_FILESYSTEM. For access mode ACCESS_RESOURCES and ACCESS_USERDATA, the system will fall back to custom FileDialog.

Note: On Linux and macOS, sandboxed apps always use native dialogs to access the host file system.

Note: On macOS, sandboxed apps will save security-scoped bookmarks to retain access to the opened folders across multiple sessions. Use OS.get_granted_permissions() to get a list of saved bookmarks.

Note: Native dialogs are isolated from the base process, file dialog properties can't be modified once the dialog is shown.

void add_filter<>( String filter=, filter:String=, String description="", description:String="", ):void

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)".

void add_option<>( String name=, name:String=, PackedStringArray values=, values:PackedStringArray=, int default_value_index=, default_value_index:int=, ):void

Adds an additional OptionButton to the file dialog. If values is empty, a CheckBox is added instead.

default_value_index should be an index of the value in the values. If values is empty it should be either 1 (checked), or 0 (unchecked).

void clear_filename_filter<>():void

Clear the filter for file names.

void clear_filters<>():void

Clear all the added filters in the dialog.

void deselect_all<>():void

Clear all currently selected items in the dialog.

LineEdit get_line_edit<>():LineEdit

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.

int get_option_default<>( int option=, option:int=, ):int

Returns the default value index of the OptionButton or CheckBox with index option.

String get_option_name<>( int option=, option:int=, ):String

Returns the name of the OptionButton or CheckBox with index option.

PackedStringArray get_option_values<>( int option=, option:int=, ):PackedStringArray

Returns an array of values of the OptionButton with index option.

Dictionary get_selected_options<>():Dictionary

Returns a Dictionary with the selected values of the additional OptionButtons and/or CheckBoxes. Dictionary keys are names and values are selected value indices.

VBoxContainer get_vbox<>():VBoxContainer

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.

Note: Changes to this node are ignored by native file dialogs, use add_option() to add custom elements to the dialog instead.

void invalidate<>():void

Invalidate and update the current dialog content list.

Note: This method does nothing on native file dialogs.

void set_option_default<>( int option=, option:int=, int default_value_index=, default_value_index:int=, ):void

Sets the default value index of the OptionButton or CheckBox with index option.

void set_option_name<>( int option=, option:int=, String name=, name:String=, ):void

Sets the name of the OptionButton or CheckBox with index option.

void set_option_values<>( int option=, option:int=, PackedStringArray values=, values:PackedStringArray=, ):void

Sets the option values of the OptionButton with index option.




All social media brands are registrated trademarks and belong to their respective owners.





CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
We are using cookies on this site. Read more... Wir benutzen Cookies auf dieser Seite. Mehr lesen...