Base class for different kinds of buttons. BaseButton is the abstract base class for buttons, so it shouldn't be used directly (it doesn't display anything). Other types of buttons inherit from it. Called when the button is pressed. Called when the button is toggled (only if [member toggle_mode] is active). Returns the visual state used to draw the button. This is useful mainly when implementing your own draw code by either overriding _draw() or connecting to "draw" signal. The visual state of the button is defined by the [enum DrawMode] enum. Returns [code]true[/code] if the mouse has entered the button and has not left it yet. Determines when the button is considered clicked, one of the [enum ActionMode] constants. Binary mask to choose which mouse buttons this button will respond to. To allow both left-click and right-click, use [code]BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT[/code]. If [code]true[/code], the button is in disabled state and can't be clicked or toggled. Focus access mode to use when switching between enabled/disabled (see [member Control.focus_mode] and [member disabled]). [ButtonGroup] associated to the button. If [code]true[/code], the button stays pressed when moving the cursor outside the button while pressing it. If [code]true[/code], the button's state is pressed. Means the button is pressed down or toggled (if [member toggle_mode] is active). [ShortCut] associated to the button. If [code]true[/code], the button will add information about its shortcut in the tooltip. If [code]true[/code], the button is in toggle mode. Makes the button flip state between pressed and unpressed each time its area is clicked. Emitted when the button starts being held down. Emitted when the button stops being held down. Emitted when the button is toggled or pressed. This is on [signal button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] and on [signal button_up] otherwise. Emitted when the button was just toggled between pressed and normal states (only if [member toggle_mode] is active). The new state is contained in the [code]button_pressed[/code] argument. The normal state (i.e. not pressed, not hovered, not toggled and enabled) of buttons. The state of buttons are pressed. The state of buttons are hovered. The state of buttons are disabled. The state of buttons are both hovered and pressed. Require just a press to consider the button clicked. Require a press and a subsequent release before considering the button clicked.