FileDialog
Успадковує: ConfirmationDialog < AcceptDialog < Window < Viewport < Node < Object
Діалогове вікно вибору файлів або каталогів у файловій системі.
Опис
FileDialog - це діалогове вікно, яке використовується для вибору файлів та каталогів у файловій системі. Підтримує фільтрувальні маски. FileDialog автоматично встановлює назву вікна згідно з файл_mode. Якщо ви хочете використовувати користувацьке звання, відключити це за допомогою параметра mode_overrides_title до false.
Властивості
|
||
dialog_hide_on_ok |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
size |
|
|
title |
|
|
|
Методи
void |
add_filter(filter: String, description: String = "") |
void |
add_option(name: String, values: PackedStringArray, default_value_index: int) |
void |
|
void |
|
void |
|
get_option_default(option: int) const |
|
get_option_name(option: int) const |
|
get_option_values(option: int) const |
|
get_selected_options() const |
|
get_vbox() |
|
void |
|
is_customization_flag_enabled(flag: Customization) const |
|
void |
set_customization_flag_enabled(flag: Customization, enabled: bool) |
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) |
Властивості теми
|
||
|
||
|
||
|
||
Сигнали
Увімкніть, коли користувач вибирає каталог.
Увімкніть, коли користувач вибирає файл, натиснувши кнопку OK.
filename_filter_changed(filter: String) 🔗
Видається, коли змінюється фільтр імен файлів.
files_selected(paths: PackedStringArray) 🔗
Увімкнено, коли користувач вибирає декілька файлів.
Переліки
enum FileMode: 🔗
FileMode FILE_MODE_OPEN_FILE = 0
Діалогове вікно дозволяє вибрати один, і тільки один файл.
FileMode FILE_MODE_OPEN_FILES = 1
Діалогове вікно дозволяє вибрати декілька файлів.
FileMode FILE_MODE_OPEN_DIR = 2
Діалогове вікно дозволяє вибрати каталог, вимкнути вибір будь-якого файлу.
FileMode FILE_MODE_OPEN_ANY = 3
Діалогове вікно дозволяє вибрати один файл або каталог.
FileMode FILE_MODE_SAVE_FILE = 4
У діалоговому вікні буде попереджати, коли існує файл.
enum Access: 🔗
Access ACCESS_RESOURCES = 0
Діалогове вікно дозволяє отримати доступ до файлів за допомогою Resource (res://).
Access ACCESS_USERDATA = 1
Діалогове вікно дозволяє отримати доступ до файлів під шляхом даних користувача (user://).
Access ACCESS_FILESYSTEM = 2
Діалогове вікно дозволяє отримати доступ до файлів на всій файловій системі.
enum DisplayMode: 🔗
DisplayMode DISPLAY_THUMBNAILS = 0
У діалоговому вікні файли відображаються у вигляді сітки мініатюр. Використовуйте thumbnail_size, щоб налаштувати їхній розмір.
DisplayMode DISPLAY_LIST = 1
У діалоговому вікні файли відображаються у вигляді списку імен файлів.
enum Customization: 🔗
Вмикає/вимикає видимість кнопки обраного та списку обраного в лівій частині діалогового вікна.
Еквівалентно hidden_files_toggle_enabled.
Customization CUSTOMIZATION_CREATE_FOLDER = 1
Якщо ввімкнено, відображається кнопка для створення нових каталогів (при використанні FILE_MODE_OPEN_DIR, FILE_MODE_OPEN_ANY або FILE_MODE_SAVE_FILE).
Еквівалентно folder_creation_enabled.
Customization CUSTOMIZATION_FILE_FILTER = 2
Якщо ввімкнено, відображається кнопка перемикання фільтра файлів.
Еквівалентно file_filter_toggle_enabled.
Customization CUSTOMIZATION_FILE_SORT = 3
Якщо ввімкнено, відображається кнопка параметрів сортування файлів.
Еквівалентно file_sort_options_enabled.
Customization CUSTOMIZATION_FAVORITES = 4
Якщо ввімкнено, відображається кнопка перемикання обраного та список обраного в лівій частині діалогового вікна.
Еквівалентно favorites_enabled.
Customization CUSTOMIZATION_RECENT = 5
Якщо увімкнено, список нещодавно використаних каталогів відображається у лівій частині діалогового вікна.
Еквівалентно recent_list_enabled.
Customization CUSTOMIZATION_LAYOUT = 6
Якщо ввімкнено, відображається кнопка перемикання розкладки (список/мініатюри).
Еквівалентно layout_toggle_enabled.
Описи властивостей
Область доступу до файлової системи.
Попередження: У веб-збірках FileDialog не може отримати доступ до файлової системи хоста. В ізольованих середовищах Linux та macOS use_native_dialog автоматично використовується для обмеження доступу до файлової системи хоста.
Поточний робочий каталог файлового діалогу.
Примітка: Для рідних діалогів файлів, ця властивість тільки обробляється як підказка, і не може бути поважаний конкретними впровадженнями ОС.
В даний час вибраний файл діалогу файлів.
В даний час вибраний шлях файлу діалогу.
DisplayMode display_mode = 0 🔗
void set_display_mode(value: DisplayMode)
DisplayMode get_display_mode()
Режим відображення списку файлів у діалоговому вікні.
bool favorites_enabled = true 🔗
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо true, відображається кнопка перемикання обраного та список обраного у лівій частині діалогового вікна.
bool file_filter_toggle_enabled = true 🔗
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо true, відображається кнопка перемикання фільтра файлів.
Режим відкриття або збереження діалогового вікна, який впливає на поведінку вибору.
bool file_sort_options_enabled = true 🔗
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо true, відображається кнопка параметрів сортування файлів.
Фільтр імен файлів (незалежний від регістру). Якщо встановлено непорожній рядок, відображатимуться лише файли, які містять цей підрядок. filename_filter користувач може редагувати за допомогою кнопки фільтра у верхній частині діалогового вікна файлу.
Дивіться також filters, який слід використовувати для обмеження типів файлів, які можна вибрати, замість filename_filter, який має встановлювати користувач.
PackedStringArray filters = PackedStringArray() 🔗
void set_filters(value: PackedStringArray)
PackedStringArray get_filters()
Доступні фільтри типів файлів. Кожен рядок фільтра в масиві має бути відформатований таким чином: *.png,*.jpg,*.jpeg;файли зображень;зображення/png,зображення/jpeg. Текст опису фільтра необов’язковий і його можна опустити. Слід завжди встановлювати розширення файлів і тип MIME.
Примітка. Вбудоване діалогове вікно файлів і діалогове вікно файлів Windows підтримують лише розширення файлів, тоді як діалогові вікна файлів Android, Linux і macOS також підтримують типи MIME.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedStringArray for more details.
bool folder_creation_enabled = true 🔗
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо true, відображається кнопка для створення нових каталогів (при використанні FILE_MODE_OPEN_DIR, FILE_MODE_OPEN_ANY або FILE_MODE_SAVE_FILE).
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо true, відображається кнопка перемикання прихованих файлів.
bool layout_toggle_enabled = true 🔗
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо true, відображається кнопка перемикання розкладки (список/мініатюри).
bool mode_overrides_title = true 🔗
Якщо true, змінивши пам'ятний файл_mode майно буде встановлено назву вікна відповідно (наприклад, налаштування file_mode до FILE_MODE_OPEN_FILE змінить назву вікна для "Відкрити файл").
Кількість додаткових OptionButtons і CheckBoxes в діалоговому вікні.
bool recent_list_enabled = true 🔗
void set_customization_flag_enabled(flag: Customization, enabled: bool)
bool is_customization_flag_enabled(flag: Customization) const
Якщо значення true, список нещодавно використаних каталогів відображається у лівій частині діалогового вікна.
Якщо не спрага, то заданий підпам'як буде "роот" цього FileDialog, тобто користувач не зможе перейти до свого батьківського каталогу.
Примітка: Ця властивість ігнорується рідними діалогами файлів.
Якщо true, діалогове вікно покаже приховані файли.
Примітка: Ця властивість ігнорується рідними діалоговими вікнами файлів на Android і Linux.
bool use_native_dialog = false 🔗
Якщо true, і якщо підтримується поточним DisplayServer, замість власного буде використовуватися рідне діалогове вікно ОС.
Примітка: На Android це підтримується лише для пристроїв Android 10+ та під час використання ACCESS_FILESYSTEM. Для режиму доступу ACCESS_RESOURCES та ACCESS_USERDATA система повернеться до власного FileDialog.
Примітка: У Linux та macOS ізольовані програми завжди використовують рідні діалогові вікна для доступу до файлової системи хоста.
Примітка: У macOS ізольовані програми зберігатимуть закладки з областю безпеки, щоб зберегти доступ до відкритих папок протягом кількох сеансів. Використовуйте OS.get_granted_permissions(), щоб отримати список збережених закладок.
Примітка: Рідні діалогові вікна ізольовані від базового процесу, властивості діалогового вікна файлу не можна змінити після того, як діалогове вікно відображається.
Описи методів
void add_filter(filter: String, description: String = "") 🔗
Додає параметр filter для імені файлу, розділеного комами, до FileDialog з необов'язковим description, який обмежує вибір файлів.
filter повинен мати вигляд "filename.extension", де filename та extension можуть бути * для відповідності будь-якому рядку. Фільтри, що починаються з . (тобто пусті імена файлів), не допускаються.
Наприклад, filter з "*.png, *.jpg" та description з "Images" призведе до тексту фільтра "Images (*.png, *.jpg)".
void add_option(name: String, values: PackedStringArray, default_value_index: int) 🔗
Додає додатковий OptionButton до діалогу файлів. Якщо values порожній, то замість цього додається CheckBox.
default_value_index повинен бути індексом значення в values. Якщо values є порожнім, він повинен бути або 1 (увімкнений), або 0 (вимкнений).
void clear_filename_filter() 🔗
Очистіть фільтр імен файлів.
void clear_filters() 🔗
Очистити всі додані фільтри в діалоговому вікні.
void deselect_all() 🔗
Очистити всі вибрані елементи в діалоговому вікні.
Повертає рядок редагування для вибраного файлу.
Налаштування: Це необхідний внутрішній вузол, видаляючи і звільняючи його може призвести до аварії. Якщо ви хочете приховати його або будь-який з своїх дітей, скористайтеся їх CanvasItem.pic.
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() 🔗
Повертає вертикальний контейнер коробки діалогу, користувацькі елементи керування можна додавати до нього.
Попередження: Це необхідний внутрішній вузол, видаляючи і звільняючи його може призвести до аварії. Якщо ви хочете приховати його або будь-який з своїх дітей, скористайтеся їх CanvasItem.pic.
Примітка: Зміни до цієї вершини ігноруються рідними діалогами файлів, використовуйте add_option(), щоб додати користувацькі елементи до діалогу замість.
void invalidate() 🔗
Неоцінити і оновити поточний список вмісту діалогу.
Примітка: Цей метод не робить нічого на рідних діалогах файлів.
bool is_customization_flag_enabled(flag: Customization) const 🔗
Повертає true, якщо вказаний flag увімкнено.
void set_customization_flag_enabled(flag: Customization, enabled: bool) 🔗
Вмикає/вимикає вказане налаштування flag, що дозволяє налаштовувати функції, доступні в цьому FileDialog. Див. Customization для отримання інформації про параметри.
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.
Описи тематичної нерухомості
Color file_disabled_color = Color(1, 1, 1, 0.25) 🔗
Колірний відтінок для відключених файлів (коли FileDialog використовується в режимі відкритої папки).
Color file_icon_color = Color(1, 1, 1, 1) 🔗
Кольорова модуляція наноситься на іконку файлу.
Color folder_icon_color = Color(1, 1, 1, 1) 🔗
Кольорова модуляція наноситься на іконку папки.
Розмір мініатюр, коли ввімкнено DISPLAY_THUMBNAILS.
Спеціальна ікона для стріли.
Спеціальна ікона для створення кнопки папки.
Спеціальна іконка для кнопки улюбленої папки.
Спеціальна піктограма для кнопки переміщення вниз по обраному запису.
Спеціальна піктограма для кнопки переміщення вгору по обраному запису.
Спеціальна ікона для файлів.
Піктограма файлів у режимі мініатюр.
Спеціальна ікона для папок.
Піктограма папок у режимі мініатюр.
Користувальницькі іконки для стрілки.
Піктограма кнопки, яка вмикає режим списку.
Користувальницькі іконки для стрілки папки батьків.
Настроювання іконки для кнопки перевантаження.
Спеціальна піктограма для меню параметрів сортування.
Піктограма кнопки, яка вмикає режим мініатюр.
Texture2D toggle_filename_filter 🔗
Настроювана піктограма для кнопки-перемикача фільтра імен файлів.
Користувальницька ікона для окуляри прихована кнопка.