summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/classes/AspectRatioContainer.xml1
-rw-r--r--doc/classes/BoxContainer.xml1
-rw-r--r--doc/classes/CenterContainer.xml1
-rw-r--r--doc/classes/Container.xml1
-rw-r--r--doc/classes/DisplayServer.xml102
-rw-r--r--doc/classes/GridContainer.xml1
-rw-r--r--doc/classes/HBoxContainer.xml1
-rw-r--r--doc/classes/HSplitContainer.xml1
-rw-r--r--doc/classes/Label3D.xml3
-rw-r--r--doc/classes/MarginContainer.xml1
-rw-r--r--doc/classes/PanelContainer.xml1
-rw-r--r--doc/classes/ScrollContainer.xml1
-rw-r--r--doc/classes/SplitContainer.xml1
-rw-r--r--doc/classes/StyleBoxFlat.xml10
-rw-r--r--doc/classes/TabContainer.xml1
-rw-r--r--doc/classes/TextServer.xml8
-rw-r--r--doc/classes/TextServerExtension.xml8
-rw-r--r--doc/classes/Tween.xml14
-rw-r--r--doc/classes/Tweener.xml2
-rw-r--r--doc/classes/VBoxContainer.xml1
-rw-r--r--doc/classes/VSplitContainer.xml1
21 files changed, 152 insertions, 9 deletions
diff --git a/doc/classes/AspectRatioContainer.xml b/doc/classes/AspectRatioContainer.xml
index 742a7276d4..e7847ba05c 100644
--- a/doc/classes/AspectRatioContainer.xml
+++ b/doc/classes/AspectRatioContainer.xml
@@ -7,6 +7,7 @@
Arranges child controls in a way to preserve their aspect ratio automatically whenever the container is resized. Solves the problem where the container size is dynamic and the contents' size needs to adjust accordingly without losing proportions.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<members>
<member name="alignment_horizontal" type="int" setter="set_alignment_horizontal" getter="get_alignment_horizontal" enum="AspectRatioContainer.AlignmentMode" default="1">
diff --git a/doc/classes/BoxContainer.xml b/doc/classes/BoxContainer.xml
index 92fccaa884..c76a178368 100644
--- a/doc/classes/BoxContainer.xml
+++ b/doc/classes/BoxContainer.xml
@@ -7,6 +7,7 @@
Arranges child [Control] nodes vertically or horizontally, and rearranges them automatically when their minimum size changes.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<methods>
<method name="add_spacer">
diff --git a/doc/classes/CenterContainer.xml b/doc/classes/CenterContainer.xml
index 08cdf64cea..f5f32bd325 100644
--- a/doc/classes/CenterContainer.xml
+++ b/doc/classes/CenterContainer.xml
@@ -7,6 +7,7 @@
CenterContainer keeps children controls centered. This container keeps all children to their minimum size, in the center.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<members>
<member name="use_top_left" type="bool" setter="set_use_top_left" getter="is_using_top_left" default="false">
diff --git a/doc/classes/Container.xml b/doc/classes/Container.xml
index 11b20b5654..900997d119 100644
--- a/doc/classes/Container.xml
+++ b/doc/classes/Container.xml
@@ -8,6 +8,7 @@
A Control can inherit this to create custom container classes.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<methods>
<method name="_get_allowed_size_flags_horizontal" qualifiers="virtual const">
diff --git a/doc/classes/DisplayServer.xml b/doc/classes/DisplayServer.xml
index 0d99c600d5..ede3a1e199 100644
--- a/doc/classes/DisplayServer.xml
+++ b/doc/classes/DisplayServer.xml
@@ -814,6 +814,93 @@
[b]Note:[/b] This method is implemented on Windows.
</description>
</method>
+ <method name="tts_get_voices" qualifiers="const">
+ <return type="Array" />
+ <description>
+ Returns an [Array] of voice information dictionaries.
+ Each [Dictionary] contains two [String] entries:
+ - [code]name[/code] is voice name.
+ - [code]id[/code] is voice identifier.
+ - [code]language[/code] is language code in [code]lang_Variant[/code] format. [code]lang[/code] part is a 2 or 3-letter code based on the ISO-639 standard, in lowercase. And [code]Variant[/code] part is an engine dependent string describing country, region or/and dialect.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_get_voices_for_language" qualifiers="const">
+ <return type="PackedStringArray" />
+ <argument index="0" name="language" type="String" />
+ <description>
+ Returns an [PackedStringArray] of voice identifiers for the [code]language[/code].
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_is_paused" qualifiers="const">
+ <return type="bool" />
+ <description>
+ Returns [code]true[/code] if the synthesizer is in a paused state.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_is_speaking" qualifiers="const">
+ <return type="bool" />
+ <description>
+ Returns [code]true[/code] if the synthesizer is generating speech, or have utterance waiting in the queue.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_pause">
+ <return type="void" />
+ <description>
+ Puts the synthesizer into a paused state.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_resume">
+ <return type="void" />
+ <description>
+ Resumes the synthesizer if it was paused.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_set_utterance_callback">
+ <return type="void" />
+ <argument index="0" name="event" type="int" enum="DisplayServer.TTSUtteranceEvent" />
+ <argument index="1" name="callable" type="Callable" />
+ <description>
+ Adds a callback, which is called when the utterance has started, finished, canceled or reached a text boundary.
+ - [code]TTS_UTTERANCE_STARTED[/code], [code]TTS_UTTERANCE_ENDED[/code], and [code]TTS_UTTERANCE_CANCELED[/code] callable's method should take one [int] parameter, the utterance id.
+ - [code]TTS_UTTERANCE_BOUNDARY[/code] callable's method should take two [int] parameters, the index of the character and the utterance id.
+ [b]Note:[/b] The granularity of the boundary callbacks is engine dependent.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_speak">
+ <return type="void" />
+ <argument index="0" name="text" type="String" />
+ <argument index="1" name="voice" type="String" />
+ <argument index="2" name="volume" type="int" default="50" />
+ <argument index="3" name="pitch" type="float" default="1.0" />
+ <argument index="4" name="rate" type="float" default="1.0" />
+ <argument index="5" name="utterance_id" type="int" default="0" />
+ <argument index="6" name="interrupt" type="bool" default="false" />
+ <description>
+ Adds an utterance to the queue. If [code]interrupt[/code] is [code]true[/code], the queue is cleared first.
+ - [code]voice[/code] identifier is one of the [code]"id"[/code] values returned by [method tts_get_voices] or one of the values returned by [method tts_get_voices_for_language].
+ - [code]volume[/code] ranges from [code]0[/code] (lowest) to [code]100[/code] (highest).
+ - [code]pitch[/code] ranges from [code]0.0[/code] (lowest) to [code]2.0[/code] (highest), [code]1.0[/code] is default pitch for the current voice.
+ - [code]rate[/code] ranges from [code]0.1[/code] (lowest) to [code]10.0[/code] (highest), [code]1.0[/code] is a normal speaking rate. Other values act as a percentage relative.
+ - [code]utterance_id[/code] is passed as a parameter to the callback functions.
+ [b]Note:[/b] On Windows and Linux, utterance [code]text[/code] can use SSML markup. SSML support is engine and voice dependent. If the engine does not support SSML, you should strip out all XML markup before calling [method tts_speak].
+ [b]Note:[/b] The granularity of pitch, rate, and volume is engine and voice dependent. Values may be truncated.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
+ <method name="tts_stop">
+ <return type="void" />
+ <description>
+ Stops synthesis in progress and removes all utterances from the queue.
+ [b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS, and Windows.
+ </description>
+ </method>
<method name="virtual_keyboard_get_height" qualifiers="const">
<return type="int" />
<description>
@@ -1184,6 +1271,9 @@
</constant>
<constant name="FEATURE_CLIPBOARD_PRIMARY" value="18" enum="Feature">
</constant>
+ <constant name="FEATURE_TEXT_TO_SPEECH" value="19" enum="Feature">
+ Display server supports text-to-speech. See [code]tts_*[/code] methods.
+ </constant>
<constant name="MOUSE_MODE_VISIBLE" value="0" enum="MouseMode">
Makes the mouse cursor visible if it is hidden.
</constant>
@@ -1335,5 +1425,17 @@
- MacOS: [code]NSView*[/code] for the window main view.
- iOS: [code]UIView*[/code] for the window main view.
</constant>
+ <constant name="TTS_UTTERANCE_STARTED" value="0" enum="TTSUtteranceEvent">
+ Utterance has begun to be spoken.
+ </constant>
+ <constant name="TTS_UTTERANCE_ENDED" value="1" enum="TTSUtteranceEvent">
+ Utterance was successfully finished.
+ </constant>
+ <constant name="TTS_UTTERANCE_CANCELED" value="2" enum="TTSUtteranceEvent">
+ Utterance was canceled, or TTS service was unable to process it.
+ </constant>
+ <constant name="TTS_UTTERANCE_BOUNDARY" value="3" enum="TTSUtteranceEvent">
+ Utterance reached a word or sentence boundary.
+ </constant>
</constants>
</class>
diff --git a/doc/classes/GridContainer.xml b/doc/classes/GridContainer.xml
index bb27c35785..8b7a0fe407 100644
--- a/doc/classes/GridContainer.xml
+++ b/doc/classes/GridContainer.xml
@@ -9,6 +9,7 @@
[b]Note:[/b] GridContainer only works with child nodes inheriting from Control. It won't rearrange child nodes inheriting from Node2D.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
<link title="OS Test Demo">https://godotengine.org/asset-library/asset/677</link>
</tutorials>
<members>
diff --git a/doc/classes/HBoxContainer.xml b/doc/classes/HBoxContainer.xml
index 0af9f7a0f4..21267215eb 100644
--- a/doc/classes/HBoxContainer.xml
+++ b/doc/classes/HBoxContainer.xml
@@ -7,6 +7,7 @@
Horizontal box container. See [BoxContainer].
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<theme_items>
<theme_item name="separation" data_type="constant" type="int" default="4">
diff --git a/doc/classes/HSplitContainer.xml b/doc/classes/HSplitContainer.xml
index f240718176..8137e26b8c 100644
--- a/doc/classes/HSplitContainer.xml
+++ b/doc/classes/HSplitContainer.xml
@@ -7,6 +7,7 @@
Horizontal split container. See [SplitContainer]. This goes from left to right.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<theme_items>
<theme_item name="autohide" data_type="constant" type="int" default="1">
diff --git a/doc/classes/Label3D.xml b/doc/classes/Label3D.xml
index c95b691bf3..fbb53715c4 100644
--- a/doc/classes/Label3D.xml
+++ b/doc/classes/Label3D.xml
@@ -92,6 +92,9 @@
<member name="no_depth_test" type="bool" setter="set_draw_flag" getter="get_draw_flag" default="false">
If [code]true[/code], depth testing is disabled and the object will be drawn in render order.
</member>
+ <member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2(0, 0)">
+ The text drawing offset (in pixels).
+ </member>
<member name="outline_modulate" type="Color" setter="set_outline_modulate" getter="get_outline_modulate" default="Color(0, 0, 0, 1)">
The tint of [Font]'s outline.
</member>
diff --git a/doc/classes/MarginContainer.xml b/doc/classes/MarginContainer.xml
index 3f9f93a39b..3b2ace8475 100644
--- a/doc/classes/MarginContainer.xml
+++ b/doc/classes/MarginContainer.xml
@@ -26,6 +26,7 @@
[/codeblocks]
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<theme_items>
<theme_item name="margin_bottom" data_type="constant" type="int" default="0">
diff --git a/doc/classes/PanelContainer.xml b/doc/classes/PanelContainer.xml
index 1bb26045d9..fff30e0dc0 100644
--- a/doc/classes/PanelContainer.xml
+++ b/doc/classes/PanelContainer.xml
@@ -7,6 +7,7 @@
Panel container type. This container fits controls inside of the delimited area of a stylebox. It's useful for giving controls an outline.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
<link title="2D Role Playing Game Demo">https://godotengine.org/asset-library/asset/520</link>
</tutorials>
<members>
diff --git a/doc/classes/ScrollContainer.xml b/doc/classes/ScrollContainer.xml
index 95255ed79f..658793c4c0 100644
--- a/doc/classes/ScrollContainer.xml
+++ b/doc/classes/ScrollContainer.xml
@@ -9,6 +9,7 @@
Works great with a [Panel] control. You can set [code]EXPAND[/code] on the children's size flags, so they will upscale to the ScrollContainer's size if it's larger (scroll is invisible for the chosen dimension).
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<methods>
<method name="ensure_control_visible">
diff --git a/doc/classes/SplitContainer.xml b/doc/classes/SplitContainer.xml
index b2fcd46731..f2bc65f8df 100644
--- a/doc/classes/SplitContainer.xml
+++ b/doc/classes/SplitContainer.xml
@@ -7,6 +7,7 @@
Container for splitting two [Control]s vertically or horizontally, with a grabber that allows adjusting the split offset or ratio.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<methods>
<method name="clamp_split_offset">
diff --git a/doc/classes/StyleBoxFlat.xml b/doc/classes/StyleBoxFlat.xml
index 20430f3205..c80f8dcbb1 100644
--- a/doc/classes/StyleBoxFlat.xml
+++ b/doc/classes/StyleBoxFlat.xml
@@ -119,7 +119,7 @@
</methods>
<members>
<member name="anti_aliasing" type="bool" setter="set_anti_aliased" getter="is_anti_aliased" default="true">
- Antialiasing draws a small ring around the edges, which fades to transparency. As a result, edges look much smoother. This is only noticeable when using rounded corners.
+ Antialiasing draws a small ring around the edges, which fades to transparency. As a result, edges look much smoother. This is only noticeable when using rounded corners or [member skew].
[b]Note:[/b] When using beveled corners with 45-degree angles ([member corner_detail] = 1), it is recommended to set [member anti_aliasing] to [code]false[/code] to ensure crisp visuals and avoid possible visual glitches.
</member>
<member name="anti_aliasing_size" type="float" setter="set_aa_size" getter="get_aa_size" default="0.625">
@@ -168,15 +168,19 @@
</member>
<member name="expand_margin_bottom" type="float" setter="set_expand_margin" getter="get_expand_margin" default="0.0">
Expands the stylebox outside of the control rect on the bottom edge. Useful in combination with [member border_width_bottom] to draw a border outside the control rect.
+ [b]Note:[/b] Unlike [member StyleBox.content_margin_bottom], [member expand_margin_bottom] does [i]not[/i] affect the size of the clickable area for [Control]s. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.
</member>
<member name="expand_margin_left" type="float" setter="set_expand_margin" getter="get_expand_margin" default="0.0">
Expands the stylebox outside of the control rect on the left edge. Useful in combination with [member border_width_left] to draw a border outside the control rect.
+ [b]Note:[/b] Unlike [member StyleBox.content_margin_left], [member expand_margin_left] does [i]not[/i] affect the size of the clickable area for [Control]s. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.
</member>
<member name="expand_margin_right" type="float" setter="set_expand_margin" getter="get_expand_margin" default="0.0">
Expands the stylebox outside of the control rect on the right edge. Useful in combination with [member border_width_right] to draw a border outside the control rect.
+ [b]Note:[/b] Unlike [member StyleBox.content_margin_right], [member expand_margin_right] does [i]not[/i] affect the size of the clickable area for [Control]s. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.
</member>
<member name="expand_margin_top" type="float" setter="set_expand_margin" getter="get_expand_margin" default="0.0">
Expands the stylebox outside of the control rect on the top edge. Useful in combination with [member border_width_top] to draw a border outside the control rect.
+ [b]Note:[/b] Unlike [member StyleBox.content_margin_top], [member expand_margin_top] does [i]not[/i] affect the size of the clickable area for [Control]s. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.
</member>
<member name="shadow_color" type="Color" setter="set_shadow_color" getter="get_shadow_color" default="Color(0, 0, 0, 0.6)">
The color of the shadow. This has no effect if [member shadow_size] is lower than 1.
@@ -187,5 +191,9 @@
<member name="shadow_size" type="int" setter="set_shadow_size" getter="get_shadow_size" default="0">
The shadow size in pixels.
</member>
+ <member name="skew" type="Vector2" setter="set_skew" getter="get_skew" default="Vector2(0, 0)">
+ If set to a non-zero value on either axis, [member skew] distorts the StyleBox horizontally and/or vertically. This can be used for "futuristic"-style UIs. Positive values skew the StyleBox towards the right (X axis) and upwards (Y axis), while negative values skew the StyleBox towards the left (X axis) and downwards (Y axis).
+ [b]Note:[/b] To ensure text does not touch the StyleBox's edges, consider increasing the [StyleBox]'s content margin (see [member StyleBox.content_margin_bottom]). It is preferable to increase the content margin instead of the expand margin (see [member expand_margin_bottom]), as increasing the expand margin does not increase the size of the clickable area for [Control]s.
+ </member>
</members>
</class>
diff --git a/doc/classes/TabContainer.xml b/doc/classes/TabContainer.xml
index 011b716dfc..10b5f730ad 100644
--- a/doc/classes/TabContainer.xml
+++ b/doc/classes/TabContainer.xml
@@ -9,6 +9,7 @@
[b]Note:[/b] The drawing of the clickable tabs themselves is handled by this node. Adding [TabBar]s as children is not needed.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<methods>
<method name="get_current_tab_control" qualifiers="const">
diff --git a/doc/classes/TextServer.xml b/doc/classes/TextServer.xml
index dba4bd24a5..2f57b76374 100644
--- a/doc/classes/TextServer.xml
+++ b/doc/classes/TextServer.xml
@@ -1441,6 +1441,14 @@
Aligns shaped text to the given tab-stops.
</description>
</method>
+ <method name="string_get_word_breaks" qualifiers="const">
+ <return type="PackedInt32Array" />
+ <argument index="0" name="string" type="String" />
+ <argument index="1" name="language" type="String" default="&quot;&quot;" />
+ <description>
+ Returns array of the word break character offsets.
+ </description>
+ </method>
<method name="string_to_lower" qualifiers="const">
<return type="String" />
<argument index="0" name="string" type="String" />
diff --git a/doc/classes/TextServerExtension.xml b/doc/classes/TextServerExtension.xml
index ef522d08a7..434d6f909c 100644
--- a/doc/classes/TextServerExtension.xml
+++ b/doc/classes/TextServerExtension.xml
@@ -1461,6 +1461,14 @@
[b]Note:[/b] This method is used by default line/word breaking methods, and its implementation might be omitted if custom line breaking in implemented.
</description>
</method>
+ <method name="string_get_word_breaks" qualifiers="virtual const">
+ <return type="PackedInt32Array" />
+ <argument index="0" name="string" type="String" />
+ <argument index="1" name="language" type="String" />
+ <description>
+ Returns array of the word break character offsets.
+ </description>
+ </method>
<method name="string_to_lower" qualifiers="virtual const">
<return type="String" />
<argument index="0" name="string" type="String" />
diff --git a/doc/classes/Tween.xml b/doc/classes/Tween.xml
index 2ec8bb287c..f9ec0d115d 100644
--- a/doc/classes/Tween.xml
+++ b/doc/classes/Tween.xml
@@ -76,7 +76,7 @@
<return type="float" />
<description>
Returns the total time in seconds the [Tween] has been animating (i.e. time since it started, not counting pauses etc.). The time is affected by [method set_speed_scale] and [method stop] will reset it to [code]0[/code].
- [b]Note:[/code] As it results from accumulating frame deltas, the time returned after the [Tween] has finished animating will be slightly greater than the actual [Tween] duration.
+ [b]Note:[/b] As it results from accumulating frame deltas, the time returned after the [Tween] has finished animating will be slightly greater than the actual [Tween] duration.
</description>
</method>
<method name="interpolate_value" qualifiers="static">
@@ -231,10 +231,10 @@
Example: creating an object that moves back and forth and jumps every few seconds.
[codeblock]
var tween = create_tween().set_loops()
- tween.tween_property("position:x", 200, 1).as_relative()
+ tween.tween_property($Sprite, "position:x", 200.0, 1).as_relative()
tween.tween_callback(jump)
tween.tween_interval(2)
- tween.tween_property("position:x", -200, 1).as_relative()
+ tween.tween_property($Sprite, "position:x", -200.0, 1).as_relative()
tween.tween_callback(jump)
tween.tween_interval(2)
[/codeblock]
@@ -274,16 +274,16 @@
Creates and appends a [PropertyTweener]. This method tweens a [code]property[/code] of an [code]object[/code] between an initial value and [code]final_val[/code] in a span of time equal to [code]duration[/code], in seconds. The initial value by default is a value at the time the tweening of the [PropertyTweener] start. For example:
[codeblock]
var tween = create_tween()
- tween.tween_property($Sprite, "position", Vector2(100, 200)
- tween.tween_property($Sprite, "position", Vector2(200, 300)
+ tween.tween_property($Sprite, "position", Vector2(100, 200), 1)
+ tween.tween_property($Sprite, "position", Vector2(200, 300), 1)
[/codeblock]
will move the sprite to position (100, 200) and then to (200, 300). If you use [method PropertyTweener.from] or [method PropertyTweener.from_current], the starting position will be overwritten by the given value instead. See other methods in [PropertyTweener] to see how the tweening can be tweaked further.
[b]Note:[/b] You can find the correct property name by hovering over the property in the Inspector. You can also provide the components of a property directly by using [code]"property:component"[/code] (eg. [code]position:x[/code]), where it would only apply to that particular component.
Example: moving object twice from the same position, with different transition types.
[codeblock]
var tween = create_tween()
- tween.tween_property($Sprite, "position", Vector2.RIGHT * 300).as_relative().set_trans(Tween.TRANS_SINE)
- tween.tween_property($Sprite, "position", Vector2.RIGHT * 300).as_relative().from_current().set_trans(Tween.TRANS_EXPO)
+ tween.tween_property($Sprite, "position", Vector2.RIGHT * 300, 1).as_relative().set_trans(Tween.TRANS_SINE)
+ tween.tween_property($Sprite, "position", Vector2.RIGHT * 300, 1).as_relative().from_current().set_trans(Tween.TRANS_EXPO)
[/codeblock]
</description>
</method>
diff --git a/doc/classes/Tweener.xml b/doc/classes/Tweener.xml
index 3392f9ee23..721ed4e13e 100644
--- a/doc/classes/Tweener.xml
+++ b/doc/classes/Tweener.xml
@@ -4,7 +4,7 @@
Abstract class for all Tweeners used by [Tween].
</brief_description>
<description>
- Tweeners are objects that perform a specific animating task, e.g. interpolating a property or calling a method at a given time. A [Tweener] can't be created manually, you need to use a dedicated method from [Tween] or [Node].
+ Tweeners are objects that perform a specific animating task, e.g. interpolating a property or calling a method at a given time. A [Tweener] can't be created manually, you need to use a dedicated method from [Tween].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/VBoxContainer.xml b/doc/classes/VBoxContainer.xml
index 4821791f50..a345668f91 100644
--- a/doc/classes/VBoxContainer.xml
+++ b/doc/classes/VBoxContainer.xml
@@ -7,6 +7,7 @@
Vertical box container. See [BoxContainer].
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
<link title="3D Voxel Demo">https://godotengine.org/asset-library/asset/676</link>
</tutorials>
<theme_items>
diff --git a/doc/classes/VSplitContainer.xml b/doc/classes/VSplitContainer.xml
index 32b7637c7e..b933fb2805 100644
--- a/doc/classes/VSplitContainer.xml
+++ b/doc/classes/VSplitContainer.xml
@@ -7,6 +7,7 @@
Vertical split container. See [SplitContainer]. This goes from top to bottom.
</description>
<tutorials>
+ <link title="GUI containers">$DOCS_URL/tutorials/ui/gui_containers.html</link>
</tutorials>
<theme_items>
<theme_item name="autohide" data_type="constant" type="int" default="1">