<?xml version="1.0" encoding="UTF-8" ?>
<class name="Label" inherits="Control" version="3.3">
	<brief_description>
		Displays plain text in a line or wrapped inside a rectangle. For formatted text, use [RichTextLabel].
	</brief_description>
	<description>
		Label displays plain text on the screen. It gives you control over the horizontal and vertical alignment, and can wrap the text inside the node's bounding rectangle. It doesn't support bold, italics or other formatting. For that, use [RichTextLabel] instead.
		[b]Note:[/b] Contrarily to most other [Control]s, Label's [member Control.mouse_filter] defaults to [constant Control.MOUSE_FILTER_IGNORE] (i.e. it doesn't react to mouse input events). This implies that a label won't display any configured [member Control.hint_tooltip], unless you change its mouse filter.
	</description>
	<tutorials>
		<link title="2D Dodge The Creeps Demo">https://godotengine.org/asset-library/asset/515</link>
	</tutorials>
	<methods>
		<method name="get_line_count" qualifiers="const">
			<return type="int">
			</return>
			<description>
				Returns the amount of lines of text the Label has.
			</description>
		</method>
		<method name="get_line_height" qualifiers="const">
			<return type="int">
			</return>
			<description>
				Returns the font size in pixels.
			</description>
		</method>
		<method name="get_total_character_count" qualifiers="const">
			<return type="int">
			</return>
			<description>
				Returns the total number of printable characters in the text (excluding spaces and newlines).
			</description>
		</method>
		<method name="get_visible_line_count" qualifiers="const">
			<return type="int">
			</return>
			<description>
				Returns the number of lines shown. Useful if the [Label]'s height cannot currently display all lines.
			</description>
		</method>
	</methods>
	<members>
		<member name="align" type="int" setter="set_align" getter="get_align" enum="Label.Align" default="0">
			Controls the text's horizontal align. Supports left, center, right, and fill, or justify. Set it to one of the [enum Align] constants.
		</member>
		<member name="autowrap" type="bool" setter="set_autowrap" getter="has_autowrap" default="false">
			If [code]true[/code], wraps the text inside the node's bounding rectangle. If you resize the node, it will change its height automatically to show all the text.
		</member>
		<member name="clip_text" type="bool" setter="set_clip_text" getter="is_clipping_text" default="false">
			If [code]true[/code], the Label only shows the text that fits inside its bounding rectangle. It also lets you scale the node down freely.
		</member>
		<member name="lines_skipped" type="int" setter="set_lines_skipped" getter="get_lines_skipped" default="0">
			The node ignores the first [code]lines_skipped[/code] lines before it starts to display text.
		</member>
		<member name="max_lines_visible" type="int" setter="set_max_lines_visible" getter="get_max_lines_visible" default="-1">
			Limits the lines of text the node shows on screen.
		</member>
		<member name="mouse_filter" type="int" setter="set_mouse_filter" getter="get_mouse_filter" override="true" enum="Control.MouseFilter" default="2" />
		<member name="percent_visible" type="float" setter="set_percent_visible" getter="get_percent_visible" default="1.0">
			Limits the amount of visible characters. If you set [code]percent_visible[/code] to 0.5, only up to half of the text's characters will display on screen. Useful to animate the text in a dialog box.
		</member>
		<member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" override="true" default="4" />
		<member name="text" type="String" setter="set_text" getter="get_text" default="&quot;&quot;">
			The text to display on screen.
		</member>
		<member name="uppercase" type="bool" setter="set_uppercase" getter="is_uppercase" default="false">
			If [code]true[/code], all the text displays as UPPERCASE.
		</member>
		<member name="valign" type="int" setter="set_valign" getter="get_valign" enum="Label.VAlign" default="0">
			Controls the text's vertical align. Supports top, center, bottom, and fill. Set it to one of the [enum VAlign] constants.
		</member>
		<member name="visible_characters" type="int" setter="set_visible_characters" getter="get_visible_characters" default="-1">
			Restricts the number of characters to display. Set to -1 to disable.
		</member>
	</members>
	<constants>
		<constant name="ALIGN_LEFT" value="0" enum="Align">
			Align rows to the left (default).
		</constant>
		<constant name="ALIGN_CENTER" value="1" enum="Align">
			Align rows centered.
		</constant>
		<constant name="ALIGN_RIGHT" value="2" enum="Align">
			Align rows to the right.
		</constant>
		<constant name="ALIGN_FILL" value="3" enum="Align">
			Expand row whitespaces to fit the width.
		</constant>
		<constant name="VALIGN_TOP" value="0" enum="VAlign">
			Align the whole text to the top.
		</constant>
		<constant name="VALIGN_CENTER" value="1" enum="VAlign">
			Align the whole text to the center.
		</constant>
		<constant name="VALIGN_BOTTOM" value="2" enum="VAlign">
			Align the whole text to the bottom.
		</constant>
		<constant name="VALIGN_FILL" value="3" enum="VAlign">
			Align the whole text by spreading the rows.
		</constant>
	</constants>
	<theme_items>
		<theme_item name="font" type="Font">
			[Font] used for the [Label]'s text.
		</theme_item>
		<theme_item name="font_color" type="Color" default="Color( 1, 1, 1, 1 )">
			Default text [Color] of the [Label].
		</theme_item>
		<theme_item name="font_color_shadow" type="Color" default="Color( 0, 0, 0, 0 )">
			[Color] of the text's shadow effect.
		</theme_item>
		<theme_item name="font_outline_modulate" type="Color" default="Color( 1, 1, 1, 1 )">
			The tint of [Font]'s outline. See [member DynamicFont.outline_color].
		</theme_item>
		<theme_item name="line_spacing" type="int" default="3">
			Vertical space between lines in multiline [Label].
		</theme_item>
		<theme_item name="normal" type="StyleBox">
			Background [StyleBox] for the [Label].
		</theme_item>
		<theme_item name="shadow_as_outline" type="int" default="0">
			Boolean value. If set to 1 ([code]true[/code]), the shadow will be displayed around the whole text as an outline.
		</theme_item>
		<theme_item name="shadow_offset_x" type="int" default="1">
			The horizontal offset of the text's shadow.
		</theme_item>
		<theme_item name="shadow_offset_y" type="int" default="1">
			The vertical offset of the text's shadow.
		</theme_item>
	</theme_items>
</class>
