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.

NativeMenu

Eredita: Object

Un'interfaccia server per i menu nativi del sistema operativo.

Descrizione

NativeMenu gestisce l'accesso di basso livello alla barra nativa globale dei menu del sistema operativo e ai menu popup.

Nota: Questa è un'API di basso livello, considera di usare MenuBar con MenuBar.prefer_global_menu impostato su true e PopupMenu con PopupMenu.prefer_native_menu impostato su true.

Per creare un menu, usa create_menu(), aggiungi voci di menu usando i metodi add_*_item. Per rimuovere un menu, usa 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():
    # Crea un nuovo menu e aggiungi elementi:
    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():
    # Mostra il menu popup alla posizione del mouse:
    NativeMenu.popup(menu, DisplayServer.mouse_get_position())

func _exit_tree():
    # Rimuovi il menu quando non è più necessario:
    NativeMenu.free_menu(menu)

Metodi

int

add_check_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1)

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)

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)

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)

int

add_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1)

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)

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)

int

add_separator(rid: RID, index: int = -1)

int

add_submenu_item(rid: RID, label: String, submenu_rid: RID, tag: Variant = null, index: int = -1)

void

clear(rid: RID)

RID

create_menu()

int

find_item_index_with_submenu(rid: RID, submenu_rid: RID) const

int

find_item_index_with_tag(rid: RID, tag: Variant) const

int

find_item_index_with_text(rid: RID, text: String) const

void

free_menu(rid: RID)

Key

get_item_accelerator(rid: RID, idx: int) const

Callable

get_item_callback(rid: RID, idx: int) const

int

get_item_count(rid: RID) const

Texture2D

get_item_icon(rid: RID, idx: int) const

int

get_item_indentation_level(rid: RID, idx: int) const

Callable

get_item_key_callback(rid: RID, idx: int) const

int

get_item_max_states(rid: RID, idx: int) const

int

get_item_state(rid: RID, idx: int) const

RID

get_item_submenu(rid: RID, idx: int) const

Variant

get_item_tag(rid: RID, idx: int) const

String

get_item_text(rid: RID, idx: int) const

String

get_item_tooltip(rid: RID, idx: int) const

float

get_minimum_width(rid: RID) const

Callable

get_popup_close_callback(rid: RID) const

Callable

get_popup_open_callback(rid: RID) const

Vector2

get_size(rid: RID) const

RID

get_system_menu(menu_id: SystemMenus) const

String

get_system_menu_name(menu_id: SystemMenus) const

String

get_system_menu_text(menu_id: SystemMenus) const

bool

has_feature(feature: Feature) const

bool

has_menu(rid: RID) const

bool

has_system_menu(menu_id: SystemMenus) const

bool

is_item_checkable(rid: RID, idx: int) const

bool

is_item_checked(rid: RID, idx: int) const

bool

is_item_disabled(rid: RID, idx: int) const

bool

is_item_hidden(rid: RID, idx: int) const

bool

is_item_radio_checkable(rid: RID, idx: int) const

bool

is_opened(rid: RID) const

bool

is_system_menu(rid: RID) const

void

popup(rid: RID, position: Vector2i)

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)

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)


Enumerazioni

enum Feature: 🔗

Feature FEATURE_GLOBAL_MENU = 0

NativeMenu supporta il menu principale globale nativo.

Feature FEATURE_POPUP_MENU = 1

NativeMenu supporta i menu nativi a comparsa.

Feature FEATURE_OPEN_CLOSE_CALLBACK = 2

NativeMenu supporta i callback di apertura e chiusura del menu.

Feature FEATURE_HOVER_CALLBACK = 3

NativeMenu supporta il callback al passaggio del mouse sulle voci del menu.

Feature FEATURE_KEY_CALLBACK = 4

NativeMenu supporta il callback dell'acceleratore/tasto delle voci del menu.


enum SystemMenus: 🔗

SystemMenus INVALID_MENU_ID = 0

ID del menu speciale di sistema non valido.

SystemMenus MAIN_MENU_ID = 1

ID del menu principale globale.

SystemMenus APPLICATION_MENU_ID = 2

ID del menu Applicazione (il primo menu dopo il menu "Apple" su macOS).

SystemMenus WINDOW_MENU_ID = 3

ID del menu "Finestra" (su macOS questo menu include voci comuni di controllo delle finestre e un elenco delle finestre aperte).

SystemMenus HELP_MENU_ID = 4

ID del menu "Aiuto" (su macOS questo menu include la barra di ricerca della guida).

SystemMenus DOCK_MENU_ID = 5

ID del menu di scelta rapida sull'icona del dock (su macOS questo menu include voci comuni di controllo delle applicazioni e un elenco delle finestre aperte).


Descrizioni dei metodi

int add_check_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗

Aggiunge una nuova voce spuntabile con il testo label al menu globale rid.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


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) 🔗

Aggiunge una nuova voce spuntabile con il testo label e l'icona icon al menu globale rid.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


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) 🔗

Aggiunge una nuova voce con il testo label e l'icona icon al menu globale rid.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


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) 🔗

Aggiunge una nuova voce spuntabile di opzione (radio) con il testo label e l'icona icon al menu globale rid.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: Le voci spuntabili mostrano solo un segno di spunta, ma non hanno alcun comportamento di spunta incorporato e devono essere selezionate e deselezionate manualmente. Consulta set_item_checked() per ulteriori informazioni su come controllarle.

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


int add_item(rid: RID, label: String, callback: Callable = Callable(), key_callback: Callable = Callable(), tag: Variant = null, accelerator: Key = 0, index: int = -1) 🔗

Aggiunge una nuova voce con il testo label al menu globale rid.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


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) 🔗

Aggiunge una nuova voce con il testo label al menu globale rid.

Contrariamente alle voci binarie normali, le voci multistato possono avere più di due stati, come definito da max_states. Ogni pressione o attivazione della voce aumenterà lo stato di uno. Il valore predefinito è definito da default_state.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: Come predefinito, non c'è alcuna indicazione sullo stato attuale della voce, la quale dovrebbe essere modificata manualmente.

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


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) 🔗

Aggiunge una nuova voce spuntabile di opzione (radio) con il testo label al menu globale rid.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

È possibile definire un accelerator, ovvero una scorciatoia da tastiera che può essere premuta per attivare il pulsante del menu anche se non è attualmente aperto. Il accelerator è generalmente una combinazione di KeyModifierMask e Key che utilizzano OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: Le voci spuntabili mostrano solo un segno di spunta, ma non hanno alcun comportamento di spunta incorporato e devono essere selezionate e deselezionate manualmente. Consulta set_item_checked() per ulteriori informazioni su come controllarle.

Nota: I chiamabili callback e key_callback devono accettare soltanto un parametro variante, il parametro passato ai chiamabili sarà il valore passato a tag.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Su Windows, accelerator e key_callback sono ignorati.


int add_separator(rid: RID, index: int = -1) 🔗

Aggiunge un separatore tra le voci del menu globale rid. Anche i separatori occupano un indice.

Restituisce l'indice della voce inserita, non è garantito che sia uguale al valore di index.

Nota: Questo metodo è implementato su macOS e Windows.


int add_submenu_item(rid: RID, label: String, submenu_rid: RID, tag: Variant = null, index: int = -1) 🔗

Aggiunge un elemento che fungerà da sottomenu del menu globale rid. L'argomento submenu_rid è il RID del menu globale che sarà mostrato quando si clicca sull'elemento.

Restituisce l'indice dell'elemento inserito, non è garantito che sia uguale al valore di index.

Nota: Questo metodo è implementato su macOS e Windows.


void clear(rid: RID) 🔗

Rimuove tutte le voci dal menu globale rid.

Nota: Questo metodo è implementato su macOS e Windows.


RID create_menu() 🔗

Crea un nuovo oggetto per menù globale.

Nota: Questo metodo è implementato su macOS e Windows.


int find_item_index_with_submenu(rid: RID, submenu_rid: RID) const 🔗

Returns the index of the item with the submenu specified by submenu_rid. Indices are automatically assigned to each item by the engine.

Note: This method is implemented on macOS and Windows.


int find_item_index_with_tag(rid: RID, tag: Variant) const 🔗

Returns the index of the item with the specified tag. Indices are automatically assigned to each item by the engine.

Note: This method is implemented on macOS and Windows.


int find_item_index_with_text(rid: RID, text: String) const 🔗

Returns the index of the item with the specified text. Indices are automatically assigned to each item by the engine.

Note: This method is implemented on macOS and Windows.


void free_menu(rid: RID) 🔗

Libera un oggetto menù globale creato da questo NativeMenu.

Nota: Questo metodo è implementato su macOS e Windows.


Key get_item_accelerator(rid: RID, idx: int) const 🔗

Restituisce l'acceleratore dell'elemento all'indice idx. Gli acceleratori sono combinazioni speciali di tasti che attivano l'elemento, indifferentemente da quale controllo è focalizzato.

Nota: Questo metodo è implementato solo su macOS.


Callable get_item_callback(rid: RID, idx: int) const 🔗

Restituisce il callback dell'elemento all'indice idx.

Nota: Questo metodo è implementato su macOS e Windows.


int get_item_count(rid: RID) const 🔗

Restituisce il numero di voci nel menu globale rid.

Nota: Questo metodo è implementato su macOS e Windows.


Texture2D get_item_icon(rid: RID, idx: int) const 🔗

Restituisce l'icona dell'elemento all'indice idx.

Nota: Questo metodo è implementato su macOS e Windows.


int get_item_indentation_level(rid: RID, idx: int) const 🔗

Restituisce l'offset orizzontale dell'elemento al dato indice idx.

Nota: Questo metodo è implementato solo su macOS.


Callable get_item_key_callback(rid: RID, idx: int) const 🔗

Restituisce il callback dell'acceleratore dell'elemento all'indice idx.

Nota: Questo metodo è implementato solo su macOS.


int get_item_max_states(rid: RID, idx: int) const 🔗

Restituisce il numero di stati di un elemento multistato. Vedi add_multistate_item() per i dettagli.

Nota: Questo metodo è implementato su macOS e Windows.


int get_item_state(rid: RID, idx: int) const 🔗

Restituisce lo stato di un elemento multistato. Vedi add_multistate_item() per i dettagli.

Nota: Questo metodo è implementato su macOS e Windows.


RID get_item_submenu(rid: RID, idx: int) const 🔗

Restituisce l'ID del sottomenu dell'elemento all'indice idx. Consulta add_submenu_item() per ulteriori informazioni su come aggiungere un sottomenu.

Nota: Questo metodo è implementato su macOS e Windows.


Variant get_item_tag(rid: RID, idx: int) const 🔗

Restituisce i metadati dell'elemento specificato, che potrebbero essere di qualsiasi tipo. È possibile impostarli con set_item_tag(), il quale fornisce un modo semplice per assegnare dati di contesto agli elementi.

Nota: Questo metodo è implementato su macOS e Windows.


String get_item_text(rid: RID, idx: int) const 🔗

Restituisce il testo dell'elemento all'indice idx.

Nota: Questo metodo è implementato su macOS e Windows.


String get_item_tooltip(rid: RID, idx: int) const 🔗

Restituisce il tooltip associato all'indice specificato idx.

Nota: Questo metodo è implementato solo su macOS.


float get_minimum_width(rid: RID) const 🔗

Restituisce la larghezza minima del menu globale.

Nota: Questo metodo è implementato solo su macOS.


Callable get_popup_close_callback(rid: RID) const 🔗

Restituisce il callback di chiusura del menu globale.

Nota: Questo metodo è implementato su macOS e Windows.


Callable get_popup_open_callback(rid: RID) const 🔗

Restituisce il callback di apertura del menu globale.

Nota: Questo metodo è implementato solo su macOS.


Vector2 get_size(rid: RID) const 🔗

Restituisce le dimensioni del menu globale.

Nota: Questo metodo è implementato solo su macOS.


RID get_system_menu(menu_id: SystemMenus) const 🔗

Restituisce il RID di un menu speciale di sistema.

Nota: Questo metodo è implementato solo su macOS.


String get_system_menu_name(menu_id: SystemMenus) const 🔗

Restituisce il nome leggibile di un menu speciale di sistema.

Nota: Questo metodo è implementato solo su macOS.


String get_system_menu_text(menu_id: SystemMenus) const 🔗

Returns the text of the system menu item.

Note: This method is implemented on macOS.


bool has_feature(feature: Feature) const 🔗

Restituisce true se la funzionalità feature è supportata dal NativeMenu attuale, altrimenti false.

Nota: Questo metodo è implementato su macOS e Windows.


bool has_menu(rid: RID) const 🔗

Restituisce true se rid è un menu globale valido.

Nota: Questo metodo è implementato su macOS e Windows.


bool has_system_menu(menu_id: SystemMenus) const 🔗

Restituisce true se è supportato un menu speciale di sistema.

Nota: Questo metodo è implementato solo su macOS.


bool is_item_checkable(rid: RID, idx: int) const 🔗

Restituisce true se l'elemento all'indice idx è spuntabile in qualche modo, ad esempio se ha una casella di spunta o un pulsante di scelta (radio).

Nota: Questo metodo è implementato su macOS e Windows.


bool is_item_checked(rid: RID, idx: int) const 🔗

Restituisce true se l'elemento all'indice idx è spuntato.

Nota: Questo metodo è implementato su macOS e Windows.


bool is_item_disabled(rid: RID, idx: int) const 🔗

Restituisce true se l'elemento all'indice idx è disabilitato. Quando è disabilitato, non può essere selezionato e la sua azione non può essere richiamata.

Consulta set_item_disabled() per ulteriori informazioni su come disabilitare un elemento.

Nota: Questo metodo è implementato su macOS e Windows.


bool is_item_hidden(rid: RID, idx: int) const 🔗

Restituisce true se la voce all'indice idx è nascosta.

Vedi set_item_hidden() per ulteriori informazioni su come nascondere una voce.

Nota: Questo metodo è implementato solo su macOS.


bool is_item_radio_checkable(rid: RID, idx: int) const 🔗

Restituisce true se la voce all'indice idx ha la possibilità di essere spuntato in stile pulsante di scelta (radio).

Nota: Questo è puramente estetico; bisogna aggiungere manualmente la logica per spuntare le voci nei gruppi di scelta.

Nota: Questo metodo è implementato su macOS e Windows.


bool is_opened(rid: RID) const 🔗

Restituisce true se il menu è attualmente aperto.

Nota: Questo metodo è implementato solo su macOS.


bool is_system_menu(rid: RID) const 🔗

Restituisce true se il menu globale è un menu speciale di sistema.

Nota: Questo metodo è implementato solo su macOS.


void popup(rid: RID, position: Vector2i) 🔗

Mostra il menù globale alla posizione position in coordinate di schermo.

Nota: Questo metodo è implementato su macOS e Windows.


void remove_item(rid: RID, idx: int) 🔗

Rimuove l'elemento all'indice idx dal menu globale rid.

Nota: Gli indici degli elementi successivi all'elemento rimosso verranno spostati di uno.

Nota: Questo metodo è implementato su macOS e Windows.


void set_interface_direction(rid: RID, is_rtl: bool) 🔗

Imposta la direzione di layout del testo del menu da destra a sinistra se is_rtl è true.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_accelerator(rid: RID, idx: int, keycode: Key) 🔗

Imposta l'acceleratore della voce all'indice idx. keycode può essere un solo valore da Key oppure una combinazione di KeyModifierMask e Key tramite OR bit a bit come KEY_MASK_CTRL | KEY_A (Ctrl + A).

Nota: Questo metodo è implementato solo su macOS.


void set_item_callback(rid: RID, idx: int, callback: Callable) 🔗

Imposta il callback della voce all'indice idx. Il callback viene richiamato quando si preme una voce.

Nota: Il chiamabile callback deve accettare soltanto un parametro variante, il parametro passato al chiamabile sarà il valore passato a tag quando la voce del menu è stata creata.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_checkable(rid: RID, idx: int, checkable: bool) 🔗

Imposta se l'elemento all'indice idx ha una casella di spunta. Se false, imposta il tipo dell'elemento su testo semplice.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_checked(rid: RID, idx: int, checked: bool) 🔗

Imposta lo stato di spunta dell'elemento all'indice idx.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_disabled(rid: RID, idx: int, disabled: bool) 🔗

Abilita/disabilita l'elemento all'indice idx. Quando è disabilitato, non può essere selezionato e la sua azione non può essere richiamata.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_hidden(rid: RID, idx: int, hidden: bool) 🔗

Nasconde o mostra la voce all'indice idx. Quando è nascosta, una voce non appare in un menù e la sua azione non può essere richiamata.

Nota: Questo metodo è implementato solo su macOS.


void set_item_hover_callbacks(rid: RID, idx: int, callback: Callable) 🔗

Imposta il callback della voce all'indice idx. Il callback viene emesso al passaggio del cursore.

Nota: Il chiamabile callback deve accettare soltanto un parametro variante, il parametro passato al chiamabile sarà il valore passato al parametro tag quando la voce del menu è stata creata.

Nota: Questo metodo è implementato solo su macOS.


void set_item_icon(rid: RID, idx: int, icon: Texture2D) 🔗

Sostituisce l'icona Texture2D dell'indice idx specificato.

Nota: Questo metodo è implementato su macOS e Windows.

Nota: Questo metodo non è supportato dalle voci di menu del Dock di macOS.


void set_item_indentation_level(rid: RID, idx: int, level: int) 🔗

Imposta l'offset orizzontale dell'elemento all'indice idx.

Nota: Questo metodo è implementato solo su macOS.


int set_item_index(rid: RID, idx: int, target_idx: int) 🔗

Changes the index of the item at index idx to be at index target_idx. This can be used to move an item above other items.

Returns the new index of the moved item, it's not guaranteed to be the same as target_idx.

Note: The indices of any items between index idx and index target_idx will be shifted by one.

Note: This method is implemented on macOS and Windows.


void set_item_key_callback(rid: RID, idx: int, key_callback: Callable) 🔗

Imposta il callback della voce all'indice idx. Il callback viene emesso quando il suo acceleratore viene attivato.

Nota: Il chiamabile key_callback deve accettare soltanto un parametro variante, il parametro passato al chiamabile sarà il valore passato al parametro tag quando la voce del menu è stata creata.

Nota: Questo metodo è implementato solo su macOS.


void set_item_max_states(rid: RID, idx: int, max_states: int) 🔗

Imposta il numero di stato di un elemento multistato. Vedi add_multistate_item() per i dettagli.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_radio_checkable(rid: RID, idx: int, checkable: bool) 🔗

Imposta il tipo di voce all'indice idx su pulsante di scelta (radio). Se false, imposta il tipo di voce su testo semplice.

Nota: Questo è puramente estetico; bisogna aggiungere manualmente la logica per spuntare le voci nei gruppi di scelta.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_state(rid: RID, idx: int, state: int) 🔗

Restituisce lo stato di un elemento multistato. Vedi add_multistate_item() per i dettagli.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_submenu(rid: RID, idx: int, submenu_rid: RID) 🔗

Imposta il RID del sottomenu dell'elemento all'indice idx. Il sottomenu è un menu globale che verrebbe mostrato quando si clicca sull'elemento.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_tag(rid: RID, idx: int, tag: Variant) 🔗

Imposta i metadati di una voce, che possono essere di qualunque tipo. Puoi ottenerli in seguito con get_item_tag(), che fornisce un modo semplice per assegnare dati di contesto alle voci.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_text(rid: RID, idx: int, text: String) 🔗

Imposta il testo della voce all'indice idx.

Nota: Questo metodo è implementato su macOS e Windows.


void set_item_tooltip(rid: RID, idx: int, tooltip: String) 🔗

Imposta una String tooltip dell'elemento all'indice idx.

Nota: Questo metodo è implementato solo su macOS.


void set_minimum_width(rid: RID, width: float) 🔗

Imposta la larghezza minima del menu globale.

Nota: Questo metodo è implementato solo su macOS.


void set_popup_close_callback(rid: RID, callback: Callable) 🔗

Registri chiamabili da emettere quando il menu sta per essere mostrato.

Nota: Il sistema operativo può simulare l'apertura del menu per tracciare le modifiche alle voci del menu e le scorciatoie globali, nel qual caso il callback di chiusura corrispondente non viene attivato. Utilizza is_opened() per verificare se il menu è attualmente aperto.

Nota: Questo metodo è implementato solo su macOS e Windows.


void set_popup_open_callback(rid: RID, callback: Callable) 🔗

Registra un chiamabile da emettere dopo la chiusura del menu.

Nota: Questo metodo è implementato solo su macOS.


void set_system_menu_text(menu_id: SystemMenus, name: String) 🔗

Sets the text of the system menu item.

Note: This method is implemented on macOS.