: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` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` A control for displaying text that can contain different font styles, images, and basic formatting. .. rst-class:: classref-introduction-group Description ----------- A control for displaying text that can contain custom fonts, images, and basic formatting. **RichTextLabel** manages these as an internal tag stack. It also adapts itself to given width/heights. \ **Note:** Assignments to :ref:`text` clear the tag stack and reconstruct it from the property's contents. Any edits made to :ref:`text` will erase previous edits made from other manual sources such as :ref:`append_text` and the ``push_*`` / :ref:`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`, **RichTextLabel** doesn't have a *property* to horizontally align text to the center. Instead, enable :ref:`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` property. .. rst-class:: classref-introduction-group Tutorials --------- - :doc:`BBCode in RichTextLabel <../tutorials/ui/bbcode_in_richtextlabel>` - `Rich Text Label with BBCode Demo `__ - `Operating System Testing Demo `__ .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``3`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`bbcode_enabled` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | clip_contents | ``true`` (overrides :ref:`Control`) | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`context_menu_enabled` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`Array` | :ref:`custom_effects` | ``[]`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`deselect_on_focus_loss_enabled` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`drag_and_drop_selection_enabled` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`fit_content` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`hint_underlined` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`HorizontalAlignment` | :ref:`horizontal_alignment` | ``0`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | |bitfield|\[:ref:`JustificationFlag`\] | :ref:`justification_flags` | ``163`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`String` | :ref:`language` | ``""`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`meta_underlined` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`int` | :ref:`progress_bar_delay` | ``1000`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`scroll_active` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`scroll_following` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`selection_enabled` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`shortcut_keys_enabled` | ``true`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`StructuredTextParser` | :ref:`structured_text_bidi_override` | ``0`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`Array` | :ref:`structured_text_bidi_override_options` | ``[]`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`int` | :ref:`tab_size` | ``4`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`PackedFloat32Array` | :ref:`tab_stops` | ``PackedFloat32Array()`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`String` | :ref:`text` | ``""`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`TextDirection` | :ref:`text_direction` | ``0`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`bool` | :ref:`threaded` | ``false`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`int` | :ref:`visible_characters` | ``-1`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`VisibleCharactersBehavior` | :ref:`visible_characters_behavior` | ``0`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ | :ref:`float` | :ref:`visible_ratio` | ``1.0`` | +-----------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group Methods ------- .. table:: :widths: auto +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_image`\ (\ image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), key\: :ref:`Variant` = null, pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_text`\ (\ text\: :ref:`String`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`append_text`\ (\ bbcode\: :ref:`String`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`clear`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`deselect`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_character_line`\ (\ character\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_character_paragraph`\ (\ character\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_content_height`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_content_width`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_line_count`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_line_offset`\ (\ line\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PopupMenu` | :ref:`get_menu`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_paragraph_count`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_paragraph_offset`\ (\ paragraph\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_parsed_text`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_selected_text`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_selection_from`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_selection_to`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_total_character_count`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`VScrollBar` | :ref:`get_v_scroll_bar`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_visible_line_count`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_visible_paragraph_count`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`install_effect`\ (\ effect\: :ref:`Variant`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`invalidate_paragraph`\ (\ paragraph\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_finished`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_menu_visible`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_ready`\ (\ ) |const| | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`menu_option`\ (\ option\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`newline`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`parse_bbcode`\ (\ bbcode\: :ref:`String`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`parse_expressions_for_values`\ (\ expressions\: :ref:`PackedStringArray`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`pop`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`pop_all`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`pop_context`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_bgcolor`\ (\ bgcolor\: :ref:`Color`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_bold`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_bold_italics`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_cell`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_color`\ (\ color\: :ref:`Color`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_context`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_customfx`\ (\ effect\: :ref:`RichTextEffect`, env\: :ref:`Dictionary`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_dropcap`\ (\ string\: :ref:`String`, font\: :ref:`Font`, size\: :ref:`int`, dropcap_margins\: :ref:`Rect2` = Rect2(0, 0, 0, 0), color\: :ref:`Color` = Color(1, 1, 1, 1), outline_size\: :ref:`int` = 0, outline_color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_fgcolor`\ (\ fgcolor\: :ref:`Color`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_font`\ (\ font\: :ref:`Font`, font_size\: :ref:`int` = 0\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_font_size`\ (\ font_size\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_hint`\ (\ description\: :ref:`String`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_indent`\ (\ level\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_italics`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_language`\ (\ language\: :ref:`String`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_list`\ (\ level\: :ref:`int`, type\: :ref:`ListType`, capitalize\: :ref:`bool`, bullet\: :ref:`String` = "•"\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_meta`\ (\ data\: :ref:`Variant`, underline_mode\: :ref:`MetaUnderline` = 1\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_mono`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_normal`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_outline_color`\ (\ color\: :ref:`Color`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_outline_size`\ (\ outline_size\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_paragraph`\ (\ alignment\: :ref:`HorizontalAlignment`, base_direction\: :ref:`TextDirection` = 0, language\: :ref:`String` = "", st_parser\: :ref:`StructuredTextParser` = 0, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 163, tab_stops\: :ref:`PackedFloat32Array` = PackedFloat32Array()\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_strikethrough`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_table`\ (\ columns\: :ref:`int`, inline_align\: :ref:`InlineAlignment` = 0, align_to_row\: :ref:`int` = -1\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`push_underline`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`remove_paragraph`\ (\ paragraph\: :ref:`int`, no_invalidate\: :ref:`bool` = false\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`scroll_to_line`\ (\ line\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`scroll_to_paragraph`\ (\ paragraph\: :ref:`int`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`scroll_to_selection`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`select_all`\ (\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_cell_border_color`\ (\ color\: :ref:`Color`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_cell_padding`\ (\ padding\: :ref:`Rect2`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_cell_row_background_color`\ (\ odd_row_bg\: :ref:`Color`, even_row_bg\: :ref:`Color`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_cell_size_override`\ (\ min_size\: :ref:`Vector2`, max_size\: :ref:`Vector2`\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_table_column_expand`\ (\ column\: :ref:`int`, expand\: :ref:`bool`, ratio\: :ref:`int` = 1\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`update_image`\ (\ key\: :ref:`Variant`, mask\: |bitfield|\[:ref:`ImageUpdateMask`\], image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) | +-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group Theme Properties ---------------- .. table:: :widths: auto +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`default_color` | ``Color(1, 1, 1, 1)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`font_outline_color` | ``Color(0, 0, 0, 1)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`font_selected_color` | ``Color(0, 0, 0, 0)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`font_shadow_color` | ``Color(0, 0, 0, 0)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`selection_color` | ``Color(0.1, 0.1, 1, 0.8)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`table_border` | ``Color(0, 0, 0, 0)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`table_even_row_bg` | ``Color(0, 0, 0, 0)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Color` | :ref:`table_odd_row_bg` | ``Color(0, 0, 0, 0)`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`line_separation` | ``0`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`outline_size` | ``0`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`shadow_offset_x` | ``1`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`shadow_offset_y` | ``1`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`shadow_outline_size` | ``1`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`table_h_separation` | ``3`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`table_v_separation` | ``3`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`text_highlight_h_padding` | ``3`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`text_highlight_v_padding` | ``3`` | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Font` | :ref:`bold_font` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Font` | :ref:`bold_italics_font` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Font` | :ref:`italics_font` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Font` | :ref:`mono_font` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Font` | :ref:`normal_font` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`bold_font_size` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`bold_italics_font_size` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`italics_font_size` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`mono_font_size` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`int` | :ref:`normal_font_size` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`StyleBox` | :ref:`focus` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`StyleBox` | :ref:`normal` | | +---------------------------------+----------------------------------------------------------------------------------------------+-----------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Signals ------- .. _class_RichTextLabel_signal_finished: .. rst-class:: classref-signal **finished**\ (\ ) :ref:`🔗` Triggered when the document is fully loaded. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_signal_meta_clicked: .. rst-class:: classref-signal **meta_clicked**\ (\ meta\: :ref:`Variant`\ ) :ref:`🔗` Triggered when the user clicks on content between meta (URL) tags. If the meta is defined in BBCode, e.g. ``[url={"key": "value"}]Text[/url]``, then the parameter for this signal will always be a :ref:`String` type. If a particular type or an object is desired, the :ref:`push_meta` method must be used to manually insert the data into the tag stack. Alternatively, you can convert the :ref:`String` input to the desired type based on its contents (such as calling :ref:`JSON.parse` on it). For example, the following method can be connected to :ref:`meta_clicked` to open clicked URLs using the user's default web browser: .. tabs:: .. code-tab:: gdscript # This assumes RichTextLabel's `meta_clicked` signal was connected to # the function below using the signal connection dialog. func _richtextlabel_on_meta_clicked(meta): # `meta` is of Variant type, so convert it to a String to avoid script errors at run-time. OS.shell_open(str(meta)) .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_signal_meta_hover_ended: .. rst-class:: classref-signal **meta_hover_ended**\ (\ meta\: :ref:`Variant`\ ) :ref:`🔗` 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**\ (\ meta\: :ref:`Variant`\ ) :ref:`🔗` 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**: :ref:`🔗` .. _class_RichTextLabel_constant_LIST_NUMBERS: .. rst-class:: classref-enumeration-constant :ref:`ListType` **LIST_NUMBERS** = ``0`` Each list item has a number marker. .. _class_RichTextLabel_constant_LIST_LETTERS: .. rst-class:: classref-enumeration-constant :ref:`ListType` **LIST_LETTERS** = ``1`` Each list item has a letter marker. .. _class_RichTextLabel_constant_LIST_ROMAN: .. rst-class:: classref-enumeration-constant :ref:`ListType` **LIST_ROMAN** = ``2`` Each list item has a roman number marker. .. _class_RichTextLabel_constant_LIST_DOTS: .. rst-class:: classref-enumeration-constant :ref:`ListType` **LIST_DOTS** = ``3`` Each list item has a filled circle marker. .. rst-class:: classref-item-separator ---- .. _enum_RichTextLabel_MenuItems: .. rst-class:: classref-enumeration enum **MenuItems**: :ref:`🔗` .. _class_RichTextLabel_constant_MENU_COPY: .. rst-class:: classref-enumeration-constant :ref:`MenuItems` **MENU_COPY** = ``0`` Copies the selected text. .. _class_RichTextLabel_constant_MENU_SELECT_ALL: .. rst-class:: classref-enumeration-constant :ref:`MenuItems` **MENU_SELECT_ALL** = ``1`` Selects the whole **RichTextLabel** text. .. _class_RichTextLabel_constant_MENU_MAX: .. rst-class:: classref-enumeration-constant :ref:`MenuItems` **MENU_MAX** = ``2`` Represents the size of the :ref:`MenuItems` enum. .. rst-class:: classref-item-separator ---- .. _enum_RichTextLabel_MetaUnderline: .. rst-class:: classref-enumeration enum **MetaUnderline**: :ref:`🔗` .. _class_RichTextLabel_constant_META_UNDERLINE_NEVER: .. rst-class:: classref-enumeration-constant :ref:`MetaUnderline` **META_UNDERLINE_NEVER** = ``0`` Meta tag does not display an underline, even if :ref:`meta_underlined` is ``true``. .. _class_RichTextLabel_constant_META_UNDERLINE_ALWAYS: .. rst-class:: classref-enumeration-constant :ref:`MetaUnderline` **META_UNDERLINE_ALWAYS** = ``1`` If :ref:`meta_underlined` is ``true``, meta tag always display an underline. .. _class_RichTextLabel_constant_META_UNDERLINE_ON_HOVER: .. rst-class:: classref-enumeration-constant :ref:`MetaUnderline` **META_UNDERLINE_ON_HOVER** = ``2`` If :ref:`meta_underlined` is ``true``, meta tag display an underline when the mouse cursor is over it. .. rst-class:: classref-item-separator ---- .. _enum_RichTextLabel_ImageUpdateMask: .. rst-class:: classref-enumeration flags **ImageUpdateMask**: :ref:`🔗` .. _class_RichTextLabel_constant_UPDATE_TEXTURE: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_TEXTURE** = ``1`` If this bit is set, :ref:`update_image` changes image texture. .. _class_RichTextLabel_constant_UPDATE_SIZE: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_SIZE** = ``2`` If this bit is set, :ref:`update_image` changes image size. .. _class_RichTextLabel_constant_UPDATE_COLOR: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_COLOR** = ``4`` If this bit is set, :ref:`update_image` changes image color. .. _class_RichTextLabel_constant_UPDATE_ALIGNMENT: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_ALIGNMENT** = ``8`` If this bit is set, :ref:`update_image` changes image inline alignment. .. _class_RichTextLabel_constant_UPDATE_REGION: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_REGION** = ``16`` If this bit is set, :ref:`update_image` changes image texture region. .. _class_RichTextLabel_constant_UPDATE_PAD: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_PAD** = ``32`` If this bit is set, :ref:`update_image` changes image padding. .. _class_RichTextLabel_constant_UPDATE_TOOLTIP: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_TOOLTIP** = ``64`` If this bit is set, :ref:`update_image` changes image tooltip. .. _class_RichTextLabel_constant_UPDATE_WIDTH_IN_PERCENT: .. rst-class:: classref-enumeration-constant :ref:`ImageUpdateMask` **UPDATE_WIDTH_IN_PERCENT** = ``128`` If this bit is set, :ref:`update_image` changes image width from/to percents. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_RichTextLabel_property_autowrap_mode: .. rst-class:: classref-property :ref:`AutowrapMode` **autowrap_mode** = ``3`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode`\ ) - :ref:`AutowrapMode` **get_autowrap_mode**\ (\ ) If set to something other than :ref:`TextServer.AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. To see how each mode behaves, see :ref:`AutowrapMode`. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_bbcode_enabled: .. rst-class:: classref-property :ref:`bool` **bbcode_enabled** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_use_bbcode**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_using_bbcode**\ (\ ) If ``true``, the label uses BBCode formatting. \ **Note:** This only affects the contents of :ref:`text`, not the tag stack. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_context_menu_enabled: .. rst-class:: classref-property :ref:`bool` **context_menu_enabled** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_context_menu_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`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` **custom_effects** = ``[]`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_effects**\ (\ value\: :ref:`Array`\ ) - :ref:`Array` **get_effects**\ (\ ) The currently installed custom effects. This is an array of :ref:`RichTextEffect`\ s. To add a custom effect, it's more convenient to use :ref:`install_effect`. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_deselect_on_focus_loss_enabled: .. rst-class:: classref-property :ref:`bool` **deselect_on_focus_loss_enabled** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_deselect_on_focus_loss_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`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_drag_and_drop_selection_enabled: .. rst-class:: classref-property :ref:`bool` **drag_and_drop_selection_enabled** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_drag_and_drop_selection_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_drag_and_drop_selection_enabled**\ (\ ) If ``true``, allow drag and drop of selected text. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_fit_content: .. rst-class:: classref-property :ref:`bool` **fit_content** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_fit_content**\ (\ value\: :ref:`bool`\ ) - :ref:`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`. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_hint_underlined: .. rst-class:: classref-property :ref:`bool` **hint_underlined** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_hint_underline**\ (\ value\: :ref:`bool`\ ) - :ref:`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_horizontal_alignment: .. rst-class:: classref-property :ref:`HorizontalAlignment` **horizontal_alignment** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_horizontal_alignment**\ (\ value\: :ref:`HorizontalAlignment`\ ) - :ref:`HorizontalAlignment` **get_horizontal_alignment**\ (\ ) Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the :ref:`HorizontalAlignment` constants. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_justification_flags: .. rst-class:: classref-property |bitfield|\[:ref:`JustificationFlag`\] **justification_flags** = ``163`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_justification_flags**\ (\ value\: |bitfield|\[:ref:`JustificationFlag`\]\ ) - |bitfield|\[:ref:`JustificationFlag`\] **get_justification_flags**\ (\ ) Line fill alignment rules. See :ref:`JustificationFlag` for more information. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_language: .. rst-class:: classref-property :ref:`String` **language** = ``""`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_language**\ (\ value\: :ref:`String`\ ) - :ref:`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` **meta_underlined** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_meta_underline**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_meta_underlined**\ (\ ) If ``true``, the label underlines meta tags such as ``[url]{text}[/url]``. These tags can call a function when clicked if :ref:`meta_clicked` is connected to a function. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_progress_bar_delay: .. rst-class:: classref-property :ref:`int` **progress_bar_delay** = ``1000`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_progress_bar_delay**\ (\ value\: :ref:`int`\ ) - :ref:`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` is enabled. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_scroll_active: .. rst-class:: classref-property :ref:`bool` **scroll_active** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_scroll_active**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_scroll_active**\ (\ ) If ``true``, the scrollbar is visible. Setting this to ``false`` does not block scrolling completely. See :ref:`scroll_to_line`. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_scroll_following: .. rst-class:: classref-property :ref:`bool` **scroll_following** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_scroll_follow**\ (\ value\: :ref:`bool`\ ) - :ref:`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` **selection_enabled** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_selection_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`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` **shortcut_keys_enabled** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_shortcut_keys_enabled**\ (\ value\: :ref:`bool`\ ) - :ref:`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` **structured_text_bidi_override** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_structured_text_bidi_override**\ (\ value\: :ref:`StructuredTextParser`\ ) - :ref:`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` **structured_text_bidi_override_options** = ``[]`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_structured_text_bidi_override_options**\ (\ value\: :ref:`Array`\ ) - :ref:`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` **tab_size** = ``4`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_tab_size**\ (\ value\: :ref:`int`\ ) - :ref:`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_tab_stops: .. rst-class:: classref-property :ref:`PackedFloat32Array` **tab_stops** = ``PackedFloat32Array()`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_tab_stops**\ (\ value\: :ref:`PackedFloat32Array`\ ) - :ref:`PackedFloat32Array` **get_tab_stops**\ (\ ) Aligns text to the given tab-stops. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedFloat32Array` for more details. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_text: .. rst-class:: classref-property :ref:`String` **text** = ``""`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_text**\ (\ value\: :ref:`String`\ ) - :ref:`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` is ``true``, it is unadvised to use the ``+=`` operator with :ref:`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` 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` **text_direction** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_text_direction**\ (\ value\: :ref:`TextDirection`\ ) - :ref:`TextDirection` **get_text_direction**\ (\ ) Base text writing direction. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_threaded: .. rst-class:: classref-property :ref:`bool` **threaded** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_threaded**\ (\ value\: :ref:`bool`\ ) - :ref:`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` **visible_characters** = ``-1`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_visible_characters**\ (\ value\: :ref:`int`\ ) - :ref:`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` accordingly. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_visible_characters_behavior: .. rst-class:: classref-property :ref:`VisibleCharactersBehavior` **visible_characters_behavior** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_visible_characters_behavior**\ (\ value\: :ref:`VisibleCharactersBehavior`\ ) - :ref:`VisibleCharactersBehavior` **get_visible_characters_behavior**\ (\ ) Sets the clipping behavior when :ref:`visible_characters` or :ref:`visible_ratio` is set. See :ref:`VisibleCharactersBehavior` for more info. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_property_visible_ratio: .. rst-class:: classref-property :ref:`float` **visible_ratio** = ``1.0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_visible_ratio**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_visible_ratio**\ (\ ) The fraction of characters to display, relative to the total number of characters (see :ref:`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` 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**\ (\ image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), key\: :ref:`Variant` = null, pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) :ref:`🔗` 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. \ ``key`` is an optional identifier, that can be used to modify the image via :ref:`update_image`. If ``pad`` is set, and the image is smaller than the size specified by ``width`` and ``height``, the image padding is added to match the size instead of upscaling. If ``size_in_percent`` is set, ``width`` and ``height`` values are percentages of the control width instead of pixels. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_add_text: .. rst-class:: classref-method |void| **add_text**\ (\ text\: :ref:`String`\ ) :ref:`🔗` 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**\ (\ bbcode\: :ref:`String`\ ) :ref:`🔗` 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` 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` instead of using :ref:`append_text`. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_clear: .. rst-class:: classref-method |void| **clear**\ (\ ) :ref:`🔗` Clears the tag stack, causing the label to display nothing. \ **Note:** This method does not affect :ref:`text`, and its contents will show again if the label is redrawn. However, setting :ref:`text` to an empty :ref:`String` also clears the stack. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_deselect: .. rst-class:: classref-method |void| **deselect**\ (\ ) :ref:`🔗` Clears the current selection. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_get_character_line: .. rst-class:: classref-method :ref:`int` **get_character_line**\ (\ character\: :ref:`int`\ ) :ref:`🔗` Returns the line number of the character position provided. Line and character numbers are both zero-indexed. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_character_paragraph**\ (\ character\: :ref:`int`\ ) :ref:`🔗` Returns the paragraph number of the character position provided. Paragraph and character numbers are both zero-indexed. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_content_height**\ (\ ) |const| :ref:`🔗` Returns the height of the content. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_content_width**\ (\ ) |const| :ref:`🔗` Returns the width of the content. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_line_count**\ (\ ) |const| :ref:`🔗` Returns the total number of lines in the text. Wrapped text is counted as multiple lines. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_line_offset**\ (\ line\: :ref:`int`\ ) :ref:`🔗` Returns the vertical offset of the line found at the provided index. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`finished` to determine whether document is fully loaded. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_get_menu: .. rst-class:: classref-method :ref:`PopupMenu` **get_menu**\ (\ ) |const| :ref:`🔗` Returns the :ref:`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`). 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` property. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_get_paragraph_count: .. rst-class:: classref-method :ref:`int` **get_paragraph_count**\ (\ ) |const| :ref:`🔗` 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` **get_paragraph_offset**\ (\ paragraph\: :ref:`int`\ ) :ref:`🔗` Returns the vertical offset of the paragraph found at the provided index. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_parsed_text**\ (\ ) |const| :ref:`🔗` Returns the text without BBCode mark-up. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_get_selected_text: .. rst-class:: classref-method :ref:`String` **get_selected_text**\ (\ ) |const| :ref:`🔗` 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` **get_selection_from**\ (\ ) |const| :ref:`🔗` 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` **get_selection_to**\ (\ ) |const| :ref:`🔗` 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` **get_total_character_count**\ (\ ) |const| :ref:`🔗` 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` **get_v_scroll_bar**\ (\ ) :ref:`🔗` 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` property. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_get_visible_line_count: .. rst-class:: classref-method :ref:`int` **get_visible_line_count**\ (\ ) |const| :ref:`🔗` Returns the number of visible lines. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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` **get_visible_paragraph_count**\ (\ ) |const| :ref:`🔗` Returns the number of visible paragraphs. A paragraph is considered visible if at least one of its lines is visible. \ **Note:** If :ref:`threaded` is enabled, this method returns a value for the loaded part of the document. Use :ref:`is_finished` or :ref:`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**\ (\ effect\: :ref:`Variant`\ ) :ref:`🔗` Installs a custom effect. This can also be done in the Inspector through the :ref:`custom_effects` property. ``effect`` should be a valid :ref:`RichTextEffect`. \ **Example:** With the following script extending from :ref:`RichTextEffect`: :: # effect.gd class_name MyCustomEffect extends RichTextEffect var bbcode = "my_custom_effect" # ... The above effect can be installed in **RichTextLabel** from a script: :: # rich_text_label.gd extends RichTextLabel func _ready(): install_effect(MyCustomEffect.new()) # Alternatively, if not using `class_name` in the script that extends RichTextEffect: install_effect(preload("res://effect.gd").new()) .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_invalidate_paragraph: .. rst-class:: classref-method :ref:`bool` **invalidate_paragraph**\ (\ paragraph\: :ref:`int`\ ) :ref:`🔗` Invalidates ``paragraph`` and all subsequent paragraphs cache. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_is_finished: .. rst-class:: classref-method :ref:`bool` **is_finished**\ (\ ) |const| :ref:`🔗` If :ref:`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_is_menu_visible: .. rst-class:: classref-method :ref:`bool` **is_menu_visible**\ (\ ) |const| :ref:`🔗` 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` **is_ready**\ (\ ) |const| :ref:`🔗` **Deprecated:** Use :ref:`is_finished` instead. If :ref:`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**\ (\ option\: :ref:`int`\ ) :ref:`🔗` Executes a given action as defined in the :ref:`MenuItems` enum. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_newline: .. rst-class:: classref-method |void| **newline**\ (\ ) :ref:`🔗` 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**\ (\ bbcode\: :ref:`String`\ ) :ref:`🔗` The assignment version of :ref:`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` **parse_expressions_for_values**\ (\ expressions\: :ref:`PackedStringArray`\ ) :ref:`🔗` Parses BBCode parameter ``expressions`` into a dictionary. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_pop: .. rst-class:: classref-method |void| **pop**\ (\ ) :ref:`🔗` 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_pop_all: .. rst-class:: classref-method |void| **pop_all**\ (\ ) :ref:`🔗` Terminates all tags opened by ``push_*`` methods. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_pop_context: .. rst-class:: classref-method |void| **pop_context**\ (\ ) :ref:`🔗` Terminates tags opened after the last :ref:`push_context` call (including context marker), or all tags if there's no context marker on the stack. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_bgcolor: .. rst-class:: classref-method |void| **push_bgcolor**\ (\ bgcolor\: :ref:`Color`\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` Adds a ``[cell]`` tag to the tag stack. Must be inside a ``[table]`` tag. See :ref:`push_table` for details. Use :ref:`set_table_column_expand` to set column expansion ratio, :ref:`set_cell_border_color` to set cell border, :ref:`set_cell_row_background_color` to set cell background, :ref:`set_cell_size_override` to override cell size, and :ref:`set_cell_padding` to set padding. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_color: .. rst-class:: classref-method |void| **push_color**\ (\ color\: :ref:`Color`\ ) :ref:`🔗` Adds a ``[color]`` tag to the tag stack. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_context: .. rst-class:: classref-method |void| **push_context**\ (\ ) :ref:`🔗` Adds a context marker to the tag stack. See :ref:`pop_context`. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_customfx: .. rst-class:: classref-method |void| **push_customfx**\ (\ effect\: :ref:`RichTextEffect`, env\: :ref:`Dictionary`\ ) :ref:`🔗` Adds a custom effect tag to the tag stack. The effect does not need to be in :ref:`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**\ (\ string\: :ref:`String`, font\: :ref:`Font`, size\: :ref:`int`, dropcap_margins\: :ref:`Rect2` = Rect2(0, 0, 0, 0), color\: :ref:`Color` = Color(1, 1, 1, 1), outline_size\: :ref:`int` = 0, outline_color\: :ref:`Color` = Color(0, 0, 0, 0)\ ) :ref:`🔗` 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**\ (\ fgcolor\: :ref:`Color`\ ) :ref:`🔗` 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**\ (\ font\: :ref:`Font`, font_size\: :ref:`int` = 0\ ) :ref:`🔗` Adds a ``[font]`` tag to the tag stack. Overrides default fonts for its duration. Passing ``0`` to ``font_size`` will use the existing default font size. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_font_size: .. rst-class:: classref-method |void| **push_font_size**\ (\ font_size\: :ref:`int`\ ) :ref:`🔗` 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**\ (\ description\: :ref:`String`\ ) :ref:`🔗` 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**\ (\ level\: :ref:`int`\ ) :ref:`🔗` Adds an ``[indent]`` tag to the tag stack. Multiplies ``level`` by current :ref:`tab_size` to determine new margin length. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_italics: .. rst-class:: classref-method |void| **push_italics**\ (\ ) :ref:`🔗` Adds a ``[font]`` tag with an italics font to the tag stack. This is the same as adding an ``[i]`` tag if not currently in a ``[b]`` tag. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_language: .. rst-class:: classref-method |void| **push_language**\ (\ language\: :ref:`String`\ ) :ref:`🔗` Adds language code used for text shaping algorithm and Open-Type font features. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_list: .. rst-class:: classref-method |void| **push_list**\ (\ level\: :ref:`int`, type\: :ref:`ListType`, capitalize\: :ref:`bool`, bullet\: :ref:`String` = "•"\ ) :ref:`🔗` Adds ``[ol]`` or ``[ul]`` tag to the tag stack. Multiplies ``level`` by current :ref:`tab_size` to determine new margin length. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_meta: .. rst-class:: classref-method |void| **push_meta**\ (\ data\: :ref:`Variant`, underline_mode\: :ref:`MetaUnderline` = 1\ ) :ref:`🔗` Adds a meta tag to the tag stack. Similar to the BBCode ``[url=something]{text}[/url]``, but supports non-:ref:`String` metadata types. If :ref:`meta_underlined` is ``true``, meta tags display an underline. This behavior can be customized with ``underline_mode``. \ **Note:** Meta tags do nothing by default when clicked. To assign behavior when clicked, connect :ref:`meta_clicked` to a function that is called when the meta tag is clicked. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_mono: .. rst-class:: classref-method |void| **push_mono**\ (\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` 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**\ (\ color\: :ref:`Color`\ ) :ref:`🔗` 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**\ (\ outline_size\: :ref:`int`\ ) :ref:`🔗` 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**\ (\ alignment\: :ref:`HorizontalAlignment`, base_direction\: :ref:`TextDirection` = 0, language\: :ref:`String` = "", st_parser\: :ref:`StructuredTextParser` = 0, justification_flags\: |bitfield|\[:ref:`JustificationFlag`\] = 163, tab_stops\: :ref:`PackedFloat32Array` = PackedFloat32Array()\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` 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**\ (\ columns\: :ref:`int`, inline_align\: :ref:`InlineAlignment` = 0, align_to_row\: :ref:`int` = -1\ ) :ref:`🔗` Adds a ``[table=columns,inline_align]`` tag to the tag stack. Use :ref:`set_table_column_expand` to set column expansion ratio. Use :ref:`push_cell` to add cells. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_push_underline: .. rst-class:: classref-method |void| **push_underline**\ (\ ) :ref:`🔗` Adds a ``[u]`` tag to the tag stack. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_remove_paragraph: .. rst-class:: classref-method :ref:`bool` **remove_paragraph**\ (\ paragraph\: :ref:`int`, no_invalidate\: :ref:`bool` = false\ ) :ref:`🔗` 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]``. If ``no_invalidate`` is set to ``true``, cache for the subsequent paragraphs is not invalidated. Use it for faster updates if deleted paragraph is fully self-contained (have no unclosed tags), or this call is part of the complex edit operation and :ref:`invalidate_paragraph` will be called at the end of operation. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_method_scroll_to_line: .. rst-class:: classref-method |void| **scroll_to_line**\ (\ line\: :ref:`int`\ ) :ref:`🔗` 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**\ (\ paragraph\: :ref:`int`\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` 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**\ (\ ) :ref:`🔗` Select all the text. If :ref:`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**\ (\ color\: :ref:`Color`\ ) :ref:`🔗` 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**\ (\ padding\: :ref:`Rect2`\ ) :ref:`🔗` 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**\ (\ odd_row_bg\: :ref:`Color`, even_row_bg\: :ref:`Color`\ ) :ref:`🔗` 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**\ (\ min_size\: :ref:`Vector2`, max_size\: :ref:`Vector2`\ ) :ref:`🔗` 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**\ (\ column\: :ref:`int`, expand\: :ref:`bool`, ratio\: :ref:`int` = 1\ ) :ref:`🔗` 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-item-separator ---- .. _class_RichTextLabel_method_update_image: .. rst-class:: classref-method |void| **update_image**\ (\ key\: :ref:`Variant`, mask\: |bitfield|\[:ref:`ImageUpdateMask`\], image\: :ref:`Texture2D`, width\: :ref:`int` = 0, height\: :ref:`int` = 0, color\: :ref:`Color` = Color(1, 1, 1, 1), inline_align\: :ref:`InlineAlignment` = 5, region\: :ref:`Rect2` = Rect2(0, 0, 0, 0), pad\: :ref:`bool` = false, tooltip\: :ref:`String` = "", size_in_percent\: :ref:`bool` = false\ ) :ref:`🔗` Updates the existing images with the key ``key``. Only properties specified by ``mask`` bits are updated. See :ref:`add_image`. .. 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` **default_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗` The default text color. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_color_font_outline_color: .. rst-class:: classref-themeproperty :ref:`Color` **font_outline_color** = ``Color(0, 0, 0, 1)`` :ref:`🔗` The default tint of text outline. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_color_font_selected_color: .. rst-class:: classref-themeproperty :ref:`Color` **font_selected_color** = ``Color(0, 0, 0, 0)`` :ref:`🔗` The color of selected text, used when :ref:`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` **font_shadow_color** = ``Color(0, 0, 0, 0)`` :ref:`🔗` The color of the font's shadow. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_color_selection_color: .. rst-class:: classref-themeproperty :ref:`Color` **selection_color** = ``Color(0.1, 0.1, 1, 0.8)`` :ref:`🔗` The color of the selection box. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_color_table_border: .. rst-class:: classref-themeproperty :ref:`Color` **table_border** = ``Color(0, 0, 0, 0)`` :ref:`🔗` The default cell border color. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_color_table_even_row_bg: .. rst-class:: classref-themeproperty :ref:`Color` **table_even_row_bg** = ``Color(0, 0, 0, 0)`` :ref:`🔗` 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` **table_odd_row_bg** = ``Color(0, 0, 0, 0)`` :ref:`🔗` The default background color for odd rows. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_constant_line_separation: .. rst-class:: classref-themeproperty :ref:`int` **line_separation** = ``0`` :ref:`🔗` Additional vertical spacing between lines (in pixels), spacing is added to line descent. This value can be negative. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_constant_outline_size: .. rst-class:: classref-themeproperty :ref:`int` **outline_size** = ``0`` :ref:`🔗` The size of the text outline. \ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field` enabled, its :ref:`FontFile.msdf_pixel_range` must be set to at least *twice* the value of :ref:`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` **shadow_offset_x** = ``1`` :ref:`🔗` 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` **shadow_offset_y** = ``1`` :ref:`🔗` 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` **shadow_outline_size** = ``1`` :ref:`🔗` The size of the shadow outline. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_constant_table_h_separation: .. rst-class:: classref-themeproperty :ref:`int` **table_h_separation** = ``3`` :ref:`🔗` 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` **table_v_separation** = ``3`` :ref:`🔗` 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` **text_highlight_h_padding** = ``3`` :ref:`🔗` The horizontal padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` tags. This does not affect the appearance of text selection. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_constant_text_highlight_v_padding: .. rst-class:: classref-themeproperty :ref:`int` **text_highlight_v_padding** = ``3`` :ref:`🔗` The vertical padding around boxes drawn by the ``[fgcolor]`` and ``[bgcolor]`` tags. This does not affect the appearance of text selection. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_font_bold_font: .. rst-class:: classref-themeproperty :ref:`Font` **bold_font** :ref:`🔗` The font used for bold text. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_font_bold_italics_font: .. rst-class:: classref-themeproperty :ref:`Font` **bold_italics_font** :ref:`🔗` The font used for bold italics text. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_font_italics_font: .. rst-class:: classref-themeproperty :ref:`Font` **italics_font** :ref:`🔗` The font used for italics text. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_font_mono_font: .. rst-class:: classref-themeproperty :ref:`Font` **mono_font** :ref:`🔗` The font used for monospace text. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_font_normal_font: .. rst-class:: classref-themeproperty :ref:`Font` **normal_font** :ref:`🔗` The default text font. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_font_size_bold_font_size: .. rst-class:: classref-themeproperty :ref:`int` **bold_font_size** :ref:`🔗` 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` **bold_italics_font_size** :ref:`🔗` 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` **italics_font_size** :ref:`🔗` 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` **mono_font_size** :ref:`🔗` 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` **normal_font_size** :ref:`🔗` The default text font size. .. rst-class:: classref-item-separator ---- .. _class_RichTextLabel_theme_style_focus: .. rst-class:: classref-themeproperty :ref:`StyleBox` **focus** :ref:`🔗` The background used when the **RichTextLabel** is focused. The :ref:`focus` :ref:`StyleBox` is displayed *over* the base :ref:`StyleBox`, so a partially transparent :ref:`StyleBox` should be used to ensure the base :ref:`StyleBox` remains visible. A :ref:`StyleBox` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`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` **normal** :ref:`🔗` 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.)` .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` .. |void| replace:: :abbr:`void (No return value.)`