PopupMenu

Inherits: Popup < Control < CanvasItem < Node < Object

Category: Core

Brief Description

PopupMenu displays a list of options.

Member Functions

void add_check_item ( String label, int id=-1, int accel=0 )
void add_radio_check_item ( String label, int id=-1, int accel=0 )
void add_check_shortcut ( ShortCut shortcut, int id=-1, bool global=false )
void add_radio_check_shortcut ( ShortCut shortcut, int id=-1, bool global=false )
void add_icon_check_item ( Texture texture, String label, int id=-1, int accel=0 )
void add_icon_radio_check_item ( Texture texture, String label, int id=-1, int accel=0 )
void add_icon_check_shortcut ( Texture texture, ShortCut shortcut, int id=-1, bool global=false )
void add_icon_item ( Texture texture, String label, int id=-1, int accel=0 )
void add_icon_shortcut ( Texture texture, ShortCut shortcut, int id=-1, bool global=false )
void add_item ( String label, int id=-1, int accel=0 )
void add_separator ( )
void add_shortcut ( ShortCut shortcut, int id=-1, bool global=false )
void add_submenu_item ( String label, String submenu, int id=-1 )
void clear ( )
int get_item_accelerator ( int idx ) const
int get_item_count ( ) const
Texture get_item_icon ( int idx ) const
int get_item_id ( int idx ) const
int get_item_index ( int id ) const
Variant get_item_metadata ( int idx ) const
ShortCut get_item_shortcut ( int idx ) const
String get_item_submenu ( int idx ) const
String get_item_text ( int idx ) const
String get_item_tooltip ( int idx ) const
bool is_item_checkable ( int idx ) const
bool is_item_radio_checkable ( int idx ) const
bool is_item_checked ( int idx ) const
bool is_item_disabled ( int idx ) const
bool is_item_separator ( int idx ) const
void remove_item ( int idx )
void set_item_accelerator ( int idx, int accel )
void set_item_as_checkable ( int idx, bool enable )
void set_item_as_radio_checkable ( int idx, bool enable )
void set_item_as_separator ( int idx, bool enable )
void set_item_checked ( int idx, bool checked )
void set_item_disabled ( int idx, bool disabled )
void set_item_icon ( int idx, Texture icon )
void set_item_id ( int idx, int id )
void set_item_metadata ( int idx, Variant metadata )
void set_item_multistate ( int idx, int state )
void set_item_shortcut ( int idx, ShortCut shortcut, bool global=false )
void set_item_submenu ( int idx, String submenu )
void set_item_text ( int idx, String text )
void set_item_tooltip ( int idx, String tooltip )
void toggle_item_checked ( int idx )
void toggle_item_multistate ( int idx )

Signals

  • id_pressed ( int ID )

This event is emitted when an item of some id is pressed or its accelerator is activated.

  • index_pressed ( int index )

This event is emitted when an item of some index is pressed or its accelerator is activated.

Member Variables

  • bool hide_on_checkable_item_selection
  • bool hide_on_item_selection
  • bool hide_on_state_item_selection

Description

PopupMenu is the typical Control that displays a list of options. They are popular in toolbars or context menus.

Member Function Description

  • void add_check_item ( String label, int id=-1, int accel=0 )

Add a new checkable item with text “label”. An id can optionally be provided, as well as an accelerator. If no id is provided, one will be created from the index. Note that checkable items just display a checkmark, but don’t have any built-in checking behavior and must be checked/unchecked manually.

  • void add_radio_check_item ( String label, int id=-1, int accel=0 )

The same as add_check_item but the inserted item will look as a radio button. Remember this is just cosmetic and you have to add the logic for checking/unchecking items in radio groups.

  • void add_check_shortcut ( ShortCut shortcut, int id=-1, bool global=false )
  • void add_radio_check_shortcut ( ShortCut shortcut, int id=-1, bool global=false )

Add a new checkable item with text “label” and icon “texture”. An id can optionally be provided, as well as an accelerator. If no id is provided, one will be

created from the index. Note that checkable items just display a checkmark, but don’t have any built-in checking behavior and must be checked/unchecked manually.

The same as add_icon_check_item but the inserted item will look as a radio button. Remember this is just cosmetic and you have to add the logic for checking/unchecking items in radio groups.

Add a new item with text “label” and icon “texture”. An id can optionally be provided, as well as an accelerator keybinding. If no id is provided, one will be created from the index.

Add a new item with text “label”. An id can optionally be provided, as well as an accelerator keybinding. If no id is provided, one will be created from the index.

  • void add_separator ( )

Add a separator between items. Separators also occupy an index.

Adds an item with a submenu. The submenu is the name of a child PopupMenu node that would be shown when the item is clicked. An id can optionally be provided, but if is isn’t provided, one will be created from the index.

  • void clear ( )

Clear the popup menu, in effect removing all items.

  • int get_item_accelerator ( int idx ) const

Return the accelerator of the item at index “idx”. Accelerators are special combinations of keys that activate the item, no matter which control is focused.

  • int get_item_count ( ) const

Return the amount of items.

Return the icon of the item at index “idx”.

  • int get_item_id ( int idx ) const

Return the id of the item at index “idx”.

  • int get_item_index ( int id ) const

Find and return the index of the item containing a given id.

Return the metadata of an item, which might be of any type. You can set it with set_item_metadata, which provides a simple way of assigning context data to items.

Return the submenu name of the item at index “idx”.

Return the text of the item at index “idx”.

  • bool is_item_checkable ( int idx ) const

Return whether the item at index “idx” is checkable in some way, i.e., whether has a checkbox or radio button. Note that checkable items just display a checkmark or radio button, but don’t have any built-in checking behavior and must be checked/unchecked manually.

  • bool is_item_radio_checkable ( int idx ) const

Return whether the item at index “idx” has radio-button-style checkability. Remember this is just cosmetic and you have to add the logic for checking/unchecking items in radio groups.

  • bool is_item_checked ( int idx ) const

Return whether the item at index “idx” is checked.

  • bool is_item_disabled ( int idx ) const

Return whether the item at index “idx” is disabled. When it is disabled it can’t be selected, or its action invoked.

  • bool is_item_separator ( int idx ) const

Return whether the item is a separator. If it is, it would be displayed as a line.

  • void remove_item ( int idx )

Removes the item at index “idx” from the menu. Note that the indexes of items after the removed item are going to be shifted by one.

  • void set_item_accelerator ( int idx, int accel )

Set the accelerator of the item at index “idx”. Accelerators are special combinations of keys that activate the item, no matter which control is focused.

  • void set_item_as_checkable ( int idx, bool enable )

Set whether the item at index “idx” has a checkbox. Note that checkable items just display a checkmark, but don’t have any built-in checking behavior and must be checked/unchecked manually.

  • void set_item_as_radio_checkable ( int idx, bool enable )

The same as set_item_as_checkable but placing a radio button in case of enabling. If used for disabling, it’s the same.

Remember this is just cosmetic and you have to add the logic for checking/unchecking items in radio groups.

  • void set_item_as_separator ( int idx, bool enable )

Mark the item at index “idx” as a separator, which means that it would be displayed as a mere line.

  • void set_item_checked ( int idx, bool checked )

Set the checkstate status of the item at index “idx”.

  • void set_item_disabled ( int idx, bool disabled )

Sets whether the item at index “idx” is disabled or not. When it is disabled it can’t be selected, or its action invoked.

  • void set_item_id ( int idx, int id )

Set the id of the item at index “idx”.

  • void set_item_metadata ( int idx, Variant metadata )

Sets the metadata of an item, which might be of any type. You can later get it with get_item_metadata, which provides a simple way of assigning context data to items.

  • void set_item_multistate ( int idx, int state )
  • void set_item_submenu ( int idx, String submenu )

Sets the submenu of the item at index “idx”. The submenu is the name of a child PopupMenu node that would be shown when the item is clicked.

  • void set_item_text ( int idx, String text )

Set the text of the item at index “idx”.

  • void set_item_tooltip ( int idx, String tooltip )
  • void toggle_item_checked ( int idx )
  • void toggle_item_multistate ( int idx )