<?xml version="1.0" encoding="UTF-8" ?>
<class name="MenuButton" inherits="Button" api_type="core" keywords="dropdown" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		A button that brings up a [PopupMenu] when clicked.
	</brief_description>
	<description>
		A button that brings up a [PopupMenu] when clicked. To create new items inside this [PopupMenu], use [code]get_popup().add_item("My Item Name")[/code]. You can also create them directly from Godot editor's inspector.
		See also [BaseButton] which contains common properties and methods associated with this node.
	</description>
	<tutorials>
	</tutorials>
	<methods>
		<method name="get_popup" qualifiers="const">
			<return type="PopupMenu" />
			<description>
				Returns the [PopupMenu] contained in this button.
				[b]Warning:[/b] This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their [member Window.visible] property.
			</description>
		</method>
		<method name="set_disable_shortcuts">
			<return type="void" />
			<param index="0" name="disabled" type="bool" />
			<description>
				If [code]true[/code], shortcuts are disabled and cannot be used to trigger the button.
			</description>
		</method>
		<method name="show_popup">
			<return type="void" />
			<description>
				Adjusts popup position and sizing for the [MenuButton], then shows the [PopupMenu]. Prefer this over using [code]get_popup().popup()[/code].
			</description>
		</method>
	</methods>
	<members>
		<member name="action_mode" type="int" setter="set_action_mode" getter="get_action_mode" overrides="BaseButton" enum="BaseButton.ActionMode" default="0" />
		<member name="flat" type="bool" setter="set_flat" getter="is_flat" overrides="Button" default="true" />
		<member name="focus_mode" type="int" setter="set_focus_mode" getter="get_focus_mode" overrides="Control" enum="Control.FocusMode" default="3" />
		<member name="item_count" type="int" setter="set_item_count" getter="get_item_count" default="0">
			The number of items currently in the list.
		</member>
		<member name="popup/item_{index}/checkable" type="int" setter="" getter="" default="0">
			The checkable item type of the item at [code]index[/code].
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="popup/item_{index}/checked" type="bool" setter="" getter="" default="false">
			If [code]true[/code], the item at [code]index[/code] is checked.
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="popup/item_{index}/disabled" type="bool" setter="" getter="" default="false">
			If [code]true[/code], the item at [code]index[/code] is disabled.
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="popup/item_{index}/icon" type="Texture2D" setter="" getter="">
			The icon of the item at [code]index[/code].
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="popup/item_{index}/id" type="int" setter="" getter="" default="0">
			The ID of the item at [code]index[/code].
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="popup/item_{index}/separator" type="bool" setter="" getter="" default="false">
			If [code]true[/code], the item at [code]index[/code] is a separator.
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="popup/item_{index}/text" type="String" setter="" getter="" default="&quot;&quot;">
			The text of the item at [code]index[/code].
			[b]Note:[/b] [code]index[/code] is a value in the [code]0 .. item_count - 1[/code] range.
		</member>
		<member name="switch_on_hover" type="bool" setter="set_switch_on_hover" getter="is_switch_on_hover" default="false">
			If [code]true[/code], when the cursor hovers above another [MenuButton] within the same parent which also has [member switch_on_hover] enabled, it will close the current [MenuButton] and open the other one.
		</member>
		<member name="toggle_mode" type="bool" setter="set_toggle_mode" getter="is_toggle_mode" overrides="BaseButton" default="true" />
	</members>
	<signals>
		<signal name="about_to_popup">
			<description>
				Emitted when the [PopupMenu] of this MenuButton is about to show.
			</description>
		</signal>
	</signals>
</class>
