class_richtextlabel.rst 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the RichTextLabel.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_RichTextLabel:
  6. RichTextLabel
  7. =============
  8. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  9. **Category:** Core
  10. Brief Description
  11. -----------------
  12. Label that displays rich text.
  13. Properties
  14. ----------
  15. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  16. | :ref:`bool<class_bool>` | :ref:`bbcode_enabled<class_RichTextLabel_property_bbcode_enabled>` | false |
  17. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  18. | :ref:`String<class_String>` | :ref:`bbcode_text<class_RichTextLabel_property_bbcode_text>` | "" |
  19. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  20. | :ref:`bool<class_bool>` | :ref:`meta_underlined<class_RichTextLabel_property_meta_underlined>` | true |
  21. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  22. | :ref:`bool<class_bool>` | :ref:`override_selected_font_color<class_RichTextLabel_property_override_selected_font_color>` | false |
  23. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  24. | :ref:`float<class_float>` | :ref:`percent_visible<class_RichTextLabel_property_percent_visible>` | 1.0 |
  25. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  26. | :ref:`bool<class_bool>` | :ref:`scroll_active<class_RichTextLabel_property_scroll_active>` | true |
  27. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  28. | :ref:`bool<class_bool>` | :ref:`scroll_following<class_RichTextLabel_property_scroll_following>` | false |
  29. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  30. | :ref:`bool<class_bool>` | :ref:`selection_enabled<class_RichTextLabel_property_selection_enabled>` | false |
  31. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  32. | :ref:`int<class_int>` | :ref:`tab_size<class_RichTextLabel_property_tab_size>` | 4 |
  33. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  34. | :ref:`String<class_String>` | :ref:`text<class_RichTextLabel_property_text>` | "" |
  35. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  36. | :ref:`int<class_int>` | :ref:`visible_characters<class_RichTextLabel_property_visible_characters>` | -1 |
  37. +-----------------------------+------------------------------------------------------------------------------------------------+-------+
  38. Methods
  39. -------
  40. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | void | :ref:`add_image<class_RichTextLabel_method_add_image>` **(** :ref:`Texture<class_Texture>` image **)** |
  42. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | void | :ref:`add_text<class_RichTextLabel_method_add_text>` **(** :ref:`String<class_String>` text **)** |
  44. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`append_bbcode<class_RichTextLabel_method_append_bbcode>` **(** :ref:`String<class_String>` bbcode **)** |
  46. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | void | :ref:`clear<class_RichTextLabel_method_clear>` **(** **)** |
  48. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. | :ref:`int<class_int>` | :ref:`get_content_height<class_RichTextLabel_method_get_content_height>` **(** **)** |
  50. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  51. | :ref:`int<class_int>` | :ref:`get_line_count<class_RichTextLabel_method_get_line_count>` **(** **)** const |
  52. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  53. | :ref:`int<class_int>` | :ref:`get_total_character_count<class_RichTextLabel_method_get_total_character_count>` **(** **)** const |
  54. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  55. | :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll<class_RichTextLabel_method_get_v_scroll>` **(** **)** |
  56. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  57. | :ref:`int<class_int>` | :ref:`get_visible_line_count<class_RichTextLabel_method_get_visible_line_count>` **(** **)** const |
  58. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  59. | void | :ref:`newline<class_RichTextLabel_method_newline>` **(** **)** |
  60. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  61. | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`parse_bbcode<class_RichTextLabel_method_parse_bbcode>` **(** :ref:`String<class_String>` bbcode **)** |
  62. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  63. | void | :ref:`pop<class_RichTextLabel_method_pop>` **(** **)** |
  64. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  65. | void | :ref:`push_align<class_RichTextLabel_method_push_align>` **(** :ref:`Align<enum_RichTextLabel_Align>` align **)** |
  66. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  67. | void | :ref:`push_cell<class_RichTextLabel_method_push_cell>` **(** **)** |
  68. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  69. | void | :ref:`push_color<class_RichTextLabel_method_push_color>` **(** :ref:`Color<class_Color>` color **)** |
  70. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  71. | void | :ref:`push_font<class_RichTextLabel_method_push_font>` **(** :ref:`Font<class_Font>` font **)** |
  72. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  73. | void | :ref:`push_indent<class_RichTextLabel_method_push_indent>` **(** :ref:`int<class_int>` level **)** |
  74. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  75. | void | :ref:`push_list<class_RichTextLabel_method_push_list>` **(** :ref:`ListType<enum_RichTextLabel_ListType>` type **)** |
  76. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  77. | void | :ref:`push_meta<class_RichTextLabel_method_push_meta>` **(** :ref:`Variant<class_Variant>` data **)** |
  78. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  79. | void | :ref:`push_strikethrough<class_RichTextLabel_method_push_strikethrough>` **(** **)** |
  80. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  81. | void | :ref:`push_table<class_RichTextLabel_method_push_table>` **(** :ref:`int<class_int>` columns **)** |
  82. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  83. | void | :ref:`push_underline<class_RichTextLabel_method_push_underline>` **(** **)** |
  84. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  85. | :ref:`bool<class_bool>` | :ref:`remove_line<class_RichTextLabel_method_remove_line>` **(** :ref:`int<class_int>` line **)** |
  86. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  87. | void | :ref:`scroll_to_line<class_RichTextLabel_method_scroll_to_line>` **(** :ref:`int<class_int>` line **)** |
  88. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  89. | void | :ref:`set_table_column_expand<class_RichTextLabel_method_set_table_column_expand>` **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` expand, :ref:`int<class_int>` ratio **)** |
  90. +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  91. Theme Properties
  92. ----------------
  93. +---------------------------------+---------------------+------------------------------+
  94. | :ref:`Font<class_Font>` | bold_font | |
  95. +---------------------------------+---------------------+------------------------------+
  96. | :ref:`Font<class_Font>` | bold_italics_font | |
  97. +---------------------------------+---------------------+------------------------------+
  98. | :ref:`Color<class_Color>` | default_color | Color( 1, 1, 1, 1 ) |
  99. +---------------------------------+---------------------+------------------------------+
  100. | :ref:`StyleBox<class_StyleBox>` | focus | |
  101. +---------------------------------+---------------------+------------------------------+
  102. | :ref:`Color<class_Color>` | font_color_selected | Color( 0.49, 0.49, 0.49, 1 ) |
  103. +---------------------------------+---------------------+------------------------------+
  104. | :ref:`Color<class_Color>` | font_color_shadow | Color( 0, 0, 0, 0 ) |
  105. +---------------------------------+---------------------+------------------------------+
  106. | :ref:`Font<class_Font>` | italics_font | |
  107. +---------------------------------+---------------------+------------------------------+
  108. | :ref:`int<class_int>` | line_separation | 1 |
  109. +---------------------------------+---------------------+------------------------------+
  110. | :ref:`Font<class_Font>` | mono_font | |
  111. +---------------------------------+---------------------+------------------------------+
  112. | :ref:`StyleBox<class_StyleBox>` | normal | |
  113. +---------------------------------+---------------------+------------------------------+
  114. | :ref:`Font<class_Font>` | normal_font | |
  115. +---------------------------------+---------------------+------------------------------+
  116. | :ref:`Color<class_Color>` | selection_color | Color( 0.1, 0.1, 1, 0.8 ) |
  117. +---------------------------------+---------------------+------------------------------+
  118. | :ref:`int<class_int>` | shadow_as_outline | 0 |
  119. +---------------------------------+---------------------+------------------------------+
  120. | :ref:`int<class_int>` | shadow_offset_x | 1 |
  121. +---------------------------------+---------------------+------------------------------+
  122. | :ref:`int<class_int>` | shadow_offset_y | 1 |
  123. +---------------------------------+---------------------+------------------------------+
  124. | :ref:`int<class_int>` | table_hseparation | 3 |
  125. +---------------------------------+---------------------+------------------------------+
  126. | :ref:`int<class_int>` | table_vseparation | 3 |
  127. +---------------------------------+---------------------+------------------------------+
  128. Signals
  129. -------
  130. .. _class_RichTextLabel_signal_meta_clicked:
  131. - **meta_clicked** **(** :ref:`Nil<class_Nil>` meta **)**
  132. Triggered when the user clicks on content between ``[url]`` tags. If the meta is defined in text, e.g. ``[url={"data"="hi"}]hi[/url]``, then the parameter for this signal will be a :ref:`String<class_String>` type. If a particular type or an object is desired, the :ref:`push_meta<class_RichTextLabel_method_push_meta>` method must be used to manually insert the data into the tag stack.
  133. .. _class_RichTextLabel_signal_meta_hover_ended:
  134. - **meta_hover_ended** **(** :ref:`Nil<class_Nil>` meta **)**
  135. Triggers when the mouse exits a meta tag.
  136. .. _class_RichTextLabel_signal_meta_hover_started:
  137. - **meta_hover_started** **(** :ref:`Nil<class_Nil>` meta **)**
  138. Triggers when the mouse enters a meta tag.
  139. Enumerations
  140. ------------
  141. .. _enum_RichTextLabel_Align:
  142. .. _class_RichTextLabel_constant_ALIGN_LEFT:
  143. .. _class_RichTextLabel_constant_ALIGN_CENTER:
  144. .. _class_RichTextLabel_constant_ALIGN_RIGHT:
  145. .. _class_RichTextLabel_constant_ALIGN_FILL:
  146. enum **Align**:
  147. - **ALIGN_LEFT** = **0**
  148. - **ALIGN_CENTER** = **1**
  149. - **ALIGN_RIGHT** = **2**
  150. - **ALIGN_FILL** = **3**
  151. .. _enum_RichTextLabel_ListType:
  152. .. _class_RichTextLabel_constant_LIST_NUMBERS:
  153. .. _class_RichTextLabel_constant_LIST_LETTERS:
  154. .. _class_RichTextLabel_constant_LIST_DOTS:
  155. enum **ListType**:
  156. - **LIST_NUMBERS** = **0**
  157. - **LIST_LETTERS** = **1**
  158. - **LIST_DOTS** = **2**
  159. .. _enum_RichTextLabel_ItemType:
  160. .. _class_RichTextLabel_constant_ITEM_FRAME:
  161. .. _class_RichTextLabel_constant_ITEM_TEXT:
  162. .. _class_RichTextLabel_constant_ITEM_IMAGE:
  163. .. _class_RichTextLabel_constant_ITEM_NEWLINE:
  164. .. _class_RichTextLabel_constant_ITEM_FONT:
  165. .. _class_RichTextLabel_constant_ITEM_COLOR:
  166. .. _class_RichTextLabel_constant_ITEM_UNDERLINE:
  167. .. _class_RichTextLabel_constant_ITEM_STRIKETHROUGH:
  168. .. _class_RichTextLabel_constant_ITEM_ALIGN:
  169. .. _class_RichTextLabel_constant_ITEM_INDENT:
  170. .. _class_RichTextLabel_constant_ITEM_LIST:
  171. .. _class_RichTextLabel_constant_ITEM_TABLE:
  172. .. _class_RichTextLabel_constant_ITEM_META:
  173. enum **ItemType**:
  174. - **ITEM_FRAME** = **0**
  175. - **ITEM_TEXT** = **1**
  176. - **ITEM_IMAGE** = **2**
  177. - **ITEM_NEWLINE** = **3**
  178. - **ITEM_FONT** = **4**
  179. - **ITEM_COLOR** = **5**
  180. - **ITEM_UNDERLINE** = **6**
  181. - **ITEM_STRIKETHROUGH** = **7**
  182. - **ITEM_ALIGN** = **8**
  183. - **ITEM_INDENT** = **9**
  184. - **ITEM_LIST** = **10**
  185. - **ITEM_TABLE** = **11**
  186. - **ITEM_META** = **12**
  187. Description
  188. -----------
  189. Rich text can contain custom text, fonts, images and some basic formatting. The label manages these as an internal tag stack. It also adapts itself to given width/heights.
  190. **Note:** Assignments to :ref:`bbcode_text<class_RichTextLabel_property_bbcode_text>` clear the tag stack and reconstruct it from the property's contents. Any edits made to :ref:`bbcode_text<class_RichTextLabel_property_bbcode_text>` will erase previous edits made from other manual sources such as :ref:`append_bbcode<class_RichTextLabel_method_append_bbcode>` and the ``push_*`` / :ref:`pop<class_RichTextLabel_method_pop>` methods.
  191. Tutorials
  192. ---------
  193. - :doc:`../tutorials/gui/bbcode_in_richtextlabel`
  194. Property Descriptions
  195. ---------------------
  196. .. _class_RichTextLabel_property_bbcode_enabled:
  197. - :ref:`bool<class_bool>` **bbcode_enabled**
  198. +-----------+-----------------------+
  199. | *Default* | false |
  200. +-----------+-----------------------+
  201. | *Setter* | set_use_bbcode(value) |
  202. +-----------+-----------------------+
  203. | *Getter* | is_using_bbcode() |
  204. +-----------+-----------------------+
  205. If ``true``, the label uses BBCode formatting.
  206. .. _class_RichTextLabel_property_bbcode_text:
  207. - :ref:`String<class_String>` **bbcode_text**
  208. +-----------+-------------------+
  209. | *Default* | "" |
  210. +-----------+-------------------+
  211. | *Setter* | set_bbcode(value) |
  212. +-----------+-------------------+
  213. | *Getter* | get_bbcode() |
  214. +-----------+-------------------+
  215. The label's text in BBCode format. Is not representative of manual modifications to the internal tag stack. Erases changes made by other methods when edited.
  216. .. _class_RichTextLabel_property_meta_underlined:
  217. - :ref:`bool<class_bool>` **meta_underlined**
  218. +-----------+---------------------------+
  219. | *Default* | true |
  220. +-----------+---------------------------+
  221. | *Setter* | set_meta_underline(value) |
  222. +-----------+---------------------------+
  223. | *Getter* | is_meta_underlined() |
  224. +-----------+---------------------------+
  225. If ``true``, the label underlines meta tags such as ``[url]{text}[/url]``.
  226. .. _class_RichTextLabel_property_override_selected_font_color:
  227. - :ref:`bool<class_bool>` **override_selected_font_color**
  228. +-----------+-----------------------------------------+
  229. | *Default* | false |
  230. +-----------+-----------------------------------------+
  231. | *Setter* | set_override_selected_font_color(value) |
  232. +-----------+-----------------------------------------+
  233. | *Getter* | is_overriding_selected_font_color() |
  234. +-----------+-----------------------------------------+
  235. If ``true``, the label uses the custom font color.
  236. .. _class_RichTextLabel_property_percent_visible:
  237. - :ref:`float<class_float>` **percent_visible**
  238. +-----------+----------------------------+
  239. | *Default* | 1.0 |
  240. +-----------+----------------------------+
  241. | *Setter* | set_percent_visible(value) |
  242. +-----------+----------------------------+
  243. | *Getter* | get_percent_visible() |
  244. +-----------+----------------------------+
  245. The text's visibility, as a :ref:`float<class_float>` between 0.0 and 1.0.
  246. .. _class_RichTextLabel_property_scroll_active:
  247. - :ref:`bool<class_bool>` **scroll_active**
  248. +-----------+--------------------------+
  249. | *Default* | true |
  250. +-----------+--------------------------+
  251. | *Setter* | set_scroll_active(value) |
  252. +-----------+--------------------------+
  253. | *Getter* | is_scroll_active() |
  254. +-----------+--------------------------+
  255. If ``true``, the scrollbar is visible. Does not block scrolling completely. See :ref:`scroll_to_line<class_RichTextLabel_method_scroll_to_line>`.
  256. .. _class_RichTextLabel_property_scroll_following:
  257. - :ref:`bool<class_bool>` **scroll_following**
  258. +-----------+--------------------------+
  259. | *Default* | false |
  260. +-----------+--------------------------+
  261. | *Setter* | set_scroll_follow(value) |
  262. +-----------+--------------------------+
  263. | *Getter* | is_scroll_following() |
  264. +-----------+--------------------------+
  265. If ``true``, the window scrolls down to display new content automatically.
  266. .. _class_RichTextLabel_property_selection_enabled:
  267. - :ref:`bool<class_bool>` **selection_enabled**
  268. +-----------+------------------------------+
  269. | *Default* | false |
  270. +-----------+------------------------------+
  271. | *Setter* | set_selection_enabled(value) |
  272. +-----------+------------------------------+
  273. | *Getter* | is_selection_enabled() |
  274. +-----------+------------------------------+
  275. If ``true``, the label allows text selection.
  276. .. _class_RichTextLabel_property_tab_size:
  277. - :ref:`int<class_int>` **tab_size**
  278. +-----------+---------------------+
  279. | *Default* | 4 |
  280. +-----------+---------------------+
  281. | *Setter* | set_tab_size(value) |
  282. +-----------+---------------------+
  283. | *Getter* | get_tab_size() |
  284. +-----------+---------------------+
  285. The number of spaces associated with a single tab length. Does not affect ``\t`` in text tags, only indent tags.
  286. .. _class_RichTextLabel_property_text:
  287. - :ref:`String<class_String>` **text**
  288. +-----------+-----------------+
  289. | *Default* | "" |
  290. +-----------+-----------------+
  291. | *Setter* | set_text(value) |
  292. +-----------+-----------------+
  293. | *Getter* | get_text() |
  294. +-----------+-----------------+
  295. The raw text of the label.
  296. When set, clears the tag stack and adds a raw text tag to the top of it. Does not parse BBCodes. Does not modify :ref:`bbcode_text<class_RichTextLabel_property_bbcode_text>`.
  297. .. _class_RichTextLabel_property_visible_characters:
  298. - :ref:`int<class_int>` **visible_characters**
  299. +-----------+-------------------------------+
  300. | *Default* | -1 |
  301. +-----------+-------------------------------+
  302. | *Setter* | set_visible_characters(value) |
  303. +-----------+-------------------------------+
  304. | *Getter* | get_visible_characters() |
  305. +-----------+-------------------------------+
  306. The restricted number of characters to display in the label. If ``-1``, all characters will be displayed.
  307. Method Descriptions
  308. -------------------
  309. .. _class_RichTextLabel_method_add_image:
  310. - void **add_image** **(** :ref:`Texture<class_Texture>` image **)**
  311. Adds an image's opening and closing tags to the tag stack.
  312. .. _class_RichTextLabel_method_add_text:
  313. - void **add_text** **(** :ref:`String<class_String>` text **)**
  314. Adds raw non-BBCode-parsed text to the tag stack.
  315. .. _class_RichTextLabel_method_append_bbcode:
  316. - :ref:`Error<enum_@GlobalScope_Error>` **append_bbcode** **(** :ref:`String<class_String>` bbcode **)**
  317. Parses ``bbcode`` and adds tags to the tag stack as needed. Returns the result of the parsing, :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` if successful.
  318. .. _class_RichTextLabel_method_clear:
  319. - void **clear** **(** **)**
  320. Clears the tag stack and sets :ref:`bbcode_text<class_RichTextLabel_property_bbcode_text>` to an empty string.
  321. .. _class_RichTextLabel_method_get_content_height:
  322. - :ref:`int<class_int>` **get_content_height** **(** **)**
  323. Returns the height of the content.
  324. .. _class_RichTextLabel_method_get_line_count:
  325. - :ref:`int<class_int>` **get_line_count** **(** **)** const
  326. Returns the total number of newlines in the tag stack's text tags. Considers wrapped text as one line.
  327. .. _class_RichTextLabel_method_get_total_character_count:
  328. - :ref:`int<class_int>` **get_total_character_count** **(** **)** const
  329. Returns the total number of characters from text tags. Does not include BBCodes.
  330. .. _class_RichTextLabel_method_get_v_scroll:
  331. - :ref:`VScrollBar<class_VScrollBar>` **get_v_scroll** **(** **)**
  332. Returns the vertical scrollbar.
  333. .. _class_RichTextLabel_method_get_visible_line_count:
  334. - :ref:`int<class_int>` **get_visible_line_count** **(** **)** const
  335. Returns the number of visible lines.
  336. .. _class_RichTextLabel_method_newline:
  337. - void **newline** **(** **)**
  338. Adds a newline tag to the tag stack.
  339. .. _class_RichTextLabel_method_parse_bbcode:
  340. - :ref:`Error<enum_@GlobalScope_Error>` **parse_bbcode** **(** :ref:`String<class_String>` bbcode **)**
  341. The assignment version of :ref:`append_bbcode<class_RichTextLabel_method_append_bbcode>`. Clears the tag stack and inserts the new content. Returns :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` if parses ``bbcode`` successfully.
  342. .. _class_RichTextLabel_method_pop:
  343. - void **pop** **(** **)**
  344. Terminates the current tag. Use after ``push_*`` methods to close BBCodes manually. Does not need to follow ``add_*`` methods.
  345. .. _class_RichTextLabel_method_push_align:
  346. - void **push_align** **(** :ref:`Align<enum_RichTextLabel_Align>` align **)**
  347. Adds an ``[align]`` tag based on the given ``align`` value. See :ref:`Align<enum_RichTextLabel_Align>` for possible values.
  348. .. _class_RichTextLabel_method_push_cell:
  349. - void **push_cell** **(** **)**
  350. Adds a ``[cell]`` tag to the tag stack. Must be inside a ``[table]`` tag. See :ref:`push_table<class_RichTextLabel_method_push_table>` for details.
  351. .. _class_RichTextLabel_method_push_color:
  352. - void **push_color** **(** :ref:`Color<class_Color>` color **)**
  353. Adds a ``[color]`` tag to the tag stack.
  354. .. _class_RichTextLabel_method_push_font:
  355. - void **push_font** **(** :ref:`Font<class_Font>` font **)**
  356. Adds a ``[font]`` tag to the tag stack. Overrides default fonts for its duration.
  357. .. _class_RichTextLabel_method_push_indent:
  358. - void **push_indent** **(** :ref:`int<class_int>` level **)**
  359. Adds an ``[indent]`` tag to the tag stack. Multiplies "level" by current tab_size to determine new margin length.
  360. .. _class_RichTextLabel_method_push_list:
  361. - void **push_list** **(** :ref:`ListType<enum_RichTextLabel_ListType>` type **)**
  362. Adds a ``[list]`` tag to the tag stack. Similar to the BBCodes ``[ol]`` or ``[ul]``, but supports more list types. Not fully implemented!
  363. .. _class_RichTextLabel_method_push_meta:
  364. - void **push_meta** **(** :ref:`Variant<class_Variant>` data **)**
  365. Adds a ``[meta]`` tag to the tag stack. Similar to the BBCode ``[url=something]{text}[/url]``, but supports non-:ref:`String<class_String>` metadata types.
  366. .. _class_RichTextLabel_method_push_strikethrough:
  367. - void **push_strikethrough** **(** **)**
  368. Adds a ``[s]`` tag to the tag stack.
  369. .. _class_RichTextLabel_method_push_table:
  370. - void **push_table** **(** :ref:`int<class_int>` columns **)**
  371. Adds a ``[table=columns]`` tag to the tag stack.
  372. .. _class_RichTextLabel_method_push_underline:
  373. - void **push_underline** **(** **)**
  374. Adds a ``[u]`` tag to the tag stack.
  375. .. _class_RichTextLabel_method_remove_line:
  376. - :ref:`bool<class_bool>` **remove_line** **(** :ref:`int<class_int>` line **)**
  377. Removes a line of content from the label. Returns ``true`` if the line exists.
  378. .. _class_RichTextLabel_method_scroll_to_line:
  379. - void **scroll_to_line** **(** :ref:`int<class_int>` line **)**
  380. Scrolls the window's top line to match ``line``.
  381. .. _class_RichTextLabel_method_set_table_column_expand:
  382. - void **set_table_column_expand** **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` expand, :ref:`int<class_int>` ratio **)**
  383. Edits the selected column's expansion options. If ``expand`` is ``true``, the column expands in proportion to its expansion ratio versus the other columns' ratios.
  384. For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width would expand 30 and 40 pixels, respectively.
  385. If ``expand`` is ``false``, the column will not contribute to the total ratio.