601 lines
20 KiB
XML
601 lines
20 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="PopupMenu" inherits="Popup" category="Core" version="3.2">
|
|
<brief_description>
|
|
PopupMenu displays a list of options.
|
|
</brief_description>
|
|
<description>
|
|
PopupMenu is the typical Control that displays a list of options. They are popular in toolbars or context menus.
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="add_check_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="label" type="String">
|
|
</argument>
|
|
<argument index="1" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="2" name="accel" type="int" default="0">
|
|
</argument>
|
|
<description>
|
|
Adds a new checkable item with text [code]label[/code]. An [code]id[/code] can optionally be provided, as well as an accelerator ([code]accel[/code]). If no [code]id[/code] is provided, one will be created from the index.
|
|
[b]Note:[/b] Checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually.
|
|
</description>
|
|
</method>
|
|
<method name="add_check_shortcut">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="shortcut" type="ShortCut">
|
|
</argument>
|
|
<argument index="1" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="2" name="global" type="bool" default="false">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="add_icon_check_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="texture" type="Texture">
|
|
</argument>
|
|
<argument index="1" name="label" type="String">
|
|
</argument>
|
|
<argument index="2" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="3" name="accel" type="int" default="0">
|
|
</argument>
|
|
<description>
|
|
Adds a new checkable item with text [code]label[/code] and icon [code]texture[/code]. An [code]id[/code] can optionally be provided, as well as an accelerator ([code]accel[/code]). If no [code]id[/code] is provided, one will be created from the index.
|
|
[b]Note:[/b] Checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually.
|
|
</description>
|
|
</method>
|
|
<method name="add_icon_check_shortcut">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="texture" type="Texture">
|
|
</argument>
|
|
<argument index="1" name="shortcut" type="ShortCut">
|
|
</argument>
|
|
<argument index="2" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="3" name="global" type="bool" default="false">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="add_icon_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="texture" type="Texture">
|
|
</argument>
|
|
<argument index="1" name="label" type="String">
|
|
</argument>
|
|
<argument index="2" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="3" name="accel" type="int" default="0">
|
|
</argument>
|
|
<description>
|
|
Adds a new item with text [code]label[/code] and icon [code]texture[/code]. An [code]id[/code] can optionally be provided, as well as an accelerator keybinding ([code]accel[/code]). If no [code]id[/code] is provided, one will be created from the index.
|
|
</description>
|
|
</method>
|
|
<method name="add_icon_shortcut">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="texture" type="Texture">
|
|
</argument>
|
|
<argument index="1" name="shortcut" type="ShortCut">
|
|
</argument>
|
|
<argument index="2" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="3" name="global" type="bool" default="false">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="add_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="label" type="String">
|
|
</argument>
|
|
<argument index="1" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="2" name="accel" type="int" default="0">
|
|
</argument>
|
|
<description>
|
|
Adds a new item with text [code]label[/code]. An [code]id[/code] can optionally be provided, as well as an accelerator keybinding ([code]accel[/code]). If no [code]id[/code] is provided, one will be created from the index.
|
|
</description>
|
|
</method>
|
|
<method name="add_radio_check_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="label" type="String">
|
|
</argument>
|
|
<argument index="1" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="2" name="accel" type="int" default="0">
|
|
</argument>
|
|
<description>
|
|
The same as [method add_check_item], but the inserted item will look as a radio button.
|
|
[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/unchecking items in radio groups.
|
|
</description>
|
|
</method>
|
|
<method name="add_radio_check_shortcut">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="shortcut" type="ShortCut">
|
|
</argument>
|
|
<argument index="1" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="2" name="global" type="bool" default="false">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="add_separator">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="label" type="String" default="""">
|
|
</argument>
|
|
<description>
|
|
Adds a separator between items. Separators also occupy an index.
|
|
</description>
|
|
</method>
|
|
<method name="add_shortcut">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="shortcut" type="ShortCut">
|
|
</argument>
|
|
<argument index="1" name="id" type="int" default="-1">
|
|
</argument>
|
|
<argument index="2" name="global" type="bool" default="false">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="add_submenu_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="label" type="String">
|
|
</argument>
|
|
<argument index="1" name="submenu" type="String">
|
|
</argument>
|
|
<argument index="2" name="id" type="int" default="-1">
|
|
</argument>
|
|
<description>
|
|
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.
|
|
</description>
|
|
</method>
|
|
<method name="clear">
|
|
<return type="void">
|
|
</return>
|
|
<description>
|
|
Clear the popup menu, in effect removing all items.
|
|
</description>
|
|
</method>
|
|
<method name="get_item_accelerator" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the accelerator of the item at index [code]idx[/code]. Accelerators are special combinations of keys that activate the item, no matter which control is focused.
|
|
</description>
|
|
</method>
|
|
<method name="get_item_count" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<description>
|
|
Returns the amount of items.
|
|
</description>
|
|
</method>
|
|
<method name="get_item_icon" qualifiers="const">
|
|
<return type="Texture">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the icon of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_item_id" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the id of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_item_index" qualifiers="const">
|
|
<return type="int">
|
|
</return>
|
|
<argument index="0" name="id" type="int">
|
|
</argument>
|
|
<description>
|
|
Finds and return the index of the item containing a given [code]id[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_item_metadata" qualifiers="const">
|
|
<return type="Variant">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the metadata of an item, which might be of any type. You can set it with [method set_item_metadata], which provides a simple way of assigning context data to items.
|
|
</description>
|
|
</method>
|
|
<method name="get_item_shortcut" qualifiers="const">
|
|
<return type="ShortCut">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="get_item_submenu" qualifiers="const">
|
|
<return type="String">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the submenu name of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_item_text" qualifiers="const">
|
|
<return type="String">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns the text of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="get_item_tooltip" qualifiers="const">
|
|
<return type="String">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="is_hide_on_window_lose_focus" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="is_item_checkable" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns [code]true[/code] if the item at index [code]idx[/code] is checkable in some way, i.e. if it has a checkbox or radio button.
|
|
[b]Note:[/b] Checkable items just display a checkmark or radio button, but don't have any built-in checking behavior and must be checked/unchecked manually.
|
|
</description>
|
|
</method>
|
|
<method name="is_item_checked" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns [code]true[/code] if the item at index [code]idx[/code] is checked.
|
|
</description>
|
|
</method>
|
|
<method name="is_item_disabled" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns [code]true[/code] if the item at index [code]idx[/code] is disabled. When it is disabled it can't be selected, or its action invoked.
|
|
</description>
|
|
</method>
|
|
<method name="is_item_radio_checkable" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns [code]true[/code] if the item at index [code]idx[/code] has radio-button-style checkability.
|
|
[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/unchecking items in radio groups.
|
|
</description>
|
|
</method>
|
|
<method name="is_item_separator" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Returns [code]true[/code] if the item is a separator. If it is, it will be displayed as a line.
|
|
</description>
|
|
</method>
|
|
<method name="is_item_shortcut_disabled" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="remove_item">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
Removes the item at index [code]idx[/code] from the menu.
|
|
[b]Note:[/b] The indices of items after the removed item will be shifted by one.
|
|
</description>
|
|
</method>
|
|
<method name="set_hide_on_window_lose_focus">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="enable" type="bool">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_item_accelerator">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="accel" type="int">
|
|
</argument>
|
|
<description>
|
|
Sets the accelerator of the item at index [code]idx[/code]. Accelerators are special combinations of keys that activate the item, no matter which control is focused.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_as_checkable">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="enable" type="bool">
|
|
</argument>
|
|
<description>
|
|
Sets whether the item at index [code]idx[/code] has a checkbox.
|
|
[b]Note:[/b] Checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_as_radio_checkable">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="enable" type="bool">
|
|
</argument>
|
|
<description>
|
|
The same as [method 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.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_as_separator">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="enable" type="bool">
|
|
</argument>
|
|
<description>
|
|
Mark the item at index [code]idx[/code] as a separator, which means that it would be displayed as a line.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_checked">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="checked" type="bool">
|
|
</argument>
|
|
<description>
|
|
Sets the checkstate status of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="set_item_disabled">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="disabled" type="bool">
|
|
</argument>
|
|
<description>
|
|
Sets whether the item at index [code]idx[/code] is disabled or not. When it is disabled, it can't be selected and its action can't be invoked.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_icon">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="icon" type="Texture">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_item_id">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="id" type="int">
|
|
</argument>
|
|
<description>
|
|
Sets the [code]id[/code] of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="set_item_metadata">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="metadata" type="Variant">
|
|
</argument>
|
|
<description>
|
|
Sets the metadata of an item, which may be of any type. You can later get it with [method get_item_metadata], which provides a simple way of assigning context data to items.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_multistate">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="state" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_item_shortcut">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="shortcut" type="ShortCut">
|
|
</argument>
|
|
<argument index="2" name="global" type="bool" default="false">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_item_shortcut_disabled">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="disabled" type="bool">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="set_item_submenu">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="submenu" type="String">
|
|
</argument>
|
|
<description>
|
|
Sets the submenu of the item at index [code]idx[/code]. The submenu is the name of a child PopupMenu node that would be shown when the item is clicked.
|
|
</description>
|
|
</method>
|
|
<method name="set_item_text">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="text" type="String">
|
|
</argument>
|
|
<description>
|
|
Sets the text of the item at index [code]idx[/code].
|
|
</description>
|
|
</method>
|
|
<method name="set_item_tooltip">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<argument index="1" name="tooltip" type="String">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="toggle_item_checked">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
<method name="toggle_item_multistate">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="idx" type="int">
|
|
</argument>
|
|
<description>
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
<members>
|
|
<member name="allow_search" type="bool" setter="set_allow_search" getter="get_allow_search">
|
|
If [code]true[/code], allows to navigate [PopupMenu] with letter keys. Default value: [code]false[/code].
|
|
</member>
|
|
<member name="hide_on_checkable_item_selection" type="bool" setter="set_hide_on_checkable_item_selection" getter="is_hide_on_checkable_item_selection">
|
|
</member>
|
|
<member name="hide_on_item_selection" type="bool" setter="set_hide_on_item_selection" getter="is_hide_on_item_selection">
|
|
</member>
|
|
<member name="hide_on_state_item_selection" type="bool" setter="set_hide_on_state_item_selection" getter="is_hide_on_state_item_selection">
|
|
</member>
|
|
<member name="submenu_popup_delay" type="float" setter="set_submenu_popup_delay" getter="get_submenu_popup_delay">
|
|
Sets the delay time for the submenu item to popup on mouse hovering. If the popup menu is added as a child of another (acting as a submenu), it will inherit the delay time of the parent menu item. Default value: [code]0.3[/code] seconds.
|
|
</member>
|
|
</members>
|
|
<signals>
|
|
<signal name="id_focused">
|
|
<argument index="0" name="id" type="int">
|
|
</argument>
|
|
<description>
|
|
Emitted when user navigated to an item of some [code]id[/code] using [code]ui_up[/code] or [code]ui_down[/code] action.
|
|
</description>
|
|
</signal>
|
|
<signal name="id_pressed">
|
|
<argument index="0" name="id" type="int">
|
|
</argument>
|
|
<description>
|
|
Emitted when an item of some [code]id[/code] is pressed or its accelerator is activated.
|
|
</description>
|
|
</signal>
|
|
<signal name="index_pressed">
|
|
<argument index="0" name="index" type="int">
|
|
</argument>
|
|
<description>
|
|
Emitted when an item of some [code]index[/code] is pressed or its accelerator is activated.
|
|
</description>
|
|
</signal>
|
|
</signals>
|
|
<constants>
|
|
</constants>
|
|
<theme_items>
|
|
<theme_item name="checked" type="Texture">
|
|
</theme_item>
|
|
<theme_item name="font" type="Font">
|
|
</theme_item>
|
|
<theme_item name="font_color" type="Color">
|
|
</theme_item>
|
|
<theme_item name="font_color_accel" type="Color">
|
|
</theme_item>
|
|
<theme_item name="font_color_disabled" type="Color">
|
|
</theme_item>
|
|
<theme_item name="font_color_hover" type="Color">
|
|
</theme_item>
|
|
<theme_item name="hover" type="StyleBox">
|
|
</theme_item>
|
|
<theme_item name="hseparation" type="int">
|
|
</theme_item>
|
|
<theme_item name="labeled_separator_left" type="StyleBox">
|
|
</theme_item>
|
|
<theme_item name="labeled_separator_right" type="StyleBox">
|
|
</theme_item>
|
|
<theme_item name="panel" type="StyleBox">
|
|
</theme_item>
|
|
<theme_item name="panel_disabled" type="StyleBox">
|
|
</theme_item>
|
|
<theme_item name="radio_checked" type="Texture">
|
|
</theme_item>
|
|
<theme_item name="radio_unchecked" type="Texture">
|
|
</theme_item>
|
|
<theme_item name="separator" type="StyleBox">
|
|
</theme_item>
|
|
<theme_item name="submenu" type="Texture">
|
|
</theme_item>
|
|
<theme_item name="unchecked" type="Texture">
|
|
</theme_item>
|
|
<theme_item name="vseparation" type="int">
|
|
</theme_item>
|
|
</theme_items>
|
|
</class>
|