class_linkbutton.rst 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the LinkButton.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_LinkButton:
  6. LinkButton
  7. ==========
  8. **Inherits:** :ref:`BaseButton<class_BaseButton>` **<** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  9. Simple button used to represent a link to some resource.
  10. Description
  11. -----------
  12. This kind of button is primarily used when the interaction with the button causes a context change (like linking to a web page).
  13. See also :ref:`BaseButton<class_BaseButton>` which contains common properties and methods associated with this node.
  14. Properties
  15. ----------
  16. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  17. | :ref:`FocusMode<enum_Control_FocusMode>` | focus_mode | ``0`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
  18. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  19. | :ref:`String<class_String>` | :ref:`language<class_LinkButton_property_language>` | ``""`` |
  20. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  21. | :ref:`CursorShape<enum_Control_CursorShape>` | mouse_default_cursor_shape | ``2`` (overrides :ref:`Control<class_Control_property_mouse_default_cursor_shape>`) |
  22. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  23. | :ref:`StructuredTextParser<enum_Control_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_LinkButton_property_structured_text_bidi_override>` | ``0`` |
  24. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  25. | :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_LinkButton_property_structured_text_bidi_override_options>` | ``[]`` |
  26. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  27. | :ref:`String<class_String>` | :ref:`text<class_LinkButton_property_text>` | ``""`` |
  28. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  29. | :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_LinkButton_property_text_direction>` | ``0`` |
  30. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  31. | :ref:`UnderlineMode<enum_LinkButton_UnderlineMode>` | :ref:`underline<class_LinkButton_property_underline>` | ``0`` |
  32. +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  33. Methods
  34. -------
  35. +-----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | void | :ref:`clear_opentype_features<class_LinkButton_method_clear_opentype_features>` **(** **)** |
  37. +-----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`int<class_int>` | :ref:`get_opentype_feature<class_LinkButton_method_get_opentype_feature>` **(** :ref:`String<class_String>` tag **)** |const| |
  39. +-----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  40. | void | :ref:`set_opentype_feature<class_LinkButton_method_set_opentype_feature>` **(** :ref:`String<class_String>` tag, :ref:`int<class_int>` value **)** |
  41. +-----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  42. Theme Properties
  43. ----------------
  44. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  45. | :ref:`Color<class_Color>` | :ref:`font_color<class_LinkButton_theme_color_font_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  46. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  47. | :ref:`Color<class_Color>` | :ref:`font_focus_color<class_LinkButton_theme_color_font_focus_color>` | ``Color(0.95, 0.95, 0.95, 1)`` |
  48. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  49. | :ref:`Color<class_Color>` | :ref:`font_hover_color<class_LinkButton_theme_color_font_hover_color>` | ``Color(0.95, 0.95, 0.95, 1)`` |
  50. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  51. | :ref:`Color<class_Color>` | :ref:`font_outline_color<class_LinkButton_theme_color_font_outline_color>` | ``Color(1, 1, 1, 1)`` |
  52. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  53. | :ref:`Color<class_Color>` | :ref:`font_pressed_color<class_LinkButton_theme_color_font_pressed_color>` | ``Color(1, 1, 1, 1)`` |
  54. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  55. | :ref:`int<class_int>` | :ref:`outline_size<class_LinkButton_theme_constant_outline_size>` | ``0`` |
  56. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  57. | :ref:`int<class_int>` | :ref:`underline_spacing<class_LinkButton_theme_constant_underline_spacing>` | ``2`` |
  58. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  59. | :ref:`Font<class_Font>` | :ref:`font<class_LinkButton_theme_font_font>` | |
  60. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  61. | :ref:`int<class_int>` | :ref:`font_size<class_LinkButton_theme_font_size_font_size>` | |
  62. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  63. | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_LinkButton_theme_style_focus>` | |
  64. +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
  65. Enumerations
  66. ------------
  67. .. _enum_LinkButton_UnderlineMode:
  68. .. _class_LinkButton_constant_UNDERLINE_MODE_ALWAYS:
  69. .. _class_LinkButton_constant_UNDERLINE_MODE_ON_HOVER:
  70. .. _class_LinkButton_constant_UNDERLINE_MODE_NEVER:
  71. enum **UnderlineMode**:
  72. - **UNDERLINE_MODE_ALWAYS** = **0** --- The LinkButton will always show an underline at the bottom of its text.
  73. - **UNDERLINE_MODE_ON_HOVER** = **1** --- The LinkButton will show an underline at the bottom of its text when the mouse cursor is over it.
  74. - **UNDERLINE_MODE_NEVER** = **2** --- The LinkButton will never show an underline at the bottom of its text.
  75. Property Descriptions
  76. ---------------------
  77. .. _class_LinkButton_property_language:
  78. - :ref:`String<class_String>` **language**
  79. +-----------+---------------------+
  80. | *Default* | ``""`` |
  81. +-----------+---------------------+
  82. | *Setter* | set_language(value) |
  83. +-----------+---------------------+
  84. | *Getter* | get_language() |
  85. +-----------+---------------------+
  86. Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead.
  87. ----
  88. .. _class_LinkButton_property_structured_text_bidi_override:
  89. - :ref:`StructuredTextParser<enum_Control_StructuredTextParser>` **structured_text_bidi_override**
  90. +-----------+------------------------------------------+
  91. | *Default* | ``0`` |
  92. +-----------+------------------------------------------+
  93. | *Setter* | set_structured_text_bidi_override(value) |
  94. +-----------+------------------------------------------+
  95. | *Getter* | get_structured_text_bidi_override() |
  96. +-----------+------------------------------------------+
  97. Set BiDi algorithm override for the structured text.
  98. ----
  99. .. _class_LinkButton_property_structured_text_bidi_override_options:
  100. - :ref:`Array<class_Array>` **structured_text_bidi_override_options**
  101. +-----------+--------------------------------------------------+
  102. | *Default* | ``[]`` |
  103. +-----------+--------------------------------------------------+
  104. | *Setter* | set_structured_text_bidi_override_options(value) |
  105. +-----------+--------------------------------------------------+
  106. | *Getter* | get_structured_text_bidi_override_options() |
  107. +-----------+--------------------------------------------------+
  108. Set additional options for BiDi override.
  109. ----
  110. .. _class_LinkButton_property_text:
  111. - :ref:`String<class_String>` **text**
  112. +-----------+-----------------+
  113. | *Default* | ``""`` |
  114. +-----------+-----------------+
  115. | *Setter* | set_text(value) |
  116. +-----------+-----------------+
  117. | *Getter* | get_text() |
  118. +-----------+-----------------+
  119. The button's text that will be displayed inside the button's area.
  120. ----
  121. .. _class_LinkButton_property_text_direction:
  122. - :ref:`TextDirection<enum_Control_TextDirection>` **text_direction**
  123. +-----------+---------------------------+
  124. | *Default* | ``0`` |
  125. +-----------+---------------------------+
  126. | *Setter* | set_text_direction(value) |
  127. +-----------+---------------------------+
  128. | *Getter* | get_text_direction() |
  129. +-----------+---------------------------+
  130. Base text writing direction.
  131. ----
  132. .. _class_LinkButton_property_underline:
  133. - :ref:`UnderlineMode<enum_LinkButton_UnderlineMode>` **underline**
  134. +-----------+---------------------------+
  135. | *Default* | ``0`` |
  136. +-----------+---------------------------+
  137. | *Setter* | set_underline_mode(value) |
  138. +-----------+---------------------------+
  139. | *Getter* | get_underline_mode() |
  140. +-----------+---------------------------+
  141. Determines when to show the underline. See :ref:`UnderlineMode<enum_LinkButton_UnderlineMode>` for options.
  142. Method Descriptions
  143. -------------------
  144. .. _class_LinkButton_method_clear_opentype_features:
  145. - void **clear_opentype_features** **(** **)**
  146. Removes all OpenType features.
  147. ----
  148. .. _class_LinkButton_method_get_opentype_feature:
  149. - :ref:`int<class_int>` **get_opentype_feature** **(** :ref:`String<class_String>` tag **)** |const|
  150. Returns OpenType feature ``tag``.
  151. ----
  152. .. _class_LinkButton_method_set_opentype_feature:
  153. - void **set_opentype_feature** **(** :ref:`String<class_String>` tag, :ref:`int<class_int>` value **)**
  154. Returns OpenType feature ``tag``. More info: `OpenType feature tags <https://docs.microsoft.com/en-us/typography/opentype/spec/featuretags>`__.
  155. Theme Property Descriptions
  156. ---------------------------
  157. .. _class_LinkButton_theme_color_font_color:
  158. - :ref:`Color<class_Color>` **font_color**
  159. +-----------+-----------------------------------+
  160. | *Default* | ``Color(0.875, 0.875, 0.875, 1)`` |
  161. +-----------+-----------------------------------+
  162. Default text :ref:`Color<class_Color>` of the ``LinkButton``.
  163. ----
  164. .. _class_LinkButton_theme_color_font_focus_color:
  165. - :ref:`Color<class_Color>` **font_focus_color**
  166. +-----------+--------------------------------+
  167. | *Default* | ``Color(0.95, 0.95, 0.95, 1)`` |
  168. +-----------+--------------------------------+
  169. Text :ref:`Color<class_Color>` used when the ``LinkButton`` is focused. Only replaces the normal text color of the button. Disabled, hovered, and pressed states take precedence over this color.
  170. ----
  171. .. _class_LinkButton_theme_color_font_hover_color:
  172. - :ref:`Color<class_Color>` **font_hover_color**
  173. +-----------+--------------------------------+
  174. | *Default* | ``Color(0.95, 0.95, 0.95, 1)`` |
  175. +-----------+--------------------------------+
  176. Text :ref:`Color<class_Color>` used when the ``LinkButton`` is being hovered.
  177. ----
  178. .. _class_LinkButton_theme_color_font_outline_color:
  179. - :ref:`Color<class_Color>` **font_outline_color**
  180. +-----------+-----------------------+
  181. | *Default* | ``Color(1, 1, 1, 1)`` |
  182. +-----------+-----------------------+
  183. The tint of text outline of the ``LinkButton``.
  184. ----
  185. .. _class_LinkButton_theme_color_font_pressed_color:
  186. - :ref:`Color<class_Color>` **font_pressed_color**
  187. +-----------+-----------------------+
  188. | *Default* | ``Color(1, 1, 1, 1)`` |
  189. +-----------+-----------------------+
  190. Text :ref:`Color<class_Color>` used when the ``LinkButton`` is being pressed.
  191. ----
  192. .. _class_LinkButton_theme_constant_outline_size:
  193. - :ref:`int<class_int>` **outline_size**
  194. +-----------+-------+
  195. | *Default* | ``0`` |
  196. +-----------+-------+
  197. The size of the text outline.
  198. ----
  199. .. _class_LinkButton_theme_constant_underline_spacing:
  200. - :ref:`int<class_int>` **underline_spacing**
  201. +-----------+-------+
  202. | *Default* | ``2`` |
  203. +-----------+-------+
  204. The vertical space between the baseline of text and the underline.
  205. ----
  206. .. _class_LinkButton_theme_font_font:
  207. - :ref:`Font<class_Font>` **font**
  208. :ref:`Font<class_Font>` of the ``LinkButton``'s text.
  209. ----
  210. .. _class_LinkButton_theme_font_size_font_size:
  211. - :ref:`int<class_int>` **font_size**
  212. Font size of the ``LinkButton``'s text.
  213. ----
  214. .. _class_LinkButton_theme_style_focus:
  215. - :ref:`StyleBox<class_StyleBox>` **focus**
  216. :ref:`StyleBox<class_StyleBox>` used when the ``LinkButton`` is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
  217. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  218. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  219. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  220. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  221. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  222. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`