godot/doc/classes/TextLine.xml
Hugo Locurcio b68dd2e189
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00

189 lines
7.7 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="TextLine" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
Holds a line of text.
</brief_description>
<description>
Abstraction over [TextServer] for handling single line of text.
</description>
<tutorials>
</tutorials>
<methods>
<method name="add_object">
<return type="bool" />
<argument index="0" name="key" type="Variant" />
<argument index="1" name="size" type="Vector2" />
<argument index="2" name="inline_align" type="int" enum="InlineAlignment" default="5" />
<argument index="3" name="length" type="int" default="1" />
<description>
Adds inline object to the text buffer, [code]key[/code] must be unique. In the text, object is represented as [code]length[/code] object replacement characters.
</description>
</method>
<method name="add_string">
<return type="bool" />
<argument index="0" name="text" type="String" />
<argument index="1" name="fonts" type="Font" />
<argument index="2" name="size" type="int" />
<argument index="3" name="opentype_features" type="Dictionary" default="{}" />
<argument index="4" name="language" type="String" default="&quot;&quot;" />
<argument index="5" name="meta" type="Variant" default="null" />
<description>
Adds text span and font to draw it.
</description>
</method>
<method name="clear">
<return type="void" />
<description>
Clears text line (removes text and inline objects).
</description>
</method>
<method name="draw" qualifiers="const">
<return type="void" />
<argument index="0" name="canvas" type="RID" />
<argument index="1" name="pos" type="Vector2" />
<argument index="2" name="color" type="Color" default="Color(1, 1, 1, 1)" />
<description>
Draw text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
</description>
</method>
<method name="draw_outline" qualifiers="const">
<return type="void" />
<argument index="0" name="canvas" type="RID" />
<argument index="1" name="pos" type="Vector2" />
<argument index="2" name="outline_size" type="int" default="1" />
<argument index="3" name="color" type="Color" default="Color(1, 1, 1, 1)" />
<description>
Draw text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the top left corner of the bounding box.
</description>
</method>
<method name="get_line_ascent" qualifiers="const">
<return type="float" />
<description>
Returns the text ascent (number of pixels above the baseline for horizontal layout or to the left of baseline for vertical).
</description>
</method>
<method name="get_line_descent" qualifiers="const">
<return type="float" />
<description>
Returns the text descent (number of pixels below the baseline for horizontal layout or to the right of baseline for vertical).
</description>
</method>
<method name="get_line_underline_position" qualifiers="const">
<return type="float" />
<description>
Returns pixel offset of the underline below the baseline.
</description>
</method>
<method name="get_line_underline_thickness" qualifiers="const">
<return type="float" />
<description>
Returns thickness of the underline.
</description>
</method>
<method name="get_line_width" qualifiers="const">
<return type="float" />
<description>
Returns width (for horizontal layout) or height (for vertical) of the text.
</description>
</method>
<method name="get_object_rect" qualifiers="const">
<return type="Rect2" />
<argument index="0" name="key" type="Variant" />
<description>
Returns bounding rectangle of the inline object.
</description>
</method>
<method name="get_objects" qualifiers="const">
<return type="Array" />
<description>
Returns array of inline objects.
</description>
</method>
<method name="get_rid" qualifiers="const">
<return type="RID" />
<description>
Returns TextServer buffer RID.
</description>
</method>
<method name="get_size" qualifiers="const">
<return type="Vector2" />
<description>
Returns size of the bounding box of the text.
</description>
</method>
<method name="hit_test" qualifiers="const">
<return type="int" />
<argument index="0" name="coords" type="float" />
<description>
Returns caret character offset at the specified pixel offset at the baseline. This function always returns a valid position.
</description>
</method>
<method name="resize_object">
<return type="bool" />
<argument index="0" name="key" type="Variant" />
<argument index="1" name="size" type="Vector2" />
<argument index="2" name="inline_align" type="int" enum="InlineAlignment" default="5" />
<description>
Sets new size and alignment of embedded object.
</description>
</method>
<method name="set_bidi_override">
<return type="void" />
<argument index="0" name="override" type="Array" />
<description>
Overrides BiDi for the structured text.
Override ranges should cover full source text without overlaps. BiDi algorithm will be used on each range separately.
</description>
</method>
<method name="tab_align">
<return type="void" />
<argument index="0" name="tab_stops" type="PackedFloat32Array" />
<description>
Aligns text to the given tab-stops.
</description>
</method>
</methods>
<members>
<member name="alignment" type="int" setter="set_horizontal_alignment" getter="get_horizontal_alignment" enum="HorizontalAlignment" default="0">
</member>
<member name="direction" type="int" setter="set_direction" getter="get_direction" enum="TextServer.Direction" default="0">
Text writing direction.
</member>
<member name="flags" type="int" setter="set_flags" getter="get_flags" default="3">
Line Alignment rules. For more info see [TextServer].
</member>
<member name="orientation" type="int" setter="set_orientation" getter="get_orientation" enum="TextServer.Orientation" default="0">
Text orientation.
</member>
<member name="preserve_control" type="bool" setter="set_preserve_control" getter="get_preserve_control" default="false">
If set to [code]true[/code] text will display control characters.
</member>
<member name="preserve_invalid" type="bool" setter="set_preserve_invalid" getter="get_preserve_invalid" default="true">
If set to [code]true[/code] text will display invalid characters.
</member>
<member name="text_overrun_behavior" type="int" setter="set_text_overrun_behavior" getter="get_text_overrun_behavior" enum="TextLine.OverrunBehavior" default="3">
Sets the clipping behavior when the text exceeds the text line's set width. See [enum OverrunBehavior] for a description of all modes.
</member>
<member name="width" type="float" setter="set_width" getter="get_width" default="-1.0">
Text line width.
</member>
</members>
<constants>
<constant name="OVERRUN_NO_TRIMMING" value="0" enum="OverrunBehavior">
No text trimming is performed.
</constant>
<constant name="OVERRUN_TRIM_CHAR" value="1" enum="OverrunBehavior">
Trims the text per character.
</constant>
<constant name="OVERRUN_TRIM_WORD" value="2" enum="OverrunBehavior">
Trims the text per word.
</constant>
<constant name="OVERRUN_TRIM_ELLIPSIS" value="3" enum="OverrunBehavior">
Trims the text per character and adds an ellipsis to indicate that parts are hidden.
</constant>
<constant name="OVERRUN_TRIM_WORD_ELLIPSIS" value="4" enum="OverrunBehavior">
Trims the text per word and adds an ellipsis to indicate that parts are hidden.
</constant>
</constants>
</class>