godot/doc/classes/PopupMenu.xml

643 lines
25 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="PopupMenu" inherits="Popup" category="Core" version="3.1.2">
<brief_description>
PopupMenu displays a list of options.
</brief_description>
<description>
[PopupMenu] is a [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. If no [code]accel[/code] is provided then the default [code]0[/code] will be assigned to it. See [method get_item_accelerator] for more info on accelerators.
[b]Note:[/b] Checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See [method set_item_checked] for more info on how to control it.
</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>
Adds a new checkable item and assigns the specified [ShortCut] to it. Sets the label of the checkbox to the [ShortCut]'s name.
An [code]id[/code] can optionally be provided. 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. See [method set_item_checked] for more info on how to control it.
</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. If no [code]accel[/code] is provided then the default [code]0[/code] will be assigned to it. See [method get_item_accelerator] for more info on accelerators.
[b]Note:[/b] Checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See [method set_item_checked] for more info on how to control it.
</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>
Adds a new checkable item and assigns the specified [ShortCut] and icon [code]texture[/code] to it. Sets the label of the checkbox to the [ShortCut]'s name.
An [code]id[/code] can optionally be provided. 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. See [method set_item_checked] for more info on how to control it.
</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 ([code]accel[/code]). If no [code]id[/code] is provided, one will be created from the index. If no [code]accel[/code] is provided then the default [code]0[/code] will be assigned to it. See [method get_item_accelerator] for more info on accelerators.
</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>
Adds a new item and assigns the specified [ShortCut] and icon [code]texture[/code] to it. Sets the label of the checkbox to the [ShortCut]'s name.
An [code]id[/code] can optionally be provided. If no [code]id[/code] is provided, one will be created from the index.
</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 ([code]accel[/code]). If no [code]id[/code] is provided, one will be created from the index. If no [code]accel[/code] is provided then the default [code]0[/code] will be assigned to it. See [method get_item_accelerator] for more info on accelerators.
</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>
Adds a new radio button 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. If no [code]accel[/code] is provided then the default [code]0[/code] will be assigned to it. See [method get_item_accelerator] for more info on accelerators.
[b]Note:[/b] Checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See [method set_item_checked] for more info on how to control it.
</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>
Adds a new radio check button and assigns a [ShortCut] to it. Sets the label of the checkbox to the [ShortCut]'s name.
An [code]id[/code] can optionally be provided. 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. See [method set_item_checked] for more info on how to control it.
</description>
</method>
<method name="add_separator">
<return type="void">
</return>
<argument index="0" name="label" type="String" default="&quot;&quot;">
</argument>
<description>
Add 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>
Adds a [ShortCut].
An [code]id[/code] can optionally be provided. If no [code]id[/code] is provided, one will be created from the index.
</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 that will act as a submenu of the parent [PopupMenu] node when clicked. The [code]submenu[/code] argument is the name of the child [PopupMenu] node that will be shown when the item is clicked.
An [code]id[/code] can optionally be provided. If no [code]id[/code] is provided, one will be created from the index.
</description>
</method>
<method name="clear">
<return type="void">
</return>
<description>
Removes all items from the [PopupMenu].
</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 "idx". 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 number of items in the [PopupMenu].
</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 "idx".
</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]. [code]id[/code] can be manually assigned, while index can not.
</description>
</method>
<method name="get_item_index" qualifiers="const">
<return type="int">
</return>
<argument index="0" name="id" type="int">
</argument>
<description>
Returns the index of the item containing the specified [code]id[/code]. Index is automatically assigned to each item by the engine. Index can not be set manualy.
</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 the specified 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>
Returns the [ShortCut] associated with the specified [code]idx[/code] item.
</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]. See [method add_submenu_item] for more info on how to add a submenu.
</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 "idx".
</description>
</method>
<method name="get_item_tooltip" qualifiers="const">
<return type="String">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
Returns the tooltip associated with the specified index index [code]idx[/code].
</description>
</method>
<method name="is_hide_on_window_lose_focus" qualifiers="const">
<return type="bool">
</return>
<description>
Returns whether the popup will be hidden when the window loses focus or not.
</description>
</method>
<method name="is_item_checkable" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
Returns 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.
</description>
</method>
<method name="is_item_checked" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
Returns whether the item at index "idx" 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.
See [method set_item_disabled] for more info on how to disable an item.
</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. See [method add_separator] for more info on how to add a separator.
</description>
</method>
<method name="is_item_shortcut_disabled" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
Returns whether the shortcut of the specified item [code]idx[/code] is disabled or not.
</description>
</method>
<method name="remove_item">
<return type="void">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
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.
</description>
</method>
<method name="set_hide_on_window_lose_focus">
<return type="void">
</return>
<argument index="0" name="enable" type="bool">
</argument>
<description>
Hides the [PopupMenu] when the window loses focus.
</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>
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.
</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. If [code]false[/code], sets the type of the item to plain text.
[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>
Sets the type of the item at the specified index [code]idx[/code] to radio button. If false, sets the type of the item to plain text.
</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. If [code]false[/code], sets the type of the item to plain text.
</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>
Set the checkstate status of the item at index "idx".
</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 "idx" is disabled or not. When it is disabled it can't be selected, or its action 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>
Replaces the [Texture] icon of the specified [code]idx[/code].
</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>
Set the id of the item at index "idx".
</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 might 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>
Sets a [ShortCut] for the specified item [code]idx[/code].
</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>
Disables the [ShortCut] of the specified index [code]idx[/code].
</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>
Set the text of the item at index "idx".
</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>
Sets the [String] tooltip of the item at the specified index [code]idx[/code].
</description>
</method>
<method name="toggle_item_checked">
<return type="void">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
Toggles the check state of the item of the specified index [code]idx[/code].
</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="hide_on_checkable_item_selection" type="bool" setter="set_hide_on_checkable_item_selection" getter="is_hide_on_checkable_item_selection">
If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button is selected.
</member>
<member name="hide_on_item_selection" type="bool" setter="set_hide_on_item_selection" getter="is_hide_on_item_selection">
If [code]true[/code], hides the [PopupMenu] when an item is selected.
</member>
<member name="hide_on_state_item_selection" type="bool" setter="set_hide_on_state_item_selection" getter="is_hide_on_state_item_selection">
If [code]true[/code], hides the [PopupMenu] when a state item is selected.
</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>
This event is emitted when user navigated to an item of some id 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>
This event is emitted when an item of some id is pressed or its accelerator is activated.
</description>
</signal>
<signal name="index_pressed">
<argument index="0" name="index" type="int">
</argument>
<description>
This event is emitted when an item of some index is pressed or its accelerator is activated.
</description>
</signal>
</signals>
<constants>
</constants>
<theme_items>
<theme_item name="checked" type="Texture">
Sets a custom [Texture] icon for [code]checked[/code] state of checkbox items.
</theme_item>
<theme_item name="font" type="Font">
Sets a custom [Font].
</theme_item>
<theme_item name="font_color" type="Color">
Sets a custom [Color] for the [Font].
</theme_item>
<theme_item name="font_color_accel" type="Color">
</theme_item>
<theme_item name="font_color_disabled" type="Color">
Sets a custom [Color] for disabled text.
</theme_item>
<theme_item name="font_color_hover" type="Color">
Sets a custom [Color] for the hovered text.
</theme_item>
<theme_item name="hover" type="StyleBox">
Sets a custom [StyleBox] when the [PopupMenu] is hovered.
</theme_item>
<theme_item name="hseparation" type="int">
Sets the horizontal space separation between each item.
</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">
Sets a custom [StyleBox] for the panel of the [PopupMenu].
</theme_item>
<theme_item name="panel_disabled" type="StyleBox">
Sets a custom [StyleBox] for the panel of the [PopupMenu], when the panel is disabled.
</theme_item>
<theme_item name="radio_checked" type="Texture">
Sets a custom [Texture] icon for [code]checked[/code] of radio button items.
</theme_item>
<theme_item name="radio_unchecked" type="Texture">
Sets a custom [Texture] icon for [code]unchecked[/code] of radio button items.
</theme_item>
<theme_item name="separator" type="StyleBox">
Sets a custom [StyleBox] for separator's.
</theme_item>
<theme_item name="submenu" type="Texture">
Sets a custom [Texture] for submenu's.
</theme_item>
<theme_item name="unchecked" type="Texture">
Sets a custom [Texture] icon for [code]unchecked[/code] of checkbox items.
</theme_item>
<theme_item name="vseparation" type="int">
Sets the vertical space separation between each item.
</theme_item>
</theme_items>
</class>