BaseButton.xml 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <class name="BaseButton" inherits="Control" category="Core" version="3.1">
  3. <brief_description>
  4. Base class for different kinds of buttons.
  5. </brief_description>
  6. <description>
  7. 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.
  8. </description>
  9. <tutorials>
  10. </tutorials>
  11. <demos>
  12. </demos>
  13. <methods>
  14. <method name="_pressed" qualifiers="virtual">
  15. <return type="void">
  16. </return>
  17. <description>
  18. Called when the button is pressed.
  19. </description>
  20. </method>
  21. <method name="_toggled" qualifiers="virtual">
  22. <return type="void">
  23. </return>
  24. <argument index="0" name="button_pressed" type="bool">
  25. </argument>
  26. <description>
  27. Called when the button is toggled (only if toggle_mode is active).
  28. </description>
  29. </method>
  30. <method name="get_draw_mode" qualifiers="const">
  31. <return type="int" enum="BaseButton.DrawMode">
  32. </return>
  33. <description>
  34. 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.
  35. </description>
  36. </method>
  37. <method name="is_hovered" qualifiers="const">
  38. <return type="bool">
  39. </return>
  40. <description>
  41. Return true if the mouse has entered the button and has not left it yet.
  42. </description>
  43. </method>
  44. </methods>
  45. <members>
  46. <member name="action_mode" type="int" setter="set_action_mode" getter="get_action_mode" enum="BaseButton.ActionMode">
  47. Determines when the button is considered clicked, one of the ACTION_MODE_* constants.
  48. </member>
  49. <member name="button_mask" type="int" setter="set_button_mask" getter="get_button_mask">
  50. Binary mask to choose which mouse buttons this button will respond to.
  51. To allow both left-click and right-click, set this to 3, because it's BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT.
  52. </member>
  53. <member name="disabled" type="bool" setter="set_disabled" getter="is_disabled">
  54. If [code]true[/code], the button is in disabled state and can't be clicked or toggled.
  55. </member>
  56. <member name="enabled_focus_mode" type="int" setter="set_enabled_focus_mode" getter="get_enabled_focus_mode" enum="Control.FocusMode">
  57. Focus access mode to use when switching between enabled/disabled (see [method Control.set_focus_mode] and [member disabled]).
  58. </member>
  59. <member name="group" type="ButtonGroup" setter="set_button_group" getter="get_button_group">
  60. [ButtonGroup] associated to the button.
  61. </member>
  62. <member name="pressed" type="bool" setter="set_pressed" getter="is_pressed">
  63. If [code]true[/code], the button's state is pressed. Means the button is pressed down or toggled (if toggle_mode is active).
  64. </member>
  65. <member name="shortcut" type="ShortCut" setter="set_shortcut" getter="get_shortcut">
  66. [Shortcut] associated to the button.
  67. </member>
  68. <member name="shortcut_in_tooltip" type="bool" setter="set_shortcut_in_tooltip" getter="is_shortcut_in_tooltip_enabled">
  69. If [code]true[/code], the button will add information about its shortcut in the tooltip.
  70. </member>
  71. <member name="toggle_mode" type="bool" setter="set_toggle_mode" getter="is_toggle_mode">
  72. 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.
  73. </member>
  74. </members>
  75. <signals>
  76. <signal name="button_down">
  77. <description>
  78. Emitted when the button starts being held down.
  79. </description>
  80. </signal>
  81. <signal name="button_up">
  82. <description>
  83. Emitted when the button stops being held down.
  84. </description>
  85. </signal>
  86. <signal name="pressed">
  87. <description>
  88. This signal is emitted every time the button is toggled or pressed (i.e. activated, so on [code]button_down[/code] if "Click on press" is active and on [code]button_up[/code] otherwise).
  89. </description>
  90. </signal>
  91. <signal name="toggled">
  92. <argument index="0" name="button_pressed" type="bool">
  93. </argument>
  94. <description>
  95. 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 [i]pressed[/i] argument.
  96. </description>
  97. </signal>
  98. </signals>
  99. <constants>
  100. <constant name="DRAW_NORMAL" value="0" enum="DrawMode">
  101. The normal state (i.e. not pressed, not hovered, not toggled and enabled) of buttons.
  102. </constant>
  103. <constant name="DRAW_PRESSED" value="1" enum="DrawMode">
  104. The state of buttons are pressed.
  105. </constant>
  106. <constant name="DRAW_HOVER" value="2" enum="DrawMode">
  107. The state of buttons are hovered.
  108. </constant>
  109. <constant name="DRAW_DISABLED" value="3" enum="DrawMode">
  110. The state of buttons are disabled.
  111. </constant>
  112. <constant name="DRAW_HOVER_PRESSED" value="4" enum="DrawMode">
  113. </constant>
  114. <constant name="ACTION_MODE_BUTTON_PRESS" value="0" enum="ActionMode">
  115. Require just a press to consider the button clicked.
  116. </constant>
  117. <constant name="ACTION_MODE_BUTTON_RELEASE" value="1" enum="ActionMode">
  118. Require a press and a subsequent release before considering the button clicked.
  119. </constant>
  120. </constants>
  121. </class>