Kaynağa Gözat

classref: Sync with current master branch (4c3dc26)

Godot Organization 1 yıl önce
ebeveyn
işleme
ec62d34434
75 değiştirilmiş dosya ile 2708 ekleme ve 3240 silme
  1. 2 2
      classes/[email protected]
  2. 1 1
      classes/[email protected]
  3. 14 0
      classes/class_basis.rst
  4. 147 47
      classes/class_button.rst
  5. 1 1
      classes/class_canvasitem.rst
  6. 2 0
      classes/class_canvaslayer.rst
  7. 44 25
      classes/class_charfxtransform.rst
  8. 19 259
      classes/class_checkbox.rst
  9. 19 259
      classes/class_checkbutton.rst
  10. 65 375
      classes/class_codeedit.rst
  11. 1 1
      classes/class_colorpicker.rst
  12. 3 215
      classes/class_colorpickerbutton.rst
  13. 18 0
      classes/class_control.rst
  14. 2 2
      classes/class_displayserver.rst
  15. 14 0
      classes/class_editorfiledialog.rst
  16. 14 0
      classes/class_editorinspector.rst
  17. 17 0
      classes/class_gdextensionmanager.rst
  18. 65 5
      classes/class_gltfdocument.rst
  19. 2 0
      classes/class_gltfdocumentextension.rst
  20. 29 0
      classes/class_graphelement.rst
  21. 0 14
      classes/class_graphnode.rst
  22. 0 29
      classes/class_hboxcontainer.rst
  23. 0 43
      classes/class_hflowcontainer.rst
  24. 0 169
      classes/class_hscrollbar.rst
  25. 0 43
      classes/class_hseparator.rst
  26. 0 141
      classes/class_hslider.rst
  27. 0 71
      classes/class_hsplitcontainer.rst
  28. 4 4
      classes/class_image.rst
  29. 154 7
      classes/class_importermeshinstance3d.rst
  30. 20 3
      classes/class_lightmapgi.rst
  31. 49 21
      classes/class_linkbutton.rst
  32. 74 4
      classes/class_menubar.rst
  33. 0 227
      classes/class_menubutton.rst
  34. 157 0
      classes/class_navigationmeshsourcegeometrydata2d.rst
  35. 251 31
      classes/class_navigationpolygon.rst
  36. 43 0
      classes/class_navigationregion2d.rst
  37. 241 195
      classes/class_navigationserver2d.rst
  38. 2 0
      classes/class_node.rst
  39. 59 5
      classes/class_openxrinterface.rst
  40. 7 289
      classes/class_optionbutton.rst
  41. 5 5
      classes/class_packedbytearray.rst
  42. 78 0
      classes/class_physicsserver2d.rst
  43. 32 0
      classes/class_physicsserver2dextension.rst
  44. 98 3
      classes/class_pinjoint2d.rst
  45. 29 0
      classes/class_popup.rst
  46. 3 31
      classes/class_popupmenu.rst
  47. 0 29
      classes/class_popuppanel.rst
  48. 0 14
      classes/class_progressbar.rst
  49. 44 0
      classes/class_projectsettings.rst
  50. 14 0
      classes/class_renderingdevice.rst
  51. 17 1
      classes/class_renderingserver.rst
  52. 14 0
      classes/class_renderscenebuffersrd.rst
  53. 0 0
      classes/class_resource.rst
  54. 230 136
      classes/class_richtextlabel.rst
  55. 2 4
      classes/class_scenetree.rst
  56. 14 0
      classes/class_script.rst
  57. 14 0
      classes/class_scriptextension.rst
  58. 1 3
      classes/class_scriptlanguageextension.rst
  59. 185 0
      classes/class_scrollbar.rst
  60. 43 0
      classes/class_separator.rst
  61. 141 0
      classes/class_slider.rst
  62. 14 0
      classes/class_splitcontainer.rst
  63. 5 5
      classes/class_string.rst
  64. 69 23
      classes/class_tabbar.rst
  65. 79 0
      classes/class_tabcontainer.rst
  66. 5 1
      classes/class_tilemap.rst
  67. 14 0
      classes/class_transform2d.rst
  68. 0 29
      classes/class_vboxcontainer.rst
  69. 0 43
      classes/class_vflowcontainer.rst
  70. 17 1
      classes/class_viewport.rst
  71. 0 169
      classes/class_vscrollbar.rst
  72. 0 43
      classes/class_vseparator.rst
  73. 0 141
      classes/class_vslider.rst
  74. 0 71
      classes/class_vsplitcontainer.rst
  75. 1 0
      classes/index.rst

+ 2 - 2
classes/[email protected]

@@ -572,7 +572,7 @@ Export an :ref:`int<class_int>` or :ref:`float<class_float>` property as a range
 
 If hints ``"or_greater"`` and ``"or_less"`` are provided, the editor widget will not cap the value at range boundaries. The ``"exp"`` hint will make the edited values on range to change exponentially. The ``"hide_slider"`` hint will hide the slider element of the editor widget.
 
-Hints also allow to indicate the units for the edited value. Using ``"radians"`` you can specify that the actual value is in radians, but should be displayed in degrees in the Inspector dock. ``"degrees"`` allows to add a degree sign as a unit suffix. Finally, a custom suffix can be provided using ``"suffix:unit"``, where "unit" can be any string.
+Hints also allow to indicate the units for the edited value. Using ``"radians_as_degrees"`` you can specify that the actual value is in radians, but should be displayed in degrees in the Inspector dock (the range values are also in degrees). ``"degrees"`` allows to add a degree sign as a unit suffix (the value is unchanged). Finally, a custom suffix can be provided using ``"suffix:unit"``, where "unit" can be any string.
 
 See also :ref:`@GlobalScope.PROPERTY_HINT_RANGE<class_@GlobalScope_constant_PROPERTY_HINT_RANGE>`.
 
@@ -585,7 +585,7 @@ See also :ref:`@GlobalScope.PROPERTY_HINT_RANGE<class_@GlobalScope_constant_PROP
     @export_range(0, 100, 1, "or_greater") var power_percent
     @export_range(0, 100, 1, "or_greater", "or_less") var health_delta
     
-    @export_range(-3.14, 3.14, 0.001, "radians") var angle_radians
+    @export_range(-180, 180, 0.001, "radians_as_degrees") var angle_radians
     @export_range(0, 360, 1, "degrees") var angle_degrees
     @export_range(-8, 8, 2, "suffix:px") var target_offset
 

+ 1 - 1
classes/[email protected]

@@ -3423,7 +3423,7 @@ Hints that an :ref:`int<class_int>` or :ref:`float<class_float>` property should
 
 \ **Example:** ``"-360,360,1,or_greater,or_less"``.
 
-Additionally, other keywords can be included: ``"exp"`` for exponential range editing, ``"radians"`` for editing radian angles in degrees, ``"degrees"`` to hint at an angle and ``"hide_slider"`` to hide the slider.
+Additionally, other keywords can be included: ``"exp"`` for exponential range editing, ``"radians_as_degrees"`` for editing radian angles in degrees (the range values are also in degrees), ``"degrees"`` to hint at an angle and ``"hide_slider"`` to hide the slider.
 
 .. _class_@GlobalScope_constant_PROPERTY_HINT_ENUM:
 

+ 14 - 0
classes/class_basis.rst

@@ -107,6 +107,8 @@ Methods
    +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Basis<class_Basis>`           | :ref:`inverse<class_Basis_method_inverse>` **(** **)** |const|                                                                                                                                               |
    +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`             | :ref:`is_conformal<class_Basis_method_is_conformal>` **(** **)** |const|                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`is_equal_approx<class_Basis_method_is_equal_approx>` **(** :ref:`Basis<class_Basis>` b **)** |const|                                                                                                   |
    +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`is_finite<class_Basis_method_is_finite>` **(** **)** |const|                                                                                                                                           |
@@ -392,6 +394,18 @@ Returns the inverse of the matrix.
 
 ----
 
+.. _class_Basis_method_is_conformal:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_conformal** **(** **)** |const|
+
+Returns ``true`` if the basis is conformal, meaning it preserves angles and distance ratios, and may only be composed of rotation and uniform scale. Returns ``false`` if the basis has non-uniform scale or shear/skew. This can be used to validate if the basis is non-distorted, which is important for physics and other use cases.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Basis_method_is_equal_approx:
 
 .. rst-class:: classref-method

+ 147 - 47
classes/class_button.rst

@@ -109,53 +109,67 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_color<class_Button_theme_color_font_color>`                             | ``Color(0.875, 0.875, 0.875, 1)``   |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_disabled_color<class_Button_theme_color_font_disabled_color>`           | ``Color(0.875, 0.875, 0.875, 0.5)`` |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_focus_color<class_Button_theme_color_font_focus_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_hover_color<class_Button_theme_color_font_hover_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_hover_pressed_color<class_Button_theme_color_font_hover_pressed_color>` | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_outline_color<class_Button_theme_color_font_outline_color>`             | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_pressed_color<class_Button_theme_color_font_pressed_color>`             | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`icon_disabled_color<class_Button_theme_color_icon_disabled_color>`           | ``Color(1, 1, 1, 0.4)``             |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`icon_focus_color<class_Button_theme_color_icon_focus_color>`                 | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`icon_hover_color<class_Button_theme_color_icon_hover_color>`                 | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`icon_hover_pressed_color<class_Button_theme_color_icon_hover_pressed_color>` | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`icon_normal_color<class_Button_theme_color_icon_normal_color>`               | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`icon_pressed_color<class_Button_theme_color_icon_pressed_color>`             | ``Color(1, 1, 1, 1)``               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`           | :ref:`h_separation<class_Button_theme_constant_h_separation>`                      | ``4``                               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`           | :ref:`icon_max_width<class_Button_theme_constant_icon_max_width>`                  | ``0``                               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`           | :ref:`outline_size<class_Button_theme_constant_outline_size>`                      | ``0``                               |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Font<class_Font>`         | :ref:`font<class_Button_theme_font_font>`                                          |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`           | :ref:`font_size<class_Button_theme_font_size_font_size>`                           |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`disabled<class_Button_theme_style_disabled>`                                 |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_Button_theme_style_focus>`                                       |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`hover<class_Button_theme_style_hover>`                                       |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_Button_theme_style_normal>`                                     |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`pressed<class_Button_theme_style_pressed>`                                   |                                     |
-   +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_color<class_Button_theme_color_font_color>`                             | ``Color(0.875, 0.875, 0.875, 1)``   |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_disabled_color<class_Button_theme_color_font_disabled_color>`           | ``Color(0.875, 0.875, 0.875, 0.5)`` |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_focus_color<class_Button_theme_color_font_focus_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_hover_color<class_Button_theme_color_font_hover_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_hover_pressed_color<class_Button_theme_color_font_hover_pressed_color>` | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_Button_theme_color_font_outline_color>`             | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_pressed_color<class_Button_theme_color_font_pressed_color>`             | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`icon_disabled_color<class_Button_theme_color_icon_disabled_color>`           | ``Color(1, 1, 1, 0.4)``             |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`icon_focus_color<class_Button_theme_color_icon_focus_color>`                 | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`icon_hover_color<class_Button_theme_color_icon_hover_color>`                 | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`icon_hover_pressed_color<class_Button_theme_color_icon_hover_pressed_color>` | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`icon_normal_color<class_Button_theme_color_icon_normal_color>`               | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`icon_pressed_color<class_Button_theme_color_icon_pressed_color>`             | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`h_separation<class_Button_theme_constant_h_separation>`                      | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`icon_max_width<class_Button_theme_constant_icon_max_width>`                  | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`outline_size<class_Button_theme_constant_outline_size>`                      | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Font<class_Font>`           | :ref:`font<class_Button_theme_font_font>`                                          |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`font_size<class_Button_theme_font_size_font_size>`                           |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`icon<class_Button_theme_icon_icon>`                                          |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled<class_Button_theme_style_disabled>`                                 |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled_mirrored<class_Button_theme_style_disabled_mirrored>`               |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_Button_theme_style_focus>`                                       |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover<class_Button_theme_style_hover>`                                       |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover_mirrored<class_Button_theme_style_hover_mirrored>`                     |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover_pressed<class_Button_theme_style_hover_pressed>`                       |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover_pressed_mirrored<class_Button_theme_style_hover_pressed_mirrored>`     |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal<class_Button_theme_style_normal>`                                     |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal_mirrored<class_Button_theme_style_normal_mirrored>`                   |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed<class_Button_theme_style_pressed>`                                   |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed_mirrored<class_Button_theme_style_pressed_mirrored>`                 |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -578,6 +592,20 @@ Font size of the **Button**'s text.
 
 ----
 
+.. _class_Button_theme_icon_icon:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **icon**
+
+.. container:: contribute
+
+	There is currently no description for this theme property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Button_theme_style_disabled:
 
 .. rst-class:: classref-themeproperty
@@ -590,6 +618,18 @@ Font size of the **Button**'s text.
 
 ----
 
+.. _class_Button_theme_style_disabled_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **disabled_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the **Button** is disabled (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Button_theme_style_focus:
 
 .. rst-class:: classref-themeproperty
@@ -614,6 +654,42 @@ Font size of the **Button**'s text.
 
 ----
 
+.. _class_Button_theme_style_hover_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hover_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the **Button** is being hovered (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Button_theme_style_hover_pressed:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hover_pressed**
+
+:ref:`StyleBox<class_StyleBox>` used when the **Button** is being pressed and hovered at the same time.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Button_theme_style_hover_pressed_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hover_pressed_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the **Button** is being pressed and hovered at the same time (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Button_theme_style_normal:
 
 .. rst-class:: classref-themeproperty
@@ -626,6 +702,18 @@ Default :ref:`StyleBox<class_StyleBox>` for the **Button**.
 
 ----
 
+.. _class_Button_theme_style_normal_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **normal_mirrored**
+
+Default :ref:`StyleBox<class_StyleBox>` for the **Button** (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Button_theme_style_pressed:
 
 .. rst-class:: classref-themeproperty
@@ -634,6 +722,18 @@ Default :ref:`StyleBox<class_StyleBox>` for the **Button**.
 
 :ref:`StyleBox<class_StyleBox>` used when the **Button** is being pressed.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Button_theme_style_pressed_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **pressed_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the **Button** is being pressed (for right-to-left layouts).
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 1 - 1
classes/class_canvasitem.rst

@@ -25,7 +25,7 @@ Abstract base class for everything in 2D space. Canvas items are laid out in a t
 
 Any **CanvasItem** can draw. For this, :ref:`queue_redraw<class_CanvasItem_method_queue_redraw>` is called by the engine, then :ref:`NOTIFICATION_DRAW<class_CanvasItem_constant_NOTIFICATION_DRAW>` will be received on idle time to request a redraw. Because of this, canvas items don't need to be redrawn on every frame, improving the performance significantly. Several functions for drawing on the **CanvasItem** are provided (see ``draw_*`` functions). However, they can only be used inside :ref:`_draw<class_CanvasItem_method__draw>`, its corresponding :ref:`Object._notification<class_Object_method__notification>` or methods connected to the :ref:`draw<class_CanvasItem_signal_draw>` signal.
 
-Canvas items are drawn in tree order. By default, children are on top of their parents, so a root **CanvasItem** will be drawn behind everything. This behavior can be changed on a per-item basis.
+Canvas items are drawn in tree order on their canvas layer. By default, children are on top of their parents, so a root **CanvasItem** will be drawn behind everything. This behavior can be changed on a per-item basis.
 
 A **CanvasItem** can be hidden, which will also hide its children. By adjusting various other properties of a **CanvasItem**, you can also modulate its color (via :ref:`modulate<class_CanvasItem_property_modulate>` or :ref:`self_modulate<class_CanvasItem_property_self_modulate>`), change its Z-index, blend mode, and more.
 

+ 2 - 0
classes/class_canvaslayer.rst

@@ -178,6 +178,8 @@ Scales the layer when using :ref:`follow_viewport_enabled<class_CanvasLayer_prop
 
 Layer index for draw order. Lower values are drawn behind higher values.
 
+\ **Note:** If multiple CanvasLayers have the same layer index, :ref:`CanvasItem<class_CanvasItem>` children of one CanvasLayer are drawn behind the :ref:`CanvasItem<class_CanvasItem>` children of the other CanvasLayer. Which CanvasLayer is drawn in front is non-deterministic.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 44 - 25
classes/class_charfxtransform.rst

@@ -38,31 +38,33 @@ Properties
 .. table::
    :widths: auto
 
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`Color<class_Color>`           | :ref:`color<class_CharFXTransform_property_color>`                   | ``Color(0, 0, 0, 1)`` |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`           | :ref:`elapsed_time<class_CharFXTransform_property_elapsed_time>`     | ``0.0``               |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`Dictionary<class_Dictionary>` | :ref:`env<class_CharFXTransform_property_env>`                       | ``{}``                |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`RID<class_RID>`               | :ref:`font<class_CharFXTransform_property_font>`                     | ``RID()``             |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`int<class_int>`               | :ref:`glyph_count<class_CharFXTransform_property_glyph_count>`       | ``0``                 |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`int<class_int>`               | :ref:`glyph_flags<class_CharFXTransform_property_glyph_flags>`       | ``0``                 |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`int<class_int>`               | :ref:`glyph_index<class_CharFXTransform_property_glyph_index>`       | ``0``                 |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`Vector2<class_Vector2>`       | :ref:`offset<class_CharFXTransform_property_offset>`                 | ``Vector2(0, 0)``     |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`             | :ref:`outline<class_CharFXTransform_property_outline>`               | ``false``             |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`Vector2i<class_Vector2i>`     | :ref:`range<class_CharFXTransform_property_range>`                   | ``Vector2i(0, 0)``    |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`int<class_int>`               | :ref:`relative_index<class_CharFXTransform_property_relative_index>` | ``0``                 |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`             | :ref:`visible<class_CharFXTransform_property_visible>`               | ``true``              |
-   +-------------------------------------+----------------------------------------------------------------------+-----------------------+
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`             | :ref:`color<class_CharFXTransform_property_color>`                   | ``Color(0, 0, 0, 1)``             |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`float<class_float>`             | :ref:`elapsed_time<class_CharFXTransform_property_elapsed_time>`     | ``0.0``                           |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Dictionary<class_Dictionary>`   | :ref:`env<class_CharFXTransform_property_env>`                       | ``{}``                            |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`RID<class_RID>`                 | :ref:`font<class_CharFXTransform_property_font>`                     | ``RID()``                         |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`                 | :ref:`glyph_count<class_CharFXTransform_property_glyph_count>`       | ``0``                             |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`                 | :ref:`glyph_flags<class_CharFXTransform_property_glyph_flags>`       | ``0``                             |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`                 | :ref:`glyph_index<class_CharFXTransform_property_glyph_index>`       | ``0``                             |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Vector2<class_Vector2>`         | :ref:`offset<class_CharFXTransform_property_offset>`                 | ``Vector2(0, 0)``                 |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`bool<class_bool>`               | :ref:`outline<class_CharFXTransform_property_outline>`               | ``false``                         |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`       | :ref:`range<class_CharFXTransform_property_range>`                   | ``Vector2i(0, 0)``                |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`                 | :ref:`relative_index<class_CharFXTransform_property_relative_index>` | ``0``                             |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Transform2D<class_Transform2D>` | :ref:`transform<class_CharFXTransform_property_transform>`           | ``Transform2D(1, 0, 0, 1, 0, 0)`` |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
+   | :ref:`bool<class_bool>`               | :ref:`visible<class_CharFXTransform_property_visible>`               | ``true``                          |
+   +---------------------------------------+----------------------------------------------------------------------+-----------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -268,6 +270,23 @@ The character offset of the glyph, relative to the current :ref:`RichTextEffect<
 
 ----
 
+.. _class_CharFXTransform_property_transform:
+
+.. rst-class:: classref-property
+
+:ref:`Transform2D<class_Transform2D>` **transform** = ``Transform2D(1, 0, 0, 1, 0, 0)``
+
+.. rst-class:: classref-property-setget
+
+- void **set_transform** **(** :ref:`Transform2D<class_Transform2D>` value **)**
+- :ref:`Transform2D<class_Transform2D>` **get_transform** **(** **)**
+
+The current transform of the current glyph. It can be overridden (for example, by driving the position and rotation from a curve). You can also alter the existing value to apply transforms on top of other effects.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_CharFXTransform_property_visible:
 
 .. rst-class:: classref-property

+ 19 - 259
classes/class_checkbox.rst

@@ -47,59 +47,25 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_color<class_CheckBox_theme_color_font_color>`                             | ``Color(0.875, 0.875, 0.875, 1)``   |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_disabled_color<class_CheckBox_theme_color_font_disabled_color>`           | ``Color(0.875, 0.875, 0.875, 0.5)`` |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_focus_color<class_CheckBox_theme_color_font_focus_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_color<class_CheckBox_theme_color_font_hover_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_pressed_color<class_CheckBox_theme_color_font_hover_pressed_color>` | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_CheckBox_theme_color_font_outline_color>`             | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_pressed_color<class_CheckBox_theme_color_font_pressed_color>`             | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`check_v_offset<class_CheckBox_theme_constant_check_v_offset>`                  | ``0``                               |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`h_separation<class_CheckBox_theme_constant_h_separation>`                      | ``4``                               |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`outline_size<class_CheckBox_theme_constant_outline_size>`                      | ``0``                               |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`font<class_CheckBox_theme_font_font>`                                          |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`font_size<class_CheckBox_theme_font_size_font_size>`                           |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked<class_CheckBox_theme_icon_checked>`                                    |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled<class_CheckBox_theme_icon_checked_disabled>`                  |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_checked<class_CheckBox_theme_icon_radio_checked>`                        |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_checked_disabled<class_CheckBox_theme_icon_radio_checked_disabled>`      |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_unchecked<class_CheckBox_theme_icon_radio_unchecked>`                    |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_unchecked_disabled<class_CheckBox_theme_icon_radio_unchecked_disabled>`  |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked<class_CheckBox_theme_icon_unchecked>`                                |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled<class_CheckBox_theme_icon_unchecked_disabled>`              |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled<class_CheckBox_theme_style_disabled>`                                 |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_CheckBox_theme_style_focus>`                                       |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover<class_CheckBox_theme_style_hover>`                                       |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover_pressed<class_CheckBox_theme_style_hover_pressed>`                       |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal<class_CheckBox_theme_style_normal>`                                     |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed<class_CheckBox_theme_style_pressed>`                                   |                                     |
-   +-----------------------------------+--------------------------------------------------------------------------------------+-------------------------------------+
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`             | :ref:`check_v_offset<class_CheckBox_theme_constant_check_v_offset>`                 | ``0`` |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked<class_CheckBox_theme_icon_checked>`                                   |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled<class_CheckBox_theme_icon_checked_disabled>`                 |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_checked<class_CheckBox_theme_icon_radio_checked>`                       |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_checked_disabled<class_CheckBox_theme_icon_radio_checked_disabled>`     |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_unchecked<class_CheckBox_theme_icon_radio_unchecked>`                   |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`radio_unchecked_disabled<class_CheckBox_theme_icon_radio_unchecked_disabled>` |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked<class_CheckBox_theme_icon_unchecked>`                               |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled<class_CheckBox_theme_icon_unchecked_disabled>`             |       |
+   +-----------------------------------+-------------------------------------------------------------------------------------+-------+
 
 .. rst-class:: classref-section-separator
 
@@ -110,90 +76,6 @@ Theme Properties
 Theme Property Descriptions
 ---------------------------
 
-.. _class_CheckBox_theme_color_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
-
-The **CheckBox** text's font color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_color_font_disabled_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_disabled_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
-
-The **CheckBox** text's font color when it's disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_color_font_focus_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_focus_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-The **CheckBox** text's font color when it's focused. Only replaces the normal text color of the checkbox. Disabled, hovered, and pressed states take precedence over this color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_color_font_hover_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-The **CheckBox** text's font color when it's hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_color_font_hover_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_pressed_color** = ``Color(1, 1, 1, 1)``
-
-The **CheckBox** text's font color when it's hovered and pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_color_font_outline_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
-
-The tint of text outline of the **CheckBox**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_color_font_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_pressed_color** = ``Color(1, 1, 1, 1)``
-
-The **CheckBox** text's font color when it's pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CheckBox_theme_constant_check_v_offset:
 
 .. rst-class:: classref-themeproperty
@@ -206,56 +88,6 @@ The vertical offset used when rendering the check icons (in pixels).
 
 ----
 
-.. _class_CheckBox_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The separation between the check icon and the text (in pixels). Negative values will be treated as ``0`` when used.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_constant_outline_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **outline_size** = ``0``
-
-The size of the text outline.
-
-\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_CheckBox_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_font_font:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Font<class_Font>` **font**
-
-The :ref:`Font<class_Font>` to use for the **CheckBox** text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_font_size_font_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **font_size**
-
-Font size of the **CheckBox**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CheckBox_theme_icon_checked:
 
 .. rst-class:: classref-themeproperty
@@ -348,78 +180,6 @@ The check icon to display when the **CheckBox** is unchecked.
 
 The check icon to display when the **CheckBox** is unchecked and is disabled.
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_style_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **disabled**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckBox** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_style_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **focus**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckBox** is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_style_hover:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckBox** is hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_style_hover_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover_pressed**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckBox** is hovered and pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_style_normal:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckBox_theme_style_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **pressed**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckBox** is pressed.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 19 - 259
classes/class_checkbutton.rst

@@ -45,59 +45,25 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_color<class_CheckButton_theme_color_font_color>`                                  | ``Color(0.875, 0.875, 0.875, 1)``   |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_disabled_color<class_CheckButton_theme_color_font_disabled_color>`                | ``Color(0.875, 0.875, 0.875, 0.5)`` |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_focus_color<class_CheckButton_theme_color_font_focus_color>`                      | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_color<class_CheckButton_theme_color_font_hover_color>`                      | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_pressed_color<class_CheckButton_theme_color_font_hover_pressed_color>`      | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_CheckButton_theme_color_font_outline_color>`                  | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_pressed_color<class_CheckButton_theme_color_font_pressed_color>`                  | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`check_v_offset<class_CheckButton_theme_constant_check_v_offset>`                       | ``0``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`h_separation<class_CheckButton_theme_constant_h_separation>`                           | ``4``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`outline_size<class_CheckButton_theme_constant_outline_size>`                           | ``0``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`font<class_CheckButton_theme_font_font>`                                               |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`font_size<class_CheckButton_theme_font_size_font_size>`                                |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked<class_CheckButton_theme_icon_checked>`                                         |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled<class_CheckButton_theme_icon_checked_disabled>`                       |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled_mirrored<class_CheckButton_theme_icon_checked_disabled_mirrored>`     |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_mirrored<class_CheckButton_theme_icon_checked_mirrored>`                       |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked<class_CheckButton_theme_icon_unchecked>`                                     |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled<class_CheckButton_theme_icon_unchecked_disabled>`                   |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled_mirrored<class_CheckButton_theme_icon_unchecked_disabled_mirrored>` |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_mirrored<class_CheckButton_theme_icon_unchecked_mirrored>`                   |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled<class_CheckButton_theme_style_disabled>`                                      |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_CheckButton_theme_style_focus>`                                            |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover<class_CheckButton_theme_style_hover>`                                            |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover_pressed<class_CheckButton_theme_style_hover_pressed>`                            |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal<class_CheckButton_theme_style_normal>`                                          |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed<class_CheckButton_theme_style_pressed>`                                        |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------+
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`             | :ref:`check_v_offset<class_CheckButton_theme_constant_check_v_offset>`                       | ``0`` |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked<class_CheckButton_theme_icon_checked>`                                         |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled<class_CheckButton_theme_icon_checked_disabled>`                       |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled_mirrored<class_CheckButton_theme_icon_checked_disabled_mirrored>`     |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_mirrored<class_CheckButton_theme_icon_checked_mirrored>`                       |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked<class_CheckButton_theme_icon_unchecked>`                                     |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled<class_CheckButton_theme_icon_unchecked_disabled>`                   |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled_mirrored<class_CheckButton_theme_icon_unchecked_disabled_mirrored>` |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_mirrored<class_CheckButton_theme_icon_unchecked_mirrored>`                   |       |
+   +-----------------------------------+----------------------------------------------------------------------------------------------+-------+
 
 .. rst-class:: classref-section-separator
 
@@ -108,90 +74,6 @@ Theme Properties
 Theme Property Descriptions
 ---------------------------
 
-.. _class_CheckButton_theme_color_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
-
-The **CheckButton** text's font color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_color_font_disabled_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_disabled_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
-
-The **CheckButton** text's font color when it's disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_color_font_focus_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_focus_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-The **CheckButton** text's font color when it's focused. Only replaces the normal text color of the button. Disabled, hovered, and pressed states take precedence over this color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_color_font_hover_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-The **CheckButton** text's font color when it's hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_color_font_hover_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_pressed_color** = ``Color(1, 1, 1, 1)``
-
-The **CheckButton** text's font color when it's hovered and pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_color_font_outline_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
-
-The tint of text outline of the **CheckButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_color_font_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_pressed_color** = ``Color(1, 1, 1, 1)``
-
-The **CheckButton** text's font color when it's pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CheckButton_theme_constant_check_v_offset:
 
 .. rst-class:: classref-themeproperty
@@ -204,56 +86,6 @@ The vertical offset used when rendering the toggle icons (in pixels).
 
 ----
 
-.. _class_CheckButton_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The separation between the toggle icon and the text (in pixels). Negative values will be treated as ``0`` when used.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_constant_outline_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **outline_size** = ``0``
-
-The size of the text outline.
-
-\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_CheckButton_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_font_font:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Font<class_Font>` **font**
-
-The :ref:`Font<class_Font>` to use for the **CheckButton** text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_font_size_font_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **font_size**
-
-Font size of the **CheckButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CheckButton_theme_icon_checked:
 
 .. rst-class:: classref-themeproperty
@@ -346,78 +178,6 @@ The icon to display when the **CheckButton** is unchecked and disabled (for righ
 
 The icon to display when the **CheckButton** is unchecked (for right-to-left layouts).
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_style_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **disabled**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckButton** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_style_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **focus**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckButton** is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_style_hover:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckButton** is hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_style_hover_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover_pressed**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckButton** is hovered and pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_style_normal:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CheckButton_theme_style_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **pressed**
-
-The :ref:`StyleBox<class_StyleBox>` to display as a background when the **CheckButton** is pressed.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 65 - 375
classes/class_codeedit.rst

@@ -122,6 +122,8 @@ Methods
    +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                            | :ref:`do_indent<class_CodeEdit_method_do_indent>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                      |
    +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                            | :ref:`duplicate_lines<class_CodeEdit_method_duplicate_lines>` **(** **)**                                                                                                                                                                                                                                                                                                                                                          |
+   +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                            | :ref:`fold_all_lines<class_CodeEdit_method_fold_all_lines>` **(** **)**                                                                                                                                                                                                                                                                                                                                                            |
    +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                            | :ref:`fold_line<class_CodeEdit_method_fold_line>` **(** :ref:`int<class_int>` line **)**                                                                                                                                                                                                                                                                                                                                           |
@@ -227,103 +229,57 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`background_color<class_CodeEdit_theme_color_background_color>`                               | ``Color(0, 0, 0, 0)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`bookmark_color<class_CodeEdit_theme_color_bookmark_color>`                                   | ``Color(0.5, 0.64, 1, 0.8)``        |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`brace_mismatch_color<class_CodeEdit_theme_color_brace_mismatch_color>`                       | ``Color(1, 0.2, 0.2, 1)``           |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`breakpoint_color<class_CodeEdit_theme_color_breakpoint_color>`                               | ``Color(0.9, 0.29, 0.3, 1)``        |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`caret_background_color<class_CodeEdit_theme_color_caret_background_color>`                   | ``Color(0, 0, 0, 1)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`caret_color<class_CodeEdit_theme_color_caret_color>`                                         | ``Color(0.875, 0.875, 0.875, 1)``   |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`code_folding_color<class_CodeEdit_theme_color_code_folding_color>`                           | ``Color(0.8, 0.8, 0.8, 0.8)``       |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`completion_background_color<class_CodeEdit_theme_color_completion_background_color>`         | ``Color(0.17, 0.16, 0.2, 1)``       |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`completion_existing_color<class_CodeEdit_theme_color_completion_existing_color>`             | ``Color(0.87, 0.87, 0.87, 0.13)``   |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`completion_font_color<class_CodeEdit_theme_color_completion_font_color>`                     | ``Color(0.67, 0.67, 0.67, 1)``      |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`completion_scroll_color<class_CodeEdit_theme_color_completion_scroll_color>`                 | ``Color(1, 1, 1, 0.29)``            |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`completion_scroll_hovered_color<class_CodeEdit_theme_color_completion_scroll_hovered_color>` | ``Color(1, 1, 1, 0.4)``             |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`completion_selected_color<class_CodeEdit_theme_color_completion_selected_color>`             | ``Color(0.26, 0.26, 0.27, 1)``      |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`current_line_color<class_CodeEdit_theme_color_current_line_color>`                           | ``Color(0.25, 0.25, 0.26, 0.8)``    |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`executing_line_color<class_CodeEdit_theme_color_executing_line_color>`                       | ``Color(0.98, 0.89, 0.27, 1)``      |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`folded_code_region_color<class_CodeEdit_theme_color_folded_code_region_color>`               | ``Color(0.68, 0.46, 0.77, 0.2)``    |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_color<class_CodeEdit_theme_color_font_color>`                                           | ``Color(0.875, 0.875, 0.875, 1)``   |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_CodeEdit_theme_color_font_outline_color>`                           | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_placeholder_color<class_CodeEdit_theme_color_font_placeholder_color>`                   | ``Color(0.875, 0.875, 0.875, 0.6)`` |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_readonly_color<class_CodeEdit_theme_color_font_readonly_color>`                         | ``Color(0.875, 0.875, 0.875, 0.5)`` |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_selected_color<class_CodeEdit_theme_color_font_selected_color>`                         | ``Color(0, 0, 0, 0)``               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`line_length_guideline_color<class_CodeEdit_theme_color_line_length_guideline_color>`         | ``Color(0.3, 0.5, 0.8, 0.1)``       |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`line_number_color<class_CodeEdit_theme_color_line_number_color>`                             | ``Color(0.67, 0.67, 0.67, 0.4)``    |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`search_result_border_color<class_CodeEdit_theme_color_search_result_border_color>`           | ``Color(0.3, 0.3, 0.3, 0.4)``       |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`search_result_color<class_CodeEdit_theme_color_search_result_color>`                         | ``Color(0.3, 0.3, 0.3, 1)``         |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`selection_color<class_CodeEdit_theme_color_selection_color>`                                 | ``Color(0.5, 0.5, 0.5, 1)``         |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`word_highlighted_color<class_CodeEdit_theme_color_word_highlighted_color>`                   | ``Color(0.8, 0.9, 0.9, 0.15)``      |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`completion_lines<class_CodeEdit_theme_constant_completion_lines>`                            | ``7``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`completion_max_width<class_CodeEdit_theme_constant_completion_max_width>`                    | ``50``                              |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`completion_scroll_width<class_CodeEdit_theme_constant_completion_scroll_width>`              | ``6``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`line_spacing<class_CodeEdit_theme_constant_line_spacing>`                                    | ``4``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`outline_size<class_CodeEdit_theme_constant_outline_size>`                                    | ``0``                               |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`font<class_CodeEdit_theme_font_font>`                                                        |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`font_size<class_CodeEdit_theme_font_size_font_size>`                                         |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`bookmark<class_CodeEdit_theme_icon_bookmark>`                                                |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`breakpoint<class_CodeEdit_theme_icon_breakpoint>`                                            |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`can_fold<class_CodeEdit_theme_icon_can_fold>`                                                |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`can_fold_code_region<class_CodeEdit_theme_icon_can_fold_code_region>`                        |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`executing_line<class_CodeEdit_theme_icon_executing_line>`                                    |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`folded<class_CodeEdit_theme_icon_folded>`                                                    |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`folded_code_region<class_CodeEdit_theme_icon_folded_code_region>`                            |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`folded_eol_icon<class_CodeEdit_theme_icon_folded_eol_icon>`                                  |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`space<class_CodeEdit_theme_icon_space>`                                                      |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`tab<class_CodeEdit_theme_icon_tab>`                                                          |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`completion<class_CodeEdit_theme_style_completion>`                                           |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_CodeEdit_theme_style_focus>`                                                     |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal<class_CodeEdit_theme_style_normal>`                                                   |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`read_only<class_CodeEdit_theme_style_read_only>`                                             |                                     |
-   +-----------------------------------+----------------------------------------------------------------------------------------------------+-------------------------------------+
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`bookmark_color<class_CodeEdit_theme_color_bookmark_color>`                                   | ``Color(0.5, 0.64, 1, 0.8)``      |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`brace_mismatch_color<class_CodeEdit_theme_color_brace_mismatch_color>`                       | ``Color(1, 0.2, 0.2, 1)``         |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`breakpoint_color<class_CodeEdit_theme_color_breakpoint_color>`                               | ``Color(0.9, 0.29, 0.3, 1)``      |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`code_folding_color<class_CodeEdit_theme_color_code_folding_color>`                           | ``Color(0.8, 0.8, 0.8, 0.8)``     |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`completion_background_color<class_CodeEdit_theme_color_completion_background_color>`         | ``Color(0.17, 0.16, 0.2, 1)``     |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`completion_existing_color<class_CodeEdit_theme_color_completion_existing_color>`             | ``Color(0.87, 0.87, 0.87, 0.13)`` |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`completion_scroll_color<class_CodeEdit_theme_color_completion_scroll_color>`                 | ``Color(1, 1, 1, 0.29)``          |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`completion_scroll_hovered_color<class_CodeEdit_theme_color_completion_scroll_hovered_color>` | ``Color(1, 1, 1, 0.4)``           |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`completion_selected_color<class_CodeEdit_theme_color_completion_selected_color>`             | ``Color(0.26, 0.26, 0.27, 1)``    |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`executing_line_color<class_CodeEdit_theme_color_executing_line_color>`                       | ``Color(0.98, 0.89, 0.27, 1)``    |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`folded_code_region_color<class_CodeEdit_theme_color_folded_code_region_color>`               | ``Color(0.68, 0.46, 0.77, 0.2)``  |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`line_length_guideline_color<class_CodeEdit_theme_color_line_length_guideline_color>`         | ``Color(0.3, 0.5, 0.8, 0.1)``     |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`line_number_color<class_CodeEdit_theme_color_line_number_color>`                             | ``Color(0.67, 0.67, 0.67, 0.4)``  |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`             | :ref:`completion_lines<class_CodeEdit_theme_constant_completion_lines>`                            | ``7``                             |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`             | :ref:`completion_max_width<class_CodeEdit_theme_constant_completion_max_width>`                    | ``50``                            |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`             | :ref:`completion_scroll_width<class_CodeEdit_theme_constant_completion_scroll_width>`              | ``6``                             |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`bookmark<class_CodeEdit_theme_icon_bookmark>`                                                |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`breakpoint<class_CodeEdit_theme_icon_breakpoint>`                                            |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`can_fold<class_CodeEdit_theme_icon_can_fold>`                                                |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`can_fold_code_region<class_CodeEdit_theme_icon_can_fold_code_region>`                        |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`executing_line<class_CodeEdit_theme_icon_executing_line>`                                    |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`folded<class_CodeEdit_theme_icon_folded>`                                                    |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`folded_code_region<class_CodeEdit_theme_icon_folded_code_region>`                            |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`folded_eol_icon<class_CodeEdit_theme_icon_folded_eol_icon>`                                  |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`completion<class_CodeEdit_theme_style_completion>`                                           |                                   |
+   +-----------------------------------+----------------------------------------------------------------------------------------------------+-----------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -1109,6 +1065,18 @@ Perform an indent as if the user activated the "ui_text_indent" action.
 
 ----
 
+.. _class_CodeEdit_method_duplicate_lines:
+
+.. rst-class:: classref-method
+
+void **duplicate_lines** **(** **)**
+
+Duplicates all lines currently selected with any caret. Duplicates the entire line beneath the current one no matter where the caret is within the line.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_CodeEdit_method_fold_all_lines:
 
 .. rst-class:: classref-method
@@ -1704,18 +1672,6 @@ Submits all completion options added with :ref:`add_code_completion_option<class
 Theme Property Descriptions
 ---------------------------
 
-.. _class_CodeEdit_theme_color_background_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **background_color** = ``Color(0, 0, 0, 0)``
-
-Sets the background :ref:`Color<class_Color>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_color_bookmark_color:
 
 .. rst-class:: classref-themeproperty
@@ -1752,30 +1708,6 @@ Sets the background :ref:`Color<class_Color>`.
 
 ----
 
-.. _class_CodeEdit_theme_color_caret_background_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **caret_background_color** = ``Color(0, 0, 0, 1)``
-
-:ref:`Color<class_Color>` of the text behind the caret when block caret is enabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_caret_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **caret_color** = ``Color(0.875, 0.875, 0.875, 1)``
-
-:ref:`Color<class_Color>` of the caret.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_color_code_folding_color:
 
 .. rst-class:: classref-themeproperty
@@ -1812,18 +1744,6 @@ Background highlight :ref:`Color<class_Color>` for matching text in code complet
 
 ----
 
-.. _class_CodeEdit_theme_color_completion_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **completion_font_color** = ``Color(0.67, 0.67, 0.67, 1)``
-
-Font :ref:`Color<class_Color>` for the code completion popup.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_color_completion_scroll_color:
 
 .. rst-class:: classref-themeproperty
@@ -1860,18 +1780,6 @@ Background highlight :ref:`Color<class_Color>` for the current selected option i
 
 ----
 
-.. _class_CodeEdit_theme_color_current_line_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **current_line_color** = ``Color(0.25, 0.25, 0.26, 0.8)``
-
-Background :ref:`Color<class_Color>` of the line containing the caret.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_color_executing_line_color:
 
 .. rst-class:: classref-themeproperty
@@ -1896,66 +1804,6 @@ Background :ref:`Color<class_Color>` of the line containing the caret.
 
 ----
 
-.. _class_CodeEdit_theme_color_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
-
-Sets the font :ref:`Color<class_Color>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_font_outline_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
-
-The tint of text outline of the **CodeEdit**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_font_placeholder_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_placeholder_color** = ``Color(0.875, 0.875, 0.875, 0.6)``
-
-Font color for :ref:`TextEdit.placeholder_text<class_TextEdit_property_placeholder_text>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_font_readonly_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_readonly_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
-
-Sets the font :ref:`Color<class_Color>` when :ref:`TextEdit.editable<class_TextEdit_property_editable>` is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_font_selected_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_selected_color** = ``Color(0, 0, 0, 0)``
-
-Sets the :ref:`Color<class_Color>` of the selected text. If equal to ``Color(0, 0, 0, 0)``, it will be ignored.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_color_line_length_guideline_color:
 
 .. rst-class:: classref-themeproperty
@@ -1980,54 +1828,6 @@ Sets the :ref:`Color<class_Color>` of line numbers.
 
 ----
 
-.. _class_CodeEdit_theme_color_search_result_border_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **search_result_border_color** = ``Color(0.3, 0.3, 0.3, 0.4)``
-
-:ref:`Color<class_Color>` of the border around text that matches the search query.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_search_result_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **search_result_color** = ``Color(0.3, 0.3, 0.3, 1)``
-
-:ref:`Color<class_Color>` behind the text that matches the search query.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_selection_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **selection_color** = ``Color(0.5, 0.5, 0.5, 1)``
-
-Sets the highlight :ref:`Color<class_Color>` of text selections.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_color_word_highlighted_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **word_highlighted_color** = ``Color(0.8, 0.9, 0.9, 0.15)``
-
-Sets the highlight :ref:`Color<class_Color>` of multiple occurrences. :ref:`TextEdit.highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` has to be enabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_constant_completion_lines:
 
 .. rst-class:: classref-themeproperty
@@ -2064,56 +1864,6 @@ Width of the scrollbar in the code completion popup.
 
 ----
 
-.. _class_CodeEdit_theme_constant_line_spacing:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **line_spacing** = ``4``
-
-Sets the spacing between the lines.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_constant_outline_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **outline_size** = ``0``
-
-The size of the text outline.
-
-\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_CodeEdit_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_font_font:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Font<class_Font>` **font**
-
-Sets the default :ref:`Font<class_Font>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_font_size_font_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **font_size**
-
-Sets default font size.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_icon_bookmark:
 
 .. rst-class:: classref-themeproperty
@@ -2210,30 +1960,6 @@ Sets a custom :ref:`Texture2D<class_Texture2D>` to draw at the end of a folded l
 
 ----
 
-.. _class_CodeEdit_theme_icon_space:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **space**
-
-Sets a custom :ref:`Texture2D<class_Texture2D>` for space text characters.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_icon_tab:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **tab**
-
-Sets a custom :ref:`Texture2D<class_Texture2D>` for tab text characters.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_CodeEdit_theme_style_completion:
 
 .. rst-class:: classref-themeproperty
@@ -2242,42 +1968,6 @@ Sets a custom :ref:`Texture2D<class_Texture2D>` for tab text characters.
 
 :ref:`StyleBox<class_StyleBox>` for the code completion popup.
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_style_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **focus**
-
-Sets the :ref:`StyleBox<class_StyleBox>` when in focus. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_style_normal:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal**
-
-Sets the :ref:`StyleBox<class_StyleBox>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_CodeEdit_theme_style_read_only:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **read_only**
-
-Sets the :ref:`StyleBox<class_StyleBox>` when :ref:`TextEdit.editable<class_TextEdit_property_editable>` is disabled.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 1 - 1
classes/class_colorpicker.rst

@@ -562,7 +562,7 @@ Theme Property Descriptions
 
 :ref:`int<class_int>` **center_slider_grabbers** = ``1``
 
-Overrides the :ref:`HSlider.center_grabber<class_HSlider_theme_constant_center_grabber>` theme property of the sliders.
+Overrides the :ref:`Slider.center_grabber<class_Slider_theme_constant_center_grabber>` theme property of the sliders.
 
 .. rst-class:: classref-item-separator
 

+ 3 - 215
classes/class_colorpickerbutton.rst

@@ -72,39 +72,9 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_color<class_ColorPickerButton_theme_color_font_color>`                   | ``Color(1, 1, 1, 1)``         |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_disabled_color<class_ColorPickerButton_theme_color_font_disabled_color>` | ``Color(0.9, 0.9, 0.9, 0.3)`` |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_focus_color<class_ColorPickerButton_theme_color_font_focus_color>`       | ``Color(1, 1, 1, 1)``         |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_color<class_ColorPickerButton_theme_color_font_hover_color>`       | ``Color(1, 1, 1, 1)``         |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_ColorPickerButton_theme_color_font_outline_color>`   | ``Color(1, 1, 1, 1)``         |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_pressed_color<class_ColorPickerButton_theme_color_font_pressed_color>`   | ``Color(0.8, 0.8, 0.8, 1)``   |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`int<class_int>`             | :ref:`h_separation<class_ColorPickerButton_theme_constant_h_separation>`            | ``4``                         |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`int<class_int>`             | :ref:`outline_size<class_ColorPickerButton_theme_constant_outline_size>`            | ``0``                         |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`font<class_ColorPickerButton_theme_font_font>`                                |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`int<class_int>`             | :ref:`font_size<class_ColorPickerButton_theme_font_size_font_size>`                 |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`bg<class_ColorPickerButton_theme_icon_bg>`                                    |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled<class_ColorPickerButton_theme_style_disabled>`                       |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_ColorPickerButton_theme_style_focus>`                             |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover<class_ColorPickerButton_theme_style_hover>`                             |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal<class_ColorPickerButton_theme_style_normal>`                           |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed<class_ColorPickerButton_theme_style_pressed>`                         |                               |
-   +-----------------------------------+-------------------------------------------------------------------------------------+-------------------------------+
+   +-----------------------------------+--------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`bg<class_ColorPickerButton_theme_icon_bg>` |
+   +-----------------------------------+--------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -228,128 +198,6 @@ Returns the control's :ref:`PopupPanel<class_PopupPanel>` which allows you to co
 Theme Property Descriptions
 ---------------------------
 
-.. _class_ColorPickerButton_theme_color_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_color** = ``Color(1, 1, 1, 1)``
-
-Default text :ref:`Color<class_Color>` of the **ColorPickerButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_color_font_disabled_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_disabled_color** = ``Color(0.9, 0.9, 0.9, 0.3)``
-
-Text :ref:`Color<class_Color>` used when the **ColorPickerButton** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_color_font_focus_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_focus_color** = ``Color(1, 1, 1, 1)``
-
-Text :ref:`Color<class_Color>` used when the **ColorPickerButton** is focused. Only replaces the normal text color of the button. Disabled, hovered, and pressed states take precedence over this color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_color_font_hover_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_color** = ``Color(1, 1, 1, 1)``
-
-Text :ref:`Color<class_Color>` used when the **ColorPickerButton** is being hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_color_font_outline_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
-
-The tint of text outline of the **ColorPickerButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_color_font_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_pressed_color** = ``Color(0.8, 0.8, 0.8, 1)``
-
-Text :ref:`Color<class_Color>` used when the **ColorPickerButton** is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The horizontal space between **ColorPickerButton**'s icon and text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_constant_outline_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **outline_size** = ``0``
-
-The size of the text outline.
-
-\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_ColorPickerButton_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_font_font:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Font<class_Font>` **font**
-
-:ref:`Font<class_Font>` of the **ColorPickerButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_font_size_font_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **font_size**
-
-Font size of the **ColorPickerButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_ColorPickerButton_theme_icon_bg:
 
 .. rst-class:: classref-themeproperty
@@ -358,66 +206,6 @@ Font size of the **ColorPickerButton**'s text.
 
 The background of the color preview rect on the button.
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_style_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **disabled**
-
-:ref:`StyleBox<class_StyleBox>` used when the **ColorPickerButton** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_style_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **focus**
-
-:ref:`StyleBox<class_StyleBox>` used when the **ColorPickerButton** is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_style_hover:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover**
-
-:ref:`StyleBox<class_StyleBox>` used when the **ColorPickerButton** is being hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_style_normal:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal**
-
-Default :ref:`StyleBox<class_StyleBox>` for the **ColorPickerButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ColorPickerButton_theme_style_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **pressed**
-
-:ref:`StyleBox<class_StyleBox>` used when the **ColorPickerButton** is being pressed.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 18 - 0
classes/class_control.rst

@@ -193,6 +193,8 @@ Methods
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Control<class_Control>`                | :ref:`find_prev_valid_focus<class_Control_method_find_prev_valid_focus>` **(** **)** |const|                                                                                                                                                                       |
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Control<class_Control>`                | :ref:`find_valid_focus_neighbor<class_Control_method_find_valid_focus_neighbor>` **(** :ref:`Side<enum_@GlobalScope_Side>` side **)** |const|                                                                                                                      |
+   +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                         | :ref:`force_drag<class_Control_method_force_drag>` **(** :ref:`Variant<class_Variant>` data, :ref:`Control<class_Control>` preview **)**                                                                                                                           |
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                    | :ref:`get_anchor<class_Control_method_get_anchor>` **(** :ref:`Side<enum_@GlobalScope_Side>` side **)** |const|                                                                                                                                                    |
@@ -2366,6 +2368,20 @@ Finds the previous (above in the tree) **Control** that can receive the focus.
 
 ----
 
+.. _class_Control_method_find_valid_focus_neighbor:
+
+.. rst-class:: classref-method
+
+:ref:`Control<class_Control>` **find_valid_focus_neighbor** **(** :ref:`Side<enum_@GlobalScope_Side>` side **)** |const|
+
+Finds the next **Control** that can receive the focus on the specified :ref:`Side<enum_@GlobalScope_Side>`.
+
+\ **Note:** This is different from :ref:`get_focus_neighbor<class_Control_method_get_focus_neighbor>`, which returns the path of a specified focus neighbor.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Control_method_force_drag:
 
 .. rst-class:: classref-method
@@ -2448,6 +2464,8 @@ Returns :ref:`offset_right<class_Control_property_offset_right>` and :ref:`offse
 
 Returns the focus neighbor for the specified :ref:`Side<enum_@GlobalScope_Side>`. A getter method for :ref:`focus_neighbor_bottom<class_Control_property_focus_neighbor_bottom>`, :ref:`focus_neighbor_left<class_Control_property_focus_neighbor_left>`, :ref:`focus_neighbor_right<class_Control_property_focus_neighbor_right>` and :ref:`focus_neighbor_top<class_Control_property_focus_neighbor_top>`.
 
+\ **Note:** To find the next **Control** on the specific :ref:`Side<enum_@GlobalScope_Side>`, even if a neighbor is not assigned, use :ref:`find_valid_focus_neighbor<class_Control_method_find_valid_focus_neighbor>`.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 2 - 2
classes/class_displayserver.rst

@@ -2557,7 +2557,7 @@ Returns the composition string contained within the `Input Method Editor <https:
 
 Returns ``true`` if OS is using dark mode.
 
-\ **Note:** This method is implemented on macOS, Windows and Linux (X11).
+\ **Note:** This method is implemented on Android, iOS, macOS, Windows, and Linux (X11).
 
 .. rst-class:: classref-item-separator
 
@@ -2571,7 +2571,7 @@ Returns ``true`` if OS is using dark mode.
 
 Returns ``true`` if OS supports dark mode.
 
-\ **Note:** This method is implemented on macOS, Windows and Linux (X11).
+\ **Note:** This method is implemented on Android, iOS, macOS, Windows, and Linux (X11).
 
 .. rst-class:: classref-item-separator
 

+ 14 - 0
classes/class_editorfiledialog.rst

@@ -64,6 +64,8 @@ Methods
    +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                      | :ref:`add_filter<class_EditorFileDialog_method_add_filter>` **(** :ref:`String<class_String>` filter, :ref:`String<class_String>` description="" **)** |
    +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                      | :ref:`add_side_menu<class_EditorFileDialog_method_add_side_menu>` **(** :ref:`Control<class_Control>` menu, :ref:`String<class_String>` title="" **)** |
+   +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                      | :ref:`clear_filters<class_EditorFileDialog_method_clear_filters>` **(** **)**                                                                          |
    +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`LineEdit<class_LineEdit>`           | :ref:`get_line_edit<class_EditorFileDialog_method_get_line_edit>` **(** **)**                                                                          |
@@ -412,6 +414,18 @@ For example, a ``filter`` of ``"*.tscn, *.scn"`` and a ``description`` of ``"Sce
 
 ----
 
+.. _class_EditorFileDialog_method_add_side_menu:
+
+.. rst-class:: classref-method
+
+void **add_side_menu** **(** :ref:`Control<class_Control>` menu, :ref:`String<class_String>` title="" **)**
+
+Adds the given ``menu`` to the side of the file dialog with the given ``title`` text on top. Only one side menu is allowed.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorFileDialog_method_clear_filters:
 
 .. rst-class:: classref-method

+ 14 - 0
classes/class_editorinspector.rst

@@ -51,6 +51,8 @@ Methods
 .. table::
    :widths: auto
 
+   +-----------------------------+----------------------------------------------------------------------------------------------+
+   | :ref:`Object<class_Object>` | :ref:`get_edited_object<class_EditorInspector_method_get_edited_object>` **(** **)**         |
    +-----------------------------+----------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>` | :ref:`get_selected_path<class_EditorInspector_method_get_selected_path>` **(** **)** |const| |
    +-----------------------------+----------------------------------------------------------------------------------------------+
@@ -179,6 +181,18 @@ Emitted when a property that requires a restart to be applied is edited in the i
 Method Descriptions
 -------------------
 
+.. _class_EditorInspector_method_get_edited_object:
+
+.. rst-class:: classref-method
+
+:ref:`Object<class_Object>` **get_edited_object** **(** **)**
+
+Returns the object currently selected in this inspector.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorInspector_method_get_selected_path:
 
 .. rst-class:: classref-method

+ 17 - 0
classes/class_gdextensionmanager.rst

@@ -44,6 +44,23 @@ Methods
 
 .. rst-class:: classref-descriptions-group
 
+Signals
+-------
+
+.. _class_GDExtensionManager_signal_extensions_reloaded:
+
+.. rst-class:: classref-signal
+
+**extensions_reloaded** **(** **)**
+
+Emitted after the editor has automatically reloaded any extensions.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Enumerations
 ------------
 

+ 65 - 5
classes/class_gltfdocument.rst

@@ -42,11 +42,13 @@ Properties
 .. table::
    :widths: auto
 
-   +-----------------------------+-----------------------------------------------------------------+-----------+
-   | :ref:`String<class_String>` | :ref:`image_format<class_GLTFDocument_property_image_format>`   | ``"PNG"`` |
-   +-----------------------------+-----------------------------------------------------------------+-----------+
-   | :ref:`float<class_float>`   | :ref:`lossy_quality<class_GLTFDocument_property_lossy_quality>` | ``0.75``  |
-   +-----------------------------+-----------------------------------------------------------------+-----------+
+   +-----------------------------------------------------+-------------------------------------------------------------------+-----------+
+   | :ref:`String<class_String>`                         | :ref:`image_format<class_GLTFDocument_property_image_format>`     | ``"PNG"`` |
+   +-----------------------------------------------------+-------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>`                           | :ref:`lossy_quality<class_GLTFDocument_property_lossy_quality>`   | ``0.75``  |
+   +-----------------------------------------------------+-------------------------------------------------------------------+-----------+
+   | :ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` | :ref:`root_node_mode<class_GLTFDocument_property_root_node_mode>` | ``0``     |
+   +-----------------------------------------------------+-------------------------------------------------------------------+-----------+
 
 .. rst-class:: classref-reftable-group
 
@@ -80,6 +82,45 @@ Methods
 
 .. rst-class:: classref-descriptions-group
 
+Enumerations
+------------
+
+.. _enum_GLTFDocument_RootNodeMode:
+
+.. rst-class:: classref-enumeration
+
+enum **RootNodeMode**:
+
+.. _class_GLTFDocument_constant_ROOT_NODE_MODE_SINGLE_ROOT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` **ROOT_NODE_MODE_SINGLE_ROOT** = ``0``
+
+Treat the Godot scene's root node as the root node of the glTF file, and mark it as the single root node via the ``GODOT_single_root`` glTF extension. This will be parsed the same as :ref:`ROOT_NODE_MODE_KEEP_ROOT<class_GLTFDocument_constant_ROOT_NODE_MODE_KEEP_ROOT>` if the implementation does not support ``GODOT_single_root``.
+
+.. _class_GLTFDocument_constant_ROOT_NODE_MODE_KEEP_ROOT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` **ROOT_NODE_MODE_KEEP_ROOT** = ``1``
+
+Treat the Godot scene's root node as the root node of the glTF file, but do not mark it as anything special. An extra root node will be generated when importing into Godot. This uses only vanilla glTF features. This is equivalent to the behavior in Godot 4.1 and earlier.
+
+.. _class_GLTFDocument_constant_ROOT_NODE_MODE_MULTI_ROOT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` **ROOT_NODE_MODE_MULTI_ROOT** = ``2``
+
+Treat the Godot scene's root node as the name of the glTF scene, and add all of its children as root nodes of the glTF file. This uses only vanilla glTF features. This avoids an extra root node, but only the name of the Godot scene's root node will be preserved, as it will not be saved as a node.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Property Descriptions
 ---------------------
 
@@ -115,6 +156,25 @@ By default, Godot allows the following options: "None", "PNG", "JPEG", "Lossless
 
 If :ref:`image_format<class_GLTFDocument_property_image_format>` is a lossy image format, this determines the lossy quality of the image. On a range of ``0.0`` to ``1.0``, where ``0.0`` is the lowest quality and ``1.0`` is the highest quality. A lossy quality of ``1.0`` is not the same as lossless.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_GLTFDocument_property_root_node_mode:
+
+.. rst-class:: classref-property
+
+:ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` **root_node_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_root_node_mode** **(** :ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` value **)**
+- :ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` **get_root_node_mode** **(** **)**
+
+How to process the root node during export. See :ref:`RootNodeMode<enum_GLTFDocument_RootNodeMode>` for details. The default and recommended value is :ref:`ROOT_NODE_MODE_SINGLE_ROOT<class_GLTFDocument_constant_ROOT_NODE_MODE_SINGLE_ROOT>`.
+
+\ **Note:** Regardless of how the glTF file is exported, when importing, the root node type and name can be overridden in the scene import settings tab.
+
 .. rst-class:: classref-section-separator
 
 ----

+ 2 - 0
classes/class_gltfdocumentextension.rst

@@ -164,6 +164,8 @@ Part of the import process. This method is run after :ref:`_import_post_parse<cl
 
 Runs when generating a Godot scene node from a GLTFNode. The returned node will be added to the scene tree. Multiple nodes can be generated in this step if they are added as a child of the returned node.
 
+\ **Note:** The ``scene_parent`` parameter may be null if this is the single root node.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 29 - 0
classes/class_graphelement.rst

@@ -43,6 +43,18 @@ Properties
    | :ref:`bool<class_bool>`       | :ref:`selected<class_GraphElement_property_selected>`               | ``false``         |
    +-------------------------------+---------------------------------------------------------------------+-------------------+
 
+.. rst-class:: classref-reftable-group
+
+Theme Properties
+----------------
+
+.. table::
+   :widths: auto
+
+   +-----------------------------------+-------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`resizer<class_GraphElement_theme_icon_resizer>` |
+   +-----------------------------------+-------------------------------------------------------+
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -224,6 +236,23 @@ If ``true``, the user can select the GraphElement.
 
 If ``true``, the GraphElement is selected.
 
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Theme Property Descriptions
+---------------------------
+
+.. _class_GraphElement_theme_icon_resizer:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **resizer**
+
+The icon used for the resizer, visible when :ref:`resizable<class_GraphElement_property_resizable>` is enabled.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 14
classes/class_graphnode.rst

@@ -126,8 +126,6 @@ Theme Properties
    +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+
    | :ref:`Texture2D<class_Texture2D>` | :ref:`port<class_GraphNode_theme_icon_port>`                            |                                   |
    +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`resizer<class_GraphNode_theme_icon_resizer>`                      |                                   |
-   +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`panel<class_GraphNode_theme_style_panel>`                         |                                   |
    +-----------------------------------+-------------------------------------------------------------------------+-----------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`panel_selected<class_GraphNode_theme_style_panel_selected>`       |                                   |
@@ -602,18 +600,6 @@ The icon used for representing ports.
 
 ----
 
-.. _class_GraphNode_theme_icon_resizer:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **resizer**
-
-The icon used for the resizer, visible when :ref:`GraphElement.resizable<class_GraphElement_property_resizable>` is enabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_GraphNode_theme_style_panel:
 
 .. rst-class:: classref-themeproperty

+ 0 - 29
classes/class_hboxcontainer.rst

@@ -30,35 +30,6 @@ Tutorials
 
 - :doc:`Using Containers <../tutorials/ui/gui_containers>`
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------+------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>` | :ref:`separation<class_HBoxContainer_theme_constant_separation>` | ``4`` |
-   +-----------------------+------------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_HBoxContainer_theme_constant_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **separation** = ``4``
-
-The horizontal space between the **HBoxContainer**'s elements.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 43
classes/class_hflowcontainer.rst

@@ -28,49 +28,6 @@ Tutorials
 
 - :doc:`Using Containers <../tutorials/ui/gui_containers>`
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------+-----------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>` | :ref:`h_separation<class_HFlowContainer_theme_constant_h_separation>` | ``4`` |
-   +-----------------------+-----------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>` | :ref:`v_separation<class_HFlowContainer_theme_constant_v_separation>` | ``4`` |
-   +-----------------------+-----------------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_HFlowContainer_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The horizontal separation of children nodes.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HFlowContainer_theme_constant_v_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **v_separation** = ``4``
-
-The vertical separation of children nodes.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 169
classes/class_hscrollbar.rst

@@ -21,175 +21,6 @@ Description
 
 A horizontal scrollbar, typically used to navigate through content that extends beyond the visible width of a control. It is a :ref:`Range<class_Range>`-based control and goes from left (min) to right (max).
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement<class_HScrollBar_theme_icon_decrement>`                     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement_highlight<class_HScrollBar_theme_icon_decrement_highlight>` |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement_pressed<class_HScrollBar_theme_icon_decrement_pressed>`     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment<class_HScrollBar_theme_icon_increment>`                     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment_highlight<class_HScrollBar_theme_icon_increment_highlight>` |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment_pressed<class_HScrollBar_theme_icon_increment_pressed>`     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber<class_HScrollBar_theme_style_grabber>`                        |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_highlight<class_HScrollBar_theme_style_grabber_highlight>`    |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_pressed<class_HScrollBar_theme_style_grabber_pressed>`        |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`scroll<class_HScrollBar_theme_style_scroll>`                          |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`scroll_focus<class_HScrollBar_theme_style_scroll_focus>`              |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_HScrollBar_theme_icon_decrement:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **decrement**
-
-Icon used as a button to scroll the :ref:`ScrollBar<class_ScrollBar>` left. Supports custom step using the :ref:`ScrollBar.custom_step<class_ScrollBar_property_custom_step>` property.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_icon_decrement_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **decrement_highlight**
-
-Displayed when the mouse cursor hovers over the decrement button.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_icon_decrement_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **decrement_pressed**
-
-Displayed when the decrement button is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_icon_increment:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **increment**
-
-Icon used as a button to scroll the :ref:`ScrollBar<class_ScrollBar>` right. Supports custom step using the :ref:`ScrollBar.custom_step<class_ScrollBar_property_custom_step>` property.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_icon_increment_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **increment_highlight**
-
-Displayed when the mouse cursor hovers over the increment button.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_icon_increment_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **increment_pressed**
-
-Displayed when the increment button is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_style_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber**
-
-Used as texture for the grabber, the draggable element representing current scroll.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_style_grabber_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_highlight**
-
-Used when the mouse hovers over the grabber.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_style_grabber_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_pressed**
-
-Used when the grabber is being dragged.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_style_scroll:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **scroll**
-
-Used as background of this :ref:`ScrollBar<class_ScrollBar>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HScrollBar_theme_style_scroll_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **scroll_focus**
-
-Used as background when the :ref:`ScrollBar<class_ScrollBar>` has the GUI focus.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 43
classes/class_hseparator.rst

@@ -21,49 +21,6 @@ Description
 
 A horizontal separator used for separating other controls that are arranged **vertically**. **HSeparator** is purely visual and normally drawn as a :ref:`StyleBoxLine<class_StyleBoxLine>`.
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +---------------------------------+---------------------------------------------------------------+-------+
-   | :ref:`int<class_int>`           | :ref:`separation<class_HSeparator_theme_constant_separation>` | ``4`` |
-   +---------------------------------+---------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`separator<class_HSeparator_theme_style_separator>`      |       |
-   +---------------------------------+---------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_HSeparator_theme_constant_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **separation** = ``4``
-
-The height of the area covered by the separator. Effectively works like a minimum height.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSeparator_theme_style_separator:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **separator**
-
-The style for the separator line. Works best with :ref:`StyleBoxLine<class_StyleBoxLine>`.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 141
classes/class_hslider.rst

@@ -21,147 +21,6 @@ Description
 
 A horizontal slider, used to adjust a value by moving a grabber along a horizontal axis. It is a :ref:`Range<class_Range>`-based control and goes from left (min) to right (max).
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>`             | :ref:`center_grabber<class_HSlider_theme_constant_center_grabber>`              | ``0`` |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>`             | :ref:`grabber_offset<class_HSlider_theme_constant_grabber_offset>`              | ``0`` |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber<class_HSlider_theme_icon_grabber>`                                |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber_disabled<class_HSlider_theme_icon_grabber_disabled>`              |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber_highlight<class_HSlider_theme_icon_grabber_highlight>`            |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`tick<class_HSlider_theme_icon_tick>`                                      |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_area<class_HSlider_theme_style_grabber_area>`                     |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_area_highlight<class_HSlider_theme_style_grabber_area_highlight>` |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`slider<class_HSlider_theme_style_slider>`                                 |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_HSlider_theme_constant_center_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **center_grabber** = ``0``
-
-Boolean constant. If ``1``, the grabber texture size will be ignored and it will fit within slider's bounds based only on its center position.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_constant_grabber_offset:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **grabber_offset** = ``0``
-
-Vertical offset of the grabber.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_icon_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber**
-
-The texture for the grabber (the draggable element).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_icon_grabber_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber_disabled**
-
-The texture for the grabber when it's disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_icon_grabber_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber_highlight**
-
-The texture for the grabber when it's focused.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_icon_tick:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **tick**
-
-The texture for the ticks, visible when :ref:`Slider.tick_count<class_Slider_property_tick_count>` is greater than 0.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_style_grabber_area:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_area**
-
-The background of the area to the left of the grabber.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_style_grabber_area_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_area_highlight**
-
-The background of the area to the left of the grabber that displays when it's being hovered or focused.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSlider_theme_style_slider:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **slider**
-
-The background for the whole slider. Determines the height of the ``grabber_area``.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 71
classes/class_hsplitcontainer.rst

@@ -28,77 +28,6 @@ Tutorials
 
 - :doc:`Using Containers <../tutorials/ui/gui_containers>`
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`int<class_int>`             | :ref:`autohide<class_HSplitContainer_theme_constant_autohide>`                             | ``1``  |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`int<class_int>`             | :ref:`minimum_grab_thickness<class_HSplitContainer_theme_constant_minimum_grab_thickness>` | ``6``  |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`int<class_int>`             | :ref:`separation<class_HSplitContainer_theme_constant_separation>`                         | ``12`` |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber<class_HSplitContainer_theme_icon_grabber>`                                   |        |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_HSplitContainer_theme_constant_autohide:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **autohide** = ``1``
-
-Boolean value. If 1 (``true``), the grabber will hide automatically when it isn't under the cursor. If 0 (``false``), it's always visible.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSplitContainer_theme_constant_minimum_grab_thickness:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **minimum_grab_thickness** = ``6``
-
-The minimum thickness of the area users can click on to grab the splitting line. If :ref:`separation<class_HSplitContainer_theme_constant_separation>` or :ref:`grabber<class_HSplitContainer_theme_icon_grabber>`'s thickness are too small, this ensure that the splitting line can still be dragged.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSplitContainer_theme_constant_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **separation** = ``12``
-
-The space between sides of the container.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_HSplitContainer_theme_icon_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber**
-
-The icon used for the grabber drawn in the middle area.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 4 - 4
classes/class_image.rst

@@ -313,7 +313,7 @@ OpenGL texture format ``GL_RGBA32F`` where there are four components, each a 32-
 
 :ref:`Format<enum_Image_Format>` **FORMAT_RH** = ``12``
 
-OpenGL texture format ``GL_R32F`` where there's one component, a 16-bit "half-precision" floating-point value.
+OpenGL texture format ``GL_R16F`` where there's one component, a 16-bit "half-precision" floating-point value.
 
 .. _class_Image_constant_FORMAT_RGH:
 
@@ -321,7 +321,7 @@ OpenGL texture format ``GL_R32F`` where there's one component, a 16-bit "half-pr
 
 :ref:`Format<enum_Image_Format>` **FORMAT_RGH** = ``13``
 
-OpenGL texture format ``GL_RG32F`` where there are two components, each a 16-bit "half-precision" floating-point value.
+OpenGL texture format ``GL_RG16F`` where there are two components, each a 16-bit "half-precision" floating-point value.
 
 .. _class_Image_constant_FORMAT_RGBH:
 
@@ -329,7 +329,7 @@ OpenGL texture format ``GL_RG32F`` where there are two components, each a 16-bit
 
 :ref:`Format<enum_Image_Format>` **FORMAT_RGBH** = ``14``
 
-OpenGL texture format ``GL_RGB32F`` where there are three components, each a 16-bit "half-precision" floating-point value.
+OpenGL texture format ``GL_RGB16F`` where there are three components, each a 16-bit "half-precision" floating-point value.
 
 .. _class_Image_constant_FORMAT_RGBAH:
 
@@ -337,7 +337,7 @@ OpenGL texture format ``GL_RGB32F`` where there are three components, each a 16-
 
 :ref:`Format<enum_Image_Format>` **FORMAT_RGBAH** = ``15``
 
-OpenGL texture format ``GL_RGBA32F`` where there are four components, each a 16-bit "half-precision" floating-point value.
+OpenGL texture format ``GL_RGBA16F`` where there are four components, each a 16-bit "half-precision" floating-point value.
 
 .. _class_Image_constant_FORMAT_RGBE9995:
 

+ 154 - 7
classes/class_importermeshinstance3d.rst

@@ -24,13 +24,27 @@ Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------------+---------------------------------------------------------------------------+------------------+
-   | :ref:`ImporterMesh<class_ImporterMesh>` | :ref:`mesh<class_ImporterMeshInstance3D_property_mesh>`                   |                  |
-   +-----------------------------------------+---------------------------------------------------------------------------+------------------+
-   | :ref:`NodePath<class_NodePath>`         | :ref:`skeleton_path<class_ImporterMeshInstance3D_property_skeleton_path>` | ``NodePath("")`` |
-   +-----------------------------------------+---------------------------------------------------------------------------+------------------+
-   | :ref:`Skin<class_Skin>`                 | :ref:`skin<class_ImporterMeshInstance3D_property_skin>`                   |                  |
-   +-----------------------------------------+---------------------------------------------------------------------------+------------------+
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`ShadowCastingSetting<enum_GeometryInstance3D_ShadowCastingSetting>`       | :ref:`cast_shadow<class_ImporterMeshInstance3D_property_cast_shadow>`                                     | ``1``            |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`int<class_int>`                                                           | :ref:`layer_mask<class_ImporterMeshInstance3D_property_layer_mask>`                                       | ``1``            |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`ImporterMesh<class_ImporterMesh>`                                         | :ref:`mesh<class_ImporterMeshInstance3D_property_mesh>`                                                   |                  |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`NodePath<class_NodePath>`                                                 | :ref:`skeleton_path<class_ImporterMeshInstance3D_property_skeleton_path>`                                 | ``NodePath("")`` |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`Skin<class_Skin>`                                                         | :ref:`skin<class_ImporterMeshInstance3D_property_skin>`                                                   |                  |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`float<class_float>`                                                       | :ref:`visibility_range_begin<class_ImporterMeshInstance3D_property_visibility_range_begin>`               | ``0.0``          |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`float<class_float>`                                                       | :ref:`visibility_range_begin_margin<class_ImporterMeshInstance3D_property_visibility_range_begin_margin>` | ``0.0``          |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`float<class_float>`                                                       | :ref:`visibility_range_end<class_ImporterMeshInstance3D_property_visibility_range_end>`                   | ``0.0``          |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`float<class_float>`                                                       | :ref:`visibility_range_end_margin<class_ImporterMeshInstance3D_property_visibility_range_end_margin>`     | ``0.0``          |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
+   | :ref:`VisibilityRangeFadeMode<enum_GeometryInstance3D_VisibilityRangeFadeMode>` | :ref:`visibility_range_fade_mode<class_ImporterMeshInstance3D_property_visibility_range_fade_mode>`       | ``0``            |
+   +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -41,6 +55,44 @@ Properties
 Property Descriptions
 ---------------------
 
+.. _class_ImporterMeshInstance3D_property_cast_shadow:
+
+.. rst-class:: classref-property
+
+:ref:`ShadowCastingSetting<enum_GeometryInstance3D_ShadowCastingSetting>` **cast_shadow** = ``1``
+
+.. rst-class:: classref-property-setget
+
+- void **set_cast_shadows_setting** **(** :ref:`ShadowCastingSetting<enum_GeometryInstance3D_ShadowCastingSetting>` value **)**
+- :ref:`ShadowCastingSetting<enum_GeometryInstance3D_ShadowCastingSetting>` **get_cast_shadows_setting** **(** **)**
+
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ImporterMeshInstance3D_property_layer_mask:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **layer_mask** = ``1``
+
+.. rst-class:: classref-property-setget
+
+- void **set_layer_mask** **(** :ref:`int<class_int>` value **)**
+- :ref:`int<class_int>` **get_layer_mask** **(** **)**
+
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ImporterMeshInstance3D_property_mesh:
 
 .. rst-class:: classref-property
@@ -90,6 +142,101 @@ Property Descriptions
 - void **set_skin** **(** :ref:`Skin<class_Skin>` value **)**
 - :ref:`Skin<class_Skin>` **get_skin** **(** **)**
 
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ImporterMeshInstance3D_property_visibility_range_begin:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **visibility_range_begin** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_visibility_range_begin** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_visibility_range_begin** **(** **)**
+
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ImporterMeshInstance3D_property_visibility_range_begin_margin:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **visibility_range_begin_margin** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_visibility_range_begin_margin** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_visibility_range_begin_margin** **(** **)**
+
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ImporterMeshInstance3D_property_visibility_range_end:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **visibility_range_end** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_visibility_range_end** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_visibility_range_end** **(** **)**
+
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ImporterMeshInstance3D_property_visibility_range_end_margin:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **visibility_range_end_margin** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_visibility_range_end_margin** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_visibility_range_end_margin** **(** **)**
+
+.. container:: contribute
+
+	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ImporterMeshInstance3D_property_visibility_range_fade_mode:
+
+.. rst-class:: classref-property
+
+:ref:`VisibilityRangeFadeMode<enum_GeometryInstance3D_VisibilityRangeFadeMode>` **visibility_range_fade_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_visibility_range_fade_mode** **(** :ref:`VisibilityRangeFadeMode<enum_GeometryInstance3D_VisibilityRangeFadeMode>` value **)**
+- :ref:`VisibilityRangeFadeMode<enum_GeometryInstance3D_VisibilityRangeFadeMode>` **get_visibility_range_fade_mode** **(** **)**
+
 .. container:: contribute
 
 	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!

+ 20 - 3
classes/class_lightmapgi.rst

@@ -53,6 +53,8 @@ Properties
    +---------------------------------------------------------+---------------------------------------------------------------------------------------+------------+
    | :ref:`CameraAttributes<class_CameraAttributes>`         | :ref:`camera_attributes<class_LightmapGI_property_camera_attributes>`                 |            |
    +---------------------------------------------------------+---------------------------------------------------------------------------------------+------------+
+   | :ref:`float<class_float>`                               | :ref:`denoiser_strength<class_LightmapGI_property_denoiser_strength>`                 | ``0.1``    |
+   +---------------------------------------------------------+---------------------------------------------------------------------------------------+------------+
    | :ref:`bool<class_bool>`                                 | :ref:`directional<class_LightmapGI_property_directional>`                             | ``false``  |
    +---------------------------------------------------------+---------------------------------------------------------------------------------------+------------+
    | :ref:`Color<class_Color>`                               | :ref:`environment_custom_color<class_LightmapGI_property_environment_custom_color>`   |            |
@@ -367,6 +369,23 @@ The :ref:`CameraAttributes<class_CameraAttributes>` resource that specifies expo
 
 ----
 
+.. _class_LightmapGI_property_denoiser_strength:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **denoiser_strength** = ``0.1``
+
+.. rst-class:: classref-property-setget
+
+- void **set_denoiser_strength** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_denoiser_strength** **(** **)**
+
+The strength of denoising step applied to the generated lightmaps. Only effective if :ref:`use_denoiser<class_LightmapGI_property_use_denoiser>` is ``true``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_LightmapGI_property_directional:
 
 .. rst-class:: classref-property
@@ -556,9 +575,7 @@ To further speed up bake times, decrease :ref:`bounces<class_LightmapGI_property
 - void **set_use_denoiser** **(** :ref:`bool<class_bool>` value **)**
 - :ref:`bool<class_bool>` **is_using_denoiser** **(** **)**
 
-If ``true``, uses a CPU-based denoising algorithm on the generated lightmap. This eliminates most noise within the generated lightmap at the cost of longer bake times. File sizes are generally not impacted significantly by the use of a denoiser, although lossless compression may do a better job at compressing a denoised image.
-
-\ **Note:** The built-in denoiser (OpenImageDenoise) may crash when denoising lightmaps in large scenes. If you encounter a crash at the end of lightmap baking, try disabling :ref:`use_denoiser<class_LightmapGI_property_use_denoiser>`.
+If ``true``, uses a GPU-based denoising algorithm on the generated lightmap. This eliminates most noise within the generated lightmap at the cost of longer bake times. File sizes are generally not impacted significantly by the use of a denoiser, although lossless compression may do a better job at compressing a denoised image.
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 49 - 21
classes/class_linkbutton.rst

@@ -59,27 +59,31 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_color<class_LinkButton_theme_color_font_color>`                  | ``Color(0.875, 0.875, 0.875, 1)`` |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_focus_color<class_LinkButton_theme_color_font_focus_color>`      | ``Color(0.95, 0.95, 0.95, 1)``    |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_hover_color<class_LinkButton_theme_color_font_hover_color>`      | ``Color(0.95, 0.95, 0.95, 1)``    |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_outline_color<class_LinkButton_theme_color_font_outline_color>`  | ``Color(1, 1, 1, 1)``             |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_pressed_color<class_LinkButton_theme_color_font_pressed_color>`  | ``Color(1, 1, 1, 1)``             |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`           | :ref:`outline_size<class_LinkButton_theme_constant_outline_size>`           | ``0``                             |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`           | :ref:`underline_spacing<class_LinkButton_theme_constant_underline_spacing>` | ``2``                             |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Font<class_Font>`         | :ref:`font<class_LinkButton_theme_font_font>`                               |                                   |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`           | :ref:`font_size<class_LinkButton_theme_font_size_font_size>`                |                                   |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_LinkButton_theme_style_focus>`                            |                                   |
-   +---------------------------------+-----------------------------------------------------------------------------+-----------------------------------+
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_color<class_LinkButton_theme_color_font_color>`                             | ``Color(0.875, 0.875, 0.875, 1)`` |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_disabled_color<class_LinkButton_theme_color_font_disabled_color>`           | ``Color(0, 0, 0, 1)``             |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_focus_color<class_LinkButton_theme_color_font_focus_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``    |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_hover_color<class_LinkButton_theme_color_font_hover_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``    |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_hover_pressed_color<class_LinkButton_theme_color_font_hover_pressed_color>` | ``Color(0, 0, 0, 1)``             |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_outline_color<class_LinkButton_theme_color_font_outline_color>`             | ``Color(1, 1, 1, 1)``             |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Color<class_Color>`       | :ref:`font_pressed_color<class_LinkButton_theme_color_font_pressed_color>`             | ``Color(1, 1, 1, 1)``             |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`           | :ref:`outline_size<class_LinkButton_theme_constant_outline_size>`                      | ``0``                             |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`           | :ref:`underline_spacing<class_LinkButton_theme_constant_underline_spacing>`            | ``2``                             |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`Font<class_Font>`         | :ref:`font<class_LinkButton_theme_font_font>`                                          |                                   |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`int<class_int>`           | :ref:`font_size<class_LinkButton_theme_font_size_font_size>`                           |                                   |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_LinkButton_theme_style_focus>`                                       |                                   |
+   +---------------------------------+----------------------------------------------------------------------------------------+-----------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -284,6 +288,18 @@ Default text :ref:`Color<class_Color>` of the **LinkButton**.
 
 ----
 
+.. _class_LinkButton_theme_color_font_disabled_color:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Color<class_Color>` **font_disabled_color** = ``Color(0, 0, 0, 1)``
+
+Text :ref:`Color<class_Color>` used when the **LinkButton** is disabled.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_LinkButton_theme_color_font_focus_color:
 
 .. rst-class:: classref-themeproperty
@@ -308,6 +324,18 @@ Text :ref:`Color<class_Color>` used when the **LinkButton** is being hovered.
 
 ----
 
+.. _class_LinkButton_theme_color_font_hover_pressed_color:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Color<class_Color>` **font_hover_pressed_color** = ``Color(0, 0, 0, 1)``
+
+Text :ref:`Color<class_Color>` used when the **LinkButton** is being hovered and pressed.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_LinkButton_theme_color_font_outline_color:
 
 .. rst-class:: classref-themeproperty

+ 74 - 4
classes/class_menubar.rst

@@ -110,14 +110,24 @@ Theme Properties
    +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>` | :ref:`disabled<class_MenuBar_theme_style_disabled>`                                 |                                     |
    +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_MenuBar_theme_style_focus>`                                       |                                     |
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`disabled_mirrored<class_MenuBar_theme_style_disabled_mirrored>`               |                                     |
    +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>` | :ref:`hover<class_MenuBar_theme_style_hover>`                                       |                                     |
    +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`hover_mirrored<class_MenuBar_theme_style_hover_mirrored>`                     |                                     |
+   +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`hover_pressed<class_MenuBar_theme_style_hover_pressed>`                       |                                     |
+   +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`hover_pressed_mirrored<class_MenuBar_theme_style_hover_pressed_mirrored>`     |                                     |
+   +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_MenuBar_theme_style_normal>`                                     |                                     |
    +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`normal_mirrored<class_MenuBar_theme_style_normal_mirrored>`                   |                                     |
+   +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>` | :ref:`pressed<class_MenuBar_theme_style_pressed>`                                   |                                     |
    +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`pressed_mirrored<class_MenuBar_theme_style_pressed_mirrored>`                 |                                     |
+   +---------------------------------+-------------------------------------------------------------------------------------+-------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -530,13 +540,13 @@ Font size of the menu item's text.
 
 ----
 
-.. _class_MenuBar_theme_style_focus:
+.. _class_MenuBar_theme_style_disabled_mirrored:
 
 .. rst-class:: classref-themeproperty
 
-:ref:`StyleBox<class_StyleBox>` **focus**
+:ref:`StyleBox<class_StyleBox>` **disabled_mirrored**
 
-:ref:`StyleBox<class_StyleBox>` used when the menu item is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
+:ref:`StyleBox<class_StyleBox>` used when the menu item is disabled (for right-to-left layouts).
 
 .. rst-class:: classref-item-separator
 
@@ -554,6 +564,42 @@ Font size of the menu item's text.
 
 ----
 
+.. _class_MenuBar_theme_style_hover_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hover_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the menu item is being hovered (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_MenuBar_theme_style_hover_pressed:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hover_pressed**
+
+:ref:`StyleBox<class_StyleBox>` used when the menu item is being pressed and hovered at the same time.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_MenuBar_theme_style_hover_pressed_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hover_pressed_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the menu item is being pressed and hovered at the same time (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_MenuBar_theme_style_normal:
 
 .. rst-class:: classref-themeproperty
@@ -566,6 +612,18 @@ Default :ref:`StyleBox<class_StyleBox>` for the menu item.
 
 ----
 
+.. _class_MenuBar_theme_style_normal_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **normal_mirrored**
+
+Default :ref:`StyleBox<class_StyleBox>` for the menu item (for right-to-left layouts).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_MenuBar_theme_style_pressed:
 
 .. rst-class:: classref-themeproperty
@@ -574,6 +632,18 @@ Default :ref:`StyleBox<class_StyleBox>` for the menu item.
 
 :ref:`StyleBox<class_StyleBox>` used when the menu item is being pressed.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_MenuBar_theme_style_pressed_mirrored:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **pressed_mirrored**
+
+:ref:`StyleBox<class_StyleBox>` used when the menu item is being pressed (for right-to-left layouts).
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 227
classes/class_menubutton.rst

@@ -61,46 +61,6 @@ Methods
    | void                              | :ref:`show_popup<class_MenuButton_method_show_popup>` **(** **)**                                                        |
    +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------+
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_color<class_MenuButton_theme_color_font_color>`                   | ``Color(0.875, 0.875, 0.875, 1)`` |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_disabled_color<class_MenuButton_theme_color_font_disabled_color>` | ``Color(1, 1, 1, 0.3)``           |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_focus_color<class_MenuButton_theme_color_font_focus_color>`       | ``Color(0.95, 0.95, 0.95, 1)``    |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_hover_color<class_MenuButton_theme_color_font_hover_color>`       | ``Color(0.95, 0.95, 0.95, 1)``    |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_outline_color<class_MenuButton_theme_color_font_outline_color>`   | ``Color(1, 1, 1, 1)``             |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_pressed_color<class_MenuButton_theme_color_font_pressed_color>`   | ``Color(1, 1, 1, 1)``             |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`           | :ref:`h_separation<class_MenuButton_theme_constant_h_separation>`            | ``4``                             |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`           | :ref:`outline_size<class_MenuButton_theme_constant_outline_size>`            | ``0``                             |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Font<class_Font>`         | :ref:`font<class_MenuButton_theme_font_font>`                                |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`           | :ref:`font_size<class_MenuButton_theme_font_size_font_size>`                 |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`disabled<class_MenuButton_theme_style_disabled>`                       |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_MenuButton_theme_style_focus>`                             |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`hover<class_MenuButton_theme_style_hover>`                             |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_MenuButton_theme_style_normal>`                           |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`pressed<class_MenuButton_theme_style_pressed>`                         |                                   |
-   +---------------------------------+------------------------------------------------------------------------------+-----------------------------------+
-
 .. rst-class:: classref-section-separator
 
 ----
@@ -200,193 +160,6 @@ void **show_popup** **(** **)**
 
 Adjusts popup position and sizing for the **MenuButton**, then shows the :ref:`PopupMenu<class_PopupMenu>`. Prefer this over using ``get_popup().popup()``.
 
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_MenuButton_theme_color_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
-
-Default text :ref:`Color<class_Color>` of the **MenuButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_color_font_disabled_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_disabled_color** = ``Color(1, 1, 1, 0.3)``
-
-Text :ref:`Color<class_Color>` used when the **MenuButton** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_color_font_focus_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_focus_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-Text :ref:`Color<class_Color>` used when the **MenuButton** is focused. Only replaces the normal text color of the button. Disabled, hovered, and pressed states take precedence over this color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_color_font_hover_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-Text :ref:`Color<class_Color>` used when the **MenuButton** is being hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_color_font_outline_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
-
-The tint of text outline of the **MenuButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_color_font_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_pressed_color** = ``Color(1, 1, 1, 1)``
-
-Text :ref:`Color<class_Color>` used when the **MenuButton** is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The horizontal space between **MenuButton**'s icon and text. Negative values will be treated as ``0`` when used.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_constant_outline_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **outline_size** = ``0``
-
-The size of the text outline.
-
-\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_MenuButton_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_font_font:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Font<class_Font>` **font**
-
-:ref:`Font<class_Font>` of the **MenuButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_font_size_font_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **font_size**
-
-Font size of the **MenuButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_style_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **disabled**
-
-:ref:`StyleBox<class_StyleBox>` used when the **MenuButton** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_style_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **focus**
-
-:ref:`StyleBox<class_StyleBox>` used when the **MenuButton** is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_style_hover:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover**
-
-:ref:`StyleBox<class_StyleBox>` used when the **MenuButton** is being hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_style_normal:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal**
-
-Default :ref:`StyleBox<class_StyleBox>` for the **MenuButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_MenuButton_theme_style_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **pressed**
-
-:ref:`StyleBox<class_StyleBox>` used when the **MenuButton** is being pressed.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 157 - 0
classes/class_navigationmeshsourcegeometrydata2d.rst

@@ -0,0 +1,157 @@
+:github_url: hide
+
+.. DO NOT EDIT THIS FILE!!!
+.. Generated automatically from Godot engine sources.
+.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
+.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/NavigationMeshSourceGeometryData2D.xml.
+
+.. _class_NavigationMeshSourceGeometryData2D:
+
+NavigationMeshSourceGeometryData2D
+==================================
+
+**Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
+
+Container for parsed source geometry data used in navigation mesh baking.
+
+.. rst-class:: classref-introduction-group
+
+Description
+-----------
+
+Container for parsed source geometry data used in navigation mesh baking.
+
+.. rst-class:: classref-reftable-group
+
+Methods
+-------
+
+.. table::
+   :widths: auto
+
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                  | :ref:`add_obstruction_outline<class_NavigationMeshSourceGeometryData2D_method_add_obstruction_outline>` **(** :ref:`PackedVector2Array<class_PackedVector2Array>` shape_outline **)**            |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                  | :ref:`add_traversable_outline<class_NavigationMeshSourceGeometryData2D_method_add_traversable_outline>` **(** :ref:`PackedVector2Array<class_PackedVector2Array>` shape_outline **)**            |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                  | :ref:`clear<class_NavigationMeshSourceGeometryData2D_method_clear>` **(** **)**                                                                                                                  |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedVector2Array[]<class_PackedVector2Array>` | :ref:`get_obstruction_outlines<class_NavigationMeshSourceGeometryData2D_method_get_obstruction_outlines>` **(** **)** |const|                                                                    |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedVector2Array[]<class_PackedVector2Array>` | :ref:`get_traversable_outlines<class_NavigationMeshSourceGeometryData2D_method_get_traversable_outlines>` **(** **)** |const|                                                                    |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                               | :ref:`has_data<class_NavigationMeshSourceGeometryData2D_method_has_data>` **(** **)**                                                                                                            |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                  | :ref:`set_obstruction_outlines<class_NavigationMeshSourceGeometryData2D_method_set_obstruction_outlines>` **(** :ref:`PackedVector2Array[]<class_PackedVector2Array>` obstruction_outlines **)** |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                  | :ref:`set_traversable_outlines<class_NavigationMeshSourceGeometryData2D_method_set_traversable_outlines>` **(** :ref:`PackedVector2Array[]<class_PackedVector2Array>` traversable_outlines **)** |
+   +-------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Method Descriptions
+-------------------
+
+.. _class_NavigationMeshSourceGeometryData2D_method_add_obstruction_outline:
+
+.. rst-class:: classref-method
+
+void **add_obstruction_outline** **(** :ref:`PackedVector2Array<class_PackedVector2Array>` shape_outline **)**
+
+Adds the outline points of a shape as obstructed area.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_add_traversable_outline:
+
+.. rst-class:: classref-method
+
+void **add_traversable_outline** **(** :ref:`PackedVector2Array<class_PackedVector2Array>` shape_outline **)**
+
+Adds the outline points of a shape as traversable area.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_clear:
+
+.. rst-class:: classref-method
+
+void **clear** **(** **)**
+
+Clears the internal data.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_get_obstruction_outlines:
+
+.. rst-class:: classref-method
+
+:ref:`PackedVector2Array[]<class_PackedVector2Array>` **get_obstruction_outlines** **(** **)** |const|
+
+Returns all the obstructed area outlines arrays.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_get_traversable_outlines:
+
+.. rst-class:: classref-method
+
+:ref:`PackedVector2Array[]<class_PackedVector2Array>` **get_traversable_outlines** **(** **)** |const|
+
+Returns all the traversable area outlines arrays.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_has_data:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **has_data** **(** **)**
+
+Returns ``true`` when parsed source geometry data exists.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_set_obstruction_outlines:
+
+.. rst-class:: classref-method
+
+void **set_obstruction_outlines** **(** :ref:`PackedVector2Array[]<class_PackedVector2Array>` obstruction_outlines **)**
+
+Sets all the obstructed area outlines arrays.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationMeshSourceGeometryData2D_method_set_traversable_outlines:
+
+.. rst-class:: classref-method
+
+void **set_traversable_outlines** **(** :ref:`PackedVector2Array[]<class_PackedVector2Array>` traversable_outlines **)**
+
+Sets all the traversable area outlines arrays.
+
+.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
+.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
+.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
+.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
+.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
+.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
+.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`

+ 251 - 31
classes/class_navigationpolygon.rst

@@ -12,60 +12,60 @@ NavigationPolygon
 
 **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
 
-A navigation polygon that defines traversable areas and obstacles.
+A 2D navigation mesh that describes a traversable surface for pathfinding.
 
 .. rst-class:: classref-introduction-group
 
 Description
 -----------
 
-There are two ways to create polygons. Either by using the :ref:`add_outline<class_NavigationPolygon_method_add_outline>` method, or using the :ref:`add_polygon<class_NavigationPolygon_method_add_polygon>` method.
+A navigation mesh can be created either by baking it with the help of the :ref:`NavigationServer2D<class_NavigationServer2D>`, or by adding vertices and convex polygon indices arrays manually.
 
-Using :ref:`add_outline<class_NavigationPolygon_method_add_outline>`:
+To bake a navigation mesh at least one outline needs to be added that defines the outer bounds of the baked area.
 
 
 .. tabs::
 
  .. code-tab:: gdscript
 
-    var polygon = NavigationPolygon.new()
-    var outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
-    polygon.add_outline(outline)
-    polygon.make_polygons_from_outlines()
-    $NavigationRegion2D.navigation_polygon = polygon
+    var new_navigation_mesh = NavigationPolygon.new()
+    var bounding_outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
+    new_navigation_mesh.add_outline(bounding_outline)
+    NavigationServer2D.bake_from_source_geometry_data(new_navigation_mesh, NavigationMeshSourceGeometryData2D.new());
+    $NavigationRegion2D.navigation_polygon = new_navigation_mesh
 
  .. code-tab:: csharp
 
-    var polygon = new NavigationPolygon();
-    var outline = new Vector2[] { new Vector2(0, 0), new Vector2(0, 50), new Vector2(50, 50), new Vector2(50, 0) };
-    polygon.AddOutline(outline);
-    polygon.MakePolygonsFromOutlines();
-    GetNode<NavigationRegion2D>("NavigationRegion2D").NavigationPolygon = polygon;
+    var newNavigationMesh = new NavigationPolygon();
+    var boundingOutline = new Vector2[] { new Vector2(0, 0), new Vector2(0, 50), new Vector2(50, 50), new Vector2(50, 0) };
+    newNavigationMesh.AddOutline(boundingOutline);
+    NavigationServer2D.BakeFromSourceGeometryData(newNavigationMesh, new NavigationMeshSourceGeometryData2D());
+    GetNode<NavigationRegion2D>("NavigationRegion2D").NavigationPolygon = newNavigationMesh;
 
 
 
-Using :ref:`add_polygon<class_NavigationPolygon_method_add_polygon>` and indices of the vertices array.
+Adding vertices and polygon indices manually.
 
 
 .. tabs::
 
  .. code-tab:: gdscript
 
-    var polygon = NavigationPolygon.new()
-    var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
-    polygon.vertices = vertices
-    var indices = PackedInt32Array([0, 1, 2, 3])
-    polygon.add_polygon(indices)
-    $NavigationRegion2D.navigation_polygon = polygon
+    var new_navigation_mesh = NavigationPolygon.new()
+    var new_vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
+    new_navigation_mesh.vertices = new_vertices
+    var new_polygon_indices = PackedInt32Array([0, 1, 2, 3])
+    new_navigation_mesh.add_polygon(new_polygon_indices)
+    $NavigationRegion2D.navigation_polygon = new_navigation_mesh
 
  .. code-tab:: csharp
 
-    var polygon = new NavigationPolygon();
-    var vertices = new Vector2[] { new Vector2(0, 0), new Vector2(0, 50), new Vector2(50, 50), new Vector2(50, 0) };
-    polygon.Vertices = vertices;
-    var indices = new int[] { 0, 1, 2, 3 };
-    polygon.AddPolygon(indices);
-    GetNode<NavigationRegion2D>("NavigationRegion2D").NavigationPolygon = polygon;
+    var newNavigationMesh = new NavigationPolygon();
+    var newVertices = new Vector2[] { new Vector2(0, 0), new Vector2(0, 50), new Vector2(50, 50), new Vector2(50, 0) };
+    newNavigationMesh.Vertices = newVertices;
+    var newPolygonIndices = new int[] { 0, 1, 2, 3 };
+    newNavigationMesh.AddPolygon(newPolygonIndices);
+    GetNode<NavigationRegion2D>("NavigationRegion2D").NavigationPolygon = newNavigationMesh;
 
 
 
@@ -86,9 +86,19 @@ Properties
 .. table::
    :widths: auto
 
-   +---------------------------+--------------------------------------------------------------+---------+
-   | :ref:`float<class_float>` | :ref:`cell_size<class_NavigationPolygon_property_cell_size>` | ``1.0`` |
-   +---------------------------+--------------------------------------------------------------+---------+
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
+   | :ref:`float<class_float>`                                            | :ref:`agent_radius<class_NavigationPolygon_property_agent_radius>`                             | ``10.0``                                        |
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
+   | :ref:`float<class_float>`                                            | :ref:`cell_size<class_NavigationPolygon_property_cell_size>`                                   | ``1.0``                                         |
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
+   | :ref:`int<class_int>`                                                | :ref:`parsed_collision_mask<class_NavigationPolygon_property_parsed_collision_mask>`           | ``4294967295``                                  |
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
+   | :ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` | :ref:`parsed_geometry_type<class_NavigationPolygon_property_parsed_geometry_type>`             | ``2``                                           |
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
+   | :ref:`StringName<class_StringName>`                                  | :ref:`source_geometry_group_name<class_NavigationPolygon_property_source_geometry_group_name>` | ``&"navigation_polygon_source_geometry_group"`` |
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
+   | :ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` | :ref:`source_geometry_mode<class_NavigationPolygon_property_source_geometry_mode>`             | ``0``                                           |
+   +----------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------------------------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -117,6 +127,8 @@ Methods
    +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                               | :ref:`get_outline_count<class_NavigationPolygon_method_get_outline_count>` **(** **)** |const|                                                                                        |
    +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`get_parsed_collision_mask_value<class_NavigationPolygon_method_get_parsed_collision_mask_value>` **(** :ref:`int<class_int>` layer_number **)** |const|                         |
+   +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`PackedInt32Array<class_PackedInt32Array>`     | :ref:`get_polygon<class_NavigationPolygon_method_get_polygon>` **(** :ref:`int<class_int>` idx **)**                                                                                  |
    +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                               | :ref:`get_polygon_count<class_NavigationPolygon_method_get_polygon_count>` **(** **)** |const|                                                                                        |
@@ -129,6 +141,8 @@ Methods
    +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`set_outline<class_NavigationPolygon_method_set_outline>` **(** :ref:`int<class_int>` idx, :ref:`PackedVector2Array<class_PackedVector2Array>` outline **)**                     |
    +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`set_parsed_collision_mask_value<class_NavigationPolygon_method_set_parsed_collision_mask_value>` **(** :ref:`int<class_int>` layer_number, :ref:`bool<class_bool>` value **)**  |
+   +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`set_vertices<class_NavigationPolygon_method_set_vertices>` **(** :ref:`PackedVector2Array<class_PackedVector2Array>` vertices **)**                                             |
    +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
@@ -138,9 +152,117 @@ Methods
 
 .. rst-class:: classref-descriptions-group
 
+Enumerations
+------------
+
+.. _enum_NavigationPolygon_ParsedGeometryType:
+
+.. rst-class:: classref-enumeration
+
+enum **ParsedGeometryType**:
+
+.. _class_NavigationPolygon_constant_PARSED_GEOMETRY_MESH_INSTANCES:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` **PARSED_GEOMETRY_MESH_INSTANCES** = ``0``
+
+Parses mesh instances as obstruction geometry. This includes :ref:`Polygon2D<class_Polygon2D>`, :ref:`MeshInstance2D<class_MeshInstance2D>`, :ref:`MultiMeshInstance2D<class_MultiMeshInstance2D>`, and :ref:`TileMap<class_TileMap>` nodes.
+
+Meshes are only parsed when they use a 2D vertices surface format.
+
+.. _class_NavigationPolygon_constant_PARSED_GEOMETRY_STATIC_COLLIDERS:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` **PARSED_GEOMETRY_STATIC_COLLIDERS** = ``1``
+
+Parses :ref:`StaticBody2D<class_StaticBody2D>` and :ref:`TileMap<class_TileMap>` colliders as obstruction geometry. The collider should be in any of the layers specified by :ref:`parsed_collision_mask<class_NavigationPolygon_property_parsed_collision_mask>`.
+
+.. _class_NavigationPolygon_constant_PARSED_GEOMETRY_BOTH:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` **PARSED_GEOMETRY_BOTH** = ``2``
+
+Both :ref:`PARSED_GEOMETRY_MESH_INSTANCES<class_NavigationPolygon_constant_PARSED_GEOMETRY_MESH_INSTANCES>` and :ref:`PARSED_GEOMETRY_STATIC_COLLIDERS<class_NavigationPolygon_constant_PARSED_GEOMETRY_STATIC_COLLIDERS>`.
+
+.. _class_NavigationPolygon_constant_PARSED_GEOMETRY_MAX:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` **PARSED_GEOMETRY_MAX** = ``3``
+
+Represents the size of the :ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` enum.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _enum_NavigationPolygon_SourceGeometryMode:
+
+.. rst-class:: classref-enumeration
+
+enum **SourceGeometryMode**:
+
+.. _class_NavigationPolygon_constant_SOURCE_GEOMETRY_ROOT_NODE_CHILDREN:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` **SOURCE_GEOMETRY_ROOT_NODE_CHILDREN** = ``0``
+
+Scans the child nodes of the root node recursively for geometry.
+
+.. _class_NavigationPolygon_constant_SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` **SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN** = ``1``
+
+Scans nodes in a group and their child nodes recursively for geometry. The group is specified by :ref:`source_geometry_group_name<class_NavigationPolygon_property_source_geometry_group_name>`.
+
+.. _class_NavigationPolygon_constant_SOURCE_GEOMETRY_GROUPS_EXPLICIT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` **SOURCE_GEOMETRY_GROUPS_EXPLICIT** = ``2``
+
+Uses nodes in a group for geometry. The group is specified by :ref:`source_geometry_group_name<class_NavigationPolygon_property_source_geometry_group_name>`.
+
+.. _class_NavigationPolygon_constant_SOURCE_GEOMETRY_MAX:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` **SOURCE_GEOMETRY_MAX** = ``3``
+
+Represents the size of the :ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` enum.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Property Descriptions
 ---------------------
 
+.. _class_NavigationPolygon_property_agent_radius:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **agent_radius** = ``10.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_agent_radius** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_agent_radius** **(** **)**
+
+The distance to erode/shrink the walkable surface when baking the navigation mesh.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationPolygon_property_cell_size:
 
 .. rst-class:: classref-property
@@ -154,6 +276,78 @@ Property Descriptions
 
 The cell size used to rasterize the navigation mesh vertices. Must match with the cell size on the navigation map.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationPolygon_property_parsed_collision_mask:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **parsed_collision_mask** = ``4294967295``
+
+.. rst-class:: classref-property-setget
+
+- void **set_parsed_collision_mask** **(** :ref:`int<class_int>` value **)**
+- :ref:`int<class_int>` **get_parsed_collision_mask** **(** **)**
+
+The physics layers to scan for static colliders.
+
+Only used when :ref:`parsed_geometry_type<class_NavigationPolygon_property_parsed_geometry_type>` is :ref:`PARSED_GEOMETRY_STATIC_COLLIDERS<class_NavigationPolygon_constant_PARSED_GEOMETRY_STATIC_COLLIDERS>` or :ref:`PARSED_GEOMETRY_BOTH<class_NavigationPolygon_constant_PARSED_GEOMETRY_BOTH>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationPolygon_property_parsed_geometry_type:
+
+.. rst-class:: classref-property
+
+:ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` **parsed_geometry_type** = ``2``
+
+.. rst-class:: classref-property-setget
+
+- void **set_parsed_geometry_type** **(** :ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` value **)**
+- :ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` **get_parsed_geometry_type** **(** **)**
+
+Determines which type of nodes will be parsed as geometry. See :ref:`ParsedGeometryType<enum_NavigationPolygon_ParsedGeometryType>` for possible values.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationPolygon_property_source_geometry_group_name:
+
+.. rst-class:: classref-property
+
+:ref:`StringName<class_StringName>` **source_geometry_group_name** = ``&"navigation_polygon_source_geometry_group"``
+
+.. rst-class:: classref-property-setget
+
+- void **set_source_geometry_group_name** **(** :ref:`StringName<class_StringName>` value **)**
+- :ref:`StringName<class_StringName>` **get_source_geometry_group_name** **(** **)**
+
+The group name of nodes that should be parsed for baking source geometry.
+
+Only used when :ref:`source_geometry_mode<class_NavigationPolygon_property_source_geometry_mode>` is :ref:`SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN<class_NavigationPolygon_constant_SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN>` or :ref:`SOURCE_GEOMETRY_GROUPS_EXPLICIT<class_NavigationPolygon_constant_SOURCE_GEOMETRY_GROUPS_EXPLICIT>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationPolygon_property_source_geometry_mode:
+
+.. rst-class:: classref-property
+
+:ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` **source_geometry_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_source_geometry_mode** **(** :ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` value **)**
+- :ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` **get_source_geometry_mode** **(** **)**
+
+The source of the geometry used when baking. See :ref:`SourceGeometryMode<enum_NavigationPolygon_SourceGeometryMode>` for possible values.
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -169,7 +363,7 @@ Method Descriptions
 
 void **add_outline** **(** :ref:`PackedVector2Array<class_PackedVector2Array>` outline **)**
 
-Appends a :ref:`PackedVector2Array<class_PackedVector2Array>` that contains the vertices of an outline to the internal array that contains all the outlines. You have to call :ref:`make_polygons_from_outlines<class_NavigationPolygon_method_make_polygons_from_outlines>` in order for this array to be converted to polygons that the engine will use.
+Appends a :ref:`PackedVector2Array<class_PackedVector2Array>` that contains the vertices of an outline to the internal array that contains all the outlines.
 
 .. rst-class:: classref-item-separator
 
@@ -181,7 +375,7 @@ Appends a :ref:`PackedVector2Array<class_PackedVector2Array>` that contains the
 
 void **add_outline_at_index** **(** :ref:`PackedVector2Array<class_PackedVector2Array>` outline, :ref:`int<class_int>` index **)**
 
-Adds a :ref:`PackedVector2Array<class_PackedVector2Array>` that contains the vertices of an outline to the internal array that contains all the outlines at a fixed position. You have to call :ref:`make_polygons_from_outlines<class_NavigationPolygon_method_make_polygons_from_outlines>` in order for this array to be converted to polygons that the engine will use.
+Adds a :ref:`PackedVector2Array<class_PackedVector2Array>` that contains the vertices of an outline to the internal array that contains all the outlines at a fixed position.
 
 .. rst-class:: classref-item-separator
 
@@ -271,6 +465,18 @@ Returns the number of outlines that were created in the editor or by script.
 
 ----
 
+.. _class_NavigationPolygon_method_get_parsed_collision_mask_value:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **get_parsed_collision_mask_value** **(** :ref:`int<class_int>` layer_number **)** |const|
+
+Returns whether or not the specified layer of the :ref:`parsed_collision_mask<class_NavigationPolygon_property_parsed_collision_mask>` is enabled, given a ``layer_number`` between 1 and 32.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationPolygon_method_get_polygon:
 
 .. rst-class:: classref-method
@@ -315,6 +521,8 @@ void **make_polygons_from_outlines** **(** **)**
 
 Creates polygons from the outlines added in the editor or by script.
 
+\ *Deprecated.* This function is deprecated, and might be removed in a future release. Use :ref:`NavigationServer2D.parse_source_geometry_data<class_NavigationServer2D_method_parse_source_geometry_data>` and :ref:`NavigationServer2D.bake_from_source_geometry_data<class_NavigationServer2D_method_bake_from_source_geometry_data>` instead.
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -343,6 +551,18 @@ Changes an outline created in the editor or by script. You have to call :ref:`ma
 
 ----
 
+.. _class_NavigationPolygon_method_set_parsed_collision_mask_value:
+
+.. rst-class:: classref-method
+
+void **set_parsed_collision_mask_value** **(** :ref:`int<class_int>` layer_number, :ref:`bool<class_bool>` value **)**
+
+Based on ``value``, enables or disables the specified layer in the :ref:`parsed_collision_mask<class_NavigationPolygon_property_parsed_collision_mask>`, given a ``layer_number`` between 1 and 32.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationPolygon_method_set_vertices:
 
 .. rst-class:: classref-method

+ 43 - 0
classes/class_navigationregion2d.rst

@@ -74,6 +74,8 @@ Methods
 .. table::
    :widths: auto
 
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`bake_navigation_polygon<class_NavigationRegion2D_method_bake_navigation_polygon>` **(** :ref:`bool<class_bool>` on_thread=true **)**                                  |
    +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>` | :ref:`get_avoidance_layer_value<class_NavigationRegion2D_method_get_avoidance_layer_value>` **(** :ref:`int<class_int>` layer_number **)** |const|                          |
    +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -96,6 +98,35 @@ Methods
 
 .. rst-class:: classref-descriptions-group
 
+Signals
+-------
+
+.. _class_NavigationRegion2D_signal_bake_finished:
+
+.. rst-class:: classref-signal
+
+**bake_finished** **(** **)**
+
+Emitted when a navigation polygon bake operation is completed.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationRegion2D_signal_navigation_polygon_changed:
+
+.. rst-class:: classref-signal
+
+**navigation_polygon_changed** **(** **)**
+
+Emitted when the used navigation polygon is replaced or changes to the internals of the current navigation polygon are committed.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Property Descriptions
 ---------------------
 
@@ -242,6 +273,18 @@ If enabled the navigation region will use edge connections to connect with other
 Method Descriptions
 -------------------
 
+.. _class_NavigationRegion2D_method_bake_navigation_polygon:
+
+.. rst-class:: classref-method
+
+void **bake_navigation_polygon** **(** :ref:`bool<class_bool>` on_thread=true **)**
+
+Bakes the :ref:`NavigationPolygon<class_NavigationPolygon>`. If ``on_thread`` is set to ``true`` (default), the baking is done on a separate thread.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationRegion2D_method_get_avoidance_layer_value:
 
 .. rst-class:: classref-method

+ 241 - 195
classes/class_navigationserver2d.rst

@@ -52,201 +52,207 @@ Methods
 .. table::
    :widths: auto
 
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`agent_create<class_NavigationServer2D_method_agent_create>` **(** **)**                                                                                                                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`agent_get_avoidance_enabled<class_NavigationServer2D_method_agent_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`agent_get_map<class_NavigationServer2D_method_agent_get_map>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`agent_get_paused<class_NavigationServer2D_method_agent_get_paused>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`agent_is_map_changed<class_NavigationServer2D_method_agent_is_map_changed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_avoidance_callback<class_NavigationServer2D_method_agent_set_avoidance_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_avoidance_enabled<class_NavigationServer2D_method_agent_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent, :ref:`bool<class_bool>` enabled **)**                                                                                                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_avoidance_layers<class_NavigationServer2D_method_agent_set_avoidance_layers>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` layers **)**                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_avoidance_mask<class_NavigationServer2D_method_agent_set_avoidance_mask>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` mask **)**                                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_avoidance_priority<class_NavigationServer2D_method_agent_set_avoidance_priority>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` priority **)**                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_map<class_NavigationServer2D_method_agent_set_map>` **(** :ref:`RID<class_RID>` agent, :ref:`RID<class_RID>` map **)**                                                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_max_neighbors<class_NavigationServer2D_method_agent_set_max_neighbors>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` count **)**                                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_max_speed<class_NavigationServer2D_method_agent_set_max_speed>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` max_speed **)**                                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_neighbor_distance<class_NavigationServer2D_method_agent_set_neighbor_distance>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` distance **)**                                                                                                   |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_paused<class_NavigationServer2D_method_agent_set_paused>` **(** :ref:`RID<class_RID>` agent, :ref:`bool<class_bool>` paused **)**                                                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_position<class_NavigationServer2D_method_agent_set_position>` **(** :ref:`RID<class_RID>` agent, :ref:`Vector2<class_Vector2>` position **)**                                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_radius<class_NavigationServer2D_method_agent_set_radius>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` radius **)**                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_time_horizon_agents<class_NavigationServer2D_method_agent_set_time_horizon_agents>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` time_horizon **)**                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_time_horizon_obstacles<class_NavigationServer2D_method_agent_set_time_horizon_obstacles>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` time_horizon **)**                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_velocity<class_NavigationServer2D_method_agent_set_velocity>` **(** :ref:`RID<class_RID>` agent, :ref:`Vector2<class_Vector2>` velocity **)**                                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`agent_set_velocity_forced<class_NavigationServer2D_method_agent_set_velocity_forced>` **(** :ref:`RID<class_RID>` agent, :ref:`Vector2<class_Vector2>` velocity **)**                                                                                                   |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`free_rid<class_NavigationServer2D_method_free_rid>` **(** :ref:`RID<class_RID>` rid **)**                                                                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`get_debug_enabled<class_NavigationServer2D_method_get_debug_enabled>` **(** **)** |const|                                                                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID[]<class_RID>`                             | :ref:`get_maps<class_NavigationServer2D_method_get_maps>` **(** **)** |const|                                                                                                                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`link_create<class_NavigationServer2D_method_link_create>` **(** **)**                                                                                                                                                                                                   |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`link_get_enabled<class_NavigationServer2D_method_link_get_enabled>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2<class_Vector2>`                       | :ref:`link_get_end_position<class_NavigationServer2D_method_link_get_end_position>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`link_get_enter_cost<class_NavigationServer2D_method_link_get_enter_cost>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`link_get_map<class_NavigationServer2D_method_link_get_map>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                              |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                               | :ref:`link_get_navigation_layers<class_NavigationServer2D_method_link_get_navigation_layers>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                               | :ref:`link_get_owner_id<class_NavigationServer2D_method_link_get_owner_id>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                    |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2<class_Vector2>`                       | :ref:`link_get_start_position<class_NavigationServer2D_method_link_get_start_position>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`link_get_travel_cost<class_NavigationServer2D_method_link_get_travel_cost>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                              |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`link_is_bidirectional<class_NavigationServer2D_method_link_is_bidirectional>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_bidirectional<class_NavigationServer2D_method_link_set_bidirectional>` **(** :ref:`RID<class_RID>` link, :ref:`bool<class_bool>` bidirectional **)**                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_enabled<class_NavigationServer2D_method_link_set_enabled>` **(** :ref:`RID<class_RID>` link, :ref:`bool<class_bool>` enabled **)**                                                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_end_position<class_NavigationServer2D_method_link_set_end_position>` **(** :ref:`RID<class_RID>` link, :ref:`Vector2<class_Vector2>` position **)**                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_enter_cost<class_NavigationServer2D_method_link_set_enter_cost>` **(** :ref:`RID<class_RID>` link, :ref:`float<class_float>` enter_cost **)**                                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_map<class_NavigationServer2D_method_link_set_map>` **(** :ref:`RID<class_RID>` link, :ref:`RID<class_RID>` map **)**                                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_navigation_layers<class_NavigationServer2D_method_link_set_navigation_layers>` **(** :ref:`RID<class_RID>` link, :ref:`int<class_int>` navigation_layers **)**                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_owner_id<class_NavigationServer2D_method_link_set_owner_id>` **(** :ref:`RID<class_RID>` link, :ref:`int<class_int>` owner_id **)**                                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_start_position<class_NavigationServer2D_method_link_set_start_position>` **(** :ref:`RID<class_RID>` link, :ref:`Vector2<class_Vector2>` position **)**                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`link_set_travel_cost<class_NavigationServer2D_method_link_set_travel_cost>` **(** :ref:`RID<class_RID>` link, :ref:`float<class_float>` travel_cost **)**                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`map_create<class_NavigationServer2D_method_map_create>` **(** **)**                                                                                                                                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`map_force_update<class_NavigationServer2D_method_map_force_update>` **(** :ref:`RID<class_RID>` map **)**                                                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_agents<class_NavigationServer2D_method_map_get_agents>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`map_get_cell_size<class_NavigationServer2D_method_map_get_cell_size>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2<class_Vector2>`                       | :ref:`map_get_closest_point<class_NavigationServer2D_method_map_get_closest_point>` **(** :ref:`RID<class_RID>` map, :ref:`Vector2<class_Vector2>` to_point **)** |const|                                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`map_get_closest_point_owner<class_NavigationServer2D_method_map_get_closest_point_owner>` **(** :ref:`RID<class_RID>` map, :ref:`Vector2<class_Vector2>` to_point **)** |const|                                                                                         |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`map_get_edge_connection_margin<class_NavigationServer2D_method_map_get_edge_connection_margin>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`map_get_link_connection_radius<class_NavigationServer2D_method_map_get_link_connection_radius>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_links<class_NavigationServer2D_method_map_get_links>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_obstacles<class_NavigationServer2D_method_map_get_obstacles>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`map_get_path<class_NavigationServer2D_method_map_get_path>` **(** :ref:`RID<class_RID>` map, :ref:`Vector2<class_Vector2>` origin, :ref:`Vector2<class_Vector2>` destination, :ref:`bool<class_bool>` optimize, :ref:`int<class_int>` navigation_layers=1 **)** |const| |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_regions<class_NavigationServer2D_method_map_get_regions>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                         |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`map_get_use_edge_connections<class_NavigationServer2D_method_map_get_use_edge_connections>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`map_is_active<class_NavigationServer2D_method_map_is_active>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`map_set_active<class_NavigationServer2D_method_map_set_active>` **(** :ref:`RID<class_RID>` map, :ref:`bool<class_bool>` active **)**                                                                                                                                   |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`map_set_cell_size<class_NavigationServer2D_method_map_set_cell_size>` **(** :ref:`RID<class_RID>` map, :ref:`float<class_float>` cell_size **)**                                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`map_set_edge_connection_margin<class_NavigationServer2D_method_map_set_edge_connection_margin>` **(** :ref:`RID<class_RID>` map, :ref:`float<class_float>` margin **)**                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`map_set_link_connection_radius<class_NavigationServer2D_method_map_set_link_connection_radius>` **(** :ref:`RID<class_RID>` map, :ref:`float<class_float>` radius **)**                                                                                                 |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`map_set_use_edge_connections<class_NavigationServer2D_method_map_set_use_edge_connections>` **(** :ref:`RID<class_RID>` map, :ref:`bool<class_bool>` enabled **)**                                                                                                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`obstacle_create<class_NavigationServer2D_method_obstacle_create>` **(** **)**                                                                                                                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_avoidance_enabled<class_NavigationServer2D_method_obstacle_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`obstacle_get_map<class_NavigationServer2D_method_obstacle_get_map>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_paused<class_NavigationServer2D_method_obstacle_get_paused>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_avoidance_enabled<class_NavigationServer2D_method_obstacle_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` enabled **)**                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_avoidance_layers<class_NavigationServer2D_method_obstacle_set_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle, :ref:`int<class_int>` layers **)**                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_map<class_NavigationServer2D_method_obstacle_set_map>` **(** :ref:`RID<class_RID>` obstacle, :ref:`RID<class_RID>` map **)**                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_paused<class_NavigationServer2D_method_obstacle_set_paused>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` paused **)**                                                                                                                    |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_position<class_NavigationServer2D_method_obstacle_set_position>` **(** :ref:`RID<class_RID>` obstacle, :ref:`Vector2<class_Vector2>` position **)**                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_radius<class_NavigationServer2D_method_obstacle_set_radius>` **(** :ref:`RID<class_RID>` obstacle, :ref:`float<class_float>` radius **)**                                                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_velocity<class_NavigationServer2D_method_obstacle_set_velocity>` **(** :ref:`RID<class_RID>` obstacle, :ref:`Vector2<class_Vector2>` velocity **)**                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`obstacle_set_vertices<class_NavigationServer2D_method_obstacle_set_vertices>` **(** :ref:`RID<class_RID>` obstacle, :ref:`PackedVector2Array<class_PackedVector2Array>` vertices **)**                                                                                  |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`query_path<class_NavigationServer2D_method_query_path>` **(** :ref:`NavigationPathQueryParameters2D<class_NavigationPathQueryParameters2D>` parameters, :ref:`NavigationPathQueryResult2D<class_NavigationPathQueryResult2D>` result **)** |const|                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`region_create<class_NavigationServer2D_method_region_create>` **(** **)**                                                                                                                                                                                               |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2<class_Vector2>`                       | :ref:`region_get_connection_pathway_end<class_NavigationServer2D_method_region_get_connection_pathway_end>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` connection **)** |const|                                                                                |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2<class_Vector2>`                       | :ref:`region_get_connection_pathway_start<class_NavigationServer2D_method_region_get_connection_pathway_start>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` connection **)** |const|                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                               | :ref:`region_get_connections_count<class_NavigationServer2D_method_region_get_connections_count>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`region_get_enabled<class_NavigationServer2D_method_region_get_enabled>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`region_get_enter_cost<class_NavigationServer2D_method_region_get_enter_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                          |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`RID<class_RID>`                               | :ref:`region_get_map<class_NavigationServer2D_method_region_get_map>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                               | :ref:`region_get_navigation_layers<class_NavigationServer2D_method_region_get_navigation_layers>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                               | :ref:`region_get_owner_id<class_NavigationServer2D_method_region_get_owner_id>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                              |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                           | :ref:`region_get_travel_cost<class_NavigationServer2D_method_region_get_travel_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                        |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`region_get_use_edge_connections<class_NavigationServer2D_method_region_get_use_edge_connections>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                             | :ref:`region_owns_point<class_NavigationServer2D_method_region_owns_point>` **(** :ref:`RID<class_RID>` region, :ref:`Vector2<class_Vector2>` point **)** |const|                                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_enabled<class_NavigationServer2D_method_region_set_enabled>` **(** :ref:`RID<class_RID>` region, :ref:`bool<class_bool>` enabled **)**                                                                                                                       |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_enter_cost<class_NavigationServer2D_method_region_set_enter_cost>` **(** :ref:`RID<class_RID>` region, :ref:`float<class_float>` enter_cost **)**                                                                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_map<class_NavigationServer2D_method_region_set_map>` **(** :ref:`RID<class_RID>` region, :ref:`RID<class_RID>` map **)**                                                                                                                                     |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_navigation_layers<class_NavigationServer2D_method_region_set_navigation_layers>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` navigation_layers **)**                                                                                           |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_navigation_polygon<class_NavigationServer2D_method_region_set_navigation_polygon>` **(** :ref:`RID<class_RID>` region, :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon **)**                                                            |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_owner_id<class_NavigationServer2D_method_region_set_owner_id>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` owner_id **)**                                                                                                                      |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_transform<class_NavigationServer2D_method_region_set_transform>` **(** :ref:`RID<class_RID>` region, :ref:`Transform2D<class_Transform2D>` transform **)**                                                                                                   |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_travel_cost<class_NavigationServer2D_method_region_set_travel_cost>` **(** :ref:`RID<class_RID>` region, :ref:`float<class_float>` travel_cost **)**                                                                                                         |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`region_set_use_edge_connections<class_NavigationServer2D_method_region_set_use_edge_connections>` **(** :ref:`RID<class_RID>` region, :ref:`bool<class_bool>` enabled **)**                                                                                             |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                | :ref:`set_debug_enabled<class_NavigationServer2D_method_set_debug_enabled>` **(** :ref:`bool<class_bool>` enabled **)**                                                                                                                                                       |
-   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`agent_create<class_NavigationServer2D_method_agent_create>` **(** **)**                                                                                                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`agent_get_avoidance_enabled<class_NavigationServer2D_method_agent_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`agent_get_map<class_NavigationServer2D_method_agent_get_map>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`agent_get_paused<class_NavigationServer2D_method_agent_get_paused>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`agent_is_map_changed<class_NavigationServer2D_method_agent_is_map_changed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_avoidance_callback<class_NavigationServer2D_method_agent_set_avoidance_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_avoidance_enabled<class_NavigationServer2D_method_agent_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_avoidance_layers<class_NavigationServer2D_method_agent_set_avoidance_layers>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` layers **)**                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_avoidance_mask<class_NavigationServer2D_method_agent_set_avoidance_mask>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` mask **)**                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_avoidance_priority<class_NavigationServer2D_method_agent_set_avoidance_priority>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` priority **)**                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_map<class_NavigationServer2D_method_agent_set_map>` **(** :ref:`RID<class_RID>` agent, :ref:`RID<class_RID>` map **)**                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_max_neighbors<class_NavigationServer2D_method_agent_set_max_neighbors>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` count **)**                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_max_speed<class_NavigationServer2D_method_agent_set_max_speed>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` max_speed **)**                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_neighbor_distance<class_NavigationServer2D_method_agent_set_neighbor_distance>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` distance **)**                                                                                                                                                                                                      |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_paused<class_NavigationServer2D_method_agent_set_paused>` **(** :ref:`RID<class_RID>` agent, :ref:`bool<class_bool>` paused **)**                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_position<class_NavigationServer2D_method_agent_set_position>` **(** :ref:`RID<class_RID>` agent, :ref:`Vector2<class_Vector2>` position **)**                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_radius<class_NavigationServer2D_method_agent_set_radius>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` radius **)**                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_time_horizon_agents<class_NavigationServer2D_method_agent_set_time_horizon_agents>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` time_horizon **)**                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_time_horizon_obstacles<class_NavigationServer2D_method_agent_set_time_horizon_obstacles>` **(** :ref:`RID<class_RID>` agent, :ref:`float<class_float>` time_horizon **)**                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_velocity<class_NavigationServer2D_method_agent_set_velocity>` **(** :ref:`RID<class_RID>` agent, :ref:`Vector2<class_Vector2>` velocity **)**                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`agent_set_velocity_forced<class_NavigationServer2D_method_agent_set_velocity_forced>` **(** :ref:`RID<class_RID>` agent, :ref:`Vector2<class_Vector2>` velocity **)**                                                                                                                                                                                                      |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`bake_from_source_geometry_data<class_NavigationServer2D_method_bake_from_source_geometry_data>` **(** :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon, :ref:`NavigationMeshSourceGeometryData2D<class_NavigationMeshSourceGeometryData2D>` source_geometry_data, :ref:`Callable<class_Callable>` callback=Callable() **)**                            |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`bake_from_source_geometry_data_async<class_NavigationServer2D_method_bake_from_source_geometry_data_async>` **(** :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon, :ref:`NavigationMeshSourceGeometryData2D<class_NavigationMeshSourceGeometryData2D>` source_geometry_data, :ref:`Callable<class_Callable>` callback=Callable() **)**                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`free_rid<class_NavigationServer2D_method_free_rid>` **(** :ref:`RID<class_RID>` rid **)**                                                                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`get_debug_enabled<class_NavigationServer2D_method_get_debug_enabled>` **(** **)** |const|                                                                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID[]<class_RID>`                             | :ref:`get_maps<class_NavigationServer2D_method_get_maps>` **(** **)** |const|                                                                                                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`link_create<class_NavigationServer2D_method_link_create>` **(** **)**                                                                                                                                                                                                                                                                                                      |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`link_get_enabled<class_NavigationServer2D_method_link_get_enabled>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`link_get_end_position<class_NavigationServer2D_method_link_get_end_position>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`link_get_enter_cost<class_NavigationServer2D_method_link_get_enter_cost>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                                   |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`link_get_map<class_NavigationServer2D_method_link_get_map>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                                                 |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`link_get_navigation_layers<class_NavigationServer2D_method_link_get_navigation_layers>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`link_get_owner_id<class_NavigationServer2D_method_link_get_owner_id>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                                       |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`link_get_start_position<class_NavigationServer2D_method_link_get_start_position>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`link_get_travel_cost<class_NavigationServer2D_method_link_get_travel_cost>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                                 |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`link_is_bidirectional<class_NavigationServer2D_method_link_is_bidirectional>` **(** :ref:`RID<class_RID>` link **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_bidirectional<class_NavigationServer2D_method_link_set_bidirectional>` **(** :ref:`RID<class_RID>` link, :ref:`bool<class_bool>` bidirectional **)**                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_enabled<class_NavigationServer2D_method_link_set_enabled>` **(** :ref:`RID<class_RID>` link, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_end_position<class_NavigationServer2D_method_link_set_end_position>` **(** :ref:`RID<class_RID>` link, :ref:`Vector2<class_Vector2>` position **)**                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_enter_cost<class_NavigationServer2D_method_link_set_enter_cost>` **(** :ref:`RID<class_RID>` link, :ref:`float<class_float>` enter_cost **)**                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_map<class_NavigationServer2D_method_link_set_map>` **(** :ref:`RID<class_RID>` link, :ref:`RID<class_RID>` map **)**                                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_navigation_layers<class_NavigationServer2D_method_link_set_navigation_layers>` **(** :ref:`RID<class_RID>` link, :ref:`int<class_int>` navigation_layers **)**                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_owner_id<class_NavigationServer2D_method_link_set_owner_id>` **(** :ref:`RID<class_RID>` link, :ref:`int<class_int>` owner_id **)**                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_start_position<class_NavigationServer2D_method_link_set_start_position>` **(** :ref:`RID<class_RID>` link, :ref:`Vector2<class_Vector2>` position **)**                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`link_set_travel_cost<class_NavigationServer2D_method_link_set_travel_cost>` **(** :ref:`RID<class_RID>` link, :ref:`float<class_float>` travel_cost **)**                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`map_create<class_NavigationServer2D_method_map_create>` **(** **)**                                                                                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`map_force_update<class_NavigationServer2D_method_map_force_update>` **(** :ref:`RID<class_RID>` map **)**                                                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_agents<class_NavigationServer2D_method_map_get_agents>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`map_get_cell_size<class_NavigationServer2D_method_map_get_cell_size>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`map_get_closest_point<class_NavigationServer2D_method_map_get_closest_point>` **(** :ref:`RID<class_RID>` map, :ref:`Vector2<class_Vector2>` to_point **)** |const|                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`map_get_closest_point_owner<class_NavigationServer2D_method_map_get_closest_point_owner>` **(** :ref:`RID<class_RID>` map, :ref:`Vector2<class_Vector2>` to_point **)** |const|                                                                                                                                                                                            |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`map_get_edge_connection_margin<class_NavigationServer2D_method_map_get_edge_connection_margin>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`map_get_link_connection_radius<class_NavigationServer2D_method_map_get_link_connection_radius>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_links<class_NavigationServer2D_method_map_get_links>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_obstacles<class_NavigationServer2D_method_map_get_obstacles>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`map_get_path<class_NavigationServer2D_method_map_get_path>` **(** :ref:`RID<class_RID>` map, :ref:`Vector2<class_Vector2>` origin, :ref:`Vector2<class_Vector2>` destination, :ref:`bool<class_bool>` optimize, :ref:`int<class_int>` navigation_layers=1 **)** |const|                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID[]<class_RID>`                             | :ref:`map_get_regions<class_NavigationServer2D_method_map_get_regions>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                                            |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`map_get_use_edge_connections<class_NavigationServer2D_method_map_get_use_edge_connections>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`map_is_active<class_NavigationServer2D_method_map_is_active>` **(** :ref:`RID<class_RID>` map **)** |const|                                                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`map_set_active<class_NavigationServer2D_method_map_set_active>` **(** :ref:`RID<class_RID>` map, :ref:`bool<class_bool>` active **)**                                                                                                                                                                                                                                      |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`map_set_cell_size<class_NavigationServer2D_method_map_set_cell_size>` **(** :ref:`RID<class_RID>` map, :ref:`float<class_float>` cell_size **)**                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`map_set_edge_connection_margin<class_NavigationServer2D_method_map_set_edge_connection_margin>` **(** :ref:`RID<class_RID>` map, :ref:`float<class_float>` margin **)**                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`map_set_link_connection_radius<class_NavigationServer2D_method_map_set_link_connection_radius>` **(** :ref:`RID<class_RID>` map, :ref:`float<class_float>` radius **)**                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`map_set_use_edge_connections<class_NavigationServer2D_method_map_set_use_edge_connections>` **(** :ref:`RID<class_RID>` map, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`obstacle_create<class_NavigationServer2D_method_obstacle_create>` **(** **)**                                                                                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_avoidance_enabled<class_NavigationServer2D_method_obstacle_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`obstacle_get_map<class_NavigationServer2D_method_obstacle_get_map>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_paused<class_NavigationServer2D_method_obstacle_get_paused>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_avoidance_enabled<class_NavigationServer2D_method_obstacle_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_avoidance_layers<class_NavigationServer2D_method_obstacle_set_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle, :ref:`int<class_int>` layers **)**                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_map<class_NavigationServer2D_method_obstacle_set_map>` **(** :ref:`RID<class_RID>` obstacle, :ref:`RID<class_RID>` map **)**                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_paused<class_NavigationServer2D_method_obstacle_set_paused>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` paused **)**                                                                                                                                                                                                                       |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_position<class_NavigationServer2D_method_obstacle_set_position>` **(** :ref:`RID<class_RID>` obstacle, :ref:`Vector2<class_Vector2>` position **)**                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_radius<class_NavigationServer2D_method_obstacle_set_radius>` **(** :ref:`RID<class_RID>` obstacle, :ref:`float<class_float>` radius **)**                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_velocity<class_NavigationServer2D_method_obstacle_set_velocity>` **(** :ref:`RID<class_RID>` obstacle, :ref:`Vector2<class_Vector2>` velocity **)**                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`obstacle_set_vertices<class_NavigationServer2D_method_obstacle_set_vertices>` **(** :ref:`RID<class_RID>` obstacle, :ref:`PackedVector2Array<class_PackedVector2Array>` vertices **)**                                                                                                                                                                                     |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`parse_source_geometry_data<class_NavigationServer2D_method_parse_source_geometry_data>` **(** :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon, :ref:`NavigationMeshSourceGeometryData2D<class_NavigationMeshSourceGeometryData2D>` source_geometry_data, :ref:`Node<class_Node>` root_node, :ref:`Callable<class_Callable>` callback=Callable() **)** |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`query_path<class_NavigationServer2D_method_query_path>` **(** :ref:`NavigationPathQueryParameters2D<class_NavigationPathQueryParameters2D>` parameters, :ref:`NavigationPathQueryResult2D<class_NavigationPathQueryResult2D>` result **)** |const|                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`region_create<class_NavigationServer2D_method_region_create>` **(** **)**                                                                                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`region_get_connection_pathway_end<class_NavigationServer2D_method_region_get_connection_pathway_end>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` connection **)** |const|                                                                                                                                                                                   |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`region_get_connection_pathway_start<class_NavigationServer2D_method_region_get_connection_pathway_start>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` connection **)** |const|                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`region_get_connections_count<class_NavigationServer2D_method_region_get_connections_count>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`region_get_enabled<class_NavigationServer2D_method_region_get_enabled>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                                   |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`region_get_enter_cost<class_NavigationServer2D_method_region_get_enter_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                             |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                               | :ref:`region_get_map<class_NavigationServer2D_method_region_get_map>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`region_get_navigation_layers<class_NavigationServer2D_method_region_get_navigation_layers>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`region_get_owner_id<class_NavigationServer2D_method_region_get_owner_id>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                                 |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`region_get_travel_cost<class_NavigationServer2D_method_region_get_travel_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`region_get_use_edge_connections<class_NavigationServer2D_method_region_get_use_edge_connections>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`region_owns_point<class_NavigationServer2D_method_region_owns_point>` **(** :ref:`RID<class_RID>` region, :ref:`Vector2<class_Vector2>` point **)** |const|                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_enabled<class_NavigationServer2D_method_region_set_enabled>` **(** :ref:`RID<class_RID>` region, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                                          |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_enter_cost<class_NavigationServer2D_method_region_set_enter_cost>` **(** :ref:`RID<class_RID>` region, :ref:`float<class_float>` enter_cost **)**                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_map<class_NavigationServer2D_method_region_set_map>` **(** :ref:`RID<class_RID>` region, :ref:`RID<class_RID>` map **)**                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_navigation_layers<class_NavigationServer2D_method_region_set_navigation_layers>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` navigation_layers **)**                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_navigation_polygon<class_NavigationServer2D_method_region_set_navigation_polygon>` **(** :ref:`RID<class_RID>` region, :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon **)**                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_owner_id<class_NavigationServer2D_method_region_set_owner_id>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` owner_id **)**                                                                                                                                                                                                                         |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_transform<class_NavigationServer2D_method_region_set_transform>` **(** :ref:`RID<class_RID>` region, :ref:`Transform2D<class_Transform2D>` transform **)**                                                                                                                                                                                                      |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_travel_cost<class_NavigationServer2D_method_region_set_travel_cost>` **(** :ref:`RID<class_RID>` region, :ref:`float<class_float>` travel_cost **)**                                                                                                                                                                                                            |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`region_set_use_edge_connections<class_NavigationServer2D_method_region_set_use_edge_connections>` **(** :ref:`RID<class_RID>` region, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                | :ref:`set_debug_enabled<class_NavigationServer2D_method_set_debug_enabled>` **(** :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                                                                          |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -542,6 +548,30 @@ Replaces the internal velocity in the collision avoidance simulation with ``velo
 
 ----
 
+.. _class_NavigationServer2D_method_bake_from_source_geometry_data:
+
+.. rst-class:: classref-method
+
+void **bake_from_source_geometry_data** **(** :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon, :ref:`NavigationMeshSourceGeometryData2D<class_NavigationMeshSourceGeometryData2D>` source_geometry_data, :ref:`Callable<class_Callable>` callback=Callable() **)**
+
+Bakes the provided ``navigation_polygon`` with the data from the provided ``source_geometry_data``. After the process is finished the optional ``callback`` will be called.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_bake_from_source_geometry_data_async:
+
+.. rst-class:: classref-method
+
+void **bake_from_source_geometry_data_async** **(** :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon, :ref:`NavigationMeshSourceGeometryData2D<class_NavigationMeshSourceGeometryData2D>` source_geometry_data, :ref:`Callable<class_Callable>` callback=Callable() **)**
+
+Bakes the provided ``navigation_polygon`` with the data from the provided ``source_geometry_data`` as an async task running on a background thread. After the process is finished the optional ``callback`` will be called.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_free_rid:
 
 .. rst-class:: classref-method
@@ -1184,6 +1214,22 @@ Sets the outline vertices for the obstacle. If the vertices are winded in clockw
 
 ----
 
+.. _class_NavigationServer2D_method_parse_source_geometry_data:
+
+.. rst-class:: classref-method
+
+void **parse_source_geometry_data** **(** :ref:`NavigationPolygon<class_NavigationPolygon>` navigation_polygon, :ref:`NavigationMeshSourceGeometryData2D<class_NavigationMeshSourceGeometryData2D>` source_geometry_data, :ref:`Node<class_Node>` root_node, :ref:`Callable<class_Callable>` callback=Callable() **)**
+
+Parses the :ref:`SceneTree<class_SceneTree>` for source geometry according to the properties of ``navigation_polygon``. Updates the provided ``source_geometry_data`` resource with the resulting data. The resource can then be used to bake a navigation mesh with :ref:`bake_from_source_geometry_data<class_NavigationServer2D_method_bake_from_source_geometry_data>`. After the process is finished the optional ``callback`` will be called.
+
+\ **Note:** This function needs to run on the main thread or with a deferred call as the SceneTree is not thread-safe.
+
+\ **Performance:** While convenient, reading data arrays from :ref:`Mesh<class_Mesh>` resources can affect the frame rate negatively. The data needs to be received from the GPU, stalling the :ref:`RenderingServer<class_RenderingServer>` in the process. For performance prefer the use of e.g. collision shapes or creating the data arrays entirely in code.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_query_path:
 
 .. rst-class:: classref-method

+ 2 - 0
classes/class_node.rst

@@ -1033,6 +1033,8 @@ Add a custom description to a node. It will be displayed in a tooltip when hover
 
 The :ref:`MultiplayerAPI<class_MultiplayerAPI>` instance associated with this node. See :ref:`SceneTree.get_multiplayer<class_SceneTree_method_get_multiplayer>`.
 
+\ **Note:** Renaming the node, or moving it in the tree, will not move the :ref:`MultiplayerAPI<class_MultiplayerAPI>` to the new path, you will have to update this manually.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 59 - 5
classes/class_openxrinterface.rst

@@ -38,11 +38,15 @@ Properties
 .. table::
    :widths: auto
 
-   +---------------------------+----------------------------------------------------------------------------------------------------+---------+
-   | :ref:`float<class_float>` | :ref:`display_refresh_rate<class_OpenXRInterface_property_display_refresh_rate>`                   | ``0.0`` |
-   +---------------------------+----------------------------------------------------------------------------------------------------+---------+
-   | :ref:`float<class_float>` | :ref:`render_target_size_multiplier<class_OpenXRInterface_property_render_target_size_multiplier>` | ``1.0`` |
-   +---------------------------+----------------------------------------------------------------------------------------------------+---------+
+   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`display_refresh_rate<class_OpenXRInterface_property_display_refresh_rate>`                   | ``0.0``   |
+   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`   | :ref:`foveation_dynamic<class_OpenXRInterface_property_foveation_dynamic>`                         | ``false`` |
+   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`int<class_int>`     | :ref:`foveation_level<class_OpenXRInterface_property_foveation_level>`                             | ``0``     |
+   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`render_target_size_multiplier<class_OpenXRInterface_property_render_target_size_multiplier>` | ``1.0``   |
+   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
 
 .. rst-class:: classref-reftable-group
 
@@ -71,6 +75,8 @@ Methods
    +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                      | :ref:`is_action_set_active<class_OpenXRInterface_method_is_action_set_active>` **(** :ref:`String<class_String>` name **)** |const|                                                                                            |
    +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                      | :ref:`is_foveation_supported<class_OpenXRInterface_method_is_foveation_supported>` **(** **)** |const|                                                                                                                         |
+   +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                         | :ref:`set_action_set_active<class_OpenXRInterface_method_set_action_set_active>` **(** :ref:`String<class_String>` name, :ref:`bool<class_bool>` active **)**                                                                  |
    +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                         | :ref:`set_motion_range<class_OpenXRInterface_method_set_motion_range>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` motion_range **)**                      |
@@ -466,6 +472,40 @@ The display refresh rate for the current HMD. Only functional if this feature is
 
 ----
 
+.. _class_OpenXRInterface_property_foveation_dynamic:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **foveation_dynamic** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_foveation_dynamic** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **get_foveation_dynamic** **(** **)**
+
+Enable dynamic foveation adjustment, the interface must be initialised before this is accessible. If enabled foveation will automatically adjusted between low and :ref:`foveation_level<class_OpenXRInterface_property_foveation_level>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_OpenXRInterface_property_foveation_level:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **foveation_level** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_foveation_level** **(** :ref:`int<class_int>` value **)**
+- :ref:`int<class_int>` **get_foveation_level** **(** **)**
+
+Set foveation level from 0 (off) to 3 (high), the interface must be initialised before this is accessible.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_OpenXRInterface_property_render_target_size_multiplier:
 
 .. rst-class:: classref-property
@@ -596,6 +636,20 @@ Returns ``true`` if the given action set is active.
 
 ----
 
+.. _class_OpenXRInterface_method_is_foveation_supported:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_foveation_supported** **(** **)** |const|
+
+Returns ``true`` if OpenXRs foveation extension is supported, the interface must be initialised before this returns a valid value.
+
+\ **Note:** This feature is only available on the compatibility renderer and currently only available on some stand alone headsets. For Vulkan set :ref:`Viewport.vrs_mode<class_Viewport_property_vrs_mode>` to ``VRS_XR`` on desktop.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_OpenXRInterface_method_set_action_set_active:
 
 .. rst-class:: classref-method

+ 7 - 289
classes/class_optionbutton.rst

@@ -123,53 +123,13 @@ Theme Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_color<class_OptionButton_theme_color_font_color>`                             | ``Color(0.875, 0.875, 0.875, 1)``   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_disabled_color<class_OptionButton_theme_color_font_disabled_color>`           | ``Color(0.875, 0.875, 0.875, 0.5)`` |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_focus_color<class_OptionButton_theme_color_font_focus_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_color<class_OptionButton_theme_color_font_hover_color>`                 | ``Color(0.95, 0.95, 0.95, 1)``      |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_hover_pressed_color<class_OptionButton_theme_color_font_hover_pressed_color>` | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_OptionButton_theme_color_font_outline_color>`             | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_pressed_color<class_OptionButton_theme_color_font_pressed_color>`             | ``Color(1, 1, 1, 1)``               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`arrow_margin<class_OptionButton_theme_constant_arrow_margin>`                      | ``4``                               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`h_separation<class_OptionButton_theme_constant_h_separation>`                      | ``4``                               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`modulate_arrow<class_OptionButton_theme_constant_modulate_arrow>`                  | ``0``                               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`outline_size<class_OptionButton_theme_constant_outline_size>`                      | ``0``                               |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`font<class_OptionButton_theme_font_font>`                                          |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`int<class_int>`             | :ref:`font_size<class_OptionButton_theme_font_size_font_size>`                           |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow<class_OptionButton_theme_icon_arrow>`                                        |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled<class_OptionButton_theme_style_disabled>`                                 |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`disabled_mirrored<class_OptionButton_theme_style_disabled_mirrored>`               |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_OptionButton_theme_style_focus>`                                       |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover<class_OptionButton_theme_style_hover>`                                       |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hover_mirrored<class_OptionButton_theme_style_hover_mirrored>`                     |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal<class_OptionButton_theme_style_normal>`                                     |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`normal_mirrored<class_OptionButton_theme_style_normal_mirrored>`                   |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed<class_OptionButton_theme_style_pressed>`                                   |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`pressed_mirrored<class_OptionButton_theme_style_pressed_mirrored>`                 |                                     |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   +-----------------------------------+-------------------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`             | :ref:`arrow_margin<class_OptionButton_theme_constant_arrow_margin>`     | ``4`` |
+   +-----------------------------------+-------------------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`             | :ref:`modulate_arrow<class_OptionButton_theme_constant_modulate_arrow>` | ``0`` |
+   +-----------------------------------+-------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow<class_OptionButton_theme_icon_arrow>`                       |       |
+   +-----------------------------------+-------------------------------------------------------------------------+-------+
 
 .. rst-class:: classref-section-separator
 
@@ -622,90 +582,6 @@ Adjusts popup position and sizing for the **OptionButton**, then shows the :ref:
 Theme Property Descriptions
 ---------------------------
 
-.. _class_OptionButton_theme_color_font_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
-
-Default text :ref:`Color<class_Color>` of the **OptionButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_color_font_disabled_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_disabled_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
-
-Text :ref:`Color<class_Color>` used when the **OptionButton** is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_color_font_focus_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_focus_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-Text :ref:`Color<class_Color>` used when the **OptionButton** is focused. Only replaces the normal text color of the button. Disabled, hovered, and pressed states take precedence over this color.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_color_font_hover_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_color** = ``Color(0.95, 0.95, 0.95, 1)``
-
-Text :ref:`Color<class_Color>` used when the **OptionButton** is being hovered.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_color_font_hover_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_hover_pressed_color** = ``Color(1, 1, 1, 1)``
-
-Text :ref:`Color<class_Color>` used when the **OptionButton** is being hovered and pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_color_font_outline_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
-
-The tint of text outline of the **OptionButton**.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_color_font_pressed_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_pressed_color** = ``Color(1, 1, 1, 1)``
-
-Text :ref:`Color<class_Color>` used when the **OptionButton** is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_OptionButton_theme_constant_arrow_margin:
 
 .. rst-class:: classref-themeproperty
@@ -718,18 +594,6 @@ The horizontal space between the arrow icon and the right edge of the button.
 
 ----
 
-.. _class_OptionButton_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The horizontal space between **OptionButton**'s icon and text. Negative values will be treated as ``0`` when used.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_OptionButton_theme_constant_modulate_arrow:
 
 .. rst-class:: classref-themeproperty
@@ -742,44 +606,6 @@ If different than ``0``, the arrow icon will be modulated to the font color.
 
 ----
 
-.. _class_OptionButton_theme_constant_outline_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **outline_size** = ``0``
-
-The size of the text outline.
-
-\ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_OptionButton_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_font_font:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Font<class_Font>` **font**
-
-:ref:`Font<class_Font>` of the **OptionButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_font_size_font_size:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **font_size**
-
-Font size of the **OptionButton**'s text.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_OptionButton_theme_icon_arrow:
 
 .. rst-class:: classref-themeproperty
@@ -788,114 +614,6 @@ Font size of the **OptionButton**'s text.
 
 The arrow icon to be drawn on the right end of the button.
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **disabled**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is disabled (for left-to-right layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_disabled_mirrored:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **disabled_mirrored**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is disabled (for right-to-left layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **focus**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is focused. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_hover:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is being hovered (for left-to-right layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_hover_mirrored:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **hover_mirrored**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is being hovered (for right-to-left layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_normal:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal**
-
-Default :ref:`StyleBox<class_StyleBox>` for the **OptionButton** (for left-to-right layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_normal_mirrored:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **normal_mirrored**
-
-Default :ref:`StyleBox<class_StyleBox>` for the **OptionButton** (for right-to-left layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **pressed**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is being pressed (for left-to-right layouts).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_OptionButton_theme_style_pressed_mirrored:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **pressed_mirrored**
-
-:ref:`StyleBox<class_StyleBox>` used when the **OptionButton** is being pressed (for right-to-left layouts).
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 5 - 5
classes/class_packedbytearray.rst

@@ -677,7 +677,7 @@ Searches the array for a value and returns its index or ``-1`` if not found. Opt
 
 :ref:`String<class_String>` **get_string_from_ascii** **(** **)** |const|
 
-Converts ASCII/Latin-1 encoded array to :ref:`String<class_String>`. Fast alternative to :ref:`get_string_from_utf8<class_PackedByteArray_method_get_string_from_utf8>` if the content is ASCII/Latin-1 only. Unlike the UTF-8 function this function maps every byte to a character in the array. Multibyte sequences will not be interpreted correctly. For parsing user input always use :ref:`get_string_from_utf8<class_PackedByteArray_method_get_string_from_utf8>`.
+Converts ASCII/Latin-1 encoded array to :ref:`String<class_String>`. Fast alternative to :ref:`get_string_from_utf8<class_PackedByteArray_method_get_string_from_utf8>` if the content is ASCII/Latin-1 only. Unlike the UTF-8 function this function maps every byte to a character in the array. Multibyte sequences will not be interpreted correctly. For parsing user input always use :ref:`get_string_from_utf8<class_PackedByteArray_method_get_string_from_utf8>`. This is the inverse of :ref:`String.to_ascii_buffer<class_String_method_to_ascii_buffer>`.
 
 .. rst-class:: classref-item-separator
 
@@ -689,7 +689,7 @@ Converts ASCII/Latin-1 encoded array to :ref:`String<class_String>`. Fast altern
 
 :ref:`String<class_String>` **get_string_from_utf8** **(** **)** |const|
 
-Converts UTF-8 encoded array to :ref:`String<class_String>`. Slower than :ref:`get_string_from_ascii<class_PackedByteArray_method_get_string_from_ascii>` but supports UTF-8 encoded data. Use this function if you are unsure about the source of the data. For user input this function should always be preferred. Returns empty string if source array is not valid UTF-8 string.
+Converts UTF-8 encoded array to :ref:`String<class_String>`. Slower than :ref:`get_string_from_ascii<class_PackedByteArray_method_get_string_from_ascii>` but supports UTF-8 encoded data. Use this function if you are unsure about the source of the data. For user input this function should always be preferred. Returns empty string if source array is not valid UTF-8 string. This is the inverse of :ref:`String.to_utf8_buffer<class_String_method_to_utf8_buffer>`.
 
 .. rst-class:: classref-item-separator
 
@@ -701,7 +701,7 @@ Converts UTF-8 encoded array to :ref:`String<class_String>`. Slower than :ref:`g
 
 :ref:`String<class_String>` **get_string_from_utf16** **(** **)** |const|
 
-Converts UTF-16 encoded array to :ref:`String<class_String>`. If the BOM is missing, system endianness is assumed. Returns empty string if source array is not valid UTF-16 string.
+Converts UTF-16 encoded array to :ref:`String<class_String>`. If the BOM is missing, system endianness is assumed. Returns empty string if source array is not valid UTF-16 string. This is the inverse of :ref:`String.to_utf16_buffer<class_String_method_to_utf16_buffer>`.
 
 .. rst-class:: classref-item-separator
 
@@ -713,7 +713,7 @@ Converts UTF-16 encoded array to :ref:`String<class_String>`. If the BOM is miss
 
 :ref:`String<class_String>` **get_string_from_utf32** **(** **)** |const|
 
-Converts UTF-32 encoded array to :ref:`String<class_String>`. System endianness is assumed. Returns empty string if source array is not valid UTF-32 string.
+Converts UTF-32 encoded array to :ref:`String<class_String>`. System endianness is assumed. Returns empty string if source array is not valid UTF-32 string. This is the inverse of :ref:`String.to_utf32_buffer<class_String_method_to_utf32_buffer>`.
 
 .. rst-class:: classref-item-separator
 
@@ -725,7 +725,7 @@ Converts UTF-32 encoded array to :ref:`String<class_String>`. System endianness
 
 :ref:`String<class_String>` **get_string_from_wchar** **(** **)** |const|
 
-Converts wide character (``wchar_t``, UTF-16 on Windows, UTF-32 on other platforms) encoded array to :ref:`String<class_String>`. Returns empty string if source array is not valid wide string.
+Converts wide character (``wchar_t``, UTF-16 on Windows, UTF-32 on other platforms) encoded array to :ref:`String<class_String>`. Returns empty string if source array is not valid wide string. This is the inverse of :ref:`String.to_wchar_buffer<class_String_method_to_wchar_buffer>`.
 
 .. rst-class:: classref-item-separator
 

+ 78 - 0
classes/class_physicsserver2d.rst

@@ -246,8 +246,12 @@ Methods
    +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                              | :ref:`joint_set_param<class_PhysicsServer2D_method_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param, :ref:`float<class_float>` value **)**                                                                                                            |
    +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                           | :ref:`pin_joint_get_flag<class_PhysicsServer2D_method_pin_joint_get_flag>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag **)** |const|                                                                                                                            |
+   +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                                         | :ref:`pin_joint_get_param<class_PhysicsServer2D_method_pin_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param **)** |const|                                                                                                                       |
    +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                              | :ref:`pin_joint_set_flag<class_PhysicsServer2D_method_pin_joint_set_flag>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag, :ref:`bool<class_bool>` enabled **)**                                                                                                   |
+   +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                              | :ref:`pin_joint_set_param<class_PhysicsServer2D_method_pin_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param, :ref:`float<class_float>` value **)**                                                                                              |
    +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                             | :ref:`rectangle_shape_create<class_PhysicsServer2D_method_rectangle_shape_create>` **(** **)**                                                                                                                                                                                                                     |
@@ -910,6 +914,56 @@ enum **PinJointParam**:
 
 Constant to set/get a how much the bond of the pin joint can flex. The default value of this parameter is ``0.0``.
 
+.. _class_PhysicsServer2D_constant_PIN_JOINT_LIMIT_UPPER:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` **PIN_JOINT_LIMIT_UPPER** = ``1``
+
+The maximum rotation around the pin.
+
+.. _class_PhysicsServer2D_constant_PIN_JOINT_LIMIT_LOWER:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` **PIN_JOINT_LIMIT_LOWER** = ``2``
+
+The minimum rotation around the pin.
+
+.. _class_PhysicsServer2D_constant_PIN_JOINT_MOTOR_TARGET_VELOCITY:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` **PIN_JOINT_MOTOR_TARGET_VELOCITY** = ``3``
+
+Target speed for the motor. In radians per second.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _enum_PhysicsServer2D_PinJointFlag:
+
+.. rst-class:: classref-enumeration
+
+enum **PinJointFlag**:
+
+.. _class_PhysicsServer2D_constant_PIN_JOINT_FLAG_ANGULAR_LIMIT_ENABLED:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` **PIN_JOINT_FLAG_ANGULAR_LIMIT_ENABLED** = ``0``
+
+If ``true``, the pin has a maximum and a minimum rotation.
+
+.. _class_PhysicsServer2D_constant_PIN_JOINT_FLAG_MOTOR_ENABLED:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` **PIN_JOINT_FLAG_MOTOR_ENABLED** = ``1``
+
+If ``true``, a motor turns the pin.
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -2317,6 +2371,18 @@ Sets the value of the given joint parameter. See :ref:`JointParam<enum_PhysicsSe
 
 ----
 
+.. _class_PhysicsServer2D_method_pin_joint_get_flag:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **pin_joint_get_flag** **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag **)** |const|
+
+Gets a pin joint flag (see :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` constants).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_PhysicsServer2D_method_pin_joint_get_param:
 
 .. rst-class:: classref-method
@@ -2329,6 +2395,18 @@ Returns the value of a pin joint parameter. See :ref:`PinJointParam<enum_Physics
 
 ----
 
+.. _class_PhysicsServer2D_method_pin_joint_set_flag:
+
+.. rst-class:: classref-method
+
+void **pin_joint_set_flag** **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag, :ref:`bool<class_bool>` enabled **)**
+
+Sets a pin joint flag (see :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` constants).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_PhysicsServer2D_method_pin_joint_set_param:
 
 .. rst-class:: classref-method

+ 32 - 0
classes/class_physicsserver2dextension.rst

@@ -256,8 +256,12 @@ Methods
    +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                              | :ref:`_joint_set_param<class_PhysicsServer2DExtension_method__joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                                         |
    +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                           | :ref:`_pin_joint_get_flag<class_PhysicsServer2DExtension_method__pin_joint_get_flag>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag **)** |virtual| |const|                                                                                                                                                                                                         |
+   +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                                         | :ref:`_pin_joint_get_param<class_PhysicsServer2DExtension_method__pin_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param **)** |virtual| |const|                                                                                                                                                                                                    |
    +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                              | :ref:`_pin_joint_set_flag<class_PhysicsServer2DExtension_method__pin_joint_set_flag>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag, :ref:`bool<class_bool>` enabled **)** |virtual|                                                                                                                                                                                |
+   +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                              | :ref:`_pin_joint_set_param<class_PhysicsServer2DExtension_method__pin_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                           |
    +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                             | :ref:`_rectangle_shape_create<class_PhysicsServer2DExtension_method__rectangle_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                  |
@@ -1886,6 +1890,20 @@ void **_joint_set_param** **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<en
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__pin_joint_get_flag:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **_pin_joint_get_flag** **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag **)** |virtual| |const|
+
+.. container:: contribute
+
+	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_PhysicsServer2DExtension_method__pin_joint_get_param:
 
 .. rst-class:: classref-method
@@ -1900,6 +1918,20 @@ void **_joint_set_param** **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<en
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__pin_joint_set_flag:
+
+.. rst-class:: classref-method
+
+void **_pin_joint_set_flag** **(** :ref:`RID<class_RID>` joint, :ref:`PinJointFlag<enum_PhysicsServer2D_PinJointFlag>` flag, :ref:`bool<class_bool>` enabled **)** |virtual|
+
+.. container:: contribute
+
+	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_PhysicsServer2DExtension_method__pin_joint_set_param:
 
 .. rst-class:: classref-method

+ 98 - 3
classes/class_pinjoint2d.rst

@@ -29,9 +29,19 @@ Properties
 .. table::
    :widths: auto
 
-   +---------------------------+-----------------------------------------------------+---------+
-   | :ref:`float<class_float>` | :ref:`softness<class_PinJoint2D_property_softness>` | ``0.0`` |
-   +---------------------------+-----------------------------------------------------+---------+
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`   | :ref:`angular_limit_enabled<class_PinJoint2D_property_angular_limit_enabled>` | ``false`` |
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`angular_limit_lower<class_PinJoint2D_property_angular_limit_lower>`     | ``0.0``   |
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`angular_limit_upper<class_PinJoint2D_property_angular_limit_upper>`     | ``0.0``   |
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`   | :ref:`motor_enabled<class_PinJoint2D_property_motor_enabled>`                 | ``false`` |
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`motor_target_velocity<class_PinJoint2D_property_motor_target_velocity>` | ``0.0``   |
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`softness<class_PinJoint2D_property_softness>`                           | ``0.0``   |
+   +---------------------------+-------------------------------------------------------------------------------+-----------+
 
 .. rst-class:: classref-section-separator
 
@@ -42,6 +52,91 @@ Properties
 Property Descriptions
 ---------------------
 
+.. _class_PinJoint2D_property_angular_limit_enabled:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **angular_limit_enabled** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_angular_limit_enabled** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **is_angular_limit_enabled** **(** **)**
+
+If ``true``, the pin maximum and minimum rotation, defined by :ref:`angular_limit_lower<class_PinJoint2D_property_angular_limit_lower>` and :ref:`angular_limit_upper<class_PinJoint2D_property_angular_limit_upper>` are applied.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_PinJoint2D_property_angular_limit_lower:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **angular_limit_lower** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_angular_limit_lower** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_angular_limit_lower** **(** **)**
+
+The minimum rotation. Only active if :ref:`angular_limit_enabled<class_PinJoint2D_property_angular_limit_enabled>` is ``true``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_PinJoint2D_property_angular_limit_upper:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **angular_limit_upper** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_angular_limit_upper** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_angular_limit_upper** **(** **)**
+
+The maximum rotation. Only active if :ref:`angular_limit_enabled<class_PinJoint2D_property_angular_limit_enabled>` is ``true``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_PinJoint2D_property_motor_enabled:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **motor_enabled** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_motor_enabled** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **is_motor_enabled** **(** **)**
+
+When activated, a motor turns the pin.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_PinJoint2D_property_motor_target_velocity:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **motor_target_velocity** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_motor_target_velocity** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_motor_target_velocity** **(** **)**
+
+Target speed for the motor. In radians per second.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_PinJoint2D_property_softness:
 
 .. rst-class:: classref-property

+ 29 - 0
classes/class_popup.rst

@@ -45,6 +45,18 @@ Properties
    | :ref:`bool<class_bool>` | wrap_controls | ``true`` (overrides :ref:`Window<class_Window_property_wrap_controls>`) |
    +-------------------------+---------------+-------------------------------------------------------------------------+
 
+.. rst-class:: classref-reftable-group
+
+Theme Properties
+----------------
+
+.. table::
+   :widths: auto
+
+   +---------------------------------+---------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`panel<class_Popup_theme_style_panel>` |
+   +---------------------------------+---------------------------------------------+
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -62,6 +74,23 @@ Signals
 
 Emitted when the popup is hidden.
 
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Theme Property Descriptions
+---------------------------
+
+.. _class_Popup_theme_style_panel:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **panel**
+
+Default :ref:`StyleBox<class_StyleBox>` for the **Popup**.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 3 - 31
classes/class_popupmenu.rst

@@ -92,7 +92,7 @@ Methods
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                             | :ref:`add_submenu_item<class_PopupMenu_method_add_submenu_item>` **(** :ref:`String<class_String>` label, :ref:`String<class_String>` submenu, :ref:`int<class_int>` id=-1 **)**                                                                                                |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                             | :ref:`clear<class_PopupMenu_method_clear>` **(** **)**                                                                                                                                                                                                                          |
+   | void                                             | :ref:`clear<class_PopupMenu_method_clear>` **(** :ref:`bool<class_bool>` free_submenus=false **)**                                                                                                                                                                              |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                            | :ref:`get_focused_item<class_PopupMenu_method_get_focused_item>` **(** **)** |const|                                                                                                                                                                                            |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -260,10 +260,6 @@ Theme Properties
    +-----------------------------------+-----------------------------------------------------------------------------------------------+-----------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`labeled_separator_right<class_PopupMenu_theme_style_labeled_separator_right>`           |                                   |
    +-----------------------------------+-----------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`panel<class_PopupMenu_theme_style_panel>`                                               |                                   |
-   +-----------------------------------+-----------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`panel_disabled<class_PopupMenu_theme_style_panel_disabled>`                             |                                   |
-   +-----------------------------------+-----------------------------------------------------------------------------------------------+-----------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`separator<class_PopupMenu_theme_style_separator>`                                       |                                   |
    +-----------------------------------+-----------------------------------------------------------------------------------------------+-----------------------------------+
 
@@ -684,9 +680,9 @@ An ``id`` can optionally be provided. If no ``id`` is provided, one will be crea
 
 .. rst-class:: classref-method
 
-void **clear** **(** **)**
+void **clear** **(** :ref:`bool<class_bool>` free_submenus=false **)**
 
-Removes all items from the **PopupMenu**.
+Removes all items from the **PopupMenu**. If ``free_submenus`` is ``true``, the submenu nodes are automatically freed.
 
 .. rst-class:: classref-item-separator
 
@@ -1649,30 +1645,6 @@ Font size of the menu items.
 
 ----
 
-.. _class_PopupMenu_theme_style_panel:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **panel**
-
-Default :ref:`StyleBox<class_StyleBox>` of the **PopupMenu** items.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_PopupMenu_theme_style_panel_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **panel_disabled**
-
-:ref:`StyleBox<class_StyleBox>` used when the **PopupMenu** item is disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_PopupMenu_theme_style_separator:
 
 .. rst-class:: classref-themeproperty

+ 0 - 29
classes/class_popuppanel.rst

@@ -21,35 +21,6 @@ Description
 
 A popup with a configurable panel background. Any child controls added to this node will be stretched to fit the panel's size (similar to how :ref:`PanelContainer<class_PanelContainer>` works). If you are making windows, see :ref:`Window<class_Window>`.
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +---------------------------------+--------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`panel<class_PopupPanel_theme_style_panel>` |
-   +---------------------------------+--------------------------------------------------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_PopupPanel_theme_style_panel:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **panel**
-
-The background panel style of this **PopupPanel**.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 14
classes/class_progressbar.rst

@@ -48,8 +48,6 @@ Theme Properties
    +---------------------------------+-----------------------------------------------------------------------------+--------------------------------+
    | :ref:`Color<class_Color>`       | :ref:`font_outline_color<class_ProgressBar_theme_color_font_outline_color>` | ``Color(1, 1, 1, 1)``          |
    +---------------------------------+-----------------------------------------------------------------------------+--------------------------------+
-   | :ref:`Color<class_Color>`       | :ref:`font_shadow_color<class_ProgressBar_theme_color_font_shadow_color>`   | ``Color(0, 0, 0, 1)``          |
-   +---------------------------------+-----------------------------------------------------------------------------+--------------------------------+
    | :ref:`int<class_int>`           | :ref:`outline_size<class_ProgressBar_theme_constant_outline_size>`          | ``0``                          |
    +---------------------------------+-----------------------------------------------------------------------------+--------------------------------+
    | :ref:`Font<class_Font>`         | :ref:`font<class_ProgressBar_theme_font_font>`                              |                                |
@@ -180,18 +178,6 @@ The tint of text outline of the **ProgressBar**.
 
 ----
 
-.. _class_ProgressBar_theme_color_font_shadow_color:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Color<class_Color>` **font_shadow_color** = ``Color(0, 0, 0, 1)``
-
-The color of the text's shadow.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_ProgressBar_theme_constant_outline_size:
 
 .. rst-class:: classref-themeproperty

+ 44 - 0
classes/class_projectsettings.rst

@@ -181,6 +181,8 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/inference_on_variant<class_ProjectSettings_property_debug/gdscript/warnings/inference_on_variant>`                                                                           | ``2``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/inferred_declaration<class_ProjectSettings_property_debug/gdscript/warnings/inferred_declaration>`                                                                           | ``0``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/int_as_enum_without_cast<class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_cast>`                                                                   | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/int_as_enum_without_match<class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_match>`                                                                 | ``1``                                                                                            |
@@ -1521,6 +1523,10 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`xr/openxr/form_factor<class_ProjectSettings_property_xr/openxr/form_factor>`                                                                                                                         | ``"0"``                                                                                          |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`xr/openxr/foveation_dynamic<class_ProjectSettings_property_xr/openxr/foveation_dynamic>`                                                                                                             | ``false``                                                                                        |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`xr/openxr/foveation_level<class_ProjectSettings_property_xr/openxr/foveation_level>`                                                                                                                 | ``"0"``                                                                                          |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`xr/openxr/reference_space<class_ProjectSettings_property_xr/openxr/reference_space>`                                                                                                                 | ``"1"``                                                                                          |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`xr/openxr/startup_alert<class_ProjectSettings_property_xr/openxr/startup_alert>`                                                                                                                     | ``true``                                                                                         |
@@ -2474,6 +2480,20 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w
 
 ----
 
+.. _class_ProjectSettings_property_debug/gdscript/warnings/inferred_declaration:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/inferred_declaration** = ``0``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when a variable, constant, or parameter has an implicitly inferred static type.
+
+\ **Note:** This warning is recommended *in addition* to :ref:`debug/gdscript/warnings/untyped_declaration<class_ProjectSettings_property_debug/gdscript/warnings/untyped_declaration>` if you want to always specify the type explicitly. Having ``INFERRED_DECLARATION`` warning level higher than ``UNTYPED_DECLARATION`` warning level makes little sense and is not recommended.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_cast:
 
 .. rst-class:: classref-property
@@ -11031,6 +11051,30 @@ Specify whether OpenXR should be configured for an HMD or a hand held device.
 
 ----
 
+.. _class_ProjectSettings_property_xr/openxr/foveation_dynamic:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **xr/openxr/foveation_dynamic** = ``false``
+
+If true and foveation is supported, will automatically adjust foveation level based on framerate up to the level set on ``xr/openxr/foveation_level``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ProjectSettings_property_xr/openxr/foveation_level:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **xr/openxr/foveation_level** = ``"0"``
+
+Applied foveation level if supported: 0 = off, 1 = low, 2 = medium, 3 = high.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_xr/openxr/reference_space:
 
 .. rst-class:: classref-property

+ 14 - 0
classes/class_renderingdevice.rst

@@ -203,6 +203,8 @@ Methods
    +------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                      | :ref:`texture_create<class_RenderingDevice_method_texture_create>` **(** :ref:`RDTextureFormat<class_RDTextureFormat>` format, :ref:`RDTextureView<class_RDTextureView>` view, :ref:`PackedByteArray[]<class_PackedByteArray>` data=[] **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    +------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                                      | :ref:`texture_create_from_extension<class_RenderingDevice_method_texture_create_from_extension>` **(** :ref:`TextureType<enum_RenderingDevice_TextureType>` type, :ref:`DataFormat<enum_RenderingDevice_DataFormat>` format, :ref:`TextureSamples<enum_RenderingDevice_TextureSamples>` samples, |bitfield|\<:ref:`TextureUsageBits<enum_RenderingDevice_TextureUsageBits>`\> usage_flags, :ref:`int<class_int>` image, :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`int<class_int>` depth, :ref:`int<class_int>` layers **)**                                                                                                                                                                                                                                                                                                                                                                             |
+   +------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                      | :ref:`texture_create_shared<class_RenderingDevice_method_texture_create_shared>` **(** :ref:`RDTextureView<class_RDTextureView>` view, :ref:`RID<class_RID>` with_texture **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
    +------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                      | :ref:`texture_create_shared_from_slice<class_RenderingDevice_method_texture_create_shared_from_slice>` **(** :ref:`RDTextureView<class_RDTextureView>` view, :ref:`RID<class_RID>` with_texture, :ref:`int<class_int>` layer, :ref:`int<class_int>` mipmap, :ref:`int<class_int>` mipmaps=1, :ref:`TextureSliceType<enum_RenderingDevice_TextureSliceType>` slice_type=0 **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
@@ -5406,6 +5408,18 @@ Once finished with your RID, you will want to free the RID using the RenderingDe
 
 ----
 
+.. _class_RenderingDevice_method_texture_create_from_extension:
+
+.. rst-class:: classref-method
+
+:ref:`RID<class_RID>` **texture_create_from_extension** **(** :ref:`TextureType<enum_RenderingDevice_TextureType>` type, :ref:`DataFormat<enum_RenderingDevice_DataFormat>` format, :ref:`TextureSamples<enum_RenderingDevice_TextureSamples>` samples, |bitfield|\<:ref:`TextureUsageBits<enum_RenderingDevice_TextureUsageBits>`\> usage_flags, :ref:`int<class_int>` image, :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`int<class_int>` depth, :ref:`int<class_int>` layers **)**
+
+Returns an RID for an existing ``image`` (``VkImage``) with the given ``type``, ``format``, ``samples``, ``usage_flags``, ``width``, ``height``, ``depth``, and ``layers``. This can be used to allow Godot to render onto foreign images.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingDevice_method_texture_create_shared:
 
 .. rst-class:: classref-method

+ 17 - 1
classes/class_renderingserver.rst

@@ -2702,11 +2702,19 @@ Use bilinear scaling for the viewport's 3D buffer. The amount of scaling can be
 
 Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale<class_Viewport_property_scaling_3d_scale>`. Values less than ``1.0`` will be result in the viewport being upscaled using FSR. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` disables scaling.
 
+.. _class_RenderingServer_constant_VIEWPORT_SCALING_3D_MODE_FSR2:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ViewportScaling3DMode<enum_RenderingServer_ViewportScaling3DMode>` **VIEWPORT_SCALING_3D_MODE_FSR2** = ``2``
+
+Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`Viewport.scaling_3d_scale<class_Viewport_property_scaling_3d_scale>`. Values less than ``1.0`` will be result in the viewport being upscaled using FSR2. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` will use FSR2 at native resolution as a TAA solution.
+
 .. _class_RenderingServer_constant_VIEWPORT_SCALING_3D_MODE_MAX:
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`ViewportScaling3DMode<enum_RenderingServer_ViewportScaling3DMode>` **VIEWPORT_SCALING_3D_MODE_MAX** = ``2``
+:ref:`ViewportScaling3DMode<enum_RenderingServer_ViewportScaling3DMode>` **VIEWPORT_SCALING_3D_MODE_MAX** = ``3``
 
 Represents the size of the :ref:`ViewportScaling3DMode<enum_RenderingServer_ViewportScaling3DMode>` enum.
 
@@ -3346,6 +3354,14 @@ Draws the occlusion culling buffer. This low-resolution occlusion culling buffer
 
 Draws the motion vectors buffer. This is used by temporal antialiasing to correct for motion that occurs during gameplay.
 
+.. _class_RenderingServer_constant_VIEWPORT_DEBUG_DRAW_INTERNAL_BUFFER:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ViewportDebugDraw<enum_RenderingServer_ViewportDebugDraw>` **VIEWPORT_DEBUG_DRAW_INTERNAL_BUFFER** = ``26``
+
+Internal buffer is drawn instead of regular scene so you can see the per-pixel output that will be used by post-processing effects.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 14 - 0
classes/class_renderscenebuffersrd.rst

@@ -64,6 +64,8 @@ Methods
    +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector2i<class_Vector2i>`               | :ref:`get_texture_slice_size<class_RenderSceneBuffersRD_method_get_texture_slice_size>` **(** :ref:`StringName<class_StringName>` context, :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` mipmap **)**                                                                                                                                                                                                                                                                    |
    +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`RID<class_RID>`                         | :ref:`get_texture_slice_view<class_RenderSceneBuffersRD_method_get_texture_slice_view>` **(** :ref:`StringName<class_StringName>` context, :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` layer, :ref:`int<class_int>` mipmap, :ref:`int<class_int>` layers, :ref:`int<class_int>` mipmaps, :ref:`RDTextureView<class_RDTextureView>` view **)**                                                                                                                          |
+   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                       | :ref:`get_use_taa<class_RenderSceneBuffersRD_method_get_use_taa>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                      |
    +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                         | :ref:`get_velocity_layer<class_RenderSceneBuffersRD_method_get_velocity_layer>` **(** :ref:`int<class_int>` layer **)**                                                                                                                                                                                                                                                                                                                                                                    |
@@ -252,6 +254,18 @@ Returns the texture size of a given slice of a cached texture.
 
 ----
 
+.. _class_RenderSceneBuffersRD_method_get_texture_slice_view:
+
+.. rst-class:: classref-method
+
+:ref:`RID<class_RID>` **get_texture_slice_view** **(** :ref:`StringName<class_StringName>` context, :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` layer, :ref:`int<class_int>` mipmap, :ref:`int<class_int>` layers, :ref:`int<class_int>` mipmaps, :ref:`RDTextureView<class_RDTextureView>` view **)**
+
+Returns a specific view of a slice (layer or mipmap) for a cached texture.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderSceneBuffersRD_method_get_use_taa:
 
 .. rst-class:: classref-method

Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
classes/class_resource.rst


+ 230 - 136
classes/class_richtextlabel.rst

@@ -108,141 +108,143 @@ Methods
 .. table::
    :widths: auto
 
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`add_image<class_RichTextLabel_method_add_image>` **(** :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0) **)**                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`add_text<class_RichTextLabel_method_add_text>` **(** :ref:`String<class_String>` text **)**                                                                                                                                                                                                                                                                                                                                                                                                                                          |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`append_text<class_RichTextLabel_method_append_text>` **(** :ref:`String<class_String>` bbcode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                  |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`clear<class_RichTextLabel_method_clear>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`deselect<class_RichTextLabel_method_deselect>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_character_line<class_RichTextLabel_method_get_character_line>` **(** :ref:`int<class_int>` character **)**                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_character_paragraph<class_RichTextLabel_method_get_character_paragraph>` **(** :ref:`int<class_int>` character **)**                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_content_height<class_RichTextLabel_method_get_content_height>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                               |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_content_width<class_RichTextLabel_method_get_content_width>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_line_count<class_RichTextLabel_method_get_line_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`           | :ref:`get_line_offset<class_RichTextLabel_method_get_line_offset>` **(** :ref:`int<class_int>` line **)**                                                                                                                                                                                                                                                                                                                                                                                                                                  |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PopupMenu<class_PopupMenu>`   | :ref:`get_menu<class_RichTextLabel_method_get_menu>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_paragraph_count<class_RichTextLabel_method_get_paragraph_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`           | :ref:`get_paragraph_offset<class_RichTextLabel_method_get_paragraph_offset>` **(** :ref:`int<class_int>` paragraph **)**                                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`         | :ref:`get_parsed_text<class_RichTextLabel_method_get_parsed_text>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`         | :ref:`get_selected_text<class_RichTextLabel_method_get_selected_text>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_selection_from<class_RichTextLabel_method_get_selection_from>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                               |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_selection_to<class_RichTextLabel_method_get_selection_to>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_total_character_count<class_RichTextLabel_method_get_total_character_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_RichTextLabel_method_get_v_scroll_bar>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_visible_line_count<class_RichTextLabel_method_get_visible_line_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`get_visible_paragraph_count<class_RichTextLabel_method_get_visible_paragraph_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`install_effect<class_RichTextLabel_method_install_effect>` **(** :ref:`Variant<class_Variant>` effect **)**                                                                                                                                                                                                                                                                                                                                                                                                                          |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`             | :ref:`is_menu_visible<class_RichTextLabel_method_is_menu_visible>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`             | :ref:`is_ready<class_RichTextLabel_method_is_ready>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`menu_option<class_RichTextLabel_method_menu_option>` **(** :ref:`int<class_int>` option **)**                                                                                                                                                                                                                                                                                                                                                                                                                                        |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`newline<class_RichTextLabel_method_newline>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`parse_bbcode<class_RichTextLabel_method_parse_bbcode>` **(** :ref:`String<class_String>` bbcode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Dictionary<class_Dictionary>` | :ref:`parse_expressions_for_values<class_RichTextLabel_method_parse_expressions_for_values>` **(** :ref:`PackedStringArray<class_PackedStringArray>` expressions **)**                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`pop<class_RichTextLabel_method_pop>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`pop_all<class_RichTextLabel_method_pop_all>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`pop_context<class_RichTextLabel_method_pop_context>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_bgcolor<class_RichTextLabel_method_push_bgcolor>` **(** :ref:`Color<class_Color>` bgcolor **)**                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_bold<class_RichTextLabel_method_push_bold>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_bold_italics<class_RichTextLabel_method_push_bold_italics>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_cell<class_RichTextLabel_method_push_cell>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_color<class_RichTextLabel_method_push_color>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_context<class_RichTextLabel_method_push_context>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_customfx<class_RichTextLabel_method_push_customfx>` **(** :ref:`RichTextEffect<class_RichTextEffect>` effect, :ref:`Dictionary<class_Dictionary>` env **)**                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_dropcap<class_RichTextLabel_method_push_dropcap>` **(** :ref:`String<class_String>` string, :ref:`Font<class_Font>` font, :ref:`int<class_int>` size, :ref:`Rect2<class_Rect2>` dropcap_margins=Rect2(0, 0, 0, 0), :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`int<class_int>` outline_size=0, :ref:`Color<class_Color>` outline_color=Color(0, 0, 0, 0) **)**                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_fgcolor<class_RichTextLabel_method_push_fgcolor>` **(** :ref:`Color<class_Color>` fgcolor **)**                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_font<class_RichTextLabel_method_push_font>` **(** :ref:`Font<class_Font>` font, :ref:`int<class_int>` font_size=0 **)**                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_font_size<class_RichTextLabel_method_push_font_size>` **(** :ref:`int<class_int>` font_size **)**                                                                                                                                                                                                                                                                                                                                                                                                                               |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_hint<class_RichTextLabel_method_push_hint>` **(** :ref:`String<class_String>` description **)**                                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_indent<class_RichTextLabel_method_push_indent>` **(** :ref:`int<class_int>` level **)**                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_italics<class_RichTextLabel_method_push_italics>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_language<class_RichTextLabel_method_push_language>` **(** :ref:`String<class_String>` language **)**                                                                                                                                                                                                                                                                                                                                                                                                                            |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_list<class_RichTextLabel_method_push_list>` **(** :ref:`int<class_int>` level, :ref:`ListType<enum_RichTextLabel_ListType>` type, :ref:`bool<class_bool>` capitalize, :ref:`String<class_String>` bullet="•" **)**                                                                                                                                                                                                                                                                                                              |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_meta<class_RichTextLabel_method_push_meta>` **(** :ref:`Variant<class_Variant>` data **)**                                                                                                                                                                                                                                                                                                                                                                                                                                      |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_mono<class_RichTextLabel_method_push_mono>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_normal<class_RichTextLabel_method_push_normal>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_outline_color<class_RichTextLabel_method_push_outline_color>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_outline_size<class_RichTextLabel_method_push_outline_size>` **(** :ref:`int<class_int>` outline_size **)**                                                                                                                                                                                                                                                                                                                                                                                                                      |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_paragraph<class_RichTextLabel_method_push_paragraph>` **(** :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` alignment, :ref:`TextDirection<enum_Control_TextDirection>` base_direction=0, :ref:`String<class_String>` language="", :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` st_parser=0, |bitfield|\<:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\> justification_flags=163, :ref:`PackedFloat32Array<class_PackedFloat32Array>` tab_stops=PackedFloat32Array() **)** |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_strikethrough<class_RichTextLabel_method_push_strikethrough>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_table<class_RichTextLabel_method_push_table>` **(** :ref:`int<class_int>` columns, :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=0, :ref:`int<class_int>` align_to_row=-1 **)**                                                                                                                                                                                                                                                                                                                        |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`push_underline<class_RichTextLabel_method_push_underline>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`             | :ref:`remove_paragraph<class_RichTextLabel_method_remove_paragraph>` **(** :ref:`int<class_int>` paragraph **)**                                                                                                                                                                                                                                                                                                                                                                                                                           |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`scroll_to_line<class_RichTextLabel_method_scroll_to_line>` **(** :ref:`int<class_int>` line **)**                                                                                                                                                                                                                                                                                                                                                                                                                                    |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`scroll_to_paragraph<class_RichTextLabel_method_scroll_to_paragraph>` **(** :ref:`int<class_int>` paragraph **)**                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`scroll_to_selection<class_RichTextLabel_method_scroll_to_selection>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`select_all<class_RichTextLabel_method_select_all>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`set_cell_border_color<class_RichTextLabel_method_set_cell_border_color>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`set_cell_padding<class_RichTextLabel_method_set_cell_padding>` **(** :ref:`Rect2<class_Rect2>` padding **)**                                                                                                                                                                                                                                                                                                                                                                                                                         |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`set_cell_row_background_color<class_RichTextLabel_method_set_cell_row_background_color>` **(** :ref:`Color<class_Color>` odd_row_bg, :ref:`Color<class_Color>` even_row_bg **)**                                                                                                                                                                                                                                                                                                                                                     |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`set_cell_size_override<class_RichTextLabel_method_set_cell_size_override>` **(** :ref:`Vector2<class_Vector2>` min_size, :ref:`Vector2<class_Vector2>` max_size **)**                                                                                                                                                                                                                                                                                                                                                                |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | 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=1 **)**                                                                                                                                                                                                                                                                                                                                                 |
-   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`add_image<class_RichTextLabel_method_add_image>` **(** :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0), :ref:`Variant<class_Variant>` key=null, :ref:`bool<class_bool>` pad=false, :ref:`String<class_String>` tooltip="", :ref:`bool<class_bool>` size_in_percent=false **)**                                                                                 |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`add_text<class_RichTextLabel_method_add_text>` **(** :ref:`String<class_String>` text **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`append_text<class_RichTextLabel_method_append_text>` **(** :ref:`String<class_String>` bbcode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`clear<class_RichTextLabel_method_clear>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`deselect<class_RichTextLabel_method_deselect>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_character_line<class_RichTextLabel_method_get_character_line>` **(** :ref:`int<class_int>` character **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_character_paragraph<class_RichTextLabel_method_get_character_paragraph>` **(** :ref:`int<class_int>` character **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_content_height<class_RichTextLabel_method_get_content_height>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_content_width<class_RichTextLabel_method_get_content_width>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_line_count<class_RichTextLabel_method_get_line_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`           | :ref:`get_line_offset<class_RichTextLabel_method_get_line_offset>` **(** :ref:`int<class_int>` line **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PopupMenu<class_PopupMenu>`   | :ref:`get_menu<class_RichTextLabel_method_get_menu>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_paragraph_count<class_RichTextLabel_method_get_paragraph_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`           | :ref:`get_paragraph_offset<class_RichTextLabel_method_get_paragraph_offset>` **(** :ref:`int<class_int>` paragraph **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`         | :ref:`get_parsed_text<class_RichTextLabel_method_get_parsed_text>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`         | :ref:`get_selected_text<class_RichTextLabel_method_get_selected_text>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_selection_from<class_RichTextLabel_method_get_selection_from>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_selection_to<class_RichTextLabel_method_get_selection_to>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_total_character_count<class_RichTextLabel_method_get_total_character_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_RichTextLabel_method_get_v_scroll_bar>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_visible_line_count<class_RichTextLabel_method_get_visible_line_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`               | :ref:`get_visible_paragraph_count<class_RichTextLabel_method_get_visible_paragraph_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`install_effect<class_RichTextLabel_method_install_effect>` **(** :ref:`Variant<class_Variant>` effect **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`             | :ref:`is_menu_visible<class_RichTextLabel_method_is_menu_visible>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`             | :ref:`is_ready<class_RichTextLabel_method_is_ready>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`menu_option<class_RichTextLabel_method_menu_option>` **(** :ref:`int<class_int>` option **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`newline<class_RichTextLabel_method_newline>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`parse_bbcode<class_RichTextLabel_method_parse_bbcode>` **(** :ref:`String<class_String>` bbcode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary<class_Dictionary>` | :ref:`parse_expressions_for_values<class_RichTextLabel_method_parse_expressions_for_values>` **(** :ref:`PackedStringArray<class_PackedStringArray>` expressions **)**                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`pop<class_RichTextLabel_method_pop>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`pop_all<class_RichTextLabel_method_pop_all>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`pop_context<class_RichTextLabel_method_pop_context>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_bgcolor<class_RichTextLabel_method_push_bgcolor>` **(** :ref:`Color<class_Color>` bgcolor **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_bold<class_RichTextLabel_method_push_bold>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_bold_italics<class_RichTextLabel_method_push_bold_italics>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_cell<class_RichTextLabel_method_push_cell>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_color<class_RichTextLabel_method_push_color>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_context<class_RichTextLabel_method_push_context>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_customfx<class_RichTextLabel_method_push_customfx>` **(** :ref:`RichTextEffect<class_RichTextEffect>` effect, :ref:`Dictionary<class_Dictionary>` env **)**                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_dropcap<class_RichTextLabel_method_push_dropcap>` **(** :ref:`String<class_String>` string, :ref:`Font<class_Font>` font, :ref:`int<class_int>` size, :ref:`Rect2<class_Rect2>` dropcap_margins=Rect2(0, 0, 0, 0), :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`int<class_int>` outline_size=0, :ref:`Color<class_Color>` outline_color=Color(0, 0, 0, 0) **)**                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_fgcolor<class_RichTextLabel_method_push_fgcolor>` **(** :ref:`Color<class_Color>` fgcolor **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_font<class_RichTextLabel_method_push_font>` **(** :ref:`Font<class_Font>` font, :ref:`int<class_int>` font_size=0 **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_font_size<class_RichTextLabel_method_push_font_size>` **(** :ref:`int<class_int>` font_size **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_hint<class_RichTextLabel_method_push_hint>` **(** :ref:`String<class_String>` description **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_indent<class_RichTextLabel_method_push_indent>` **(** :ref:`int<class_int>` level **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_italics<class_RichTextLabel_method_push_italics>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_language<class_RichTextLabel_method_push_language>` **(** :ref:`String<class_String>` language **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_list<class_RichTextLabel_method_push_list>` **(** :ref:`int<class_int>` level, :ref:`ListType<enum_RichTextLabel_ListType>` type, :ref:`bool<class_bool>` capitalize, :ref:`String<class_String>` bullet="•" **)**                                                                                                                                                                                                                                                                                                                                                                                |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_meta<class_RichTextLabel_method_push_meta>` **(** :ref:`Variant<class_Variant>` data **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_mono<class_RichTextLabel_method_push_mono>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_normal<class_RichTextLabel_method_push_normal>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_outline_color<class_RichTextLabel_method_push_outline_color>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_outline_size<class_RichTextLabel_method_push_outline_size>` **(** :ref:`int<class_int>` outline_size **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_paragraph<class_RichTextLabel_method_push_paragraph>` **(** :ref:`HorizontalAlignment<enum_@GlobalScope_HorizontalAlignment>` alignment, :ref:`TextDirection<enum_Control_TextDirection>` base_direction=0, :ref:`String<class_String>` language="", :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` st_parser=0, |bitfield|\<:ref:`JustificationFlag<enum_TextServer_JustificationFlag>`\> justification_flags=163, :ref:`PackedFloat32Array<class_PackedFloat32Array>` tab_stops=PackedFloat32Array() **)**                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_strikethrough<class_RichTextLabel_method_push_strikethrough>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_table<class_RichTextLabel_method_push_table>` **(** :ref:`int<class_int>` columns, :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=0, :ref:`int<class_int>` align_to_row=-1 **)**                                                                                                                                                                                                                                                                                                                                                                                          |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`push_underline<class_RichTextLabel_method_push_underline>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`             | :ref:`remove_paragraph<class_RichTextLabel_method_remove_paragraph>` **(** :ref:`int<class_int>` paragraph **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`scroll_to_line<class_RichTextLabel_method_scroll_to_line>` **(** :ref:`int<class_int>` line **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`scroll_to_paragraph<class_RichTextLabel_method_scroll_to_paragraph>` **(** :ref:`int<class_int>` paragraph **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`scroll_to_selection<class_RichTextLabel_method_scroll_to_selection>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`select_all<class_RichTextLabel_method_select_all>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`set_cell_border_color<class_RichTextLabel_method_set_cell_border_color>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`set_cell_padding<class_RichTextLabel_method_set_cell_padding>` **(** :ref:`Rect2<class_Rect2>` padding **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`set_cell_row_background_color<class_RichTextLabel_method_set_cell_row_background_color>` **(** :ref:`Color<class_Color>` odd_row_bg, :ref:`Color<class_Color>` even_row_bg **)**                                                                                                                                                                                                                                                                                                                                                                                                                       |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`set_cell_size_override<class_RichTextLabel_method_set_cell_size_override>` **(** :ref:`Vector2<class_Vector2>` min_size, :ref:`Vector2<class_Vector2>` max_size **)**                                                                                                                                                                                                                                                                                                                                                                                                                                  |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | 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=1 **)**                                                                                                                                                                                                                                                                                                                                                                                                                   |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`update_image<class_RichTextLabel_method_update_image>` **(** :ref:`Variant<class_Variant>` key, |bitfield|\<:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>`\> mask, :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0), :ref:`bool<class_bool>` pad=false, :ref:`String<class_String>` tooltip="", :ref:`bool<class_bool>` size_in_percent=false **)** |
+   +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -446,6 +448,80 @@ Selects the whole **RichTextLabel** text.
 
 Represents the size of the :ref:`MenuItems<enum_RichTextLabel_MenuItems>` enum.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _enum_RichTextLabel_ImageUpdateMask:
+
+.. rst-class:: classref-enumeration
+
+flags **ImageUpdateMask**:
+
+.. _class_RichTextLabel_constant_UPDATE_TEXTURE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_TEXTURE** = ``1``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image texture.
+
+.. _class_RichTextLabel_constant_UPDATE_SIZE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_SIZE** = ``2``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image size.
+
+.. _class_RichTextLabel_constant_UPDATE_COLOR:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_COLOR** = ``4``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image color.
+
+.. _class_RichTextLabel_constant_UPDATE_ALIGNMENT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_ALIGNMENT** = ``8``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image inline alignment.
+
+.. _class_RichTextLabel_constant_UPDATE_REGION:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_REGION** = ``16``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image texture region.
+
+.. _class_RichTextLabel_constant_UPDATE_PAD:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_PAD** = ``32``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image padding.
+
+.. _class_RichTextLabel_constant_UPDATE_TOOLTIP:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_TOOLTIP** = ``64``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image tooltip.
+
+.. _class_RichTextLabel_constant_UPDATE_WIDTH_IN_PERCENT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>` **UPDATE_WIDTH_IN_PERCENT** = ``128``
+
+If this bit is set, :ref:`update_image<class_RichTextLabel_method_update_image>` changes image width from/to percents.
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -882,7 +958,7 @@ Method Descriptions
 
 .. rst-class:: classref-method
 
-void **add_image** **(** :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0) **)**
+void **add_image** **(** :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0), :ref:`Variant<class_Variant>` key=null, :ref:`bool<class_bool>` pad=false, :ref:`String<class_String>` tooltip="", :ref:`bool<class_bool>` size_in_percent=false **)**
 
 Adds an image's opening and closing tags to the tag stack, optionally providing a ``width`` and ``height`` to resize the image, a ``color`` to tint the image and a ``region`` to only use parts of the image.
 
@@ -890,6 +966,12 @@ If ``width`` or ``height`` is set to 0, the image size will be adjusted in order
 
 If ``width`` and ``height`` are not set, but ``region`` is, the region's rect will be used.
 
+\ ``key`` is an optional identifier, that can be used to modify the image via :ref:`update_image<class_RichTextLabel_method_update_image>`.
+
+If ``pad`` is set, and the image is smaller than the size specified by ``width`` and ``height``, the image padding is added to match the size instead of upscaling.
+
+If ``size_in_percent`` is set, ``width`` and ``height`` values are percentages of the control width instead of pixels.
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -1763,6 +1845,18 @@ For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width wou
 
 If ``expand`` is ``false``, the column will not contribute to the total ratio.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_RichTextLabel_method_update_image:
+
+.. rst-class:: classref-method
+
+void **update_image** **(** :ref:`Variant<class_Variant>` key, |bitfield|\<:ref:`ImageUpdateMask<enum_RichTextLabel_ImageUpdateMask>`\> mask, :ref:`Texture2D<class_Texture2D>` image, :ref:`int<class_int>` width=0, :ref:`int<class_int>` height=0, :ref:`Color<class_Color>` color=Color(1, 1, 1, 1), :ref:`InlineAlignment<enum_@GlobalScope_InlineAlignment>` inline_align=5, :ref:`Rect2<class_Rect2>` region=Rect2(0, 0, 0, 0), :ref:`bool<class_bool>` pad=false, :ref:`String<class_String>` tooltip="", :ref:`bool<class_bool>` size_in_percent=false **)**
+
+Updates the existing images with the key ``key``. Only properties specified by ``mask`` bits are updated. See :ref:`add_image<class_RichTextLabel_method_add_image>`.
+
 .. rst-class:: classref-section-separator
 
 ----

+ 2 - 4
classes/class_scenetree.rst

@@ -623,9 +623,7 @@ Returns the current frame number, i.e. the total frame count since the applicati
 
 :ref:`MultiplayerAPI<class_MultiplayerAPI>` **get_multiplayer** **(** :ref:`NodePath<class_NodePath>` for_path=NodePath("") **)** |const|
 
-Return the :ref:`MultiplayerAPI<class_MultiplayerAPI>` configured for the given path, or the default one if ``for_path`` is empty.
-
-\ **Note:** Only one :ref:`MultiplayerAPI<class_MultiplayerAPI>` may be configured for any subpath. If one is configured for ``"/root/Foo"`` then calling this for ``"/root/Foo/Bar"`` will return the one configured for ``"/root/Foo"``, regardless if one is configured for that path.
+Searches for the :ref:`MultiplayerAPI<class_MultiplayerAPI>` configured for the given path, if one does not exist it searches the parent paths until one is found. If the path is empty, or none is found, the default one is returned. See :ref:`set_multiplayer<class_SceneTree_method_set_multiplayer>`.
 
 .. rst-class:: classref-item-separator
 
@@ -789,7 +787,7 @@ void **set_multiplayer** **(** :ref:`MultiplayerAPI<class_MultiplayerAPI>` multi
 
 Sets a custom :ref:`MultiplayerAPI<class_MultiplayerAPI>` with the given ``root_path`` (controlling also the relative subpaths), or override the default one if ``root_path`` is empty.
 
-\ **Note:** Only one :ref:`MultiplayerAPI<class_MultiplayerAPI>` may be configured for any subpath. If one is configured for ``"/root/Foo"`` setting one for ``"/root/Foo/Bar"`` will be ignored. See :ref:`get_multiplayer<class_SceneTree_method_get_multiplayer>`.
+\ **Note:** No :ref:`MultiplayerAPI<class_MultiplayerAPI>` must be configured for the subpath containing ``root_path``, nested custom multiplayers are not allowed. I.e. if one is configured for ``"/root/Foo"`` setting one for ``"/root/Foo/Bar"`` will cause an error.
 
 .. rst-class:: classref-item-separator
 

+ 14 - 0
classes/class_script.rst

@@ -77,6 +77,8 @@ Methods
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`               | :ref:`instance_has<class_Script_method_instance_has>` **(** :ref:`Object<class_Object>` base_object **)** |const|                          |
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`               | :ref:`is_abstract<class_Script_method_is_abstract>` **(** **)** |const|                                                                    |
+   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`               | :ref:`is_tool<class_Script_method_is_tool>` **(** **)** |const|                                                                            |
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`reload<class_Script_method_reload>` **(** :ref:`bool<class_bool>` keep_state=false **)**                                             |
@@ -245,6 +247,18 @@ Returns ``true`` if ``base_object`` is an instance of this script.
 
 ----
 
+.. _class_Script_method_is_abstract:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_abstract** **(** **)** |const|
+
+Returns ``true`` if the script is an abstract script. An abstract script does not have a constructor and cannot be instantiated.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Script_method_is_tool:
 
 .. rst-class:: classref-method

+ 14 - 0
classes/class_scriptextension.rst

@@ -75,6 +75,8 @@ Methods
    +---------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                     | :ref:`_instance_has<class_ScriptExtension_method__instance_has>` **(** :ref:`Object<class_Object>` object **)** |virtual| |const|                                       |
    +---------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                     | :ref:`_is_abstract<class_ScriptExtension_method__is_abstract>` **(** **)** |virtual| |const|                                                                            |
+   +---------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                     | :ref:`_is_placeholder_fallback_enabled<class_ScriptExtension_method__is_placeholder_fallback_enabled>` **(** **)** |virtual| |const|                                    |
    +---------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                     | :ref:`_is_tool<class_ScriptExtension_method__is_tool>` **(** **)** |virtual| |const|                                                                                    |
@@ -451,6 +453,18 @@ void* **_instance_create** **(** :ref:`Object<class_Object>` for_object **)** |v
 
 ----
 
+.. _class_ScriptExtension_method__is_abstract:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **_is_abstract** **(** **)** |virtual| |const|
+
+Returns ``true`` if the script is an abstract script. An abstract script does not have a constructor and cannot be instantiated.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ScriptExtension_method__is_placeholder_fallback_enabled:
 
 .. rst-class:: classref-method

+ 1 - 3
classes/class_scriptlanguageextension.rst

@@ -832,9 +832,7 @@ void **_frame** **(** **)** |virtual|
 
 :ref:`bool<class_bool>` **_has_named_classes** **(** **)** |virtual| |const|
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+*Deprecated.* This method is not called by the engine.
 
 .. rst-class:: classref-item-separator
 

+ 185 - 0
classes/class_scrollbar.rst

@@ -37,6 +37,40 @@ Properties
    | :ref:`float<class_float>` | step                                                     | ``0.0`` (overrides :ref:`Range<class_Range_property_step>`) |
    +---------------------------+----------------------------------------------------------+-------------------------------------------------------------+
 
+.. rst-class:: classref-reftable-group
+
+Theme Properties
+----------------
+
+.. table::
+   :widths: auto
+
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement<class_ScrollBar_theme_icon_decrement>`                     |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement_highlight<class_ScrollBar_theme_icon_decrement_highlight>` |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement_pressed<class_ScrollBar_theme_icon_decrement_pressed>`     |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment<class_ScrollBar_theme_icon_increment>`                     |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment_highlight<class_ScrollBar_theme_icon_increment_highlight>` |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment_pressed<class_ScrollBar_theme_icon_increment_pressed>`     |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber<class_ScrollBar_theme_style_grabber>`                        |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_highlight<class_ScrollBar_theme_style_grabber_highlight>`    |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_pressed<class_ScrollBar_theme_style_grabber_pressed>`        |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`hscroll<class_ScrollBar_theme_style_hscroll>`                        |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`scroll<class_ScrollBar_theme_style_scroll>`                          |
+   +-----------------------------------+----------------------------------------------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`scroll_focus<class_ScrollBar_theme_style_scroll_focus>`              |
+   +-----------------------------------+----------------------------------------------------------------------------+
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -76,6 +110,157 @@ Property Descriptions
 
 Overrides the step used when clicking increment and decrement buttons or when using arrow keys when the **ScrollBar** is focused.
 
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Theme Property Descriptions
+---------------------------
+
+.. _class_ScrollBar_theme_icon_decrement:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **decrement**
+
+Icon used as a button to scroll the **ScrollBar** left/up. Supports custom step using the :ref:`custom_step<class_ScrollBar_property_custom_step>` property.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_icon_decrement_highlight:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **decrement_highlight**
+
+Displayed when the mouse cursor hovers over the decrement button.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_icon_decrement_pressed:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **decrement_pressed**
+
+Displayed when the decrement button is being pressed.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_icon_increment:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **increment**
+
+Icon used as a button to scroll the **ScrollBar** right/down. Supports custom step using the :ref:`custom_step<class_ScrollBar_property_custom_step>` property.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_icon_increment_highlight:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **increment_highlight**
+
+Displayed when the mouse cursor hovers over the increment button.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_icon_increment_pressed:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **increment_pressed**
+
+Displayed when the increment button is being pressed.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_style_grabber:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **grabber**
+
+Used as texture for the grabber, the draggable element representing current scroll.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_style_grabber_highlight:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **grabber_highlight**
+
+Used when the mouse hovers over the grabber.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_style_grabber_pressed:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **grabber_pressed**
+
+Used when the grabber is being dragged.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_style_hscroll:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **hscroll**
+
+.. container:: contribute
+
+	There is currently no description for this theme property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_style_scroll:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **scroll**
+
+Used as background of this **ScrollBar**.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ScrollBar_theme_style_scroll_focus:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **scroll_focus**
+
+Used as background when the **ScrollBar** has the GUI focus.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 43 - 0
classes/class_separator.rst

@@ -23,6 +23,49 @@ Description
 
 Abstract base class for separators, used for separating other controls. **Separator**\ s are purely visual and normally drawn as a :ref:`StyleBoxLine<class_StyleBoxLine>`.
 
+.. rst-class:: classref-reftable-group
+
+Theme Properties
+----------------
+
+.. table::
+   :widths: auto
+
+   +---------------------------------+--------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`           | :ref:`separation<class_Separator_theme_constant_separation>` | ``0`` |
+   +---------------------------------+--------------------------------------------------------------+-------+
+   | :ref:`StyleBox<class_StyleBox>` | :ref:`separator<class_Separator_theme_style_separator>`      |       |
+   +---------------------------------+--------------------------------------------------------------+-------+
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Theme Property Descriptions
+---------------------------
+
+.. _class_Separator_theme_constant_separation:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`int<class_int>` **separation** = ``0``
+
+The size of the area covered by the separator. Effectively works like a minimum width/height.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Separator_theme_style_separator:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **separator**
+
+The style for the separator line. Works best with :ref:`StyleBoxLine<class_StyleBoxLine>` (remember to enable :ref:`StyleBoxLine.vertical<class_StyleBoxLine_property_vertical>` for :ref:`VSeparator<class_VSeparator>`).
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 141 - 0
classes/class_slider.rst

@@ -45,6 +45,34 @@ Properties
    | :ref:`bool<class_bool>`                  | :ref:`ticks_on_borders<class_Slider_property_ticks_on_borders>` | ``false``                                                           |
    +------------------------------------------+-----------------------------------------------------------------+---------------------------------------------------------------------+
 
+.. rst-class:: classref-reftable-group
+
+Theme Properties
+----------------
+
+.. table::
+   :widths: auto
+
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`             | :ref:`center_grabber<class_Slider_theme_constant_center_grabber>`              | ``0`` |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`int<class_int>`             | :ref:`grabber_offset<class_Slider_theme_constant_grabber_offset>`              | ``0`` |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber<class_Slider_theme_icon_grabber>`                                |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber_disabled<class_Slider_theme_icon_grabber_disabled>`              |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber_highlight<class_Slider_theme_icon_grabber_highlight>`            |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`tick<class_Slider_theme_icon_tick>`                                      |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_area<class_Slider_theme_style_grabber_area>`                     |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_area_highlight<class_Slider_theme_style_grabber_area_highlight>` |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`slider<class_Slider_theme_style_slider>`                                 |       |
+   +-----------------------------------+--------------------------------------------------------------------------------+-------+
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -147,6 +175,119 @@ Number of ticks displayed on the slider, including border ticks. Ticks are unifo
 
 If ``true``, the slider will display ticks for minimum and maximum values.
 
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Theme Property Descriptions
+---------------------------
+
+.. _class_Slider_theme_constant_center_grabber:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`int<class_int>` **center_grabber** = ``0``
+
+Boolean constant. If ``1``, the grabber texture size will be ignored and it will fit within slider's bounds based only on its center position.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_constant_grabber_offset:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`int<class_int>` **grabber_offset** = ``0``
+
+Vertical/horizontal offset of the grabber.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_icon_grabber:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **grabber**
+
+The texture for the grabber (the draggable element).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_icon_grabber_disabled:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **grabber_disabled**
+
+The texture for the grabber when it's disabled.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_icon_grabber_highlight:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **grabber_highlight**
+
+The texture for the grabber when it's focused.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_icon_tick:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **tick**
+
+The texture for the ticks, visible when :ref:`tick_count<class_Slider_property_tick_count>` is greater than 0.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_style_grabber_area:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **grabber_area**
+
+The background of the area to the left/bottom of the grabber.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_style_grabber_area_highlight:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **grabber_area_highlight**
+
+The background of the area to the left/bottom of the grabber that displays when it's being hovered or focused.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Slider_theme_style_slider:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **slider**
+
+The background for the whole slider. Determines the height/width of the ``grabber_area``.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 14 - 0
classes/class_splitcontainer.rst

@@ -75,6 +75,8 @@ Theme Properties
    +-----------------------------------+-------------------------------------------------------------------------------------------+--------+
    | :ref:`int<class_int>`             | :ref:`separation<class_SplitContainer_theme_constant_separation>`                         | ``12`` |
    +-----------------------------------+-------------------------------------------------------------------------------------------+--------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber<class_SplitContainer_theme_icon_grabber>`                                   |        |
+   +-----------------------------------+-------------------------------------------------------------------------------------------+--------+
    | :ref:`Texture2D<class_Texture2D>` | :ref:`h_grabber<class_SplitContainer_theme_icon_h_grabber>`                               |        |
    +-----------------------------------+-------------------------------------------------------------------------------------------+--------+
    | :ref:`Texture2D<class_Texture2D>` | :ref:`v_grabber<class_SplitContainer_theme_icon_v_grabber>`                               |        |
@@ -273,6 +275,18 @@ The space between sides of the container.
 
 ----
 
+.. _class_SplitContainer_theme_icon_grabber:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **grabber**
+
+The icon used for the grabber drawn in the middle area.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_SplitContainer_theme_icon_h_grabber:
 
 .. rst-class:: classref-themeproperty

+ 5 - 5
classes/class_string.rst

@@ -1770,7 +1770,7 @@ Returns part of the string from the position ``from`` with length ``len``. If ``
 
 :ref:`PackedByteArray<class_PackedByteArray>` **to_ascii_buffer** **(** **)** |const|
 
-Converts the string to an `ASCII <https://en.wikipedia.org/wiki/ASCII>`__/Latin-1 encoded :ref:`PackedByteArray<class_PackedByteArray>`. This method is slightly faster than :ref:`to_utf8_buffer<class_String_method_to_utf8_buffer>`, but replaces all unsupported characters with spaces.
+Converts the string to an `ASCII <https://en.wikipedia.org/wiki/ASCII>`__/Latin-1 encoded :ref:`PackedByteArray<class_PackedByteArray>`. This method is slightly faster than :ref:`to_utf8_buffer<class_String_method_to_utf8_buffer>`, but replaces all unsupported characters with spaces. This is the inverse of :ref:`PackedByteArray.get_string_from_ascii<class_PackedByteArray_method_get_string_from_ascii>`.
 
 .. rst-class:: classref-item-separator
 
@@ -1881,7 +1881,7 @@ Returns the string converted to uppercase.
 
 :ref:`PackedByteArray<class_PackedByteArray>` **to_utf8_buffer** **(** **)** |const|
 
-Converts the string to a `UTF-8 <https://en.wikipedia.org/wiki/UTF-8>`__ encoded :ref:`PackedByteArray<class_PackedByteArray>`. This method is slightly slower than :ref:`to_ascii_buffer<class_String_method_to_ascii_buffer>`, but supports all UTF-8 characters. For most cases, prefer using this method.
+Converts the string to a `UTF-8 <https://en.wikipedia.org/wiki/UTF-8>`__ encoded :ref:`PackedByteArray<class_PackedByteArray>`. This method is slightly slower than :ref:`to_ascii_buffer<class_String_method_to_ascii_buffer>`, but supports all UTF-8 characters. For most cases, prefer using this method. This is the inverse of :ref:`PackedByteArray.get_string_from_utf8<class_PackedByteArray_method_get_string_from_utf8>`.
 
 .. rst-class:: classref-item-separator
 
@@ -1893,7 +1893,7 @@ Converts the string to a `UTF-8 <https://en.wikipedia.org/wiki/UTF-8>`__ encoded
 
 :ref:`PackedByteArray<class_PackedByteArray>` **to_utf16_buffer** **(** **)** |const|
 
-Converts the string to a `UTF-16 <https://en.wikipedia.org/wiki/UTF-16>`__ encoded :ref:`PackedByteArray<class_PackedByteArray>`.
+Converts the string to a `UTF-16 <https://en.wikipedia.org/wiki/UTF-16>`__ encoded :ref:`PackedByteArray<class_PackedByteArray>`. This is the inverse of :ref:`PackedByteArray.get_string_from_utf16<class_PackedByteArray_method_get_string_from_utf16>`.
 
 .. rst-class:: classref-item-separator
 
@@ -1905,7 +1905,7 @@ Converts the string to a `UTF-16 <https://en.wikipedia.org/wiki/UTF-16>`__ encod
 
 :ref:`PackedByteArray<class_PackedByteArray>` **to_utf32_buffer** **(** **)** |const|
 
-Converts the string to a `UTF-32 <https://en.wikipedia.org/wiki/UTF-32>`__ encoded :ref:`PackedByteArray<class_PackedByteArray>`.
+Converts the string to a `UTF-32 <https://en.wikipedia.org/wiki/UTF-32>`__ encoded :ref:`PackedByteArray<class_PackedByteArray>`. This is the inverse of :ref:`PackedByteArray.get_string_from_utf32<class_PackedByteArray_method_get_string_from_utf32>`.
 
 .. rst-class:: classref-item-separator
 
@@ -1917,7 +1917,7 @@ Converts the string to a `UTF-32 <https://en.wikipedia.org/wiki/UTF-32>`__ encod
 
 :ref:`PackedByteArray<class_PackedByteArray>` **to_wchar_buffer** **(** **)** |const|
 
-Converts the string to a `wide character <https://en.wikipedia.org/wiki/Wide_character>`__ (``wchar_t``, UTF-16 on Windows, UTF-32 on other platforms) encoded :ref:`PackedByteArray<class_PackedByteArray>`.
+Converts the string to a `wide character <https://en.wikipedia.org/wiki/Wide_character>`__ (``wchar_t``, UTF-16 on Windows, UTF-32 on other platforms) encoded :ref:`PackedByteArray<class_PackedByteArray>`. This is the inverse of :ref:`PackedByteArray.get_string_from_wchar<class_PackedByteArray_method_get_string_from_wchar>`.
 
 .. rst-class:: classref-item-separator
 

+ 69 - 23
classes/class_tabbar.rst

@@ -29,29 +29,31 @@ Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`                                               | :ref:`clip_tabs<class_TabBar_property_clip_tabs>`                                 | ``true``  |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`int<class_int>`                                                 | :ref:`current_tab<class_TabBar_property_current_tab>`                             | ``0``     |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`                                               | :ref:`drag_to_rearrange_enabled<class_TabBar_property_drag_to_rearrange_enabled>` | ``false`` |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`int<class_int>`                                                 | :ref:`max_tab_width<class_TabBar_property_max_tab_width>`                         | ``0``     |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`                                               | :ref:`scroll_to_selected<class_TabBar_property_scroll_to_selected>`               | ``true``  |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`                                               | :ref:`scrolling_enabled<class_TabBar_property_scrolling_enabled>`                 | ``true``  |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`                                               | :ref:`select_with_rmb<class_TabBar_property_select_with_rmb>`                     | ``false`` |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`AlignmentMode<enum_TabBar_AlignmentMode>`                       | :ref:`tab_alignment<class_TabBar_property_tab_alignment>`                         | ``0``     |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`CloseButtonDisplayPolicy<enum_TabBar_CloseButtonDisplayPolicy>` | :ref:`tab_close_display_policy<class_TabBar_property_tab_close_display_policy>`   | ``0``     |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`int<class_int>`                                                 | :ref:`tab_count<class_TabBar_property_tab_count>`                                 | ``0``     |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
-   | :ref:`int<class_int>`                                                 | :ref:`tabs_rearrange_group<class_TabBar_property_tabs_rearrange_group>`           | ``-1``    |
-   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                               | :ref:`clip_tabs<class_TabBar_property_clip_tabs>`                                 | ``true``                                                            |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                                 | :ref:`current_tab<class_TabBar_property_current_tab>`                             | ``0``                                                               |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                               | :ref:`drag_to_rearrange_enabled<class_TabBar_property_drag_to_rearrange_enabled>` | ``false``                                                           |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`FocusMode<enum_Control_FocusMode>`                              | focus_mode                                                                        | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                                 | :ref:`max_tab_width<class_TabBar_property_max_tab_width>`                         | ``0``                                                               |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                               | :ref:`scroll_to_selected<class_TabBar_property_scroll_to_selected>`               | ``true``                                                            |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                               | :ref:`scrolling_enabled<class_TabBar_property_scrolling_enabled>`                 | ``true``                                                            |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                               | :ref:`select_with_rmb<class_TabBar_property_select_with_rmb>`                     | ``false``                                                           |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`AlignmentMode<enum_TabBar_AlignmentMode>`                       | :ref:`tab_alignment<class_TabBar_property_tab_alignment>`                         | ``0``                                                               |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`CloseButtonDisplayPolicy<enum_TabBar_CloseButtonDisplayPolicy>` | :ref:`tab_close_display_policy<class_TabBar_property_tab_close_display_policy>`   | ``0``                                                               |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                                 | :ref:`tab_count<class_TabBar_property_tab_count>`                                 | ``0``                                                               |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                                 | :ref:`tabs_rearrange_group<class_TabBar_property_tabs_rearrange_group>`           | ``-1``                                                              |
+   +-----------------------------------------------------------------------+-----------------------------------------------------------------------------------+---------------------------------------------------------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -100,6 +102,10 @@ Methods
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                             | :ref:`remove_tab<class_TabBar_method_remove_tab>` **(** :ref:`int<class_int>` tab_idx **)**                                                                                     |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                          | :ref:`select_next_available<class_TabBar_method_select_next_available>` **(** **)**                                                                                             |
+   +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                          | :ref:`select_previous_available<class_TabBar_method_select_previous_available>` **(** **)**                                                                                     |
+   +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                             | :ref:`set_tab_button_icon<class_TabBar_method_set_tab_button_icon>` **(** :ref:`int<class_int>` tab_idx, :ref:`Texture2D<class_Texture2D>` icon **)**                           |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                             | :ref:`set_tab_disabled<class_TabBar_method_set_tab_disabled>` **(** :ref:`int<class_int>` tab_idx, :ref:`bool<class_bool>` disabled **)**                                       |
@@ -168,6 +174,8 @@ Theme Properties
    +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_disabled<class_TabBar_theme_style_tab_disabled>`                   |                                     |
    +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_focus<class_TabBar_theme_style_tab_focus>`                         |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_hovered<class_TabBar_theme_style_tab_hovered>`                     |                                     |
    +-----------------------------------+------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_selected<class_TabBar_theme_style_tab_selected>`                   |                                     |
@@ -811,6 +819,30 @@ Removes the tab at index ``tab_idx``.
 
 ----
 
+.. _class_TabBar_method_select_next_available:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **select_next_available** **(** **)**
+
+Selects the first available tab with greater index than the currently selected. Returns ``true`` if tab selection changed.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_TabBar_method_select_previous_available:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **select_previous_available** **(** **)**
+
+Selects the first available tab with lower index than the currently selected. Returns ``true`` if tab selection changed.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TabBar_method_set_tab_button_icon:
 
 .. rst-class:: classref-method
@@ -1166,6 +1198,18 @@ The style of disabled tabs.
 
 ----
 
+.. _class_TabBar_theme_style_tab_focus:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **tab_focus**
+
+:ref:`StyleBox<class_StyleBox>` used when the **TabBar** is focused. The :ref:`tab_focus<class_TabBar_theme_style_tab_focus>` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>` of the selected tab, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TabBar_theme_style_tab_hovered:
 
 .. rst-class:: classref-themeproperty
@@ -1174,6 +1218,8 @@ The style of disabled tabs.
 
 The style of the currently hovered tab. Does not apply to the selected tab.
 
+\ **Note:** This style will be drawn with the same width as :ref:`tab_unselected<class_TabBar_theme_style_tab_unselected>` at minimum.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 79 - 0
classes/class_tabcontainer.rst

@@ -49,6 +49,8 @@ Properties
    +-------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    | :ref:`AlignmentMode<enum_TabBar_AlignmentMode>` | :ref:`tab_alignment<class_TabContainer_property_tab_alignment>`                               | ``0``     |
    +-------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
+   | :ref:`FocusMode<enum_Control_FocusMode>`        | :ref:`tab_focus_mode<class_TabContainer_property_tab_focus_mode>`                             | ``2``     |
+   +-------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    | :ref:`int<class_int>`                           | :ref:`tabs_rearrange_group<class_TabContainer_property_tabs_rearrange_group>`                 | ``-1``    |
    +-------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    | :ref:`bool<class_bool>`                         | :ref:`tabs_visible<class_TabContainer_property_tabs_visible>`                                 | ``true``  |
@@ -71,6 +73,8 @@ Methods
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`             | :ref:`get_previous_tab<class_TabContainer_method_get_previous_tab>` **(** **)** |const|                                                                     |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`TabBar<class_TabBar>`       | :ref:`get_tab_bar<class_TabContainer_method_get_tab_bar>` **(** **)** |const|                                                                               |
+   +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Texture2D<class_Texture2D>` | :ref:`get_tab_button_icon<class_TabContainer_method_get_tab_button_icon>` **(** :ref:`int<class_int>` tab_idx **)** |const|                                 |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Control<class_Control>`     | :ref:`get_tab_control<class_TabContainer_method_get_tab_control>` **(** :ref:`int<class_int>` tab_idx **)** |const|                                         |
@@ -91,6 +95,10 @@ Methods
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`           | :ref:`is_tab_hidden<class_TabContainer_method_is_tab_hidden>` **(** :ref:`int<class_int>` tab_idx **)** |const|                                             |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`           | :ref:`select_next_available<class_TabContainer_method_select_next_available>` **(** **)**                                                                   |
+   +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`           | :ref:`select_previous_available<class_TabContainer_method_select_previous_available>` **(** **)**                                                           |
+   +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                              | :ref:`set_popup<class_TabContainer_method_set_popup>` **(** :ref:`Node<class_Node>` popup **)**                                                             |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                              | :ref:`set_tab_button_icon<class_TabContainer_method_set_tab_button_icon>` **(** :ref:`int<class_int>` tab_idx, :ref:`Texture2D<class_Texture2D>` icon **)** |
@@ -157,6 +165,8 @@ Theme Properties
    +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_disabled<class_TabContainer_theme_style_tab_disabled>`                   |                                     |
    +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_focus<class_TabContainer_theme_style_tab_focus>`                         |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_hovered<class_TabContainer_theme_style_tab_hovered>`                     |                                     |
    +-----------------------------------+------------------------------------------------------------------------------------+-------------------------------------+
    | :ref:`StyleBox<class_StyleBox>`   | :ref:`tab_selected<class_TabContainer_theme_style_tab_selected>`                   |                                     |
@@ -349,6 +359,23 @@ Sets the position at which tabs will be placed. See :ref:`AlignmentMode<enum_Tab
 
 ----
 
+.. _class_TabContainer_property_tab_focus_mode:
+
+.. rst-class:: classref-property
+
+:ref:`FocusMode<enum_Control_FocusMode>` **tab_focus_mode** = ``2``
+
+.. rst-class:: classref-property-setget
+
+- void **set_tab_focus_mode** **(** :ref:`FocusMode<enum_Control_FocusMode>` value **)**
+- :ref:`FocusMode<enum_Control_FocusMode>` **get_tab_focus_mode** **(** **)**
+
+The focus access mode for the internal :ref:`TabBar<class_TabBar>` node.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TabContainer_property_tabs_rearrange_group:
 
 .. rst-class:: classref-property
@@ -445,6 +472,20 @@ Returns the previously active tab index.
 
 ----
 
+.. _class_TabContainer_method_get_tab_bar:
+
+.. rst-class:: classref-method
+
+:ref:`TabBar<class_TabBar>` **get_tab_bar** **(** **)** |const|
+
+Returns the :ref:`TabBar<class_TabBar>` contained in this container.
+
+\ **Warning:** This is a required internal node, removing and freeing it or editing its tabs may cause a crash. If you wish to edit the tabs, use the methods provided in **TabContainer**.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TabContainer_method_get_tab_button_icon:
 
 .. rst-class:: classref-method
@@ -565,6 +606,30 @@ Returns ``true`` if the tab at index ``tab_idx`` is hidden.
 
 ----
 
+.. _class_TabContainer_method_select_next_available:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **select_next_available** **(** **)**
+
+Selects the first available tab with greater index than the currently selected. Returns ``true`` if tab selection changed.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_TabContainer_method_select_previous_available:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **select_previous_available** **(** **)**
+
+Selects the first available tab with lower index than the currently selected. Returns ``true`` if tab selection changed.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TabContainer_method_set_popup:
 
 .. rst-class:: classref-method
@@ -910,6 +975,18 @@ The style of disabled tabs.
 
 ----
 
+.. _class_TabContainer_theme_style_tab_focus:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`StyleBox<class_StyleBox>` **tab_focus**
+
+:ref:`StyleBox<class_StyleBox>` used when the :ref:`TabBar<class_TabBar>` is focused. The :ref:`tab_focus<class_TabContainer_theme_style_tab_focus>` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>` of the selected tab, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TabContainer_theme_style_tab_hovered:
 
 .. rst-class:: classref-themeproperty
@@ -918,6 +995,8 @@ The style of disabled tabs.
 
 The style of the currently hovered tab.
 
+\ **Note:** This style will be drawn with the same width as :ref:`tab_unselected<class_TabContainer_theme_style_tab_unselected>` at minimum.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 5 - 1
classes/class_tilemap.rst

@@ -299,7 +299,11 @@ Show or hide the TileMap's navigation meshes. If set to :ref:`VISIBILITY_MODE_DE
 - void **set_rendering_quadrant_size** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_rendering_quadrant_size** **(** **)**
 
-The TileMap's quadrant size. Optimizes drawing by batching, using chunks of this size.
+The TileMap's quadrant size. A quadrant is a group of tiles to be drawn together on a single canvas item, for optimization purposes. :ref:`rendering_quadrant_size<class_TileMap_property_rendering_quadrant_size>` defines the length of a square's side, in the map's coordinate system, that forms the quadrant. Thus, the default quandrant size groups together ``16 * 16 = 256`` tiles.
+
+The quadrant size does not apply on Y-sorted layers, as tiles are be grouped by Y position instead in that case.
+
+\ **Note:** As quadrants are created according to the map's coordinate system, the quadrant's "square shape" might not look like square in the TileMap's local coordinate system.
 
 .. rst-class:: classref-item-separator
 

+ 14 - 0
classes/class_transform2d.rst

@@ -103,6 +103,8 @@ Methods
    +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Transform2D<class_Transform2D>` | :ref:`inverse<class_Transform2D_method_inverse>` **(** **)** |const|                                                                                                 |
    +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`               | :ref:`is_conformal<class_Transform2D_method_is_conformal>` **(** **)** |const|                                                                                       |
+   +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`               | :ref:`is_equal_approx<class_Transform2D_method_is_equal_approx>` **(** :ref:`Transform2D<class_Transform2D>` xform **)** |const|                                     |
    +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`               | :ref:`is_finite<class_Transform2D_method_is_finite>` **(** **)** |const|                                                                                             |
@@ -418,6 +420,18 @@ Returns the inverse of the transform, under the assumption that the transformati
 
 ----
 
+.. _class_Transform2D_method_is_conformal:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_conformal** **(** **)** |const|
+
+Returns ``true`` if the transform's basis is conformal, meaning it preserves angles and distance ratios, and may only be composed of rotation and uniform scale. Returns ``false`` if the transform's basis has non-uniform scale or shear/skew. This can be used to validate if the transform is non-distorted, which is important for physics and other use cases.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Transform2D_method_is_equal_approx:
 
 .. rst-class:: classref-method

+ 0 - 29
classes/class_vboxcontainer.rst

@@ -32,35 +32,6 @@ Tutorials
 
 - `3D Voxel Demo <https://godotengine.org/asset-library/asset/676>`__
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------+------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>` | :ref:`separation<class_VBoxContainer_theme_constant_separation>` | ``4`` |
-   +-----------------------+------------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_VBoxContainer_theme_constant_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **separation** = ``4``
-
-The vertical space between the **VBoxContainer**'s elements.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 43
classes/class_vflowcontainer.rst

@@ -28,49 +28,6 @@ Tutorials
 
 - :doc:`Using Containers <../tutorials/ui/gui_containers>`
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------+-----------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>` | :ref:`h_separation<class_VFlowContainer_theme_constant_h_separation>` | ``4`` |
-   +-----------------------+-----------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>` | :ref:`v_separation<class_VFlowContainer_theme_constant_v_separation>` | ``4`` |
-   +-----------------------+-----------------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_VFlowContainer_theme_constant_h_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **h_separation** = ``4``
-
-The horizontal separation of children nodes.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VFlowContainer_theme_constant_v_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **v_separation** = ``4``
-
-The vertical separation of children nodes.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 17 - 1
classes/class_viewport.rst

@@ -350,11 +350,19 @@ Use bilinear scaling for the viewport's 3D buffer. The amount of scaling can be
 
 Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`scaling_3d_scale<class_Viewport_property_scaling_3d_scale>`. Values less than ``1.0`` will be result in the viewport being upscaled using FSR. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` disables scaling.
 
+.. _class_Viewport_constant_SCALING_3D_MODE_FSR2:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`Scaling3DMode<enum_Viewport_Scaling3DMode>` **SCALING_3D_MODE_FSR2** = ``2``
+
+Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D buffer. The amount of scaling can be set using :ref:`scaling_3d_scale<class_Viewport_property_scaling_3d_scale>`. Values less than ``1.0`` will be result in the viewport being upscaled using FSR2. Values greater than ``1.0`` are not supported and bilinear downsampling will be used instead. A value of ``1.0`` will use FSR2 at native resolution as a TAA solution.
+
 .. _class_Viewport_constant_SCALING_3D_MODE_MAX:
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`Scaling3DMode<enum_Viewport_Scaling3DMode>` **SCALING_3D_MODE_MAX** = ``2``
+:ref:`Scaling3DMode<enum_Viewport_Scaling3DMode>` **SCALING_3D_MODE_MAX** = ``3``
 
 Represents the size of the :ref:`Scaling3DMode<enum_Viewport_Scaling3DMode>` enum.
 
@@ -736,6 +744,14 @@ Draws the decal atlas used by :ref:`Decal<class_Decal>`\ s and light projector t
 
 
 
+.. _class_Viewport_constant_DEBUG_DRAW_INTERNAL_BUFFER:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DebugDraw<enum_Viewport_DebugDraw>` **DEBUG_DRAW_INTERNAL_BUFFER** = ``26``
+
+Draws the internal resolution buffer of the scene before post-processing is applied.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 0 - 169
classes/class_vscrollbar.rst

@@ -35,175 +35,6 @@ Properties
    | |bitfield|\<:ref:`SizeFlags<enum_Control_SizeFlags>`\> | size_flags_vertical   | ``1`` (overrides :ref:`Control<class_Control_property_size_flags_vertical>`)   |
    +--------------------------------------------------------+-----------------------+--------------------------------------------------------------------------------+
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement<class_VScrollBar_theme_icon_decrement>`                     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement_highlight<class_VScrollBar_theme_icon_decrement_highlight>` |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`decrement_pressed<class_VScrollBar_theme_icon_decrement_pressed>`     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment<class_VScrollBar_theme_icon_increment>`                     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment_highlight<class_VScrollBar_theme_icon_increment_highlight>` |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`increment_pressed<class_VScrollBar_theme_icon_increment_pressed>`     |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber<class_VScrollBar_theme_style_grabber>`                        |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_highlight<class_VScrollBar_theme_style_grabber_highlight>`    |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_pressed<class_VScrollBar_theme_style_grabber_pressed>`        |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`scroll<class_VScrollBar_theme_style_scroll>`                          |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`scroll_focus<class_VScrollBar_theme_style_scroll_focus>`              |
-   +-----------------------------------+-----------------------------------------------------------------------------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_VScrollBar_theme_icon_decrement:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **decrement**
-
-Icon used as a button to scroll the :ref:`ScrollBar<class_ScrollBar>` up. Supports custom step using the :ref:`ScrollBar.custom_step<class_ScrollBar_property_custom_step>` property.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_icon_decrement_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **decrement_highlight**
-
-Displayed when the mouse cursor hovers over the decrement button.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_icon_decrement_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **decrement_pressed**
-
-Displayed when the decrement button is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_icon_increment:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **increment**
-
-Icon used as a button to scroll the :ref:`ScrollBar<class_ScrollBar>` down. Supports custom step using the :ref:`ScrollBar.custom_step<class_ScrollBar_property_custom_step>` property.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_icon_increment_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **increment_highlight**
-
-Displayed when the mouse cursor hovers over the increment button.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_icon_increment_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **increment_pressed**
-
-Displayed when the increment button is being pressed.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_style_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber**
-
-Used as texture for the grabber, the draggable element representing current scroll.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_style_grabber_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_highlight**
-
-Used when the mouse hovers over the grabber.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_style_grabber_pressed:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_pressed**
-
-Used when the grabber is being dragged.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_style_scroll:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **scroll**
-
-Used as background of this :ref:`ScrollBar<class_ScrollBar>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VScrollBar_theme_style_scroll_focus:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **scroll_focus**
-
-Used as background when the :ref:`ScrollBar<class_ScrollBar>` has the GUI focus.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 43
classes/class_vseparator.rst

@@ -21,49 +21,6 @@ Description
 
 A vertical separator used for separating other controls that are arranged **horizontally**. **VSeparator** is purely visual and normally drawn as a :ref:`StyleBoxLine<class_StyleBoxLine>`.
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +---------------------------------+---------------------------------------------------------------+-------+
-   | :ref:`int<class_int>`           | :ref:`separation<class_VSeparator_theme_constant_separation>` | ``4`` |
-   +---------------------------------+---------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>` | :ref:`separator<class_VSeparator_theme_style_separator>`      |       |
-   +---------------------------------+---------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_VSeparator_theme_constant_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **separation** = ``4``
-
-The width of the area covered by the separator. Effectively works like a minimum width.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSeparator_theme_style_separator:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **separator**
-
-The style for the separator line. Works best with :ref:`StyleBoxLine<class_StyleBoxLine>` (remember to enable :ref:`StyleBoxLine.vertical<class_StyleBoxLine_property_vertical>`).
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 141
classes/class_vslider.rst

@@ -35,147 +35,6 @@ Properties
    | |bitfield|\<:ref:`SizeFlags<enum_Control_SizeFlags>`\> | size_flags_vertical   | ``1`` (overrides :ref:`Control<class_Control_property_size_flags_vertical>`)   |
    +--------------------------------------------------------+-----------------------+--------------------------------------------------------------------------------+
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>`             | :ref:`center_grabber<class_VSlider_theme_constant_center_grabber>`              | ``0`` |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`int<class_int>`             | :ref:`grabber_offset<class_VSlider_theme_constant_grabber_offset>`              | ``0`` |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber<class_VSlider_theme_icon_grabber>`                                |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber_disabled<class_VSlider_theme_icon_grabber_disabled>`              |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber_highlight<class_VSlider_theme_icon_grabber_highlight>`            |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`tick<class_VSlider_theme_icon_tick>`                                      |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_area<class_VSlider_theme_style_grabber_area>`                     |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`grabber_area_highlight<class_VSlider_theme_style_grabber_area_highlight>` |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`slider<class_VSlider_theme_style_slider>`                                 |       |
-   +-----------------------------------+---------------------------------------------------------------------------------+-------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_VSlider_theme_constant_center_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **center_grabber** = ``0``
-
-Boolean constant. If ``1``, the grabber texture size will be ignored and it will fit within slider's bounds based only on its center position.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_constant_grabber_offset:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **grabber_offset** = ``0``
-
-Horizontal offset of the grabber.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_icon_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber**
-
-The texture for the grabber (the draggable element).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_icon_grabber_disabled:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber_disabled**
-
-The texture for the grabber when it's disabled.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_icon_grabber_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber_highlight**
-
-The texture for the grabber when it's focused.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_icon_tick:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **tick**
-
-The texture for the ticks, visible when :ref:`Slider.tick_count<class_Slider_property_tick_count>` is greater than 0.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_style_grabber_area:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_area**
-
-The background of the area below the grabber.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_style_grabber_area_highlight:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **grabber_area_highlight**
-
-The background of the area below the grabber that displays when it's being hovered or focused.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSlider_theme_style_slider:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`StyleBox<class_StyleBox>` **slider**
-
-The background for the whole slider. Determines the width of the ``grabber_area``.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 0 - 71
classes/class_vsplitcontainer.rst

@@ -28,77 +28,6 @@ Tutorials
 
 - :doc:`Using Containers <../tutorials/ui/gui_containers>`
 
-.. rst-class:: classref-reftable-group
-
-Theme Properties
-----------------
-
-.. table::
-   :widths: auto
-
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`int<class_int>`             | :ref:`autohide<class_VSplitContainer_theme_constant_autohide>`                             | ``1``  |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`int<class_int>`             | :ref:`minimum_grab_thickness<class_VSplitContainer_theme_constant_minimum_grab_thickness>` | ``6``  |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`int<class_int>`             | :ref:`separation<class_VSplitContainer_theme_constant_separation>`                         | ``12`` |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`grabber<class_VSplitContainer_theme_icon_grabber>`                                   |        |
-   +-----------------------------------+--------------------------------------------------------------------------------------------+--------+
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
-Theme Property Descriptions
----------------------------
-
-.. _class_VSplitContainer_theme_constant_autohide:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **autohide** = ``1``
-
-Boolean value. If 1 (``true``), the grabber will hide automatically when it isn't under the cursor. If 0 (``false``), it's always visible.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSplitContainer_theme_constant_minimum_grab_thickness:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **minimum_grab_thickness** = ``6``
-
-The minimum thickness of the area users can click on to grab the splitting line. If :ref:`separation<class_VSplitContainer_theme_constant_separation>` or :ref:`grabber<class_VSplitContainer_theme_icon_grabber>`'s thickness are too small, this ensure that the splitting line can still be dragged.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSplitContainer_theme_constant_separation:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`int<class_int>` **separation** = ``12``
-
-The space between sides of the container.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_VSplitContainer_theme_icon_grabber:
-
-.. rst-class:: classref-themeproperty
-
-:ref:`Texture2D<class_Texture2D>` **grabber**
-
-The icon used for the grabber drawn in the middle area.
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 1 - 0
classes/index.rst

@@ -438,6 +438,7 @@ Resources
     class_missingresource
     class_multimesh
     class_navigationmesh
+    class_navigationmeshsourcegeometrydata2d
     class_navigationmeshsourcegeometrydata3d
     class_navigationpolygon
     class_noise

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor