From 7c6c32b500b2f532e05705c5bccd7d80e632eb65 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Fri, 6 Dec 2019 20:50:17 +0100 Subject: [PATCH] Document RichTextEffect and CharFXTransform --- doc/classes/CharFXTransform.xml | 23 +++++++++++++++++++++++ doc/classes/RichTextEffect.xml | 11 +++++++++++ 2 files changed, 34 insertions(+) diff --git a/doc/classes/CharFXTransform.xml b/doc/classes/CharFXTransform.xml index e03229abe1..399530bb5d 100644 --- a/doc/classes/CharFXTransform.xml +++ b/doc/classes/CharFXTransform.xml @@ -1,10 +1,14 @@ + Controls how an individual character will be displayed in a [RichTextEffect]. + By setting various properties on this object, you can control how individual characters will be displayed in a [RichTextEffect]. + http://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel.html + https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project @@ -15,25 +19,44 @@ + Returns the value for [code]key[/code] in the [member env] [Dictionary], or [code]default_value[/code] if [code]key[/code] isn't defined in [member env]. If the value's type doesn't match [code]default_value[/code]'s type, this method will return [code]default_value[/code]. + The index of the current character (starting from 0). Setting this property won't affect drawing. + 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: + [codeblock] + # `char_fx` is the CharFXTransform parameter from `_process_custom_fx()`. + # See the RichTextEffect documentation for details. + char_fx.character = ord("*") + [/codeblock] + The color the character will be drawn with. + The time elapsed since the [RichTextLabel] was added to the scene tree (in seconds). Time stops when the project is paused, unless the [RichTextLabel]'s [member Node.pause_mode] is set to [constant Node.PAUSE_MODE_PROCESS]. + [b]Note:[/b] Time still passes while the [RichTextLabel] is hidden. + Contains the arguments passed in the opening BBCode tag. By default, arguments are strings; if their contents match a type such as [bool], [int] or [float], they will be converted automatically. Color codes in the form [code]#rrggbb[/code] or [code]#rgb[/code] will be converted to an opaque [Color]. String arguments may not contain spaces, even if they're quoted. If present, quotes will also be present in the final string. + For example, the opening BBCode tag [code][example foo=hello bar=true baz=42 color=#ffffff][/code] will map to the following [Dictionary]: + [codeblock] + {"foo": "hello", "bar": true, "baz": 42, "color": Color(1, 1, 1, 1)} + [/codeblock] + The position offset the character will be drawn with (in pixels). + The index of the current character (starting from 0). Setting this property won't affect drawing. + 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/RichTextEffect.xml b/doc/classes/RichTextEffect.xml index 5c3ffd9cff..0e043b1d50 100644 --- a/doc/classes/RichTextEffect.xml +++ b/doc/classes/RichTextEffect.xml @@ -1,10 +1,20 @@ + A custom effect for use with [RichTextLabel]. + A custom effect for use with [RichTextLabel]. + [b]Note:[/b] For a [RichTextEffect] to be usable, a BBCode tag must be defined as a member variable called [code]bbcode[/code] in the script. + [codeblock] + # The RichTextEffect will be usable like this: `[example]Some text[/example]` + var bbcode = "example" + [/codeblock] + [b]Note:[/b] As soon as a [RichTextLabel] contains at least one [RichTextEffect], it will continuously process the effect unless the project is paused. This may impact battery life negatively. + http://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel.html + https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project @@ -13,6 +23,7 @@ + Override this method to modify properties in [code]char_fx[/code]. The method must return [code]true[/code] if the character could be transformed successfully. If the method returns [code]false[/code], it will skip transformation to avoid displaying broken text.