BaseButton

Inherits: Control < CanvasItem < Node < Object

Inherited By: LinkButton, TextureButton, Button

Category: Core

Brief Description

Base class for different kinds of buttons.

Methods

void _pressed ( ) virtual
void _toggled ( bool button_pressed ) virtual
DrawMode get_draw_mode ( ) const
bool is_hovered ( ) const

Signals

  • button_down ( )

Emitted when the button starts being held down.

  • button_up ( )

Emitted when the button stops being held down.

  • pressed ( )

This signal is emitted every time the button is toggled or pressed (i.e. activated, so on button_down if “Click on press” is active and on button_up otherwise).

  • toggled ( bool button_pressed )

This signal is emitted when the button was just toggled between pressed and normal states (only if toggle_mode is active). The new state is contained in the pressed argument.

Enumerations

enum ActionMode:

  • ACTION_MODE_BUTTON_PRESS = 0 — Require just a press to consider the button clicked.
  • ACTION_MODE_BUTTON_RELEASE = 1 — Require a press and a subsequent release before considering the button clicked.

enum DrawMode:

  • DRAW_NORMAL = 0 — The normal state (i.e. not pressed, not hovered, not toggled and enabled) of buttons.
  • DRAW_PRESSED = 1 — The state of buttons are pressed.
  • DRAW_HOVER = 2 — The state of buttons are hovered.
  • DRAW_DISABLED = 3 — The state of buttons are disabled.
  • DRAW_HOVER_PRESSED = 4

Description

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.

Property Descriptions

Setter set_action_mode(value)
Getter get_action_mode()

Determines when the button is considered clicked, one of the ACTION_MODE_* constants.

  • int button_mask
Setter set_button_mask(value)
Getter get_button_mask()

Binary mask to choose which mouse buttons this button will respond to.

To allow both left-click and right-click, set this to 3, because it’s BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT.

Setter set_disabled(value)
Getter is_disabled()

If true the button is in disabled state and can’t be clicked or toggled.

Setter set_enabled_focus_mode(value)
Getter get_enabled_focus_mode()

Focus access mode to use when switching between enabled/disabled (see Control.set_focus_mode and disabled).

Setter set_button_group(value)
Getter get_button_group()

ButtonGroup associated to the button.

Setter set_pressed(value)
Getter is_pressed()

If true the button’s state is pressed. Means the button is pressed down or toggled (if toggle_mode is active).

Setter set_shortcut(value)
Getter get_shortcut()

Shortcut associated to the button.

  • bool shortcut_in_tooltip
Setter set_shortcut_in_tooltip(value)
Getter is_shortcut_in_tooltip_enabled()

If true the button will add information about its shortcut in the tooltip.

Setter set_toggle_mode(value)
Getter is_toggle_mode()

If true the button is in toggle mode. Makes the button flip state between pressed and unpressed each time its area is clicked.

Method Descriptions

  • void _pressed ( ) virtual

Called when the button is pressed.

  • void _toggled ( bool button_pressed ) virtual

Called when the button is toggled (only if toggle_mode is active).

Return 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 DRAW_* enum.

  • bool is_hovered ( ) const

Return true if the mouse has entered the button and has not left it yet.