class_basebutton.rst 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.
  3. .. _class_BaseButton:
  4. BaseButton
  5. ==========
  6. **Inherits:** :ref:`Control<class_control>` **<** :ref:`CanvasItem<class_canvasitem>` **<** :ref:`Node<class_node>` **<** :ref:`Object<class_object>`
  7. **Inherited By:** :ref:`LinkButton<class_linkbutton>`, :ref:`TextureButton<class_texturebutton>`, :ref:`Button<class_button>`
  8. **Category:** Core
  9. Brief Description
  10. -----------------
  11. Provides a base class for different kinds of buttons.
  12. Member Functions
  13. ----------------
  14. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  15. | void | :ref:`_pressed<class_BaseButton__pressed>` **(** **)** virtual |
  16. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  17. | void | :ref:`_toggled<class_BaseButton__toggled>` **(** :ref:`bool<class_bool>` pressed **)** virtual |
  18. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  19. | :ref:`int<class_int>` | :ref:`get_action_mode<class_BaseButton_get_action_mode>` **(** **)** const |
  20. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  21. | :ref:`Object<class_object>` | :ref:`get_button_group<class_BaseButton_get_button_group>` **(** **)** const |
  22. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  23. | :ref:`int<class_int>` | :ref:`get_draw_mode<class_BaseButton_get_draw_mode>` **(** **)** const |
  24. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  25. | :ref:`int<class_int>` | :ref:`get_enabled_focus_mode<class_BaseButton_get_enabled_focus_mode>` **(** **)** const |
  26. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  27. | :ref:`Object<class_object>` | :ref:`get_shortcut<class_BaseButton_get_shortcut>` **(** **)** const |
  28. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  29. | :ref:`bool<class_bool>` | :ref:`is_disabled<class_BaseButton_is_disabled>` **(** **)** const |
  30. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  31. | :ref:`bool<class_bool>` | :ref:`is_hovered<class_BaseButton_is_hovered>` **(** **)** const |
  32. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  33. | :ref:`bool<class_bool>` | :ref:`is_pressed<class_BaseButton_is_pressed>` **(** **)** const |
  34. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`bool<class_bool>` | :ref:`is_toggle_mode<class_BaseButton_is_toggle_mode>` **(** **)** const |
  36. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  37. | void | :ref:`set_action_mode<class_BaseButton_set_action_mode>` **(** :ref:`int<class_int>` mode **)** |
  38. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  39. | void | :ref:`set_button_group<class_BaseButton_set_button_group>` **(** :ref:`Object<class_object>` button_group **)** |
  40. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  41. | void | :ref:`set_disabled<class_BaseButton_set_disabled>` **(** :ref:`bool<class_bool>` disabled **)** |
  42. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  43. | void | :ref:`set_enabled_focus_mode<class_BaseButton_set_enabled_focus_mode>` **(** :ref:`int<class_int>` mode **)** |
  44. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  45. | void | :ref:`set_pressed<class_BaseButton_set_pressed>` **(** :ref:`bool<class_bool>` pressed **)** |
  46. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  47. | void | :ref:`set_shortcut<class_BaseButton_set_shortcut>` **(** :ref:`Object<class_object>` shortcut **)** |
  48. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  49. | void | :ref:`set_toggle_mode<class_BaseButton_set_toggle_mode>` **(** :ref:`bool<class_bool>` enabled **)** |
  50. +------------------------------+-------------------------------------------------------------------------------------------------------------------+
  51. Signals
  52. -------
  53. - **button_down** **(** **)**
  54. Emitted when the button starts being held down.
  55. - **button_up** **(** **)**
  56. Emitted when the button stops being held down.
  57. - **pressed** **(** **)**
  58. 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).
  59. - **toggled** **(** :ref:`bool<class_bool>` pressed **)**
  60. 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.
  61. Member Variables
  62. ----------------
  63. - :ref:`int<class_int>` **action_mode**
  64. - :ref:`bool<class_bool>` **disabled**
  65. - :ref:`int<class_int>` **enabled_focus_mode**
  66. - :ref:`ButtonGroup<class_buttongroup>` **group**
  67. - :ref:`bool<class_bool>` **is_pressed**
  68. - :ref:`ShortCut<class_shortcut>` **shortcut**
  69. - :ref:`bool<class_bool>` **toggle_mode**
  70. Numeric Constants
  71. -----------------
  72. - **DRAW_NORMAL** = **0** --- The normal state (i.e. not pressed, not hovered, not toggled and enabled) of buttons.
  73. - **DRAW_PRESSED** = **1** --- The state of buttons are pressed.
  74. - **DRAW_HOVER** = **2** --- The state of buttons are hovered.
  75. - **DRAW_DISABLED** = **3** --- The state of buttons are disabled.
  76. - **ACTION_MODE_BUTTON_PRESS** = **0** --- Require just a press to consider the button clicked.
  77. - **ACTION_MODE_BUTTON_RELEASE** = **1** --- Require a press and a subsequent release before considering the button clicked.
  78. Description
  79. -----------
  80. 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.
  81. Member Function Description
  82. ---------------------------
  83. .. _class_BaseButton__pressed:
  84. - void **_pressed** **(** **)** virtual
  85. Called when button is pressed.
  86. .. _class_BaseButton__toggled:
  87. - void **_toggled** **(** :ref:`bool<class_bool>` pressed **)** virtual
  88. Called when button is toggled (only if toggle_mode is active).
  89. .. _class_BaseButton_get_action_mode:
  90. - :ref:`int<class_int>` **get_action_mode** **(** **)** const
  91. Return the current mode of action (see :ref:`set_action_mode<class_BaseButton_set_action_mode>`) (one of the ACTION_MODE\_\* constants).
  92. .. _class_BaseButton_get_button_group:
  93. - :ref:`Object<class_object>` **get_button_group** **(** **)** const
  94. .. _class_BaseButton_get_draw_mode:
  95. - :ref:`int<class_int>` **get_draw_mode** **(** **)** const
  96. 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.
  97. .. _class_BaseButton_get_enabled_focus_mode:
  98. - :ref:`int<class_int>` **get_enabled_focus_mode** **(** **)** const
  99. Returns focus access mode used when switching between enabled/disabled (see :ref:`Control.set_focus_mode<class_Control_set_focus_mode>` and :ref:`set_disabled<class_BaseButton_set_disabled>`).
  100. .. _class_BaseButton_get_shortcut:
  101. - :ref:`Object<class_object>` **get_shortcut** **(** **)** const
  102. .. _class_BaseButton_is_disabled:
  103. - :ref:`bool<class_bool>` **is_disabled** **(** **)** const
  104. Return whether the button is in disabled state (see :ref:`set_disabled<class_BaseButton_set_disabled>`).
  105. .. _class_BaseButton_is_hovered:
  106. - :ref:`bool<class_bool>` **is_hovered** **(** **)** const
  107. Return true if mouse entered the button before it exit.
  108. .. _class_BaseButton_is_pressed:
  109. - :ref:`bool<class_bool>` **is_pressed** **(** **)** const
  110. If toggle_mode is active, return whether the button is toggled. If toggle_mode is not active, return whether the button is pressed down.
  111. .. _class_BaseButton_is_toggle_mode:
  112. - :ref:`bool<class_bool>` **is_toggle_mode** **(** **)** const
  113. Return the toggle_mode property (see :ref:`set_toggle_mode<class_BaseButton_set_toggle_mode>`).
  114. .. _class_BaseButton_set_action_mode:
  115. - void **set_action_mode** **(** :ref:`int<class_int>` mode **)**
  116. Set the current mode of action, determining when the button is considered clicked (see the ACTION_MODE\_\* constants).
  117. .. _class_BaseButton_set_button_group:
  118. - void **set_button_group** **(** :ref:`Object<class_object>` button_group **)**
  119. .. _class_BaseButton_set_disabled:
  120. - void **set_disabled** **(** :ref:`bool<class_bool>` disabled **)**
  121. Set the button into disabled state. When a button is disabled, it can't be clicked or toggled.
  122. .. _class_BaseButton_set_enabled_focus_mode:
  123. - void **set_enabled_focus_mode** **(** :ref:`int<class_int>` mode **)**
  124. Sets the focus access mode to use when switching between enabled/disabled (see :ref:`Control.set_focus_mode<class_Control_set_focus_mode>` and :ref:`set_disabled<class_BaseButton_set_disabled>`).
  125. .. _class_BaseButton_set_pressed:
  126. - void **set_pressed** **(** :ref:`bool<class_bool>` pressed **)**
  127. Set the button to pressed state (only if toggle_mode is active).
  128. .. _class_BaseButton_set_shortcut:
  129. - void **set_shortcut** **(** :ref:`Object<class_object>` shortcut **)**
  130. .. _class_BaseButton_set_toggle_mode:
  131. - void **set_toggle_mode** **(** :ref:`bool<class_bool>` enabled **)**
  132. Set the button toggle_mode property. Toggle mode makes the button flip state between pressed and unpressed each time its area is clicked.