123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642 |
- <?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="""">
- </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>
|