Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
NativeMenu
Успадковує: Object
Інтерфейс сервера для ОС рідних меню.
Опис
NativeMenu обробляє низькорівневий доступ до внутрішньої глобальної панелі меню та спливних меню ОС.
Примітка: Це низькорівневий API, розгляньте можливість використання MenuBar із MenuBar.prefer_global_menu, установленим на true, і PopupMenu з PopupMenu.prefer_native_menu, встановленим на true.
Щоб створити меню, використовуйте create_menu(), додайте пункти меню за допомогою методів add_*_item. Щоб видалити меню, використовуйте free_menu().
var menu
func _menu_callback(item_id):
if item_id == "ITEM_CUT":
cut()
elif item_id == "ITEM_COPY":
copy()
elif item_id == "ITEM_PASTE":
paste()
func _enter_tree():
# Створіть нове меню та додайте елементи:
menu = NativeMenu.create_menu()
NativeMenu.add_item(menu, "Cut", _menu_callback, Callable(), "ITEM_CUT")
NativeMenu.add_item(menu, "Copy", _menu_callback, Callable(), "ITEM_COPY")
NativeMenu.add_separator(menu)
NativeMenu.add_item(menu, "Paste", _menu_callback, Callable(), "ITEM_PASTE")
func _on_button_pressed():
# Показувати спливаюче меню в положенні миші:
NativeMenu.popup(menu, DisplayServer.mouse_get_position())
func _exit_tree():
# Видалити меню, коли воно більше не потрібне:
NativeMenu.free_menu(menu)
Методи
add_check_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_icon_check_item(rid: RID, icon: Texture2D, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_icon_item(rid: RID, icon: Texture2D, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_icon_radio_check_item(rid: RID, icon: Texture2D, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_multistate_item(rid: RID, label: String, max_states: int, default_state: int, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_radio_check_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) |
|
add_separator(rid: RID, index: int = -1) |
|
add_submenu_item(rid: RID, label: String, submenu_rid: RID, tag: Variant = null, index: int = -1) |
|
void |
|
find_item_index_with_submenu(rid: RID, submenu_rid: RID) const |
|
find_item_index_with_tag(rid: RID, tag: Variant) const |
|
find_item_index_with_text(rid: RID, text: String) const |
|
void |
|
get_item_accelerator(rid: RID, idx: int) const |
|
get_item_callback(rid: RID, idx: int) const |
|
get_item_count(rid: RID) const |
|
get_item_icon(rid: RID, idx: int) const |
|
get_item_indentation_level(rid: RID, idx: int) const |
|
get_item_key_callback(rid: RID, idx: int) const |
|
get_item_max_states(rid: RID, idx: int) const |
|
get_item_state(rid: RID, idx: int) const |
|
get_item_submenu(rid: RID, idx: int) const |
|
get_item_tag(rid: RID, idx: int) const |
|
get_item_text(rid: RID, idx: int) const |
|
get_item_tooltip(rid: RID, idx: int) const |
|
get_minimum_width(rid: RID) const |
|
get_popup_close_callback(rid: RID) const |
|
get_popup_open_callback(rid: RID) const |
|
get_system_menu(menu_id: SystemMenus) const |
|
get_system_menu_name(menu_id: SystemMenus) const |
|
get_system_menu_text(menu_id: SystemMenus) const |
|
has_feature(feature: Feature) const |
|
has_system_menu(menu_id: SystemMenus) const |
|
is_item_checkable(rid: RID, idx: int) const |
|
is_item_checked(rid: RID, idx: int) const |
|
is_item_disabled(rid: RID, idx: int) const |
|
is_item_hidden(rid: RID, idx: int) const |
|
is_item_radio_checkable(rid: RID, idx: int) const |
|
is_system_menu(rid: RID) const |
|
void |
|
void |
remove_item(rid: RID, idx: int) |
void |
set_interface_direction(rid: RID, is_rtl: bool) |
void |
set_item_accelerator(rid: RID, idx: int, keycode: Key) |
void |
set_item_callback(rid: RID, idx: int, callback: Callable) |
void |
set_item_checkable(rid: RID, idx: int, checkable: bool) |
void |
set_item_checked(rid: RID, idx: int, checked: bool) |
void |
set_item_disabled(rid: RID, idx: int, disabled: bool) |
void |
set_item_hidden(rid: RID, idx: int, hidden: bool) |
void |
set_item_hover_callbacks(rid: RID, idx: int, callback: Callable) |
void |
set_item_icon(rid: RID, idx: int, icon: Texture2D) |
void |
set_item_indentation_level(rid: RID, idx: int, level: int) |
set_item_index(rid: RID, idx: int, target_idx: int) |
|
void |
set_item_key_callback(rid: RID, idx: int, key_callback: Callable) |
void |
set_item_max_states(rid: RID, idx: int, max_states: int) |
void |
set_item_radio_checkable(rid: RID, idx: int, checkable: bool) |
void |
set_item_state(rid: RID, idx: int, state: int) |
void |
set_item_submenu(rid: RID, idx: int, submenu_rid: RID) |
void |
set_item_tag(rid: RID, idx: int, tag: Variant) |
void |
set_item_text(rid: RID, idx: int, text: String) |
void |
set_item_tooltip(rid: RID, idx: int, tooltip: String) |
void |
set_minimum_width(rid: RID, width: float) |
void |
set_popup_close_callback(rid: RID, callback: Callable) |
void |
set_popup_open_callback(rid: RID, callback: Callable) |
void |
set_system_menu_text(menu_id: SystemMenus, name: String) |
Переліки
enum Feature: 🔗
Feature FEATURE_GLOBAL_MENU = 0
NativeMenu підтримує рідне глобальне меню.
Feature FEATURE_POPUP_MENU = 1
NativeMenu підтримує рідні меню поштових повідомлень.
Feature FEATURE_OPEN_CLOSE_CALLBACK = 2
NativeMenu підтримує меню відкритими та закритими викликами.
Feature FEATURE_HOVER_CALLBACK = 3
NativeMenu підтримує пункт меню hover callback.
Feature FEATURE_KEY_CALLBACK = 4
NativeMenu підтримує пункт меню акселератор/ключний дзвінок.
enum SystemMenus: 🔗
SystemMenus INVALID_MENU_ID = 0
Вказана спеціальна система ID.
SystemMenus MAIN_MENU_ID = 1
Глобальний ідентифікатор головного меню.
SystemMenus APPLICATION_MENU_ID = 2
Додаток (перше меню після меню «Додати» на macOS).
SystemMenus WINDOW_MENU_ID = 3
"Віндов" ідентифікатор меню (на macOS це меню включає стандартні елементи керування вікнами та список відкритих вікон).
SystemMenus HELP_MENU_ID = 4
В меню "Допомога" в меню "Допомога" в меню "Допомогти"".
SystemMenus DOCK_MENU_ID = 5
Dock icon right-click меню ID (на macOS це меню включає в себе стандартні елементи керування додатками і список відкритих вікон).
Описи методів
int add_check_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додати новий зареєстрований пункт з текстом label до глобального меню index.
Повертає індекс вставленого пункту, не гарантується таким же, як index значення.
accelerator може бути визначений, який є клавіатурним ярликом, який можна натиснути, щоб запустити меню кнопка, навіть якщо це не відкрито. accelerator, як правило, поєднання KeyModifierMasks і Key, використовуючи бітум OR, такі як KEY_MASK_CTRL KEY_A (Ctrl + A).
Note: callback і key_callback Увімкнення необхідно приймати саме один параметр Variant, параметр, переданий до Callables, буде значення, передане до tag.
Примітка: Цей метод реалізується на macOS і Windows.
Примітка: На Windows, accelerator і key_callback ігноруються.
int add_icon_check_item(rid: RID, icon: Texture2D, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додає новий елемент-прапорець з текстом label та іконою icon до глобального меню з ID rid.
Повертає індекс вставленого елемента, який може відрізнятися від index.
Можна вказати accelerator, який є комбінацією клавіш, яку можна натиснути, для активації елементу меню навіть якщо меню ще не відкрите. accelerator, як правило, є поєднанням декількох KeyModifierMask і Key за допомогою побітового АБО, таких як KEY_MASK_CTRL | KEY_A (Ctrl + A).
Примітка: Функції callback і key_callback мають приймати рівно один параметр Variant, причому цей параметр буде значенням, переданим до tag.
Примітка: Цей метод реалізується для macOS і Windows.
Примітка: У Windows, accelerator і key_callback будуть проігноровані.
int add_icon_item(rid: RID, icon: Texture2D, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додає новий елемент з текстом label і іконкою icon до глобального меню парам позбутися.
Повертає індекс вставленого пункту, не гарантується таким же, як index значення.
accelerator може бути визначений, який є клавіатурним ярликом, який можна натиснути, щоб запустити меню кнопка, навіть якщо це не відкрито. accelerator, як правило, поєднання KeyModifierMasks і Key, використовуючи бітум OR, такі як KEY_MASK_CTRL КЛЮЧ_A (Ctrl + A).
Примітка: callback і key_callback Увімкнення необхідно приймати саме один параметр Variant, параметр, переданий до Callables, буде значення, передане до tag.
Примітка: Цей метод реалізується на macOS і Windows.
Примітка: На Windows, accelerator і key_callback ігноруються.
int add_icon_radio_check_item(rid: RID, icon: Texture2D, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додає новий елемент-радіокнопка з текстом label та іконкою icon до глобального меню rid.
Повертає індекс вставленого елемента, який може відрізнятися від index.
Можна вказати accelerator, який є комбінацією клавіш, яку можна натиснути, для активації елементу меню навіть якщо меню ще не відкрите. accelerator, як правило, є поєднанням декількох KeyModifierMask і Key за допомогою побітового АБО, таких як KEY_MASK_CTRL | KEY_A (Ctrl + A).
Примітка: Елементи-радіокнопки просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.
Примітка: Функції callback і key_callback мають приймати рівно один параметр Variant, причому цей параметр буде значенням, переданим до tag.
Примітка: Цей метод реалізується для macOS і Windows.
Примітка: У Windows, accelerator і key_callback будуть проігноровані.
int add_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додайте новий елемент з текстом label до глобального меню rid.
Повертає індекс вставленого пункту, не гарантується таким же, як index значення.
accelerator може бути визначений, який є клавіатурним ярликом, який можна натиснути, щоб запустити меню кнопка, навіть якщо це не відкрито. accelerator, як правило, поєднання KeyModifierMask і Key з використанням бітумних OR, таких як KEY_MASK_CTRL Ключ_A (Ctrl + A).
Примітка: callback і key_callback Увімкнення необхідно приймати саме один параметр Variant, параметр, переданий до Callables, буде значення, передане до tag.
Примітка: Цей метод реалізується на macOS і Windows.
Примітка: На Windows, accelerator і key_callback ігноруються.
int add_multistate_item(rid: RID, label: String, max_states: int, default_state: int, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додайте новий елемент з текстом label до глобального меню rid.
Всупереч нормальним бінарним елементам, багатостатеві елементи можуть мати більше двох станів, як визначені max_states. Кожна преса або активація елемента збільшить стан одним. Значення за замовчуванням визначається default_state.
Повертає індекс вставленого пункту, не гарантується таким же, як index значення.
accelerator може бути визначений, який є клавіатурним ярликом, який можна натиснути, щоб запустити меню кнопка, навіть якщо це не відкрито. accelerator, як правило, поєднання KeyModifierMasks і Key, використовуючи бітум OR, такі як KEY_MASK_CTRL КЛЮЧ_A (Ctrl + A).
Примітка: За замовчуванням немає показання поточного стану елемента, його слід змінити вручну.
Примітка: callback і key_callback Увімкнення необхідно приймати саме один параметр Variant, параметр, переданий до Callables, буде значення, передане до tag.
Примітка: Цей метод реалізується на macOS і Windows.
Примітка: на Windows, параметра і key_callback ігноруються.
int add_radio_check_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗
Додає новий елемент-радіокнопка з текстом label до глобального меню rid.
Повертає індекс вставленого елемента, який може відрізнятися від index.
Можна вказати accelerator, який є комбінацією клавіш, яку можна натиснути, для активації елементу меню навіть якщо меню ще не відкрите. accelerator, як правило, є поєднанням декількох KeyModifierMask і Key за допомогою побітового АБО, таких як KEY_MASK_CTRL | KEY_A (Ctrl + A).
Примітка: Елементи-радіокнопки просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.
Примітка: Функції callback і key_callback мають приймати рівно один параметр Variant, причому цей параметр буде значенням, переданим до tag.
Примітка: Цей метод реалізується для macOS і Windows.
Примітка: У Windows, accelerator і key_callback будуть проігноровані.
int add_separator(rid: RID, index: int = -1) 🔗
Додає роздільник між предметами в глобальне меню rid. Сепаратори також займають індекс.
Повертає індекс вставленого пункту, не гарантується таким же, як ``index значення.
[b``Примітка:** Цей метод реалізується на macOS і Windows.
int add_submenu_item(rid: RID, label: String, submenu_rid: RID, tag: Variant = null, index: int = -1) 🔗
Додає елемент, який буде діяти як підменю глобального меню rid. submenu_rid аргумент є RID глобального меню, яке буде показано, коли пункт натискається.
Повертає індекс вставленого пункту, не гарантується таким же, як index значення.
Примітка: Цей метод реалізується на macOS і Windows.
Видаляє всі елементи з глобального меню rid.
Примітка: Цей метод реалізується на macOS і Windows.
Створення нового об’єкту глобального меню.
Примітка: Цей метод реалізується на macOS і Windows.
int find_item_index_with_submenu(rid: RID, submenu_rid: RID) const 🔗
Повертає індекс елемента з підменю, вказаним у параметрі submenu_rid. Індекси автоматично присвоюються кожному елементу движком.
Примітка: Цей метод реалізовано в macOS та Windows.
int find_item_index_with_tag(rid: RID, tag: Variant) const 🔗
Повертає індекс елемента із вказаним тегом tag. Індекси автоматично присвоюються кожному елементу механізмом системи.
Примітка: Цей метод реалізовано в macOS та Windows.
int find_item_index_with_text(rid: RID, text: String) const 🔗
Повертає індекс елемента із вказаним text. Індекси автоматично присвоюються кожному елементу механізмом системи.
Примітка: Цей метод реалізовано в macOS та Windows.
Звільняє глобальний об'єкт меню, створений цим NativeMenu.
Примітка: Цей метод реалізовано в macOS та Windows.
Key get_item_accelerator(rid: RID, idx: int) const 🔗
Повернення акселератора пункту за індексом idx. Прискорювачі - це спеціальні комбінації ключів, які активують предмет, незалежно від того, який контроль фокусується.
Примітка: Цей метод реалізується тільки на macOS.
Callable get_item_callback(rid: RID, idx: int) const 🔗
Повертає обернений виклик елемента за індексом idx.
Примітка: Цей метод реалізується на macOS і Windows.
int get_item_count(rid: RID) const 🔗
Повертаємо кількість предметів у глобальному меню rid.
Примітка: Цей метод реалізується на macOS і Windows.
Texture2D get_item_icon(rid: RID, idx: int) const 🔗
Повертає ікону елемента в індексі idx.
Примітка: Цей метод реалізується на macOS і Windows.
int get_item_indentation_level(rid: RID, idx: int) const 🔗
Повертає горизонтальний зсув елемента на даній idx.
Примітка: Цей метод реалізується тільки на macOS.
Callable get_item_key_callback(rid: RID, idx: int) const 🔗
Повернення виклику прискорювача пункту за індексом idx.
Примітка: Цей метод реалізується тільки на macOS.
int get_item_max_states(rid: RID, idx: int) const 🔗
Повертає кількість станів багатодержавного пункту. Див. add_multistate_item() для деталей.
Примітка: Цей метод реалізується на macOS і Windows.
int get_item_state(rid: RID, idx: int) const 🔗
Повертає стан багатодержавного елемента. Див. add_multistate_item() для деталей.
Примітка: Цей метод реалізується на macOS і Windows.
RID get_item_submenu(rid: RID, idx: int) const 🔗
Повернення субмену на індекс idx. Детальніше про те, як додати підменю.
Примітка: Цей метод реалізується на macOS і Windows.
Variant get_item_tag(rid: RID, idx: int) const 🔗
Повернення метаданих зазначеного елемента, який може бути будь-яким типом. Ви можете встановити його з set_item_tag(), що забезпечує простий спосіб присвоєння контекстних даних до елементів.
Примітка: Цей метод реалізується на macOS і Windows.
String get_item_text(rid: RID, idx: int) const 🔗
Повертає текст пункту за індексом idx.
Примітка: Цей метод реалізується на macOS і Windows.
String get_item_tooltip(rid: RID, idx: int) const 🔗
Повертає інструмент, пов'язаний з вказаним індексом idx.
Примітка: Цей метод реалізується тільки на macOS.
float get_minimum_width(rid: RID) const 🔗
Повернутися до глобального меню мінімальної ширини.
Примітка: Цей метод реалізується тільки на macOS.
Callable get_popup_close_callback(rid: RID) const 🔗
Повертає зворотний виклик із закриття глобального меню.
Примітка. Цей метод реалізовано в macOS і Windows.
Callable get_popup_open_callback(rid: RID) const 🔗
Повертає зворотний виклик відкритого глобального меню.
Примітка. Цей метод реалізовано лише в macOS.
Vector2 get_size(rid: RID) const 🔗
Повертаємо розмір глобального меню.
Примітка: Цей метод реалізується на macOS і Windows.
RID get_system_menu(menu_id: SystemMenus) const 🔗
Повернення RID спеціального меню системи.
Примітка: Цей метод реалізується тільки на macOS.
String get_system_menu_name(menu_id: SystemMenus) const 🔗
Повернення читабельного імені спеціального меню системи.
Примітка: Цей метод реалізується тільки на macOS.
String get_system_menu_text(menu_id: SystemMenus) const 🔗
Повертає текст елемента системного меню.
Примітка: Цей метод реалізовано на macOS.
bool has_feature(feature: Feature) const 🔗
Повертає true, якщо вказаний feature підтримується поточним NativeMenu, в іншому випадку false.
Примітка: Цей метод реалізовано в macOS та Windows.
bool has_menu(rid: RID) const 🔗
Повернення true, якщо rid є чинним глобальним меню.
Примітка: Цей метод реалізується на macOS і Windows.
bool has_system_menu(menu_id: SystemMenus) const 🔗
Повернення true, якщо підтримується спеціальне меню системи.
Примітка: Цей метод реалізується тільки на macOS.
bool is_item_checkable(rid: RID, idx: int) const 🔗
Повертаємо true, якщо пункт в індексі idx перевіряється якось, тобто якщо він має прапорець або радіокнопку.
Примітка: Цей метод реалізується на macOS і Windows.
bool is_item_checked(rid: RID, idx: int) const 🔗
Повертає true, якщо товар у позиції idx відмічено.
Примітка: Цей метод реалізується на macOS і Windows.
bool is_item_disabled(rid: RID, idx: int) const 🔗
Повертає true, якщо товар в індексі idx вимкнено. Коли його вимкнено, він не може бути обраний, а його дія — викликана.
Дивитися set_item_disabled() для подробиць про те, як вимкнути елемент.
Примітка: Цей метод реалізується на macOS і Windows.
bool is_item_hidden(rid: RID, idx: int) const 🔗
Повертаємо true, якщо товар в індексі idx прихований.
Дивитися set_item_hidden() для подробиць про те, як приховати елемент.
Примітка: Цей метод реалізується тільки на macOS.
bool is_item_radio_checkable(rid: RID, idx: int) const 🔗
Повертаємо true, якщо пункт в індексі idx має можливість перевірки кнопки-стиль.
Примітка: Це чисто косметичний, необхідно додати логіку для перевірки/розшуку предметів в радіо групах.
Примітка: Цей метод реалізується на macOS і Windows.
bool is_opened(rid: RID) const 🔗
Повертаємо true, якщо меню вже відкрито.
Примітка: Цей метод реалізується тільки на macOS.
bool is_system_menu(rid: RID) const 🔗
true є глобальним меню.
Примітка: Цей метод реалізується тільки на macOS.
void popup(rid: RID, position: Vector2i) 🔗
Відображається глобальне меню в position в координатах екрана.
Примітка: Цей метод реалізується на macOS і Windows.
void remove_item(rid: RID, idx: int) 🔗
Видаліть пункт в індексі idx з глобального меню rid.
Примітка: Індикатори елементів після вилученого елемента будуть переміщені одним.
Примітка: Цей метод реалізується на macOS і Windows.
void set_interface_direction(rid: RID, is_rtl: bool) 🔗
Встановлює напрямок текстового макета меню з правого вліво, якщо is_rtl true.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_accelerator(rid: RID, idx: int, keycode: Key) 🔗
Встановлює прискорювач елемента за індексом idx. keycode може бути одним Key або комбінацією KeyModifierMask і Key з використанням побітового АБО, наприклад KEY_MASK_CTRL | KEY_A (Ctrl + A).
Примітка: Цей метод реалізовано лише в macOS.
void set_item_callback(rid: RID, idx: int, callback: Callable) 🔗
Встановлює зворотний виклик пункту в індексі idx. Зворотний виклик викликається при натисканні елемента.
Примітка: callback значення має приймати точно один параметр Variant, параметр, що надходить до Callable, буде передано як параметр tag при створенні пункту меню.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_checkable(rid: RID, idx: int, checkable: bool) 🔗
Встановлює, чи є пункт в індексі idx, має прапорець. Якщо false, встановлюємо тип пункту на звичайний текст.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_checked(rid: RID, idx: int, checked: bool) 🔗
Встановлює стан контрольного стану елемента в індексі idx.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_disabled(rid: RID, idx: int, disabled: bool) 🔗
Увімкнути/вимкнути елемент в індексі idx. Коли він вимкнений, він не може бути обраний і його дія не може бути викликана.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_hidden(rid: RID, idx: int, hidden: bool) 🔗
Приховує/показує індекс в індексі idx. Коли він прихований, елемент не з'являється в меню і його дію не можна викликати.
Примітка: Цей метод реалізується тільки на macOS.
void set_item_hover_callbacks(rid: RID, idx: int, callback: Callable) 🔗
Встановлює зворотний виклик пункту в індексі idx. Зворотний виклик викликається при наведенні на елемент.
Note: Callable callback значення, що має прийняти точно один параметр Variant-а, параметр, що надходить до Callable, буде значенням, переданим до параметра tag, при створенні пункту меню.
Примітка: Цей метод реалізується тільки на macOS.
void set_item_icon(rid: RID, idx: int, icon: Texture2D) 🔗
Заміна іконки Texture2D вказаного idx.
Примітка: Цей метод реалізується на macOS і Windows.
Примітка: Цей метод не підтримується пунктами меню macOS Dock.
void set_item_indentation_level(rid: RID, idx: int, level: int) 🔗
Встановлює горизонтальний зсув елемента на даній idx.
Примітка: Цей метод реалізується тільки на macOS.
int set_item_index(rid: RID, idx: int, target_idx: int) 🔗
Змінює індекс елемента з індексу idx на індекс target_idx. Цю функцію можна використовувати для переміщення елемента над іншими елементами.
Повертає новий індекс переміщеного елемента, який не обов'язково буде збігатися з target_idx.
Примітка: Індекси всіх елементів між індексом idx та індексом target_idx будуть зміщені на один.
Примітка: Цей метод реалізовано в macOS та Windows.
void set_item_key_callback(rid: RID, idx: int, key_callback: Callable) 🔗
Встановлює зворотний зв'язок пункту в індексі idx. Під час активації його акселератора видається зворотний дзвінок.
Примітка: key_callback Увімкнено значення, що необхідно прийняти точно один параметр Variant, параметр, що надходить до Callable, буде значення, передане параметру tag при створенні пункту меню.
Примітка: Цей метод реалізується тільки на macOS.
void set_item_max_states(rid: RID, idx: int, max_states: int) 🔗
Встановлює кількість стану багатостатевого елемента. Див. add_multistate_item() для деталей.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_radio_checkable(rid: RID, idx: int, checkable: bool) 🔗
Встановлює тип пункту за вказаним індексом idx на кнопку радіо. Якщо false, встановлюємо тип пункту на звичайний текст.
Примітка: Це чисто косметичний, необхідно додати логіку для перевірки/розшуку предметів в радіо групах.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_state(rid: RID, idx: int, state: int) 🔗
Встановлює стан багатодержавного елемента. Див. add_multistate_item() для деталей.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_submenu(rid: RID, idx: int, submenu_rid: RID) 🔗
Встановлює субмену RID пункту в індексі idx. Підмену є глобальним меню, яке буде показано при натисканні пункту.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_tag(rid: RID, idx: int, tag: Variant) 🔗
Встановлює метадані елемента, який може бути будь-яким типом. Ви можете отримати його за допомогою get_item_tag(), який забезпечує простий спосіб присвоєння контекстних даних до предметів.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_text(rid: RID, idx: int, text: String) 🔗
Встановлює текст елемента в індексі idx.
Примітка: Цей метод реалізується на macOS і Windows.
void set_item_tooltip(rid: RID, idx: int, tooltip: String) 🔗
Налаштовує інструментарій String пункту за вказаним індексом idx.
Примітка: Цей метод реалізується тільки на macOS.
void set_minimum_width(rid: RID, width: float) 🔗
Налаштування мінімальної ширини глобального меню.
Примітка: Цей метод реалізується тільки на macOS.
void set_popup_close_callback(rid: RID, callback: Callable) 🔗
Реєстри, що викликаються, щоб випустити, коли меню ось-ось відобразиться.
Примітка: ОС може імітувати відкриття меню для відстеження змін пунктів меню та глобальних ярликів, у цьому випадку відповідний зворотний виклик закриття не запускається. Використовуйте is_opened(), щоб перевірити, чи відкрито меню в даний момент.
Примітка. Цей метод реалізовано в macOS і Windows.
void set_popup_open_callback(rid: RID, callback: Callable) 🔗
Записи, що випускаються після закінчення меню.
Примітка: Цей метод реалізується тільки на macOS.
void set_system_menu_text(menu_id: SystemMenus, name: String) 🔗
Встановлює текст елемента системного меню.
Примітка: Цей метод реалізовано в macOS.