EditorFileDialog

Наследует: ConfirmationDialog < AcceptDialog < Window < Viewport < Node < Object

Модифицированная версия FileDialog, используемая редактором.

Описание

EditorFileDialog — это расширенная версия FileDialog, доступная только для плагинов редактора. Дополнительные функции включают список избранных/недавних файлов и возможность просмотра файлов в виде сетки миниатюр вместо списка.

В отличие от FileDialog, EditorFileDialog не имеет свойства для использования собственных диалогов. Вместо этого собственные диалоги можно включить глобально с помощью настройки редактора EditorSettings.interface/editor/use_native_file_dialogs. Они также включаются автоматически при запуске в песочнице (например, в macOS).

Свойства

Access

access

0

String

current_dir

String

current_file

String

current_path

bool

dialog_hide_on_ok

false (overrides AcceptDialog)

bool

disable_overwrite_warning

false

DisplayMode

display_mode

0

FileMode

file_mode

4

PackedStringArray

filters

PackedStringArray()

int

option_count

0

bool

show_hidden_files

false

String

title

"Save a File" (overrides Window)

Методы

void

add_filter(filter: String, description: String = "")

void

add_option(name: String, values: PackedStringArray, default_value_index: int)

void

add_side_menu(menu: Control, title: String = "")

void

clear_filename_filter()

void

clear_filters()

String

get_filename_filter() const

LineEdit

get_line_edit()

int

get_option_default(option: int) const

String

get_option_name(option: int) const

PackedStringArray

get_option_values(option: int) const

Dictionary

get_selected_options() const

VBoxContainer

get_vbox()

void

invalidate()

void

popup_file_dialog()

void

set_filename_filter(filter: String)

void

set_option_default(option: int, default_value_index: int)

void

set_option_name(option: int, name: String)

void

set_option_values(option: int, values: PackedStringArray)


Сигналы

dir_selected(dir: String) 🔗

Выдается при выборе каталога.


file_selected(path: String) 🔗

Выдается при выборе файла.


filename_filter_changed(filter: String) 🔗

Выдается при изменении фильтра имен файлов.


files_selected(paths: PackedStringArray) 🔗

Выдается при выборе нескольких файлов.


Перечисления

enum FileMode: 🔗

FileMode FILE_MODE_OPEN_FILE = 0

EditorFileDialog может выбрать только один файл. Принятие окна откроет файл.

FileMode FILE_MODE_OPEN_FILES = 1

EditorFileDialog может выбрать несколько файлов. Принятие окна откроет все файлы.

FileMode FILE_MODE_OPEN_DIR = 2

EditorFileDialog может выбрать только один каталог. Принятие окна откроет каталог.

FileMode FILE_MODE_OPEN_ANY = 3

EditorFileDialog может выбрать файл или каталог. Принятие окна откроет его.

FileMode FILE_MODE_SAVE_FILE = 4

EditorFileDialog может выбрать только один файл. Принятие окна сохранит файл.


enum Access: 🔗

Access ACCESS_RESOURCES = 0

EditorFileDialog может просматривать только содержимое каталога res://.

Access ACCESS_USERDATA = 1

EditorFileDialog может просматривать только содержимое каталога user://.

Access ACCESS_FILESYSTEM = 2

EditorFileDialog может просматривать всю локальную файловую систему.


enum DisplayMode: 🔗

DisplayMode DISPLAY_THUMBNAILS = 0

EditorFileDialog отображает ресурсы в виде миниатюр.

DisplayMode DISPLAY_LIST = 1

EditorFileDialog отображает ресурсы в виде списка имен файлов.


Описания свойств

Access access = 0 🔗

Расположение, из которого пользователь может выбрать файл, включая res://, user:// и локальную файловую систему.


String current_dir 🔗

  • void set_current_dir(value: String)

  • String get_current_dir()

Текущий занятый каталог.


String current_file 🔗

  • void set_current_file(value: String)

  • String get_current_file()

Текущий выбранный файл.


String current_path 🔗

  • void set_current_path(value: String)

  • String get_current_path()

Путь файловой системы в адресной строке.


bool disable_overwrite_warning = false 🔗

  • void set_disable_overwrite_warning(value: bool)

  • bool is_overwrite_warning_disabled()

Если true, EditorFileDialog не будет предупреждать пользователя перед перезаписью файлов.


DisplayMode display_mode = 0 🔗

Формат представления, в котором EditorFileDialog отображает ресурсы пользователю.


FileMode file_mode = 4 🔗

Режим открытия или сохранения диалогового окна, который влияет на поведение выбора.


PackedStringArray filters = PackedStringArray() 🔗

Доступные фильтры типов файлов. Например, здесь отображаются только файлы .png и .gd: set_filters(PackedStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"])). Несколько типов файлов также можно указать в одном фильтре. "*.png, *.jpg, *.jpeg ; Поддерживаемые изображения" при выборе отобразит как файлы PNG, так и файлы JPEG.

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


int option_count = 0 🔗

  • void set_option_count(value: int)

  • int get_option_count()

Количество дополнительных OptionButton и CheckBox-ов в диалоговом окне.


bool show_hidden_files = false 🔗

  • void set_show_hidden_files(value: bool)

  • bool is_showing_hidden_files()

Если true, скрытые файлы и каталоги будут видны в EditorFileDialog. Это свойство синхронизируется с EditorSettings.filesystem/file_dialog/show_hidden_files.


Описания метода

void add_filter(filter: String, description: String = "") 🔗

Добавляет параметр filter с именем файла, разделённым запятыми, в EditorFileDialog с необязательным параметром description, который ограничивает выбор файлов.

filter должен иметь вид "имя_файла.расширение", где имя_файла и расширение могут быть * для соответствия любой строке. Фильтры, начинающиеся с . (т.е. пустые имена файлов), не допускаются.

Например, filter со значением "*.tscn, *.scn" и description со значением "Сцены" приведут к появлению текста фильтра "Сцены (*.tscn, *.scn)".


void add_option(name: String, values: PackedStringArray, default_value_index: int) 🔗

Добавляет дополнительный OptionButton в диалоговое окно файла. Если values пусто, вместо него добавляется CheckBox.

default_value_index должен быть индексом значения в values. Если values пусто, он должен быть либо 1 (отмечено), либо 0 (не отмечено).


void add_side_menu(menu: Control, title: String = "") 🔗

Добавляет заданное menu в сторону диалога файла с заданным текстом title сверху. Разрешено только одно боковое меню.


void clear_filename_filter() 🔗

Очистить фильтр по именам файлов.


void clear_filters() 🔗

Удаляет все фильтры, кроме "All Files (*.*)".


String get_filename_filter() const 🔗

Возвращает значение фильтра для имен файлов.


LineEdit get_line_edit() 🔗

Возвращает LineEdit для выбранного файла.

Предупреждение: Это обязательный внутренний узел, его удаление и освобождение может привести к сбою. Если вы хотите скрыть его или любой из его дочерних элементов, используйте их свойство CanvasItem.visible.


int get_option_default(option: int) const 🔗

Возвращает индекс значения по умолчанию для OptionButton или CheckBox с индексом option.


String get_option_name(option: int) const 🔗

Возвращает имя OptionButton или CheckBox с индексом option.


PackedStringArray get_option_values(option: int) const 🔗

Возвращает массив значений OptionButton с индексом option.


Dictionary get_selected_options() const 🔗

Возвращает Dictionary с выбранными значениями дополнительных OptionButton и/или CheckBox. Ключи Dictionary — это имена, а значения — это выбранные индексы значений.


VBoxContainer get_vbox() 🔗

Возвращает VBoxContainer, используемый для отображения файловой системы.

Предупреждение: Это обязательный внутренний узел, его удаление и освобождение может привести к сбою. Если вы хотите скрыть его или любой из его дочерних элементов, используйте их свойство CanvasItem.visible.


void invalidate() 🔗

Уведомить EditorFileDialog, что его представление данных больше не является точным. Обновляет содержимое представления при следующем обновлении представления.


void popup_file_dialog() 🔗

Показывает EditorFileDialog с размером и положением по умолчанию для диалоговых окон файлов в редакторе и выбирает имя файла, если есть текущий файл.


void set_filename_filter(filter: String) 🔗

Устанавливает значение фильтра для имен файлов.


void set_option_default(option: int, default_value_index: int) 🔗

Устанавливает индекс значения по умолчанию для OptionButton или CheckBox с индексом option.


void set_option_name(option: int, name: String) 🔗

Задает имя OptionButton или CheckBox с индексом option.


void set_option_values(option: int, values: PackedStringArray) 🔗

Устанавливает значения параметров OptionButton с индексом option.