diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2020-12-13 13:42:00 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-13 13:42:00 +0100 |
commit | bbf7bb383810f397760961cb1666860f9b0791b8 (patch) | |
tree | 85612b2731aeadeff1f1e66ff43b2994b207f654 /doc/classes | |
parent | 0762484473c1330c5d524d5cc3644d5e2b2e557c (diff) | |
parent | 6b6f101983bcbf1513156046108edc2afe24982c (diff) |
Merge pull request #42595 from bruvzg/ctl_rich_text
[Complex Text Layouts] Refactor RichTextLabel.
Diffstat (limited to 'doc/classes')
-rw-r--r-- | doc/classes/CharFXTransform.xml | 31 | ||||
-rw-r--r-- | doc/classes/RichTextLabel.xml | 191 |
2 files changed, 175 insertions, 47 deletions
diff --git a/doc/classes/CharFXTransform.xml b/doc/classes/CharFXTransform.xml index d1759adf30..b4cb110337 100644 --- a/doc/classes/CharFXTransform.xml +++ b/doc/classes/CharFXTransform.xml @@ -13,24 +13,6 @@ <methods> </methods> <members> - <member name="absolute_index" type="int" setter="set_absolute_index" getter="get_absolute_index" default="0"> - The index of the current character (starting from 0). Setting this property won't affect drawing. - </member> - <member name="character" type="int" setter="set_character" getter="get_character" default="0"> - The Unicode codepoint the character will use. This only affects non-whitespace characters. [method @GDScript.ord] can be useful here. For example, the following will replace all characters with asterisks: - [codeblocks] - [gdscript] - # `char_fx` is the CharFXTransform parameter from `_process_custom_fx()`. - # See the RichTextEffect documentation for details. - char_fx.character = ord("*") - [/gdscript] - [csharp] - // `char_fx` is the CharFXTransform parameter from `_process_custom_fx()`. - // See the RichTextEffect documentation for details. - charFx.Character = char.GetNumericValue('*'); - [/csharp] - [/codeblocks] - </member> <member name="color" type="Color" setter="set_color" getter="get_color" default="Color( 0, 0, 0, 1 )"> The color the character will be drawn with. </member> @@ -45,11 +27,20 @@ {"foo": "hello", "bar": true, "baz": 42, "color": Color(1, 1, 1, 1)} [/codeblock] </member> + <member name="font" type="RID" setter="set_font" getter="get_font"> + Font resource used to render glyph. + </member> + <member name="glyph_index" type="int" setter="set_glyph_index" getter="get_glyph_index" default="0"> + Font specific glyph index. + </member> <member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2( 0, 0 )"> The position offset the character will be drawn with (in pixels). </member> - <member name="relative_index" type="int" setter="set_relative_index" getter="get_relative_index" default="0"> - The index of the current character (starting from 0). Setting this property won't affect drawing. + <member name="outline" type="bool" setter="set_outline" getter="is_outline" default="false"> + If [code]ture[/code], FX transform is called for outline drawing. Setting this property won't affect drawing. + </member> + <member name="range" type="Vector2i" setter="set_range" getter="get_range" default="Vector2i( 0, 0 )"> + Absolute character range in the string, corresponding to the glyph. Setting this property won't affect drawing. </member> <member name="visible" type="bool" setter="set_visibility" getter="is_visible" default="true"> If [code]true[/code], the character will be drawn. If [code]false[/code], the character will be hidden. Characters around hidden characters will reflow to take the space of hidden characters. If this is not desired, set their [member color] to [code]Color(1, 1, 1, 0)[/code] instead. diff --git a/doc/classes/RichTextLabel.xml b/doc/classes/RichTextLabel.xml index faf0d97766..0fd440fa75 100644 --- a/doc/classes/RichTextLabel.xml +++ b/doc/classes/RichTextLabel.xml @@ -25,6 +25,8 @@ </argument> <argument index="3" name="color" type="Color" default="Color( 1, 1, 1, 1 )"> </argument> + <argument index="4" name="inline_align" type="int" enum="VAlign" default="0"> + </argument> <description> Adds an image's opening and closing tags to the tag stack, optionally providing a [code]width[/code] and [code]height[/code] to resize the image and a [code]color[/code] to tint the image. If [code]width[/code] or [code]height[/code] is set to 0, the image size will be adjusted in order to keep the original aspect ratio. @@ -132,15 +134,6 @@ Terminates the current tag. Use after [code]push_*[/code] methods to close BBCodes manually. Does not need to follow [code]add_*[/code] methods. </description> </method> - <method name="push_align"> - <return type="void"> - </return> - <argument index="0" name="align" type="int" enum="RichTextLabel.Align"> - </argument> - <description> - Adds an [code][align][/code] tag based on the given [code]align[/code] value. See [enum Align] for possible values. - </description> - </method> <method name="push_bold"> <return type="void"> </return> @@ -180,6 +173,24 @@ Adds a [code][font][/code] tag to the tag stack. Overrides default fonts for its duration. </description> </method> + <method name="push_font_features"> + <return type="void"> + </return> + <argument index="0" name="opentype_features" type="Dictionary"> + </argument> + <description> + Adds a [code][ot_feature][/code] tag to the tag stack. Overrides default OpenType font feature for its duration. + </description> + </method> + <method name="push_font_size"> + <return type="void"> + </return> + <argument index="0" name="font_size" type="int"> + </argument> + <description> + Adds a [code][font_size][/code] tag to the tag stack. Overrides default font size for its duration. + </description> + </method> <method name="push_indent"> <return type="void"> </return> @@ -199,10 +210,14 @@ <method name="push_list"> <return type="void"> </return> - <argument index="0" name="type" type="int" enum="RichTextLabel.ListType"> + <argument index="0" name="level" type="int"> + </argument> + <argument index="1" name="type" type="int" enum="RichTextLabel.ListType"> + </argument> + <argument index="2" name="capitalize" type="bool"> </argument> <description> - Adds a [code][list][/code] tag to the tag stack. Similar to the BBCodes [code][ol][/code] or [code][ul][/code], but supports more list types. Not fully implemented! + Adds [code][ol][/code] or [code][ul][/code] tag to the tag stack. Multiplies [code]level[/code] by current [member tab_size] to determine new margin length. </description> </method> <method name="push_meta"> @@ -228,6 +243,39 @@ Adds a [code][font][/code] tag with a normal font to the tag stack. </description> </method> + <method name="push_outline_color"> + <return type="void"> + </return> + <argument index="0" name="color" type="Color"> + </argument> + <description> + Adds a [code][outline_color][/code] tag to the tag stack. Adds text outline for its duration. + </description> + </method> + <method name="push_outline_size"> + <return type="void"> + </return> + <argument index="0" name="outline_size" type="int"> + </argument> + <description> + Adds a [code][outline_size][/code] tag to the tag stack. Overrides default text outline size for its duration. + </description> + </method> + <method name="push_paragraph"> + <return type="void"> + </return> + <argument index="0" name="align" type="int" enum="RichTextLabel.Align"> + </argument> + <argument index="1" name="base_direction" type="int" enum="Control.TextDirection" default="0"> + </argument> + <argument index="2" name="language" type="String" default=""""> + </argument> + <argument index="3" name="st_parser" type="int" enum="Control.StructuredTextParser" default="0"> + </argument> + <description> + Adds a [code][p][/code] tag to the tag stack. + </description> + </method> <method name="push_strikethrough"> <return type="void"> </return> @@ -240,8 +288,10 @@ </return> <argument index="0" name="columns" type="int"> </argument> + <argument index="1" name="inline_align" type="int" enum="VAlign" default="0"> + </argument> <description> - Adds a [code][table=columns][/code] tag to the tag stack. + Adds a [code][table=columns,inline_align][/code] tag to the tag stack. </description> </method> <method name="push_underline"> @@ -270,6 +320,46 @@ Scrolls the window's top line to match [code]line[/code]. </description> </method> + <method name="set_cell_border_color"> + <return type="void"> + </return> + <argument index="0" name="color" type="Color"> + </argument> + <description> + Sets color of a table cell border. + </description> + </method> + <method name="set_cell_padding"> + <return type="void"> + </return> + <argument index="0" name="padding" type="Rect2"> + </argument> + <description> + Sets inner padding of a table cell. + </description> + </method> + <method name="set_cell_row_background_color"> + <return type="void"> + </return> + <argument index="0" name="odd_row_bg" type="Color"> + </argument> + <argument index="1" name="even_row_bg" type="Color"> + </argument> + <description> + Sets color of a table cell. Separate colors for alternating rows can be specified. + </description> + </method> + <method name="set_cell_size_override"> + <return type="void"> + </return> + <argument index="0" name="min_size" type="Vector2"> + </argument> + <argument index="1" name="max_size" type="Vector2"> + </argument> + <description> + Sets minimum and maximum size overrides for a table cell. + </description> + </method> <method name="set_table_column_expand"> <return type="void"> </return> @@ -302,6 +392,9 @@ If [code]true[/code], the label's height will be automatically updated to fit its content. [b]Note:[/b] This property is used as a workaround to fix issues with [RichTextLabel] in [Container]s, but it's unreliable in some cases and will be removed in future versions. </member> + <member name="language" type="String" setter="set_language" getter="get_language" default=""""> + Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead. + </member> <member name="meta_underlined" type="bool" setter="set_meta_underline" getter="is_meta_underlined" default="true"> If [code]true[/code], the label underlines meta tags such as [code][url]{text}[/url][/code]. </member> @@ -322,6 +415,12 @@ <member name="selection_enabled" type="bool" setter="set_selection_enabled" getter="is_selection_enabled" default="false"> If [code]true[/code], the label allows text selection. </member> + <member name="structured_text_bidi_override" type="int" setter="set_structured_text_bidi_override" getter="get_structured_text_bidi_override" enum="Control.StructuredTextParser" default="0"> + Set BiDi algorithm override for the structured text. + </member> + <member name="structured_text_bidi_override_options" type="Array" setter="set_structured_text_bidi_override_options" getter="get_structured_text_bidi_override_options" default="[ ]"> + Set additional options for BiDi override. + </member> <member name="tab_size" type="int" setter="set_tab_size" getter="get_tab_size" default="4"> The number of spaces associated with a single tab length. Does not affect [code]\t[/code] in text tags, only indent tags. </member> @@ -329,6 +428,9 @@ The raw text of the label. When set, clears the tag stack and adds a raw text tag to the top of it. Does not parse BBCodes. Does not modify [member bbcode_text]. </member> + <member name="text_direction" type="int" setter="set_text_direction" getter="get_text_direction" enum="Control.TextDirection" default="0"> + Base text writing direction. + </member> <member name="visible_characters" type="int" setter="set_visible_characters" getter="get_visible_characters" default="-1"> The restricted number of characters to display in the label. If [code]-1[/code], all characters will be displayed. </member> @@ -375,7 +477,10 @@ <constant name="LIST_LETTERS" value="1" enum="ListType"> Each list item has a letter marker. </constant> - <constant name="LIST_DOTS" value="2" enum="ListType"> + <constant name="LIST_ROMAN" value="2" enum="ListType"> + Each list item has a roman number marker. + </constant> + <constant name="LIST_DOTS" value="3" enum="ListType"> Each list item has a filled circle marker. </constant> <constant name="ITEM_FRAME" value="0" enum="ItemType"> @@ -388,42 +493,56 @@ </constant> <constant name="ITEM_FONT" value="4" enum="ItemType"> </constant> - <constant name="ITEM_COLOR" value="5" enum="ItemType"> + <constant name="ITEM_FONT_SIZE" value="5" enum="ItemType"> + </constant> + <constant name="ITEM_FONT_FEATURES" value="6" enum="ItemType"> </constant> - <constant name="ITEM_UNDERLINE" value="6" enum="ItemType"> + <constant name="ITEM_COLOR" value="7" enum="ItemType"> </constant> - <constant name="ITEM_STRIKETHROUGH" value="7" enum="ItemType"> + <constant name="ITEM_OUTLINE_SIZE" value="8" enum="ItemType"> </constant> - <constant name="ITEM_ALIGN" value="8" enum="ItemType"> + <constant name="ITEM_OUTLINE_COLOR" value="9" enum="ItemType"> </constant> - <constant name="ITEM_INDENT" value="9" enum="ItemType"> + <constant name="ITEM_UNDERLINE" value="10" enum="ItemType"> </constant> - <constant name="ITEM_LIST" value="10" enum="ItemType"> + <constant name="ITEM_STRIKETHROUGH" value="11" enum="ItemType"> </constant> - <constant name="ITEM_TABLE" value="11" enum="ItemType"> + <constant name="ITEM_PARAGRAPH" value="12" enum="ItemType"> </constant> - <constant name="ITEM_FADE" value="12" enum="ItemType"> + <constant name="ITEM_INDENT" value="13" enum="ItemType"> </constant> - <constant name="ITEM_SHAKE" value="13" enum="ItemType"> + <constant name="ITEM_LIST" value="14" enum="ItemType"> </constant> - <constant name="ITEM_WAVE" value="14" enum="ItemType"> + <constant name="ITEM_TABLE" value="15" enum="ItemType"> </constant> - <constant name="ITEM_TORNADO" value="15" enum="ItemType"> + <constant name="ITEM_FADE" value="16" enum="ItemType"> </constant> - <constant name="ITEM_RAINBOW" value="16" enum="ItemType"> + <constant name="ITEM_SHAKE" value="17" enum="ItemType"> </constant> - <constant name="ITEM_CUSTOMFX" value="18" enum="ItemType"> + <constant name="ITEM_WAVE" value="18" enum="ItemType"> </constant> - <constant name="ITEM_META" value="17" enum="ItemType"> + <constant name="ITEM_TORNADO" value="19" enum="ItemType"> + </constant> + <constant name="ITEM_RAINBOW" value="20" enum="ItemType"> + </constant> + <constant name="ITEM_CUSTOMFX" value="22" enum="ItemType"> + </constant> + <constant name="ITEM_META" value="21" enum="ItemType"> </constant> </constants> <theme_items> <theme_item name="bold_font" type="Font"> The font used for bold text. </theme_item> + <theme_item name="bold_font_size" type="int"> + The font size used for bold text. + </theme_item> <theme_item name="bold_italics_font" type="Font"> The font used for bold italics text. </theme_item> + <theme_item name="bold_italics_font_size" type="int"> + The font size used for bold italics text. + </theme_item> <theme_item name="default_color" type="Color" default="Color( 1, 1, 1, 1 )"> The default text color. </theme_item> @@ -439,18 +558,27 @@ <theme_item name="italics_font" type="Font"> The font used for italics text. </theme_item> + <theme_item name="italics_font_size" type="int"> + The font size used for italics text. + </theme_item> <theme_item name="line_separation" type="int" default="1"> The vertical space between lines. </theme_item> <theme_item name="mono_font" type="Font"> The font used for monospace text. </theme_item> + <theme_item name="mono_font_size" type="int"> + The font size used for monospace text. + </theme_item> <theme_item name="normal" type="StyleBox"> The normal background for the [RichTextLabel]. </theme_item> <theme_item name="normal_font" type="Font"> The default text font. </theme_item> + <theme_item name="normal_font_size" type="int"> + The default text font size. + </theme_item> <theme_item name="selection_color" type="Color" default="Color( 0.1, 0.1, 1, 0.8 )"> The color of the selection box. </theme_item> @@ -463,9 +591,18 @@ <theme_item name="shadow_offset_y" type="int" default="1"> The vertical offset of the font's shadow. </theme_item> + <theme_item name="table_border" type="Color" default="Color( 0, 0, 0, 0 )"> + The default cell border color. + </theme_item> + <theme_item name="table_even_row_bg" type="Color" default="Color( 0, 0, 0, 0 )"> + The default background color for even rows. + </theme_item> <theme_item name="table_hseparation" type="int" default="3"> The horizontal separation of elements in a table. </theme_item> + <theme_item name="table_odd_row_bg" type="Color" default="Color( 0, 0, 0, 0 )"> + The default background color for odd rows. + </theme_item> <theme_item name="table_vseparation" type="int" default="3"> The vertical separation of elements in a table. </theme_item> |