Files
godot-docs/classes/class_richtextlabel.rst
2023-02-07 17:52:34 +01:00

2274 lines
130 KiB
ReStructuredText

:github_url: hide
.. DO NOT EDIT THIS FILE!!!
.. Generated automatically from Godot engine sources.
.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/RichTextLabel.xml.
.. _class_RichTextLabel:
RichTextLabel
=============
**Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
Label that displays rich text.
.. rst-class:: classref-introduction-group
Description
-----------
Rich text can contain custom text, fonts, images and some basic formatting. The label manages these as an internal tag stack. It also adapts itself to given width/heights.
\ **Note:** Assignments to :ref:`text<class_RichTextLabel_property_text>` clear the tag stack and reconstruct it from the property's contents. Any edits made to :ref:`text<class_RichTextLabel_property_text>` will erase previous edits made from other manual sources such as :ref:`append_text<class_RichTextLabel_method_append_text>` and the ``push_*`` / :ref:`pop<class_RichTextLabel_method_pop>` methods.
\ **Note:** RichTextLabel doesn't support entangled BBCode tags. For example, instead of using ``[b]bold[i]bold italic[/b]italic[/i]``, use ``[b]bold[i]bold italic[/i][/b][i]italic[/i]``.
\ **Note:** ``push_*/pop`` functions won't affect BBCode.
\ **Note:** Unlike :ref:`Label<class_Label>`, RichTextLabel doesn't have a *property* to horizontally align text to the center. Instead, enable :ref:`bbcode_enabled<class_RichTextLabel_property_bbcode_enabled>` and surround the text in a ``[center]`` tag as follows: ``[center]Example[/center]``. There is currently no built-in way to vertically align text either, but this can be emulated by relying on anchors/containers and the :ref:`fit_content<class_RichTextLabel_property_fit_content>` property.
.. rst-class:: classref-introduction-group
Tutorials
---------
- :doc:`BBCode in RichTextLabel <../tutorials/ui/bbcode_in_richtextlabel>`
- `GUI Rich Text/BBcode Demo <https://godotengine.org/asset-library/asset/132>`__
- `OS Test Demo <https://godotengine.org/asset-library/asset/677>`__
.. rst-class:: classref-reftable-group
Properties
----------
.. table::
:widths: auto
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` | :ref:`autowrap_mode<class_RichTextLabel_property_autowrap_mode>` | ``3`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`bbcode_enabled<class_RichTextLabel_property_bbcode_enabled>` | ``false`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | clip_contents | ``true`` (overrides :ref:`Control<class_Control_property_clip_contents>`) |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`context_menu_enabled<class_RichTextLabel_property_context_menu_enabled>` | ``false`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`Array<class_Array>` | :ref:`custom_effects<class_RichTextLabel_property_custom_effects>` | ``[]`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`deselect_on_focus_loss_enabled<class_RichTextLabel_property_deselect_on_focus_loss_enabled>` | ``true`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`fit_content<class_RichTextLabel_property_fit_content>` | ``false`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`hint_underlined<class_RichTextLabel_property_hint_underlined>` | ``true`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`language<class_RichTextLabel_property_language>` | ``""`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`meta_underlined<class_RichTextLabel_property_meta_underlined>` | ``true`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`progress_bar_delay<class_RichTextLabel_property_progress_bar_delay>` | ``1000`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`scroll_active<class_RichTextLabel_property_scroll_active>` | ``true`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`scroll_following<class_RichTextLabel_property_scroll_following>` | ``false`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`selection_enabled<class_RichTextLabel_property_selection_enabled>` | ``false`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`shortcut_keys_enabled<class_RichTextLabel_property_shortcut_keys_enabled>` | ``true`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_RichTextLabel_property_structured_text_bidi_override>` | ``0`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_RichTextLabel_property_structured_text_bidi_override_options>` | ``[]`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`tab_size<class_RichTextLabel_property_tab_size>` | ``4`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`text<class_RichTextLabel_property_text>` | ``""`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_RichTextLabel_property_text_direction>` | ``0`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`threaded<class_RichTextLabel_property_threaded>` | ``false`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`visible_characters<class_RichTextLabel_property_visible_characters>` | ``-1`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` | :ref:`visible_characters_behavior<class_RichTextLabel_property_visible_characters_behavior>` | ``0`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`visible_ratio<class_RichTextLabel_property_visible_ratio>` | ``1.0`` |
+-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
.. rst-class:: classref-reftable-group
Methods
-------
.. table::
:widths: auto
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`add_image<class_RichTextLabel_method_add_image>` **(** :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0) **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`add_text<class_RichTextLabel_method_add_text>` **(** :ref:`String<class_String>` text **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`append_text<class_RichTextLabel_method_append_text>` **(** :ref:`String<class_String>` bbcode **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`clear<class_RichTextLabel_method_clear>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`deselect<class_RichTextLabel_method_deselect>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_character_line<class_RichTextLabel_method_get_character_line>` **(** :ref:`int<class_int>` character **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_character_paragraph<class_RichTextLabel_method_get_character_paragraph>` **(** :ref:`int<class_int>` character **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_content_height<class_RichTextLabel_method_get_content_height>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_content_width<class_RichTextLabel_method_get_content_width>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_line_count<class_RichTextLabel_method_get_line_count>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_line_offset<class_RichTextLabel_method_get_line_offset>` **(** :ref:`int<class_int>` line **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PopupMenu<class_PopupMenu>` | :ref:`get_menu<class_RichTextLabel_method_get_menu>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_paragraph_count<class_RichTextLabel_method_get_paragraph_count>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_paragraph_offset<class_RichTextLabel_method_get_paragraph_offset>` **(** :ref:`int<class_int>` paragraph **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_parsed_text<class_RichTextLabel_method_get_parsed_text>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`get_selected_text<class_RichTextLabel_method_get_selected_text>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_from<class_RichTextLabel_method_get_selection_from>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_selection_to<class_RichTextLabel_method_get_selection_to>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_total_character_count<class_RichTextLabel_method_get_total_character_count>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_RichTextLabel_method_get_v_scroll_bar>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_visible_line_count<class_RichTextLabel_method_get_visible_line_count>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_visible_paragraph_count<class_RichTextLabel_method_get_visible_paragraph_count>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`install_effect<class_RichTextLabel_method_install_effect>` **(** :ref:`Variant<class_Variant>` effect **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_menu_visible<class_RichTextLabel_method_is_menu_visible>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_ready<class_RichTextLabel_method_is_ready>` **(** **)** |const| |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`menu_option<class_RichTextLabel_method_menu_option>` **(** :ref:`int<class_int>` option **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`newline<class_RichTextLabel_method_newline>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`parse_bbcode<class_RichTextLabel_method_parse_bbcode>` **(** :ref:`String<class_String>` bbcode **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Dictionary<class_Dictionary>` | :ref:`parse_expressions_for_values<class_RichTextLabel_method_parse_expressions_for_values>` **(** :ref:`PackedStringArray<class_PackedStringArray>` expressions **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`pop<class_RichTextLabel_method_pop>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_bgcolor<class_RichTextLabel_method_push_bgcolor>` **(** :ref:`Color<class_Color>` bgcolor **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_bold<class_RichTextLabel_method_push_bold>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_bold_italics<class_RichTextLabel_method_push_bold_italics>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_cell<class_RichTextLabel_method_push_cell>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_color<class_RichTextLabel_method_push_color>` **(** :ref:`Color<class_Color>` color **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_customfx<class_RichTextLabel_method_push_customfx>` **(** :ref:`RichTextEffect<class_RichTextEffect>` effect, :ref:`Dictionary<class_Dictionary>` env **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_dropcap<class_RichTextLabel_method_push_dropcap>` **(** :ref:`String<class_String>` string, :ref:`Font<class_Font>` font, :ref:`int<class_int>` size, :ref:`Rect2<class_Rect2>` dropcap_margins=Rect2(0, 0, 0, 0), :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`int<class_int>` outline_size=0, :ref:`Color<class_Color>` outline_color=Color(0, 0, 0, 0) **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_fgcolor<class_RichTextLabel_method_push_fgcolor>` **(** :ref:`Color<class_Color>` fgcolor **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_font<class_RichTextLabel_method_push_font>` **(** :ref:`Font<class_Font>` font, :ref:`int<class_int>` font_size **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_font_size<class_RichTextLabel_method_push_font_size>` **(** :ref:`int<class_int>` font_size **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_hint<class_RichTextLabel_method_push_hint>` **(** :ref:`String<class_String>` description **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_indent<class_RichTextLabel_method_push_indent>` **(** :ref:`int<class_int>` level **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_italics<class_RichTextLabel_method_push_italics>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_list<class_RichTextLabel_method_push_list>` **(** :ref:`int<class_int>` level, :ref:`ListType<enum_RichTextLabel_ListType>` type, :ref:`bool<class_bool>` capitalize **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_meta<class_RichTextLabel_method_push_meta>` **(** :ref:`Variant<class_Variant>` data **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_mono<class_RichTextLabel_method_push_mono>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_normal<class_RichTextLabel_method_push_normal>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_outline_color<class_RichTextLabel_method_push_outline_color>` **(** :ref:`Color<class_Color>` color **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_outline_size<class_RichTextLabel_method_push_outline_size>` **(** :ref:`int<class_int>` outline_size **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_paragraph<class_RichTextLabel_method_push_paragraph>` **(** :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` alignment, :ref:`TextDirection<enum_Control_TextDirection>` base_direction=0, :ref:`String<class_String>` language="", :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` st_parser=0 **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_strikethrough<class_RichTextLabel_method_push_strikethrough>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_table<class_RichTextLabel_method_push_table>` **(** :ref:`int<class_int>` columns, :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=0, :ref:`int<class_int>` align_to_row=-1 **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`push_underline<class_RichTextLabel_method_push_underline>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`remove_paragraph<class_RichTextLabel_method_remove_paragraph>` **(** :ref:`int<class_int>` paragraph **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`scroll_to_line<class_RichTextLabel_method_scroll_to_line>` **(** :ref:`int<class_int>` line **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`scroll_to_paragraph<class_RichTextLabel_method_scroll_to_paragraph>` **(** :ref:`int<class_int>` paragraph **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`scroll_to_selection<class_RichTextLabel_method_scroll_to_selection>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`select_all<class_RichTextLabel_method_select_all>` **(** **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_cell_border_color<class_RichTextLabel_method_set_cell_border_color>` **(** :ref:`Color<class_Color>` color **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_cell_padding<class_RichTextLabel_method_set_cell_padding>` **(** :ref:`Rect2<class_Rect2>` padding **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_cell_row_background_color<class_RichTextLabel_method_set_cell_row_background_color>` **(** :ref:`Color<class_Color>` odd_row_bg, :ref:`Color<class_Color>` even_row_bg **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_cell_size_override<class_RichTextLabel_method_set_cell_size_override>` **(** :ref:`Vector2<class_Vector2>` min_size, :ref:`Vector2<class_Vector2>` max_size **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_table_column_expand<class_RichTextLabel_method_set_table_column_expand>` **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` expand, :ref:`int<class_int>` ratio **)** |
+-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-reftable-group
Theme Properties
----------------
.. table::
:widths: auto
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`default_color<class_RichTextLabel_theme_color_default_color>` | ``Color(1, 1, 1, 1)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`font_outline_color<class_RichTextLabel_theme_color_font_outline_color>` | ``Color(1, 1, 1, 1)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`font_selected_color<class_RichTextLabel_theme_color_font_selected_color>` | ``Color(0, 0, 0, 0)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`font_shadow_color<class_RichTextLabel_theme_color_font_shadow_color>` | ``Color(0, 0, 0, 0)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`selection_color<class_RichTextLabel_theme_color_selection_color>` | ``Color(0.1, 0.1, 1, 0.8)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`table_border<class_RichTextLabel_theme_color_table_border>` | ``Color(0, 0, 0, 0)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`table_even_row_bg<class_RichTextLabel_theme_color_table_even_row_bg>` | ``Color(0, 0, 0, 0)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Color<class_Color>` | :ref:`table_odd_row_bg<class_RichTextLabel_theme_color_table_odd_row_bg>` | ``Color(0, 0, 0, 0)`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`line_separation<class_RichTextLabel_theme_constant_line_separation>` | ``0`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`outline_size<class_RichTextLabel_theme_constant_outline_size>` | ``0`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`shadow_offset_x<class_RichTextLabel_theme_constant_shadow_offset_x>` | ``1`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`shadow_offset_y<class_RichTextLabel_theme_constant_shadow_offset_y>` | ``1`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`shadow_outline_size<class_RichTextLabel_theme_constant_shadow_outline_size>` | ``1`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`table_h_separation<class_RichTextLabel_theme_constant_table_h_separation>` | ``3`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`table_v_separation<class_RichTextLabel_theme_constant_table_v_separation>` | ``3`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`text_highlight_h_padding<class_RichTextLabel_theme_constant_text_highlight_h_padding>` | ``3`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`text_highlight_v_padding<class_RichTextLabel_theme_constant_text_highlight_v_padding>` | ``3`` |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Font<class_Font>` | :ref:`bold_font<class_RichTextLabel_theme_font_bold_font>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Font<class_Font>` | :ref:`bold_italics_font<class_RichTextLabel_theme_font_bold_italics_font>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Font<class_Font>` | :ref:`italics_font<class_RichTextLabel_theme_font_italics_font>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Font<class_Font>` | :ref:`mono_font<class_RichTextLabel_theme_font_mono_font>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`Font<class_Font>` | :ref:`normal_font<class_RichTextLabel_theme_font_normal_font>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`bold_font_size<class_RichTextLabel_theme_font_size_bold_font_size>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`bold_italics_font_size<class_RichTextLabel_theme_font_size_bold_italics_font_size>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`italics_font_size<class_RichTextLabel_theme_font_size_italics_font_size>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`mono_font_size<class_RichTextLabel_theme_font_size_mono_font_size>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`int<class_int>` | :ref:`normal_font_size<class_RichTextLabel_theme_font_size_normal_font_size>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_RichTextLabel_theme_style_focus>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
| :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_RichTextLabel_theme_style_normal>` | |
+---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Signals
-------
.. _class_RichTextLabel_signal_finished:
.. rst-class:: classref-signal
**finished** **(** **)**
Triggered when the document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_signal_meta_clicked:
.. rst-class:: classref-signal
**meta_clicked** **(** :ref:`Variant<class_Variant>` meta **)**
Triggered when the user clicks on content between meta tags. If the meta is defined in text, e.g. ``[url={"data"="hi"}]hi[/url]``, then the parameter for this signal will be a :ref:`String<class_String>` type. If a particular type or an object is desired, the :ref:`push_meta<class_RichTextLabel_method_push_meta>` method must be used to manually insert the data into the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_signal_meta_hover_ended:
.. rst-class:: classref-signal
**meta_hover_ended** **(** :ref:`Variant<class_Variant>` meta **)**
Triggers when the mouse exits a meta tag.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_signal_meta_hover_started:
.. rst-class:: classref-signal
**meta_hover_started** **(** :ref:`Variant<class_Variant>` meta **)**
Triggers when the mouse enters a meta tag.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Enumerations
------------
.. _enum_RichTextLabel_ListType:
.. rst-class:: classref-enumeration
enum **ListType**:
.. _class_RichTextLabel_constant_LIST_NUMBERS:
.. rst-class:: classref-enumeration-constant
:ref:`ListType<enum_RichTextLabel_ListType>` **LIST_NUMBERS** = ``0``
Each list item has a number marker.
.. _class_RichTextLabel_constant_LIST_LETTERS:
.. rst-class:: classref-enumeration-constant
:ref:`ListType<enum_RichTextLabel_ListType>` **LIST_LETTERS** = ``1``
Each list item has a letter marker.
.. _class_RichTextLabel_constant_LIST_ROMAN:
.. rst-class:: classref-enumeration-constant
:ref:`ListType<enum_RichTextLabel_ListType>` **LIST_ROMAN** = ``2``
Each list item has a roman number marker.
.. _class_RichTextLabel_constant_LIST_DOTS:
.. rst-class:: classref-enumeration-constant
:ref:`ListType<enum_RichTextLabel_ListType>` **LIST_DOTS** = ``3``
Each list item has a filled circle marker.
.. rst-class:: classref-item-separator
----
.. _enum_RichTextLabel_ItemType:
.. rst-class:: classref-enumeration
enum **ItemType**:
.. _class_RichTextLabel_constant_ITEM_FRAME:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_FRAME** = ``0``
.. _class_RichTextLabel_constant_ITEM_TEXT:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_TEXT** = ``1``
.. _class_RichTextLabel_constant_ITEM_IMAGE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_IMAGE** = ``2``
.. _class_RichTextLabel_constant_ITEM_NEWLINE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_NEWLINE** = ``3``
.. _class_RichTextLabel_constant_ITEM_FONT:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_FONT** = ``4``
.. _class_RichTextLabel_constant_ITEM_FONT_SIZE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_FONT_SIZE** = ``5``
.. _class_RichTextLabel_constant_ITEM_FONT_FEATURES:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_FONT_FEATURES** = ``6``
.. _class_RichTextLabel_constant_ITEM_COLOR:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_COLOR** = ``7``
.. _class_RichTextLabel_constant_ITEM_OUTLINE_SIZE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_OUTLINE_SIZE** = ``8``
.. _class_RichTextLabel_constant_ITEM_OUTLINE_COLOR:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_OUTLINE_COLOR** = ``9``
.. _class_RichTextLabel_constant_ITEM_UNDERLINE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_UNDERLINE** = ``10``
.. _class_RichTextLabel_constant_ITEM_STRIKETHROUGH:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_STRIKETHROUGH** = ``11``
.. _class_RichTextLabel_constant_ITEM_PARAGRAPH:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_PARAGRAPH** = ``12``
.. _class_RichTextLabel_constant_ITEM_INDENT:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_INDENT** = ``13``
.. _class_RichTextLabel_constant_ITEM_LIST:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_LIST** = ``14``
.. _class_RichTextLabel_constant_ITEM_TABLE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_TABLE** = ``15``
.. _class_RichTextLabel_constant_ITEM_FADE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_FADE** = ``16``
.. _class_RichTextLabel_constant_ITEM_SHAKE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_SHAKE** = ``17``
.. _class_RichTextLabel_constant_ITEM_WAVE:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_WAVE** = ``18``
.. _class_RichTextLabel_constant_ITEM_TORNADO:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_TORNADO** = ``19``
.. _class_RichTextLabel_constant_ITEM_RAINBOW:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_RAINBOW** = ``20``
.. _class_RichTextLabel_constant_ITEM_BGCOLOR:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_BGCOLOR** = ``21``
.. _class_RichTextLabel_constant_ITEM_FGCOLOR:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_FGCOLOR** = ``22``
.. _class_RichTextLabel_constant_ITEM_META:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_META** = ``23``
.. _class_RichTextLabel_constant_ITEM_HINT:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_HINT** = ``24``
.. _class_RichTextLabel_constant_ITEM_DROPCAP:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_DROPCAP** = ``25``
.. _class_RichTextLabel_constant_ITEM_CUSTOMFX:
.. rst-class:: classref-enumeration-constant
:ref:`ItemType<enum_RichTextLabel_ItemType>` **ITEM_CUSTOMFX** = ``26``
.. rst-class:: classref-item-separator
----
.. _enum_RichTextLabel_MenuItems:
.. rst-class:: classref-enumeration
enum **MenuItems**:
.. _class_RichTextLabel_constant_MENU_COPY:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_RichTextLabel_MenuItems>` **MENU_COPY** = ``0``
Copies the selected text.
.. _class_RichTextLabel_constant_MENU_SELECT_ALL:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_RichTextLabel_MenuItems>` **MENU_SELECT_ALL** = ``1``
Selects the whole **RichTextLabel** text.
.. _class_RichTextLabel_constant_MENU_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`MenuItems<enum_RichTextLabel_MenuItems>` **MENU_MAX** = ``2``
Represents the size of the :ref:`MenuItems<enum_RichTextLabel_MenuItems>` enum.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Property Descriptions
---------------------
.. _class_RichTextLabel_property_autowrap_mode:
.. rst-class:: classref-property
:ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **autowrap_mode** = ``3``
.. rst-class:: classref-property-setget
- void **set_autowrap_mode** **(** :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` value **)**
- :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **get_autowrap_mode** **(** **)**
If set to something other than :ref:`TextServer.AUTOWRAP_OFF<class_TextServer_constant_AUTOWRAP_OFF>`, the text gets wrapped inside the node's bounding rectangle. To see how each mode behaves, see :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_bbcode_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **bbcode_enabled** = ``false``
.. rst-class:: classref-property-setget
- void **set_use_bbcode** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_using_bbcode** **(** **)**
If ``true``, the label uses BBCode formatting.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_context_menu_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **context_menu_enabled** = ``false``
.. rst-class:: classref-property-setget
- void **set_context_menu_enabled** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_context_menu_enabled** **(** **)**
If ``true``, a right-click displays the context menu.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_custom_effects:
.. rst-class:: classref-property
:ref:`Array<class_Array>` **custom_effects** = ``[]``
.. rst-class:: classref-property-setget
- void **set_effects** **(** :ref:`Array<class_Array>` value **)**
- :ref:`Array<class_Array>` **get_effects** **(** **)**
The currently installed custom effects. This is an array of :ref:`RichTextEffect<class_RichTextEffect>`\ s.
To add a custom effect, it's more convenient to use :ref:`install_effect<class_RichTextLabel_method_install_effect>`.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_deselect_on_focus_loss_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **deselect_on_focus_loss_enabled** = ``true``
.. rst-class:: classref-property-setget
- void **set_deselect_on_focus_loss_enabled** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_deselect_on_focus_loss_enabled** **(** **)**
If ``true``, the selected text will be deselected when focus is lost.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_fit_content:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **fit_content** = ``false``
.. rst-class:: classref-property-setget
- void **set_fit_content** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_fit_content_enabled** **(** **)**
If ``true``, the label's minimum size will be automatically updated to fit its content, matching the behavior of :ref:`Label<class_Label>`.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_hint_underlined:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **hint_underlined** = ``true``
.. rst-class:: classref-property-setget
- void **set_hint_underline** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_hint_underlined** **(** **)**
If ``true``, the label underlines hint tags such as ``[hint=description]{text}[/hint]``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_language:
.. rst-class:: classref-property
:ref:`String<class_String>` **language** = ``""``
.. rst-class:: classref-property-setget
- void **set_language** **(** :ref:`String<class_String>` value **)**
- :ref:`String<class_String>` **get_language** **(** **)**
Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_meta_underlined:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **meta_underlined** = ``true``
.. rst-class:: classref-property-setget
- void **set_meta_underline** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_meta_underlined** **(** **)**
If ``true``, the label underlines meta tags such as ``[url]{text}[/url]``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_progress_bar_delay:
.. rst-class:: classref-property
:ref:`int<class_int>` **progress_bar_delay** = ``1000``
.. rst-class:: classref-property-setget
- void **set_progress_bar_delay** **(** :ref:`int<class_int>` value **)**
- :ref:`int<class_int>` **get_progress_bar_delay** **(** **)**
The delay after which the loading progress bar is displayed, in milliseconds. Set to ``-1`` to disable progress bar entirely.
\ **Note:** Progress bar is displayed only if :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_scroll_active:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **scroll_active** = ``true``
.. rst-class:: classref-property-setget
- void **set_scroll_active** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_scroll_active** **(** **)**
If ``true``, the scrollbar is visible. Setting this to ``false`` does not block scrolling completely. See :ref:`scroll_to_line<class_RichTextLabel_method_scroll_to_line>`.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_scroll_following:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **scroll_following** = ``false``
.. rst-class:: classref-property-setget
- void **set_scroll_follow** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_scroll_following** **(** **)**
If ``true``, the window scrolls down to display new content automatically.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_selection_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **selection_enabled** = ``false``
.. rst-class:: classref-property-setget
- void **set_selection_enabled** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_selection_enabled** **(** **)**
If ``true``, the label allows text selection.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_shortcut_keys_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **shortcut_keys_enabled** = ``true``
.. rst-class:: classref-property-setget
- void **set_shortcut_keys_enabled** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_shortcut_keys_enabled** **(** **)**
If ``true``, shortcut keys for context menu items are enabled, even if the context menu is disabled.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_structured_text_bidi_override:
.. rst-class:: classref-property
:ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0``
.. rst-class:: classref-property-setget
- void **set_structured_text_bidi_override** **(** :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` value **)**
- :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override** **(** **)**
Set BiDi algorithm override for the structured text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_structured_text_bidi_override_options:
.. rst-class:: classref-property
:ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]``
.. rst-class:: classref-property-setget
- void **set_structured_text_bidi_override_options** **(** :ref:`Array<class_Array>` value **)**
- :ref:`Array<class_Array>` **get_structured_text_bidi_override_options** **(** **)**
Set additional options for BiDi override.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_tab_size:
.. rst-class:: classref-property
:ref:`int<class_int>` **tab_size** = ``4``
.. rst-class:: classref-property-setget
- void **set_tab_size** **(** :ref:`int<class_int>` value **)**
- :ref:`int<class_int>` **get_tab_size** **(** **)**
The number of spaces associated with a single tab length. Does not affect ``\t`` in text tags, only indent tags.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_text:
.. rst-class:: classref-property
:ref:`String<class_String>` **text** = ``""``
.. rst-class:: classref-property-setget
- void **set_text** **(** :ref:`String<class_String>` value **)**
- :ref:`String<class_String>` **get_text** **(** **)**
The label's text in BBCode format. Is not representative of manual modifications to the internal tag stack. Erases changes made by other methods when edited.
\ **Note:** If :ref:`bbcode_enabled<class_RichTextLabel_property_bbcode_enabled>` is ``true``, it is unadvised to use the ``+=`` operator with ``text`` (e.g. ``text += "some string"``) as it replaces the whole text and can cause slowdowns. It will also erase all BBCode that was added to stack using ``push_*`` methods. Use :ref:`append_text<class_RichTextLabel_method_append_text>` for adding text instead, unless you absolutely need to close a tag that was opened in an earlier method call.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_text_direction:
.. rst-class:: classref-property
:ref:`TextDirection<enum_Control_TextDirection>` **text_direction** = ``0``
.. rst-class:: classref-property-setget
- void **set_text_direction** **(** :ref:`TextDirection<enum_Control_TextDirection>` value **)**
- :ref:`TextDirection<enum_Control_TextDirection>` **get_text_direction** **(** **)**
Base text writing direction.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_threaded:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **threaded** = ``false``
.. rst-class:: classref-property-setget
- void **set_threaded** **(** :ref:`bool<class_bool>` value **)**
- :ref:`bool<class_bool>` **is_threaded** **(** **)**
If ``true``, text processing is done in a background thread.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_visible_characters:
.. rst-class:: classref-property
:ref:`int<class_int>` **visible_characters** = ``-1``
.. rst-class:: classref-property-setget
- void **set_visible_characters** **(** :ref:`int<class_int>` value **)**
- :ref:`int<class_int>` **get_visible_characters** **(** **)**
The number of characters to display. If set to ``-1``, all characters are displayed. This can be useful when animating the text appearing in a dialog box.
\ **Note:** Setting this property updates :ref:`visible_ratio<class_RichTextLabel_property_visible_ratio>` accordingly.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_visible_characters_behavior:
.. rst-class:: classref-property
:ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` **visible_characters_behavior** = ``0``
.. rst-class:: classref-property-setget
- void **set_visible_characters_behavior** **(** :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` value **)**
- :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` **get_visible_characters_behavior** **(** **)**
Sets the clipping behavior when :ref:`visible_characters<class_RichTextLabel_property_visible_characters>` or :ref:`visible_ratio<class_RichTextLabel_property_visible_ratio>` is set. See :ref:`VisibleCharactersBehavior<enum_TextServer_VisibleCharactersBehavior>` for more info.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_property_visible_ratio:
.. rst-class:: classref-property
:ref:`float<class_float>` **visible_ratio** = ``1.0``
.. rst-class:: classref-property-setget
- void **set_visible_ratio** **(** :ref:`float<class_float>` value **)**
- :ref:`float<class_float>` **get_visible_ratio** **(** **)**
The fraction of characters to display, relative to the total number of characters (see :ref:`get_total_character_count<class_RichTextLabel_method_get_total_character_count>`). If set to ``1.0``, all characters are displayed. If set to ``0.5``, only half of the characters will be displayed. This can be useful when animating the text appearing in a dialog box.
\ **Note:** Setting this property updates :ref:`visible_characters<class_RichTextLabel_property_visible_characters>` accordingly.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Method Descriptions
-------------------
.. _class_RichTextLabel_method_add_image:
.. rst-class:: classref-method
void **add_image** **(** :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0) **)**
Adds an image's opening and closing tags to the tag stack, optionally providing a ``width`` and ``height`` to resize the image, a ``color`` to tint the image and a ``region`` to only use parts of the image.
If ``width`` or ``height`` is set to 0, the image size will be adjusted in order to keep the original aspect ratio.
If ``width`` and ``height`` are not set, but ``region`` is, the region's rect will be used.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_add_text:
.. rst-class:: classref-method
void **add_text** **(** :ref:`String<class_String>` text **)**
Adds raw non-BBCode-parsed text to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_append_text:
.. rst-class:: classref-method
void **append_text** **(** :ref:`String<class_String>` bbcode **)**
Parses ``bbcode`` and adds tags to the tag stack as needed.
\ **Note:** Using this method, you can't close a tag that was opened in a previous :ref:`append_text<class_RichTextLabel_method_append_text>` call. This is done to improve performance, especially when updating large RichTextLabels since rebuilding the whole BBCode every time would be slower. If you absolutely need to close a tag in a future method call, append the :ref:`text<class_RichTextLabel_property_text>` instead of using :ref:`append_text<class_RichTextLabel_method_append_text>`.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_clear:
.. rst-class:: classref-method
void **clear** **(** **)**
Clears the tag stack and sets :ref:`text<class_RichTextLabel_property_text>` to an empty string.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_deselect:
.. rst-class:: classref-method
void **deselect** **(** **)**
Clears the current selection.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_character_line:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_character_line** **(** :ref:`int<class_int>` character **)**
Returns the line number of the character position provided.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_character_paragraph:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_character_paragraph** **(** :ref:`int<class_int>` character **)**
Returns the paragraph number of the character position provided.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_content_height:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_content_height** **(** **)** |const|
Returns the height of the content.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_content_width:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_content_width** **(** **)** |const|
Returns the width of the content.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_line_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_line_count** **(** **)** |const|
Returns the total number of lines in the text. Wrapped text is counted as multiple lines.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_line_offset:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_line_offset** **(** :ref:`int<class_int>` line **)**
Returns the vertical offset of the line found at the provided index.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_menu:
.. rst-class:: classref-method
:ref:`PopupMenu<class_PopupMenu>` **get_menu** **(** **)** |const|
Returns the :ref:`PopupMenu<class_PopupMenu>` of this **RichTextLabel**. By default, this menu is displayed when right-clicking on the **RichTextLabel**.
You can add custom menu items or remove standard ones. Make sure your IDs don't conflict with the standard ones (see :ref:`MenuItems<enum_RichTextLabel_MenuItems>`). For example:
.. tabs::
.. code-tab:: gdscript
func _ready():
var menu = get_menu()
# Remove "Select All" item.
menu.remove_item(MENU_SELECT_ALL)
# Add custom items.
menu.add_separator()
menu.add_item("Duplicate Text", MENU_MAX + 1)
# Connect callback.
menu.id_pressed.connect(_on_item_pressed)
func _on_item_pressed(id):
if id == MENU_MAX + 1:
add_text("\n" + get_parsed_text())
.. code-tab:: csharp
public override void _Ready()
{
var menu = GetMenu();
// Remove "Select All" item.
menu.RemoveItem(RichTextLabel.MenuItems.SelectAll);
// Add custom items.
menu.AddSeparator();
menu.AddItem("Duplicate Text", RichTextLabel.MenuItems.Max + 1);
// Add event handler.
menu.IdPressed += OnItemPressed;
}
public void OnItemPressed(int id)
{
if (id == TextEdit.MenuItems.Max + 1)
{
AddText("\n" + GetParsedText());
}
}
\ **Warning:** This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their :ref:`Window.visible<class_Window_property_visible>` property.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_paragraph_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_paragraph_count** **(** **)** |const|
Returns the total number of paragraphs (newlines or ``p`` tags in the tag stack's text tags). Considers wrapped text as one paragraph.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_paragraph_offset:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_paragraph_offset** **(** :ref:`int<class_int>` paragraph **)**
Returns the vertical offset of the paragraph found at the provided index.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_parsed_text:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_parsed_text** **(** **)** |const|
Returns the text without BBCode mark-up.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_selected_text:
.. rst-class:: classref-method
:ref:`String<class_String>` **get_selected_text** **(** **)** |const|
Returns the current selection text. Does not include BBCodes.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_selection_from:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_from** **(** **)** |const|
Returns the current selection first character index if a selection is active, ``-1`` otherwise. Does not include BBCodes.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_selection_to:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_selection_to** **(** **)** |const|
Returns the current selection last character index if a selection is active, ``-1`` otherwise. Does not include BBCodes.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_total_character_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_total_character_count** **(** **)** |const|
Returns the total number of characters from text tags. Does not include BBCodes.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_v_scroll_bar:
.. rst-class:: classref-method
:ref:`VScrollBar<class_VScrollBar>` **get_v_scroll_bar** **(** **)**
Returns the vertical scrollbar.
\ **Warning:** This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their :ref:`CanvasItem.visible<class_CanvasItem_property_visible>` property.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_visible_line_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_visible_line_count** **(** **)** |const|
Returns the number of visible lines.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_get_visible_paragraph_count:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_visible_paragraph_count** **(** **)** |const|
Returns the number of visible paragraphs. A paragraph is considered visible if at least one of its lines is visible.
\ **Note:** If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_ready<class_RichTextLabel_method_is_ready>` or :ref:`finished<class_RichTextLabel_signal_finished>` to determine whether document is fully loaded.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_install_effect:
.. rst-class:: classref-method
void **install_effect** **(** :ref:`Variant<class_Variant>` effect **)**
Installs a custom effect. ``effect`` should be a valid :ref:`RichTextEffect<class_RichTextEffect>`.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_is_menu_visible:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_menu_visible** **(** **)** |const|
Returns whether the menu is visible. Use this instead of ``get_menu().visible`` to improve performance (so the creation of the menu is avoided).
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_is_ready:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_ready** **(** **)** |const|
If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, returns ``true`` if the background thread has finished text processing, otherwise always return ``true``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_menu_option:
.. rst-class:: classref-method
void **menu_option** **(** :ref:`int<class_int>` option **)**
Executes a given action as defined in the :ref:`MenuItems<enum_RichTextLabel_MenuItems>` enum.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_newline:
.. rst-class:: classref-method
void **newline** **(** **)**
Adds a newline tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_parse_bbcode:
.. rst-class:: classref-method
void **parse_bbcode** **(** :ref:`String<class_String>` bbcode **)**
The assignment version of :ref:`append_text<class_RichTextLabel_method_append_text>`. Clears the tag stack and inserts the new content.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_parse_expressions_for_values:
.. rst-class:: classref-method
:ref:`Dictionary<class_Dictionary>` **parse_expressions_for_values** **(** :ref:`PackedStringArray<class_PackedStringArray>` expressions **)**
Parses BBCode parameter ``expressions`` into a dictionary.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_pop:
.. rst-class:: classref-method
void **pop** **(** **)**
Terminates the current tag. Use after ``push_*`` methods to close BBCodes manually. Does not need to follow ``add_*`` methods.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_bgcolor:
.. rst-class:: classref-method
void **push_bgcolor** **(** :ref:`Color<class_Color>` bgcolor **)**
Adds a ``[bgcolor]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_bold:
.. rst-class:: classref-method
void **push_bold** **(** **)**
Adds a ``[font]`` tag with a bold font to the tag stack. This is the same as adding a ``[b]`` tag if not currently in a ``[i]`` tag.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_bold_italics:
.. rst-class:: classref-method
void **push_bold_italics** **(** **)**
Adds a ``[font]`` tag with a bold italics font to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_cell:
.. rst-class:: classref-method
void **push_cell** **(** **)**
Adds a ``[cell]`` tag to the tag stack. Must be inside a ``[table]`` tag. See :ref:`push_table<class_RichTextLabel_method_push_table>` for details.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_color:
.. rst-class:: classref-method
void **push_color** **(** :ref:`Color<class_Color>` color **)**
Adds a ``[color]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_customfx:
.. rst-class:: classref-method
void **push_customfx** **(** :ref:`RichTextEffect<class_RichTextEffect>` effect, :ref:`Dictionary<class_Dictionary>` env **)**
Adds a custom effect tag to the tag stack. The effect does not need to be in :ref:`custom_effects<class_RichTextLabel_property_custom_effects>`. The environment is directly passed to the effect.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_dropcap:
.. rst-class:: classref-method
void **push_dropcap** **(** :ref:`String<class_String>` string, :ref:`Font<class_Font>` font, :ref:`int<class_int>` size, :ref:`Rect2<class_Rect2>` dropcap_margins=Rect2(0, 0, 0, 0), :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`int<class_int>` outline_size=0, :ref:`Color<class_Color>` outline_color=Color(0, 0, 0, 0) **)**
Adds a ``[dropcap]`` tag to the tag stack. Drop cap (dropped capital) is a decorative element at the beginning of a paragraph that is larger than the rest of the text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_fgcolor:
.. rst-class:: classref-method
void **push_fgcolor** **(** :ref:`Color<class_Color>` fgcolor **)**
Adds a ``[fgcolor]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_font:
.. rst-class:: classref-method
void **push_font** **(** :ref:`Font<class_Font>` font, :ref:`int<class_int>` font_size **)**
Adds a ``[font]`` tag to the tag stack. Overrides default fonts for its duration.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_font_size:
.. rst-class:: classref-method
void **push_font_size** **(** :ref:`int<class_int>` font_size **)**
Adds a ``[font_size]`` tag to the tag stack. Overrides default font size for its duration.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_hint:
.. rst-class:: classref-method
void **push_hint** **(** :ref:`String<class_String>` description **)**
Adds a ``[hint]`` tag to the tag stack. Same as BBCode ``[hint=something]{text}[/hint]``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_indent:
.. rst-class:: classref-method
void **push_indent** **(** :ref:`int<class_int>` level **)**
Adds an ``[indent]`` tag to the tag stack. Multiplies ``level`` by current :ref:`tab_size<class_RichTextLabel_property_tab_size>` to determine new margin length.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_italics:
.. rst-class:: classref-method
void **push_italics** **(** **)**
Adds a ``[font]`` tag with a italics font to the tag stack. This is the same as adding a ``[i]`` tag if not currently in a ``[b]`` tag.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_list:
.. rst-class:: classref-method
void **push_list** **(** :ref:`int<class_int>` level, :ref:`ListType<enum_RichTextLabel_ListType>` type, :ref:`bool<class_bool>` capitalize **)**
Adds ``[ol]`` or ``[ul]`` tag to the tag stack. Multiplies ``level`` by current :ref:`tab_size<class_RichTextLabel_property_tab_size>` to determine new margin length.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_meta:
.. rst-class:: classref-method
void **push_meta** **(** :ref:`Variant<class_Variant>` data **)**
Adds a ``[meta]`` tag to the tag stack. Similar to the BBCode ``[url=something]{text}[/url]``, but supports non-:ref:`String<class_String>` metadata types.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_mono:
.. rst-class:: classref-method
void **push_mono** **(** **)**
Adds a ``[font]`` tag with a monospace font to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_normal:
.. rst-class:: classref-method
void **push_normal** **(** **)**
Adds a ``[font]`` tag with a normal font to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_outline_color:
.. rst-class:: classref-method
void **push_outline_color** **(** :ref:`Color<class_Color>` color **)**
Adds a ``[outline_color]`` tag to the tag stack. Adds text outline for its duration.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_outline_size:
.. rst-class:: classref-method
void **push_outline_size** **(** :ref:`int<class_int>` outline_size **)**
Adds a ``[outline_size]`` tag to the tag stack. Overrides default text outline size for its duration.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_paragraph:
.. rst-class:: classref-method
void **push_paragraph** **(** :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` alignment, :ref:`TextDirection<enum_Control_TextDirection>` base_direction=0, :ref:`String<class_String>` language="", :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` st_parser=0 **)**
Adds a ``[p]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_strikethrough:
.. rst-class:: classref-method
void **push_strikethrough** **(** **)**
Adds a ``[s]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_table:
.. rst-class:: classref-method
void **push_table** **(** :ref:`int<class_int>` columns, :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=0, :ref:`int<class_int>` align_to_row=-1 **)**
Adds a ``[table=columns,inline_align]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_push_underline:
.. rst-class:: classref-method
void **push_underline** **(** **)**
Adds a ``[u]`` tag to the tag stack.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_remove_paragraph:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **remove_paragraph** **(** :ref:`int<class_int>` paragraph **)**
Removes a paragraph of content from the label. Returns ``true`` if the paragraph exists.
The ``paragraph`` argument is the index of the paragraph to remove, it can take values in the interval ``[0, get_paragraph_count() - 1]``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_scroll_to_line:
.. rst-class:: classref-method
void **scroll_to_line** **(** :ref:`int<class_int>` line **)**
Scrolls the window's top line to match ``line``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_scroll_to_paragraph:
.. rst-class:: classref-method
void **scroll_to_paragraph** **(** :ref:`int<class_int>` paragraph **)**
Scrolls the window's top line to match first line of the ``paragraph``.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_scroll_to_selection:
.. rst-class:: classref-method
void **scroll_to_selection** **(** **)**
Scrolls to the beginning of the current selection.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_select_all:
.. rst-class:: classref-method
void **select_all** **(** **)**
Select all the text.
If :ref:`selection_enabled<class_RichTextLabel_property_selection_enabled>` is ``false``, no selection will occur.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_set_cell_border_color:
.. rst-class:: classref-method
void **set_cell_border_color** **(** :ref:`Color<class_Color>` color **)**
Sets color of a table cell border.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_set_cell_padding:
.. rst-class:: classref-method
void **set_cell_padding** **(** :ref:`Rect2<class_Rect2>` padding **)**
Sets inner padding of a table cell.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_set_cell_row_background_color:
.. rst-class:: classref-method
void **set_cell_row_background_color** **(** :ref:`Color<class_Color>` odd_row_bg, :ref:`Color<class_Color>` even_row_bg **)**
Sets color of a table cell. Separate colors for alternating rows can be specified.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_set_cell_size_override:
.. rst-class:: classref-method
void **set_cell_size_override** **(** :ref:`Vector2<class_Vector2>` min_size, :ref:`Vector2<class_Vector2>` max_size **)**
Sets minimum and maximum size overrides for a table cell.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_method_set_table_column_expand:
.. rst-class:: classref-method
void **set_table_column_expand** **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` expand, :ref:`int<class_int>` ratio **)**
Edits the selected column's expansion options. If ``expand`` is ``true``, the column expands in proportion to its expansion ratio versus the other columns' ratios.
For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width would expand 30 and 40 pixels, respectively.
If ``expand`` is ``false``, the column will not contribute to the total ratio.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Theme Property Descriptions
---------------------------
.. _class_RichTextLabel_theme_color_default_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **default_color** = ``Color(1, 1, 1, 1)``
The default text color.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_font_outline_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
The default tint of text outline.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_font_selected_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_selected_color** = ``Color(0, 0, 0, 0)``
The color of selected text, used when :ref:`selection_enabled<class_RichTextLabel_property_selection_enabled>` is ``true``. If equal to ``Color(0, 0, 0, 0)``, it will be ignored.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_font_shadow_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **font_shadow_color** = ``Color(0, 0, 0, 0)``
The color of the font's shadow.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_selection_color:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **selection_color** = ``Color(0.1, 0.1, 1, 0.8)``
The color of the selection box.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_table_border:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **table_border** = ``Color(0, 0, 0, 0)``
The default cell border color.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_table_even_row_bg:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **table_even_row_bg** = ``Color(0, 0, 0, 0)``
The default background color for even rows.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_color_table_odd_row_bg:
.. rst-class:: classref-themeproperty
:ref:`Color<class_Color>` **table_odd_row_bg** = ``Color(0, 0, 0, 0)``
The default background color for odd rows.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_line_separation:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **line_separation** = ``0``
The vertical space between lines.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_outline_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **outline_size** = ``0``
The size of the text outline.
\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_RichTextLabel_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_shadow_offset_x:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **shadow_offset_x** = ``1``
The horizontal offset of the font's shadow.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_shadow_offset_y:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **shadow_offset_y** = ``1``
The vertical offset of the font's shadow.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_shadow_outline_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **shadow_outline_size** = ``1``
The size of the shadow outline.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_table_h_separation:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **table_h_separation** = ``3``
The horizontal separation of elements in a table.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_table_v_separation:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **table_v_separation** = ``3``
The vertical separation of elements in a table.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_text_highlight_h_padding:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **text_highlight_h_padding** = ``3``
The horizontal padding around a highlighting and background color box.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_constant_text_highlight_v_padding:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **text_highlight_v_padding** = ``3``
The vertical padding around a highlighting and background color box.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_bold_font:
.. rst-class:: classref-themeproperty
:ref:`Font<class_Font>` **bold_font**
The font used for bold text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_bold_italics_font:
.. rst-class:: classref-themeproperty
:ref:`Font<class_Font>` **bold_italics_font**
The font used for bold italics text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_italics_font:
.. rst-class:: classref-themeproperty
:ref:`Font<class_Font>` **italics_font**
The font used for italics text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_mono_font:
.. rst-class:: classref-themeproperty
:ref:`Font<class_Font>` **mono_font**
The font used for monospace text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_normal_font:
.. rst-class:: classref-themeproperty
:ref:`Font<class_Font>` **normal_font**
The default text font.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_size_bold_font_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **bold_font_size**
The font size used for bold text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_size_bold_italics_font_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **bold_italics_font_size**
The font size used for bold italics text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_size_italics_font_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **italics_font_size**
The font size used for italics text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_size_mono_font_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **mono_font_size**
The font size used for monospace text.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_font_size_normal_font_size:
.. rst-class:: classref-themeproperty
:ref:`int<class_int>` **normal_font_size**
The default text font size.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_style_focus:
.. rst-class:: classref-themeproperty
:ref:`StyleBox<class_StyleBox>` **focus**
The background used when the **RichTextLabel** 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.
.. rst-class:: classref-item-separator
----
.. _class_RichTextLabel_theme_style_normal:
.. rst-class:: classref-themeproperty
:ref:`StyleBox<class_StyleBox>` **normal**
The normal background for the **RichTextLabel**.
.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`