BaseButton

Inherits: Control < CanvasItem < Node < Object Inherited By: Button, LinkButton, TextureButton Base class for different kinds of buttons.

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.

Properties

Methods

Signals

  • button_down ( ) Emitted when the button starts being held down.

  • button_up ( ) Emitted when the button stops being held down.

  • pressed ( ) button_down if action_mode is ACTION_MODE_BUTTON_PRESS and on button_up otherwise. toggle_mode is active), use toggled instead.

  • toggled ( bool button_pressed ) toggle_mode is active). The new state is contained in the button_pressed argument.

    Enumerations

    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 —- The state of buttons are both hovered and pressed.

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.

    Property Descriptions

  • ActionMode action_mode ActionMode constants.

  • int button_mask Binary mask to choose which mouse buttons this button will respond to. BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT.

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

  • FocusMode enabled_focus_mode Deprecated. This property has been deprecated due to redundancy and will be removed in Godot 4.0. This property no longer has any effect when set. Please use Control.focus_mode instead.

  • ButtonGroup group ButtonGroup associated to the button.

  • bool keep_pressed_outside true, the button stays pressed when moving the cursor outside the button while pressing it. Note: This property only affects the button’s visual appearance. Signals will be emitted at the same moment regardless of this property’s value.

  • bool pressed true, the button’s state is pressed. Means the button is pressed down or toggled (if toggle_mode is active). Only works if toggle_mode is true. Note: Setting pressed will result in toggled to be emitted. If you want to change the pressed state without emitting that signal, use set_pressed_no_signal.

  • ShortCut shortcut ShortCut associated to the button.

  • bool shortcut_in_tooltip true, the button will add information about its shortcut in the tooltip.

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

    Method Descriptions

  • _pressed ( ) virtual toggle_mode is active), use _toggled instead.

  • _toggled ( bool button_pressed ) virtual toggle_mode is active).

  • DrawMode get_draw_mode ( ) const DrawMode enum.

  • bool is_hovered ( ) const true if the mouse has entered the button and has not left it yet.

  • set_pressed_no_signal ( bool pressed ) pressed state of the button, without emitting toggled. Use when you just want to change the state of the button without sending the pressed event (e.g. when initializing scene). Only works if toggle_mode is true. Note: This method doesn’t unpress other buttons in its button group.