diff options
Diffstat (limited to 'doc')
47 files changed, 384 insertions, 204 deletions
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml index 10229bdb0e..41d1ccf2ea 100644 --- a/doc/classes/@GlobalScope.xml +++ b/doc/classes/@GlobalScope.xml @@ -463,7 +463,7 @@ var ratio = inverse_lerp(20, 30, 27.5) # `ratio` is now 0.75. [/codeblock] - See also [method lerp] which performs the reverse of this operation, and [method range_lerp] to map a continuous series of values to another. + See also [method lerp] which performs the reverse of this operation, and [method remap] to map a continuous series of values to another. </description> </method> <method name="is_equal_approx"> @@ -523,7 +523,7 @@ [codeblock] lerp(0, 4, 0.75) # Returns 3.0 [/codeblock] - See also [method inverse_lerp] which performs the reverse of this operation. To perform eased interpolation with [method lerp], combine it with [method ease] or [method smoothstep]. See also [method range_lerp] to map a continuous series of values to another. + See also [method inverse_lerp] which performs the reverse of this operation. To perform eased interpolation with [method lerp], combine it with [method ease] or [method smoothstep]. See also [method remap] to map a continuous series of values to another. [b]Note:[/b] For better type safety, you can use [method lerpf], [method Vector2.lerp], [method Vector3.lerp], [method Vector4.lerp], [method Color.lerp], [method Quaternion.slerp] or [method Basis.slerp] instead. </description> </method> @@ -888,7 +888,7 @@ [b]Note:[/b] This method is called automatically when the project is run. If you need to fix the seed to have reproducible results, use [method seed] to initialize the random number generator. </description> </method> - <method name="range_lerp"> + <method name="remap"> <return type="float" /> <param index="0" name="value" type="float" /> <param index="1" name="istart" type="float" /> @@ -896,9 +896,9 @@ <param index="3" name="ostart" type="float" /> <param index="4" name="ostop" type="float" /> <description> - Maps a [param value] from range [code][istart, istop][/code] to [code][ostart, ostop][/code]. See also [method lerp] and [method inverse_lerp]. If [param value] is outside [code][istart, istop][/code], then the resulting value will also be outside [code][ostart, ostop][/code]. Use [method clamp] on the result of [method range_lerp] if this is not desired. + Maps a [param value] from range [code][istart, istop][/code] to [code][ostart, ostop][/code]. See also [method lerp] and [method inverse_lerp]. If [param value] is outside [code][istart, istop][/code], then the resulting value will also be outside [code][ostart, ostop][/code]. Use [method clamp] on the result of [method remap] if this is not desired. [codeblock] - range_lerp(75, 0, 100, -1, 1) # Returns 0.5 + remap(75, 0, 100, -1, 1) # Returns 0.5 [/codeblock] For complex use cases where you need multiple ranges, consider using [Curve] or [Gradient] instead. </description> @@ -1275,8 +1275,8 @@ The [JavaClassWrapper] singleton. [b]Note:[/b] Only implemented on Android. </member> - <member name="JavaScript" type="JavaScript" setter="" getter=""> - The [JavaScript] singleton. + <member name="JavaScriptBridge" type="JavaScriptBridge" setter="" getter=""> + The [JavaScriptBridge] singleton. [b]Note:[/b] Only implemented on the Web platform. </member> <member name="Marshalls" type="Marshalls" setter="" getter=""> @@ -1302,9 +1302,15 @@ <member name="PhysicsServer2D" type="PhysicsServer2D" setter="" getter=""> The [PhysicsServer2D] singleton. </member> + <member name="PhysicsServer2DManager" type="PhysicsServer2DManager" setter="" getter=""> + The [PhysicsServer2DManager] singleton. + </member> <member name="PhysicsServer3D" type="PhysicsServer3D" setter="" getter=""> The [PhysicsServer3D] singleton. </member> + <member name="PhysicsServer3DManager" type="PhysicsServer3DManager" setter="" getter=""> + The [PhysicsServer3DManager] singleton. + </member> <member name="ProjectSettings" type="ProjectSettings" setter="" getter=""> The [ProjectSettings] singleton. </member> diff --git a/doc/classes/AABB.xml b/doc/classes/AABB.xml index e2e4e7c61d..23dd41f275 100644 --- a/doc/classes/AABB.xml +++ b/doc/classes/AABB.xml @@ -142,24 +142,24 @@ Returns a copy of the [AABB] grown a given number of units towards all the sides. </description> </method> - <method name="has_no_surface" qualifiers="const"> + <method name="has_point" qualifiers="const"> <return type="bool" /> + <param index="0" name="point" type="Vector3" /> <description> - Returns [code]true[/code] if the [AABB] is empty. + Returns [code]true[/code] if the [AABB] contains a point. Points on the faces of the AABB are considered included, though float-point precision errors may impact the accuracy of such checks. + [b]Note:[/b] This method is not reliable for [AABB] with a [i]negative size[/i]. Use [method abs] to get a positive sized equivalent [AABB] to check for contained points. </description> </method> - <method name="has_no_volume" qualifiers="const"> + <method name="has_surface" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the [AABB] is flat or empty. + Returns [code]true[/code] if the [AABB] has a surface or a length, and [code]false[/code] if the [AABB] is empty (all components of [member size] are zero or negative). </description> </method> - <method name="has_point" qualifiers="const"> + <method name="has_volume" qualifiers="const"> <return type="bool" /> - <param index="0" name="point" type="Vector3" /> <description> - Returns [code]true[/code] if the [AABB] contains a point. Points on the faces of the AABB are considered included, though float-point precision errors may impact the accuracy of such checks. - [b]Note:[/b] This method is not reliable for [AABB] with a [i]negative size[/i]. Use [method abs] to get a positive sized equivalent [AABB] to check for contained points. + Returns [code]true[/code] if the [AABB] has a volume, and [code]false[/code] if the [AABB] is flat, empty, or has a negative [member size]. </description> </method> <method name="intersection" qualifiers="const"> diff --git a/doc/classes/AStarGrid2D.xml b/doc/classes/AStarGrid2D.xml index ae696eb468..19cd9d21d7 100644 --- a/doc/classes/AStarGrid2D.xml +++ b/doc/classes/AStarGrid2D.xml @@ -1,8 +1,19 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="AStarGrid2D" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + A* (or "A-Star") pathfinding tailored to find the shortest paths on 2D grids. </brief_description> <description> + Compared to [AStar2D] you don't need to manually create points or connect them together. It also supports multiple type of heuristics and modes for diagonal movement. This class also provides a jumping mode which is faster to calculate than without it in the [AStar2D] class. + In contrast to [AStar2D], you only need set the [member size] of the grid, optionally set the [member cell_size] and then call the [method update] method: + [codeblock] + var astar_grid = AStarGrid2D.new() + astar_grid.size = Vector2i(32, 32) + astar_grid.cell_size = Vector2(16, 16) + astar_grid.update() + print(astar_grid.get_id_path(Vector2i(0, 0), Vector2i(3, 4))) # prints (0, 0), (1, 1), (2, 2), (3, 3), (3, 4) + print(astar_grid.get_point_path(Vector2i(0, 0), Vector2i(3, 4))) # prints (0, 0), (16, 16), (32, 32), (48, 48), (48, 64) + [/codeblock] </description> <tutorials> </tutorials> @@ -12,6 +23,8 @@ <param index="0" name="from_id" type="Vector2i" /> <param index="1" name="to_id" type="Vector2i" /> <description> + Called when computing the cost between two connected points. + Note that this function is hidden in the default [code]AStarGrid2D[/code] class. </description> </method> <method name="_estimate_cost" qualifiers="virtual const"> @@ -19,11 +32,14 @@ <param index="0" name="from_id" type="Vector2i" /> <param index="1" name="to_id" type="Vector2i" /> <description> + Called when estimating the cost between a point and the path's ending point. + Note that this function is hidden in the default [code]AStarGrid2D[/code] class. </description> </method> <method name="clear"> <return type="void" /> <description> + Clears the grid and sets the [member size] to [constant Vector2i.ZERO]. </description> </method> <method name="get_id_path"> @@ -31,6 +47,7 @@ <param index="0" name="from_id" type="Vector2i" /> <param index="1" name="to_id" type="Vector2i" /> <description> + Returns an array with the IDs of the points that form the path found by AStar2D between the given points. The array is ordered from the starting point to the ending point of the path. </description> </method> <method name="get_point_path"> @@ -38,11 +55,14 @@ <param index="0" name="from_id" type="Vector2i" /> <param index="1" name="to_id" type="Vector2i" /> <description> + Returns an array with the points that are in the path found by AStarGrid2D between the given points. The array is ordered from the starting point to the ending point of the path. + [b]Note:[/b] This method is not thread-safe. If called from a [Thread], it will return an empty [PackedVector3Array] and will print an error message. </description> </method> <method name="is_dirty" qualifiers="const"> <return type="bool" /> <description> + Indicates that the grid parameters were changed and [method update] needs to be called. </description> </method> <method name="is_in_bounds" qualifiers="const"> @@ -50,18 +70,21 @@ <param index="0" name="x" type="int" /> <param index="1" name="y" type="int" /> <description> + Returns [code]true[/code] if the [param x] and [param y] is a valid grid coordinate (id). </description> </method> <method name="is_in_boundsv" qualifiers="const"> <return type="bool" /> <param index="0" name="id" type="Vector2i" /> <description> + Returns [code]true[/code] if the [param id] vector is a valid grid coordinate. </description> </method> <method name="is_point_solid" qualifiers="const"> <return type="bool" /> <param index="0" name="id" type="Vector2i" /> <description> + Returns [code]true[/code] if a point is disabled for pathfinding. By default, all points are enabled. </description> </method> <method name="set_point_solid"> @@ -69,48 +92,87 @@ <param index="0" name="id" type="Vector2i" /> <param index="1" name="solid" type="bool" default="true" /> <description> + Disables or enables the specified point for pathfinding. Useful for making an obstacle. By default, all points are enabled. </description> </method> <method name="update"> <return type="void" /> <description> + Updates the internal state of the grid according to the parameters to prepare it to search the path. Needs to be called if parameters like [member size], [member cell_size] or [member offset] are changed. [method is_dirty] will return [code]true[/code] if this is the case and this needs to be called. </description> </method> </methods> <members> <member name="cell_size" type="Vector2" setter="set_cell_size" getter="get_cell_size" default="Vector2(1, 1)"> + The size of the point cell which will be applied to calculate the resulting point position returned by [method get_point_path]. If changed, [method update] needs to be called before finding the next path. </member> <member name="default_heuristic" type="int" setter="set_default_heuristic" getter="get_default_heuristic" enum="AStarGrid2D.Heuristic" default="0"> + The default [enum Heuristic] which will be used to calculate the path if [method _compute_cost] and/or [method _estimate_cost] were not overridden. </member> <member name="diagonal_mode" type="int" setter="set_diagonal_mode" getter="get_diagonal_mode" enum="AStarGrid2D.DiagonalMode" default="0"> + A specific [enum DiagonalMode] mode which will force the path to avoid or accept the specified diagonals. </member> <member name="jumping_enabled" type="bool" setter="set_jumping_enabled" getter="is_jumping_enabled" default="false"> + Enables or disables jumping to skip up the intermediate points and speeds up the searching algorithm. </member> <member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2(0, 0)"> + The offset of the grid which will be applied to calculate the resulting point position returned by [method get_point_path]. If changed, [method update] needs to be called before finding the next path. </member> <member name="size" type="Vector2i" setter="set_size" getter="get_size" default="Vector2i(0, 0)"> + The size of the grid (number of cells of size [member cell_size] on each axis). If changed, [method update] needs to be called before finding the next path. </member> </members> <constants> <constant name="HEURISTIC_EUCLIDEAN" value="0" enum="Heuristic"> + The Euclidean heuristic to be used for the pathfinding using the following formula: + [codeblock] + dx = abs(to_id.x - from_id.x) + dy = abs(to_id.y - from_id.y) + result = sqrt(dx * dx + dy * dy) + [/codeblock] </constant> <constant name="HEURISTIC_MANHATTAN" value="1" enum="Heuristic"> + The Manhattan heuristic to be used for the pathfinding using the following formula: + [codeblock] + dx = abs(to_id.x - from_id.x) + dy = abs(to_id.y - from_id.y) + result = dx + dy + [/codeblock] </constant> <constant name="HEURISTIC_OCTILE" value="2" enum="Heuristic"> + The Octile heuristic to be used for the pathfinding using the following formula: + [codeblock] + dx = abs(to_id.x - from_id.x) + dy = abs(to_id.y - from_id.y) + f = sqrt(2) - 1 + result = (dx < dy) ? f * dx + dy : f * dy + dx; + [/codeblock] </constant> <constant name="HEURISTIC_CHEBYSHEV" value="3" enum="Heuristic"> + The Chebyshev heuristic to be used for the pathfinding using the following formula: + [codeblock] + dx = abs(to_id.x - from_id.x) + dy = abs(to_id.y - from_id.y) + result = max(dx, dy) + [/codeblock] </constant> <constant name="HEURISTIC_MAX" value="4" enum="Heuristic"> + Represents the size of the [enum Heuristic] enum. </constant> <constant name="DIAGONAL_MODE_ALWAYS" value="0" enum="DiagonalMode"> + The pathfinding algorithm will ignore solid neighbors around the target cell and allow passing using diagonals. </constant> <constant name="DIAGONAL_MODE_NEVER" value="1" enum="DiagonalMode"> + The pathfinding algorithm will ignore all diagonals and the way will be always orthogonal. </constant> <constant name="DIAGONAL_MODE_AT_LEAST_ONE_WALKABLE" value="2" enum="DiagonalMode"> + The pathfinding algorithm will avoid using diagonals if at least two obstacles have been placed around the neighboring cells of the specific path segment. </constant> <constant name="DIAGONAL_MODE_ONLY_IF_NO_OBSTACLES" value="3" enum="DiagonalMode"> + The pathfinding algorithm will avoid using diagonals if any obstacle has been placed around the neighboring cells of the specific path segment. </constant> <constant name="DIAGONAL_MODE_MAX" value="4" enum="DiagonalMode"> + Represents the size of the [enum DiagonalMode] enum. </constant> </constants> </class> diff --git a/doc/classes/AcceptDialog.xml b/doc/classes/AcceptDialog.xml index ee49523c90..b5a1461876 100644 --- a/doc/classes/AcceptDialog.xml +++ b/doc/classes/AcceptDialog.xml @@ -99,14 +99,11 @@ </signal> </signals> <theme_items> - <theme_item name="button_margin" data_type="constant" type="int" default="32"> - Offset that is applied to the content of the window on the bottom, effectively moving the button row. - </theme_item> - <theme_item name="margin" data_type="constant" type="int" default="8"> - Offset that is applied to the content of the window on top, left, and right. + <theme_item name="buttons_separation" data_type="constant" type="int" default="10"> + The size of the vertical space between the dialog's content and the button row. </theme_item> <theme_item name="panel" data_type="style" type="StyleBox"> - Panel that fills up the background of the window. + The panel that fills the background of the window. </theme_item> </theme_items> </class> diff --git a/doc/classes/AnimatedTexture.xml b/doc/classes/AnimatedTexture.xml index 5ad4c4e10a..d2fa7bb1e9 100644 --- a/doc/classes/AnimatedTexture.xml +++ b/doc/classes/AnimatedTexture.xml @@ -62,7 +62,7 @@ <member name="frames" type="int" setter="set_frames" getter="get_frames" default="1"> Number of frames to use in the animation. While you can create the frames independently with [method set_frame_texture], you need to set this value for the animation to take new frames into account. The maximum number of frames is [constant MAX_FRAMES]. </member> - <member name="oneshot" type="bool" setter="set_oneshot" getter="get_oneshot" default="false"> + <member name="one_shot" type="bool" setter="set_one_shot" getter="get_one_shot" default="false"> If [code]true[/code], the animation will only play once and will not loop back to the first frame after reaching the end. Note that reaching the end will not set [member pause] to [code]true[/code]. </member> <member name="pause" type="bool" setter="set_pause" getter="get_pause" default="false"> diff --git a/doc/classes/Camera2D.xml b/doc/classes/Camera2D.xml index edb5235b75..bb78d537ad 100644 --- a/doc/classes/Camera2D.xml +++ b/doc/classes/Camera2D.xml @@ -7,7 +7,7 @@ Camera node for 2D scenes. It forces the screen (current layer) to scroll following this node. This makes it easier (and faster) to program scrollable scenes than manually changing the position of [CanvasItem]-based nodes. Cameras register themselves in the nearest [Viewport] node (when ascending the tree). Only one camera can be active per viewport. If no viewport is available ascending the tree, the camera will register in the global viewport. This node is intended to be a simple helper to get things going quickly, but more functionality may be desired to change how the camera works. To make your own custom camera node, inherit it from [Node2D] and change the transform of the canvas by setting [member Viewport.canvas_transform] in [Viewport] (you can obtain the current [Viewport] by using [method Node.get_viewport]). - Note that the [Camera2D] node's [code]position[/code] doesn't represent the actual position of the screen, which may differ due to applied smoothing or limits. You can use [method get_camera_screen_center] to get the real position. + Note that the [Camera2D] node's [code]position[/code] doesn't represent the actual position of the screen, which may differ due to applied smoothing or limits. You can use [method get_screen_center_position] to get the real position. </description> <tutorials> <link title="2D Platformer Demo">https://godotengine.org/asset-library/asset/120</link> @@ -27,20 +27,6 @@ Forces the camera to update scroll immediately. </description> </method> - <method name="get_camera_position" qualifiers="const"> - <return type="Vector2" /> - <description> - Returns the camera's [code]position[/code] (the tracked point the camera attempts to follow), relative to the origin. - [b]Note:[/b] The returned value is not the same as [member Node2D.position] or [member Node2D.global_position], as it is affected by the [code]drag[/code] properties. - </description> - </method> - <method name="get_camera_screen_center" qualifiers="const"> - <return type="Vector2" /> - <description> - Returns the location of the [Camera2D]'s screen-center, relative to the origin. - [b]Note:[/b] The real [code]position[/code] of the camera may be different, see [method get_camera_position]. - </description> - </method> <method name="get_drag_margin" qualifiers="const"> <return type="float" /> <param index="0" name="margin" type="int" enum="Side" /> @@ -55,6 +41,20 @@ Returns the camera limit for the specified [enum Side]. See also [member limit_bottom], [member limit_top], [member limit_left], and [member limit_right]. </description> </method> + <method name="get_screen_center_position" qualifiers="const"> + <return type="Vector2" /> + <description> + Returns the center of the screen from this camera's point of view, in global coordinates. + [b]Note:[/b] The exact targeted position of the camera may be different. See [method get_target_position]. + </description> + </method> + <method name="get_target_position" qualifiers="const"> + <return type="Vector2" /> + <description> + Returns this camera's target position, in global coordinates. + [b]Note:[/b] The returned value is not the same as [member Node2D.global_position], as it is affected by the drag properties. It is also not the same as the current position if [member smoothing_enabled] is [code]true[/code] (see [method get_screen_center_position]). + </description> + </method> <method name="reset_smoothing"> <return type="void" /> <description> diff --git a/doc/classes/CheckBox.xml b/doc/classes/CheckBox.xml index d39b75ae52..2ffe880971 100644 --- a/doc/classes/CheckBox.xml +++ b/doc/classes/CheckBox.xml @@ -35,7 +35,7 @@ <theme_item name="font_pressed_color" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> The [CheckBox] text's font color when it's pressed. </theme_item> - <theme_item name="check_v_adjust" data_type="constant" type="int" default="0"> + <theme_item name="check_v_offset" data_type="constant" type="int" default="0"> The vertical offset used when rendering the check icons (in pixels). </theme_item> <theme_item name="h_separation" data_type="constant" type="int" default="4"> diff --git a/doc/classes/CheckButton.xml b/doc/classes/CheckButton.xml index f49da69926..2f584103be 100644 --- a/doc/classes/CheckButton.xml +++ b/doc/classes/CheckButton.xml @@ -35,7 +35,7 @@ <theme_item name="font_pressed_color" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> The [CheckButton] text's font color when it's pressed. </theme_item> - <theme_item name="check_v_adjust" data_type="constant" type="int" default="0"> + <theme_item name="check_v_offset" data_type="constant" type="int" default="0"> The vertical offset used when rendering the toggle icons (in pixels). </theme_item> <theme_item name="h_separation" data_type="constant" type="int" default="4"> @@ -50,30 +50,30 @@ <theme_item name="font_size" data_type="font_size" type="int"> Font size of the [CheckButton]'s text. </theme_item> - <theme_item name="off" data_type="icon" type="Texture2D"> - The icon to display when the [CheckButton] is unchecked (for left-to-right layouts). - </theme_item> - <theme_item name="off_disabled" data_type="icon" type="Texture2D"> - The icon to display when the [CheckButton] is unchecked and disabled (for left-to-right layouts). - </theme_item> - <theme_item name="off_disabled_mirrored" data_type="icon" type="Texture2D"> - The icon to display when the [CheckButton] is unchecked and disabled (for right-to-left layouts). - </theme_item> - <theme_item name="off_mirrored" data_type="icon" type="Texture2D"> - The icon to display when the [CheckButton] is unchecked (for right-to-left layouts). - </theme_item> - <theme_item name="on" data_type="icon" type="Texture2D"> + <theme_item name="checked" data_type="icon" type="Texture2D"> The icon to display when the [CheckButton] is checked (for left-to-right layouts). </theme_item> - <theme_item name="on_disabled" data_type="icon" type="Texture2D"> + <theme_item name="checked_disabled" data_type="icon" type="Texture2D"> The icon to display when the [CheckButton] is checked and disabled (for left-to-right layouts). </theme_item> - <theme_item name="on_disabled_mirrored" data_type="icon" type="Texture2D"> + <theme_item name="checked_disabled_mirrored" data_type="icon" type="Texture2D"> The icon to display when the [CheckButton] is checked and disabled (for right-to-left layouts). </theme_item> - <theme_item name="on_mirrored" data_type="icon" type="Texture2D"> + <theme_item name="checked_mirrored" data_type="icon" type="Texture2D"> The icon to display when the [CheckButton] is checked (for right-to-left layouts). </theme_item> + <theme_item name="unchecked" data_type="icon" type="Texture2D"> + The icon to display when the [CheckButton] is unchecked (for left-to-right layouts). + </theme_item> + <theme_item name="unchecked_disabled" data_type="icon" type="Texture2D"> + The icon to display when the [CheckButton] is unchecked and disabled (for left-to-right layouts). + </theme_item> + <theme_item name="unchecked_disabled_mirrored" data_type="icon" type="Texture2D"> + The icon to display when the [CheckButton] is unchecked and disabled (for right-to-left layouts). + </theme_item> + <theme_item name="unchecked_mirrored" data_type="icon" type="Texture2D"> + The icon to display when the [CheckButton] is unchecked (for right-to-left layouts). + </theme_item> <theme_item name="disabled" data_type="style" type="StyleBox"> The [StyleBox] to display as a background when the [CheckButton] is disabled. </theme_item> diff --git a/doc/classes/Crypto.xml b/doc/classes/Crypto.xml index dab2a77584..ade63225dc 100644 --- a/doc/classes/Crypto.xml +++ b/doc/classes/Crypto.xml @@ -110,7 +110,7 @@ <return type="CryptoKey" /> <param index="0" name="size" type="int" /> <description> - Generates an RSA [CryptoKey] that can be used for creating self-signed certificates and passed to [method StreamPeerSSL.accept_stream]. + Generates an RSA [CryptoKey] that can be used for creating self-signed certificates and passed to [method StreamPeerTLS.accept_stream]. </description> </method> <method name="generate_self_signed_certificate"> diff --git a/doc/classes/CryptoKey.xml b/doc/classes/CryptoKey.xml index 1f502846b4..7db810177f 100644 --- a/doc/classes/CryptoKey.xml +++ b/doc/classes/CryptoKey.xml @@ -5,7 +5,7 @@ </brief_description> <description> The CryptoKey class represents a cryptographic key. Keys can be loaded and saved like any other [Resource]. - They can be used to generate a self-signed [X509Certificate] via [method Crypto.generate_self_signed_certificate] and as private key in [method StreamPeerSSL.accept_stream] along with the appropriate certificate. + They can be used to generate a self-signed [X509Certificate] via [method Crypto.generate_self_signed_certificate] and as private key in [method StreamPeerTLS.accept_stream] along with the appropriate certificate. </description> <tutorials> </tutorials> diff --git a/doc/classes/EditorInterface.xml b/doc/classes/EditorInterface.xml index c4bbc7c108..1e3b1f07ee 100644 --- a/doc/classes/EditorInterface.xml +++ b/doc/classes/EditorInterface.xml @@ -60,11 +60,10 @@ Returns the edited (current) scene's root [Node]. </description> </method> - <method name="get_editor_main_control"> - <return type="Control" /> + <method name="get_editor_main_screen"> + <return type="VBoxContainer" /> <description> - Returns the main editor control. Use this as a parent for main screens. - [b]Note:[/b] This returns the main editor control containing the whole editor, not the 2D or 3D viewports specifically. + Returns the editor control responsible for main screen plugins and tools. Use it with plugins that implement [method EditorPlugin._has_main_screen]. [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash. </description> </method> diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml index fdd3807b69..3c0d3ec6be 100644 --- a/doc/classes/EditorPlugin.xml +++ b/doc/classes/EditorPlugin.xml @@ -303,7 +303,7 @@ func _enter_tree(): plugin_control = preload("my_plugin_control.tscn").instantiate() - get_editor_interface().get_editor_main_control().add_child(plugin_control) + get_editor_interface().get_editor_main_screen().add_child(plugin_control) plugin_control.hide() func _has_main_screen(): @@ -406,6 +406,7 @@ When a given node or resource is selected, the base type will be instantiated (e.g. "Node3D", "Control", "Resource"), then the script will be loaded and set to this object. You can use the virtual method [method _handles] to check if your custom object is being edited by checking the script or using the [code]is[/code] keyword. During run-time, this will be a simple object with a script so this function does not need to be called then. + [b]Note:[/b] Custom types added this way are not true classes. They are just a helper to create a node with specific script. </description> </method> <method name="add_debugger_plugin"> diff --git a/doc/classes/EditorSettings.xml b/doc/classes/EditorSettings.xml index 6a7bb96e0f..329cd3fe63 100644 --- a/doc/classes/EditorSettings.xml +++ b/doc/classes/EditorSettings.xml @@ -616,8 +616,8 @@ The port number to use to contact the HTTP and HTTPS proxy in the editor (for the asset library and export template downloads). See also [member network/http_proxy/host]. [b]Note:[/b] Godot currently doesn't automatically use system proxy settings, so you have to enter them manually here if needed. </member> - <member name="network/ssl/editor_ssl_certificates" type="String" setter="" getter=""> - The SSL certificate bundle to use for HTTP requests made within the editor (e.g. from the AssetLib tab). If left empty, the [url=https://github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates.crt]included Mozilla certificate bundle[/url] will be used. + <member name="network/tls/editor_tls_certificates" type="String" setter="" getter=""> + The TLS certificate bundle to use for HTTP requests made within the editor (e.g. from the AssetLib tab). If left empty, the [url=https://github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates.crt]included Mozilla certificate bundle[/url] will be used. </member> <member name="project_manager/sorting_order" type="int" setter="" getter=""> The sorting order to use in the project manager. When changing the sorting order in the project manager, this setting is set permanently in the editor settings. @@ -647,9 +647,9 @@ The monitor to display the project on when starting the project from the editor. </member> <member name="text_editor/appearance/caret/caret_blink" type="bool" setter="" getter=""> - If [code]true[/code], makes the caret blink according to [member text_editor/appearance/caret/caret_blink_speed]. Disabling this setting can improve battery life on laptops if you spend long amounts of time in the script editor, since it will reduce the frequency at which the editor needs to be redrawn. + If [code]true[/code], makes the caret blink according to [member text_editor/appearance/caret/caret_blink_interval]. Disabling this setting can improve battery life on laptops if you spend long amounts of time in the script editor, since it will reduce the frequency at which the editor needs to be redrawn. </member> - <member name="text_editor/appearance/caret/caret_blink_speed" type="float" setter="" getter=""> + <member name="text_editor/appearance/caret/caret_blink_interval" type="float" setter="" getter=""> The interval at which to blink the caret (in seconds). See also [member text_editor/appearance/caret/caret_blink]. </member> <member name="text_editor/appearance/caret/highlight_all_occurrences" type="bool" setter="" getter=""> diff --git a/doc/classes/FileDialog.xml b/doc/classes/FileDialog.xml index 43a941c8c8..af04956e61 100644 --- a/doc/classes/FileDialog.xml +++ b/doc/classes/FileDialog.xml @@ -131,13 +131,13 @@ </constant> </constants> <theme_items> - <theme_item name="file_icon_modulate" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> - The color modulation applied to the file icon. - </theme_item> - <theme_item name="files_disabled" data_type="color" type="Color" default="Color(1, 1, 1, 0.25)"> + <theme_item name="file_disabled_color" data_type="color" type="Color" default="Color(1, 1, 1, 0.25)"> The color tint for disabled files (when the [FileDialog] is used in open folder mode). </theme_item> - <theme_item name="folder_icon_modulate" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> + <theme_item name="file_icon_color" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> + The color modulation applied to the file icon. + </theme_item> + <theme_item name="folder_icon_color" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> The color modulation applied to the folder icon. </theme_item> <theme_item name="back_folder" data_type="icon" type="Texture2D"> diff --git a/doc/classes/HSplitContainer.xml b/doc/classes/HSplitContainer.xml index 8137e26b8c..13915bd762 100644 --- a/doc/classes/HSplitContainer.xml +++ b/doc/classes/HSplitContainer.xml @@ -13,6 +13,9 @@ <theme_item name="autohide" data_type="constant" type="int" default="1"> Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically when it isn't under the cursor. If 0 ([code]false[/code]), it's always visible. </theme_item> + <theme_item name="minimum_grab_thickness" data_type="constant" type="int" default="6"> + The minimum thickness of the area users can click on to grab the splitting line. If [theme_item separation] or [theme_item grabber]'s thickness are too small, this ensure that the splitting line can still be dragged. + </theme_item> <theme_item name="separation" data_type="constant" type="int" default="12"> The space between sides of the container. </theme_item> diff --git a/doc/classes/HTTPClient.xml b/doc/classes/HTTPClient.xml index 332ce9d8f4..b3ed38d250 100644 --- a/doc/classes/HTTPClient.xml +++ b/doc/classes/HTTPClient.xml @@ -7,17 +7,17 @@ Hyper-text transfer protocol client (sometimes called "User Agent"). Used to make HTTP requests to download web content, upload files and other data or to communicate with various services, among other use cases. See the [HTTPRequest] node for a higher-level alternative. [b]Note:[/b] This client only needs to connect to a host once (see [method connect_to_host]) to send multiple requests. Because of this, methods that take URLs usually take just the part after the host instead of the full URL, as the client is already connected to a host. See [method request] for a full example and to get started. - A [HTTPClient] should be reused between multiple requests or to connect to different hosts instead of creating one client per request. Supports SSL and SSL server certificate verification. HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "try again, but over here"), 4xx something was wrong with the request, and 5xx something went wrong on the server's side. + A [HTTPClient] should be reused between multiple requests or to connect to different hosts instead of creating one client per request. Supports Transport Layer Security (TLS), including server certificate verification. HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "try again, but over here"), 4xx something was wrong with the request, and 5xx something went wrong on the server's side. For more information on HTTP, see https://developer.mozilla.org/en-US/docs/Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools.ietf.org/html/rfc2616). [b]Note:[/b] When exporting to Android, make sure to enable the [code]INTERNET[/code] permission in the Android export preset before exporting the project or using one-click deploy. Otherwise, network communication of any kind will be blocked by Android. - [b]Note:[/b] It's recommended to use transport encryption (SSL/TLS) and to avoid sending sensitive information (such as login credentials) in HTTP GET URL parameters. Consider using HTTP POST requests or HTTP headers for such information instead. + [b]Note:[/b] It's recommended to use transport encryption (TLS) and to avoid sending sensitive information (such as login credentials) in HTTP GET URL parameters. Consider using HTTP POST requests or HTTP headers for such information instead. [b]Note:[/b] When performing HTTP requests from a project exported to Web, keep in mind the remote server may not allow requests from foreign origins due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/url]. If you host the server in question, you should modify its backend to allow requests from foreign origins by adding the [code]Access-Control-Allow-Origin: *[/code] HTTP header. - [b]Note:[/b] SSL/TLS support is currently limited to TLS 1.0, TLS 1.1, and TLS 1.2. Attempting to connect to a TLS 1.3-only server will return an error. - [b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are currently not supported. Revoked certificates are accepted as long as they are otherwise valid. If this is a concern, you may want to use automatically managed certificates with a short validity period. + [b]Note:[/b] TLS support is currently limited to TLS 1.0, TLS 1.1, and TLS 1.2. Attempting to connect to a TLS 1.3-only server will return an error. + [b]Warning:[/b] TLS certificate revocation and certificate pinning are currently not supported. Revoked certificates are accepted as long as they are otherwise valid. If this is a concern, you may want to use automatically managed certificates with a short validity period. </description> <tutorials> <link title="HTTP client class">$DOCS_URL/tutorials/networking/http_client_class.html</link> - <link title="SSL certificates">$DOCS_URL/tutorials/networking/ssl_certificates.html</link> + <link title="TLS certificates">$DOCS_URL/tutorials/networking/ssl_certificates.html</link> </tutorials> <methods> <method name="close"> @@ -30,13 +30,13 @@ <return type="int" enum="Error" /> <param index="0" name="host" type="String" /> <param index="1" name="port" type="int" default="-1" /> - <param index="2" name="use_ssl" type="bool" default="false" /> + <param index="2" name="use_tls" type="bool" default="false" /> <param index="3" name="verify_host" type="bool" default="true" /> <description> Connects to a host. This needs to be done before any requests are sent. The host should not have http:// prepended but will strip the protocol identifier if provided. - If no [param port] is specified (or [code]-1[/code] is used), it is automatically set to 80 for HTTP and 443 for HTTPS (if [param use_ssl] is enabled). - [param verify_host] will check the SSL identity of the host if set to [code]true[/code]. + If no [param port] is specified (or [code]-1[/code] is used), it is automatically set to 80 for HTTP and 443 for HTTPS (if [param use_tls] is enabled). + [param verify_host] will check the TLS identity of the host if set to [code]true[/code]. </description> </method> <method name="get_response_body_length" qualifiers="const"> @@ -262,8 +262,8 @@ <constant name="STATUS_CONNECTION_ERROR" value="8" enum="Status"> Status: Error in HTTP connection. </constant> - <constant name="STATUS_SSL_HANDSHAKE_ERROR" value="9" enum="Status"> - Status: Error in SSL handshake. + <constant name="STATUS_TLS_HANDSHAKE_ERROR" value="9" enum="Status"> + Status: Error in TLS handshake. </constant> <constant name="RESPONSE_CONTINUE" value="100" enum="ResponseCode"> HTTP status code [code]100 Continue[/code]. Interim response that indicates everything so far is OK and that the client should continue with the request (or ignore this status if already finished). diff --git a/doc/classes/HTTPRequest.xml b/doc/classes/HTTPRequest.xml index 4b098bf585..64a3315308 100644 --- a/doc/classes/HTTPRequest.xml +++ b/doc/classes/HTTPRequest.xml @@ -6,7 +6,7 @@ <description> A node with the ability to send HTTP requests. Uses [HTTPClient] internally. Can be used to make HTTP requests, i.e. download or upload files or web content via HTTP. - [b]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, especially regarding SSL security. + [b]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, especially regarding TLS security. [b]Note:[/b] When exporting to Android, make sure to enable the [code]INTERNET[/code] permission in the Android export preset before exporting the project or using one-click deploy. Otherwise, network communication of any kind will be blocked by Android. [b]Example of contacting a REST API and printing one of its returned fields:[/b] [codeblocks] @@ -157,7 +157,7 @@ </description> <tutorials> <link title="Making HTTP requests">$DOCS_URL/tutorials/networking/http_request_class.html</link> - <link title="SSL certificates">$DOCS_URL/tutorials/networking/ssl_certificates.html</link> + <link title="TLS certificates">$DOCS_URL/tutorials/networking/ssl_certificates.html</link> </tutorials> <methods> <method name="cancel_request"> @@ -189,21 +189,21 @@ <return type="int" enum="Error" /> <param index="0" name="url" type="String" /> <param index="1" name="custom_headers" type="PackedStringArray" default="PackedStringArray()" /> - <param index="2" name="ssl_validate_domain" type="bool" default="true" /> + <param index="2" name="tls_validate_domain" type="bool" default="true" /> <param index="3" name="method" type="int" enum="HTTPClient.Method" default="0" /> <param index="4" name="request_data" type="String" default="""" /> <description> Creates request on the underlying [HTTPClient]. If there is no configuration errors, it tries to connect using [method HTTPClient.connect_to_host] and passes parameters onto [method HTTPClient.request]. Returns [constant OK] if request is successfully created. (Does not imply that the server has responded), [constant ERR_UNCONFIGURED] if not in the tree, [constant ERR_BUSY] if still processing previous request, [constant ERR_INVALID_PARAMETER] if given string is not a valid URL format, or [constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot connect to host. [b]Note:[/b] When [param method] is [constant HTTPClient.METHOD_GET], the payload sent via [param request_data] might be ignored by the server or even cause the server to reject the request (check [url=https://datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 section 4.3.1[/url] for more details). As a workaround, you can send data as a query string in the URL (see [method String.uri_encode] for an example). - [b]Note:[/b] It's recommended to use transport encryption (SSL/TLS) and to avoid sending sensitive information (such as login credentials) in HTTP GET URL parameters. Consider using HTTP POST requests or HTTP headers for such information instead. + [b]Note:[/b] It's recommended to use transport encryption (TLS) and to avoid sending sensitive information (such as login credentials) in HTTP GET URL parameters. Consider using HTTP POST requests or HTTP headers for such information instead. </description> </method> <method name="request_raw"> <return type="int" enum="Error" /> <param index="0" name="url" type="String" /> <param index="1" name="custom_headers" type="PackedStringArray" default="PackedStringArray()" /> - <param index="2" name="ssl_validate_domain" type="bool" default="true" /> + <param index="2" name="tls_validate_domain" type="bool" default="true" /> <param index="3" name="method" type="int" enum="HTTPClient.Method" default="0" /> <param index="4" name="request_data_raw" type="PackedByteArray" default="PackedByteArray()" /> <description> @@ -283,8 +283,8 @@ <constant name="RESULT_CONNECTION_ERROR" value="4" enum="Result"> Request failed due to connection (read/write) error. </constant> - <constant name="RESULT_SSL_HANDSHAKE_ERROR" value="5" enum="Result"> - Request failed on SSL handshake. + <constant name="RESULT_TLS_HANDSHAKE_ERROR" value="5" enum="Result"> + Request failed on TLS handshake. </constant> <constant name="RESULT_NO_RESPONSE" value="6" enum="Result"> Request does not have a response (yet). diff --git a/doc/classes/ItemList.xml b/doc/classes/ItemList.xml index 75a0e1cef7..55d794ae59 100644 --- a/doc/classes/ItemList.xml +++ b/doc/classes/ItemList.xml @@ -469,18 +469,18 @@ <theme_item name="font_size" data_type="font_size" type="int"> Font size of the item's text. </theme_item> - <theme_item name="bg" data_type="style" type="StyleBox"> - Default [StyleBox] for the [ItemList], i.e. used when the control is not being focused. - </theme_item> - <theme_item name="bg_focus" data_type="style" type="StyleBox"> - [StyleBox] used when the [ItemList] is being focused. - </theme_item> <theme_item name="cursor" data_type="style" type="StyleBox"> [StyleBox] used for the cursor, when the [ItemList] is being focused. </theme_item> <theme_item name="cursor_unfocused" data_type="style" type="StyleBox"> [StyleBox] used for the cursor, when the [ItemList] is not being focused. </theme_item> + <theme_item name="focus" data_type="style" type="StyleBox"> + The focused style for the [ItemList], drawn on top of the background, but below everything else. + </theme_item> + <theme_item name="panel" data_type="style" type="StyleBox"> + The background style for the [ItemList]. + </theme_item> <theme_item name="selected" data_type="style" type="StyleBox"> [StyleBox] for the selected items, used when the [ItemList] is not being focused. </theme_item> diff --git a/doc/classes/JavaScript.xml b/doc/classes/JavaScriptBridge.xml index c838422e85..5e36b5cc80 100644 --- a/doc/classes/JavaScript.xml +++ b/doc/classes/JavaScriptBridge.xml @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="JavaScript" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="JavaScriptBridge" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Singleton that connects the engine with the browser's JavaScript context in Web export. </brief_description> <description> - The JavaScript singleton is implemented only in the Web export. It's used to access the browser's JavaScript context. This allows interaction with embedding pages or calling third-party JavaScript APIs. - [b]Note:[/b] This singleton can be disabled at build-time to improve security. By default, the JavaScript singleton is enabled. Official export templates also have the JavaScript singleton enabled. See [url=$DOCS_URL/development/compiling/compiling_for_web.html]Compiling for the Web[/url] in the documentation for more information. + The JavaScriptBridge singleton is implemented only in the Web export. It's used to access the browser's JavaScript context. This allows interaction with embedding pages or calling third-party JavaScript APIs. + [b]Note:[/b] This singleton can be disabled at build-time to improve security. By default, the JavaScriptBridge singleton is enabled. Official export templates also have the JavaScriptBridge singleton enabled. See [url=$DOCS_URL/development/compiling/compiling_for_web.html]Compiling for the Web[/url] in the documentation for more information. </description> <tutorials> <link title="Exporting for the Web: Calling JavaScript from script">$DOCS_URL/tutorials/export/exporting_for_web.html#calling-javascript-from-script</link> diff --git a/doc/classes/JavaScriptObject.xml b/doc/classes/JavaScriptObject.xml index e279acf5a4..26792bd19e 100644 --- a/doc/classes/JavaScriptObject.xml +++ b/doc/classes/JavaScriptObject.xml @@ -1,27 +1,27 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="JavaScriptObject" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - A wrapper class for native JavaScript objects. + A wrapper class for web native JavaScript objects. </brief_description> <description> - JavaScriptObject is used to interact with JavaScript objects retrieved or created via [method JavaScript.get_interface], [method JavaScript.create_object], or [method JavaScript.create_callback]. + JavaScriptObject is used to interact with JavaScript objects retrieved or created via [method JavaScriptBridge.get_interface], [method JavaScriptBridge.create_object], or [method JavaScriptBridge.create_callback]. Example: [codeblock] extends Node - var _my_js_callback = JavaScript.create_callback(self, "myCallback") # This reference must be kept - var console = JavaScript.get_interface("console") + var _my_js_callback = JavaScriptBridge.create_callback(self, "myCallback") # This reference must be kept + var console = JavaScriptBridge.get_interface("console") func _init(): - var buf = JavaScript.create_object("ArrayBuffer", 10) # new ArrayBuffer(10) + var buf = JavaScriptBridge.create_object("ArrayBuffer", 10) # new ArrayBuffer(10) print(buf) # prints [JavaScriptObject:OBJECT_ID] - var uint8arr = JavaScript.create_object("Uint8Array", buf) # new Uint8Array(buf) + var uint8arr = JavaScriptBridge.create_object("Uint8Array", buf) # new Uint8Array(buf) uint8arr[1] = 255 prints(uint8arr[1], uint8arr.byteLength) # prints 255 10 console.log(uint8arr) # prints in browser console "Uint8Array(10) [ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0 ]" - # Equivalent of JavaScript: Array.from(uint8arr).forEach(myCallback) - JavaScript.get_interface("Array").from(uint8arr).forEach(_my_js_callback) + # Equivalent of JavaScriptBridge: Array.from(uint8arr).forEach(myCallback) + JavaScriptBridge.get_interface("Array").from(uint8arr).forEach(_my_js_callback) func myCallback(args): # Will be called with the parameters passed to the "forEach" callback diff --git a/doc/classes/LineEdit.xml b/doc/classes/LineEdit.xml index f8f2375a71..14fb864ca8 100644 --- a/doc/classes/LineEdit.xml +++ b/doc/classes/LineEdit.xml @@ -144,7 +144,7 @@ <member name="caret_blink" type="bool" setter="set_caret_blink_enabled" getter="is_caret_blink_enabled" default="false"> If [code]true[/code], the caret (text cursor) blinks. </member> - <member name="caret_blink_speed" type="float" setter="set_caret_blink_speed" getter="get_caret_blink_speed" default="0.65"> + <member name="caret_blink_interval" type="float" setter="set_caret_blink_interval" getter="get_caret_blink_interval" default="0.65"> Duration (in seconds) of a caret's blinking cycle. </member> <member name="caret_column" type="int" setter="set_caret_column" getter="get_caret_column" default="0"> diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml index c18bf3d40f..92beefa5fc 100644 --- a/doc/classes/Node.xml +++ b/doc/classes/Node.xml @@ -121,11 +121,11 @@ <method name="add_child"> <return type="void" /> <param index="0" name="node" type="Node" /> - <param index="1" name="legible_unique_name" type="bool" default="false" /> + <param index="1" name="force_readable_name" type="bool" default="false" /> <param index="2" name="internal" type="int" enum="Node.InternalMode" default="0" /> <description> - Adds a child node. Nodes can have any number of children, but every child must have a unique name. Child nodes are automatically deleted when the parent node is deleted, so an entire scene can be removed by deleting its topmost node. - If [param legible_unique_name] is [code]true[/code], the child node will have a human-readable name based on the name of the node being instantiated instead of its type. + Adds a child [param node]. Nodes can have any number of children, but every child must have a unique name. Child nodes are automatically deleted when the parent node is deleted, so an entire scene can be removed by deleting its topmost node. + If [param force_readable_name] is [code]true[/code], improves the readability of the added [param node]. If not named, the [param node] is renamed to its type, and if it shares [member name] with a sibling, a number is suffixed more appropriately. This operation is very slow. As such, it is recommended leaving this to [code]false[/code], which assigns a dummy name featuring [code]@[/code] in both situations. If [param internal] is different than [constant INTERNAL_MODE_DISABLED], the child will be added as internal node. Such nodes are ignored by methods like [method get_children], unless their parameter [code]include_internal[/code] is [code]true[/code].The intended usage is to hide the internal nodes from the user, so the user won't accidentally delete or modify them. Used by some GUI nodes, e.g. [ColorPicker]. See [enum InternalMode] for available modes. [b]Note:[/b] If the child node already has a parent, the function will fail. Use [method remove_child] first to remove the node from its current parent. For example: [codeblocks] @@ -151,10 +151,10 @@ <method name="add_sibling"> <return type="void" /> <param index="0" name="sibling" type="Node" /> - <param index="1" name="legible_unique_name" type="bool" default="false" /> + <param index="1" name="force_readable_name" type="bool" default="false" /> <description> Adds a [param sibling] node to current's node parent, at the same level as that node, right below it. - If [param legible_unique_name] is [code]true[/code], the child node will have a human-readable name based on the name of the node being instantiated instead of its type. + If [param force_readable_name] is [code]true[/code], improves the readability of the added [param sibling]. If not named, the [param sibling] is renamed to its type, and if it shares [member name] with a sibling, a number is suffixed more appropriately. This operation is very slow. As such, it is recommended leaving this to [code]false[/code], which assigns a dummy name featuring [code]@[/code] in both situations. Use [method add_child] instead of this method if you don't need the child node to be added below a specific node in the list of children. [b]Note:[/b] If this node is internal, the new sibling will be internal too (see [code]internal[/code] parameter in [method add_child]). </description> diff --git a/doc/classes/Object.xml b/doc/classes/Object.xml index 3c71a02a21..7ad1908bb5 100644 --- a/doc/classes/Object.xml +++ b/doc/classes/Object.xml @@ -633,7 +633,7 @@ <constant name="CONNECT_PERSIST" value="2" enum="ConnectFlags"> Persisting connections are saved when the object is serialized to file. </constant> - <constant name="CONNECT_ONESHOT" value="4" enum="ConnectFlags"> + <constant name="CONNECT_ONE_SHOT" value="4" enum="ConnectFlags"> One-shot connections disconnect themselves after emission. </constant> <constant name="CONNECT_REFERENCE_COUNTED" value="8" enum="ConnectFlags"> diff --git a/doc/classes/PacketPeerDTLS.xml b/doc/classes/PacketPeerDTLS.xml index e9918bdd3a..db8403a56b 100644 --- a/doc/classes/PacketPeerDTLS.xml +++ b/doc/classes/PacketPeerDTLS.xml @@ -6,7 +6,7 @@ <description> This class represents a DTLS peer connection. It can be used to connect to a DTLS server, and is returned by [method DTLSServer.take_connection]. [b]Note:[/b] When exporting to Android, make sure to enable the [code]INTERNET[/code] permission in the Android export preset before exporting the project or using one-click deploy. Otherwise, network communication of any kind will be blocked by Android. - [b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are currently not supported. Revoked certificates are accepted as long as they are otherwise valid. If this is a concern, you may want to use automatically managed certificates with a short validity period. + [b]Warning:[/b] TLS certificate revocation and certificate pinning are currently not supported. Revoked certificates are accepted as long as they are otherwise valid. If this is a concern, you may want to use automatically managed certificates with a short validity period. </description> <tutorials> </tutorials> diff --git a/doc/classes/PacketPeerUDP.xml b/doc/classes/PacketPeerUDP.xml index b635757b2b..9107937183 100644 --- a/doc/classes/PacketPeerUDP.xml +++ b/doc/classes/PacketPeerUDP.xml @@ -34,7 +34,7 @@ <param index="1" name="port" type="int" /> <description> Calling this method connects this UDP peer to the given [param host]/[param port] pair. UDP is in reality connectionless, so this option only means that incoming packets from different addresses are automatically discarded, and that outgoing packets are always sent to the connected address (future calls to [method set_dest_address] are not allowed). This method does not send any data to the remote peer, to do that, use [method PacketPeer.put_var] or [method PacketPeer.put_packet] as usual. See also [UDPServer]. - [b]Note:[/b] Connecting to the remote peer does not help to protect from malicious attacks like IP spoofing, etc. Think about using an encryption technique like SSL or DTLS if you feel like your application is transferring sensitive information. + [b]Note:[/b] Connecting to the remote peer does not help to protect from malicious attacks like IP spoofing, etc. Think about using an encryption technique like TLS or DTLS if you feel like your application is transferring sensitive information. </description> </method> <method name="get_local_port" qualifiers="const"> diff --git a/doc/classes/Panel.xml b/doc/classes/Panel.xml index da69431276..69c896e806 100644 --- a/doc/classes/Panel.xml +++ b/doc/classes/Panel.xml @@ -15,7 +15,5 @@ <theme_item name="panel" data_type="style" type="StyleBox"> The style of this [Panel]. </theme_item> - <theme_item name="panel_fg" data_type="style" type="StyleBox"> - </theme_item> </theme_items> </class> diff --git a/doc/classes/PhysicsServer2DExtension.xml b/doc/classes/PhysicsServer2DExtension.xml index 2659d3221f..4a5425bd63 100644 --- a/doc/classes/PhysicsServer2DExtension.xml +++ b/doc/classes/PhysicsServer2DExtension.xml @@ -600,6 +600,21 @@ <description> </description> </method> + <method name="_end_sync" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> + <method name="_finish" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> + <method name="_flush_queries" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> <method name="_free_rid" qualifiers="virtual"> <return type="void" /> <param index="0" name="rid" type="RID" /> @@ -612,6 +627,16 @@ <description> </description> </method> + <method name="_init" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> + <method name="_is_flushing_queries" qualifiers="virtual const"> + <return type="bool" /> + <description> + </description> + </method> <method name="_joint_clear" qualifiers="virtual"> <return type="void" /> <param index="0" name="joint" type="RID" /> @@ -768,6 +793,17 @@ <description> </description> </method> + <method name="_step" qualifiers="virtual"> + <return type="void" /> + <param index="0" name="step" type="float" /> + <description> + </description> + </method> + <method name="_sync" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> <method name="_world_boundary_shape_create" qualifiers="virtual"> <return type="RID" /> <description> diff --git a/doc/classes/PhysicsServer2DManager.xml b/doc/classes/PhysicsServer2DManager.xml new file mode 100644 index 0000000000..328ac93ce3 --- /dev/null +++ b/doc/classes/PhysicsServer2DManager.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<class name="PhysicsServer2DManager" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> + <brief_description> + Manager for 2D physics server implementations. + </brief_description> + <description> + [PhysicsServer2DManager] is the API for registering [PhysicsServer2D] implementations, and for setting the default implementation. + [b]Note:[/b] It is not possible to switch physics servers at runtime. This class is only used on startup at the server initialization level, by Godot itself and possibly by GDExtensions. + </description> + <tutorials> + </tutorials> + <methods> + <method name="register_server"> + <return type="void" /> + <param index="0" name="name" type="String" /> + <param index="1" name="create_callback" type="Callable" /> + <description> + Register a [PhysicsServer2D] implementation by passing a [param name] and a [Callable] that returns a [PhysicsServer2D] object. + </description> + </method> + <method name="set_default_server"> + <return type="void" /> + <param index="0" name="name" type="String" /> + <param index="1" name="priority" type="int" /> + <description> + Set the default [PhysicsServer2D] implementation to the one identified by [param name], if [param priority] is greater than the priority of the current default implementation. + </description> + </method> + </methods> +</class> diff --git a/doc/classes/PhysicsServer3DExtension.xml b/doc/classes/PhysicsServer3DExtension.xml index 200065de54..46d3c8ae3e 100644 --- a/doc/classes/PhysicsServer3DExtension.xml +++ b/doc/classes/PhysicsServer3DExtension.xml @@ -604,6 +604,21 @@ <description> </description> </method> + <method name="_end_sync" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> + <method name="_finish" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> + <method name="_flush_queries" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> <method name="_free_rid" qualifiers="virtual"> <return type="void" /> <param index="0" name="rid" type="RID" /> @@ -685,6 +700,16 @@ <description> </description> </method> + <method name="_init" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> + <method name="_is_flushing_queries" qualifiers="virtual const"> + <return type="bool" /> + <description> + </description> + </method> <method name="_joint_clear" qualifiers="virtual"> <return type="void" /> <param index="0" name="joint" type="RID" /> @@ -901,6 +926,17 @@ <description> </description> </method> + <method name="_step" qualifiers="virtual"> + <return type="void" /> + <param index="0" name="step" type="float" /> + <description> + </description> + </method> + <method name="_sync" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> <method name="_world_boundary_shape_create" qualifiers="virtual"> <return type="RID" /> <description> diff --git a/doc/classes/PhysicsServer3DManager.xml b/doc/classes/PhysicsServer3DManager.xml new file mode 100644 index 0000000000..3ec03fede4 --- /dev/null +++ b/doc/classes/PhysicsServer3DManager.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<class name="PhysicsServer3DManager" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> + <brief_description> + Manager for 3D physics server implementations. + </brief_description> + <description> + [PhysicsServer3DManager] is the API for registering [PhysicsServer3D] implementations, and for setting the default implementation. + [b]Note:[/b] It is not possible to switch physics servers at runtime. This class is only used on startup at the server initialization level, by Godot itself and possibly by GDExtensions. + </description> + <tutorials> + </tutorials> + <methods> + <method name="register_server"> + <return type="void" /> + <param index="0" name="name" type="String" /> + <param index="1" name="create_callback" type="Callable" /> + <description> + Register a [PhysicsServer3D] implementation by passing a [param name] and a [Callable] that returns a [PhysicsServer2D] object. + </description> + </method> + <method name="set_default_server"> + <return type="void" /> + <param index="0" name="name" type="String" /> + <param index="1" name="priority" type="int" /> + <description> + Set the default [PhysicsServer3D] implementation to the one identified by [param name], if [param priority] is greater than the priority of the current default implementation. + </description> + </method> + </methods> +</class> diff --git a/doc/classes/PopupMenu.xml b/doc/classes/PopupMenu.xml index 00b725d5d7..23287f4de1 100644 --- a/doc/classes/PopupMenu.xml +++ b/doc/classes/PopupMenu.xml @@ -182,7 +182,7 @@ Removes all items from the [PopupMenu]. </description> </method> - <method name="get_current_index" qualifiers="const"> + <method name="get_focused_item" qualifiers="const"> <return type="int" /> <description> Returns the index of the currently focused item. Returns [code]-1[/code] if no item is focused. @@ -332,7 +332,7 @@ Moves the scroll view to make the item at the given [param index] visible. </description> </method> - <method name="set_current_index"> + <method name="set_focused_item"> <return type="void" /> <param index="0" name="index" type="int" /> <description> diff --git a/doc/classes/ProgressBar.xml b/doc/classes/ProgressBar.xml index 8a781c51fb..510b8d5bd1 100644 --- a/doc/classes/ProgressBar.xml +++ b/doc/classes/ProgressBar.xml @@ -12,7 +12,7 @@ <member name="fill_mode" type="int" setter="set_fill_mode" getter="get_fill_mode" default="0"> The fill direction. See [enum FillMode] for possible values. </member> - <member name="percent_visible" type="bool" setter="set_percent_visible" getter="is_percent_visible" default="true"> + <member name="show_percentage" type="bool" setter="set_show_percentage" getter="is_percentage_shown" default="true"> If [code]true[/code], the fill percentage is displayed on the bar. </member> </members> @@ -44,15 +44,15 @@ The size of the text outline. </theme_item> <theme_item name="font" data_type="font" type="Font"> - Font used to draw the fill percentage if [member percent_visible] is [code]true[/code]. + Font used to draw the fill percentage if [member show_percentage] is [code]true[/code]. </theme_item> <theme_item name="font_size" data_type="font_size" type="int"> - Font size used to draw the fill percentage if [member percent_visible] is [code]true[/code]. + Font size used to draw the fill percentage if [member show_percentage] is [code]true[/code]. </theme_item> - <theme_item name="bg" data_type="style" type="StyleBox"> + <theme_item name="background" data_type="style" type="StyleBox"> The style of the background. </theme_item> - <theme_item name="fg" data_type="style" type="StyleBox"> + <theme_item name="fill" data_type="style" type="StyleBox"> The style of the progress (i.e. the part that fills the bar). </theme_item> </theme_items> diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml index 1145798240..3dbf7c75e5 100644 --- a/doc/classes/ProjectSettings.xml +++ b/doc/classes/ProjectSettings.xml @@ -477,9 +477,6 @@ <member name="debug/shapes/collision/shape_color" type="Color" setter="" getter="" default="Color(0, 0.6, 0.7, 0.42)"> Color of the collision shapes, visible when "Visible Collision Shapes" is enabled in the Debug menu. </member> - <member name="debug/shapes/navigation/disabled_geometry_color" type="Color" setter="" getter="" default="Color(1, 0.7, 0.1, 0.4)"> - Color of the disabled navigation geometry, visible when "Visible Navigation" is enabled in the Debug menu. - </member> <member name="debug/shapes/navigation/edge_connection_color" type="Color" setter="" getter="" default="Color(1, 0, 1, 1)"> Color to display edge connections between navigation regions, visible when "Visible Navigation" is enabled in the Debug menu. </member> @@ -504,9 +501,6 @@ <member name="debug/shapes/navigation/enable_link_connections_xray" type="bool" setter="" getter="" default="true"> If enabled, displays navigation link connections through geometry when "Visible Navigation" is enabled in the Debug menu. </member> - <member name="debug/shapes/navigation/geometry_color" type="Color" setter="" getter="" default="Color(0.1, 1, 0.7, 0.4)"> - Color of the navigation geometry, visible when "Visible Navigation" is enabled in the Debug menu. - </member> <member name="debug/shapes/navigation/geometry_edge_color" type="Color" setter="" getter="" default="Color(0.5, 1, 1, 1)"> Color to display enabled navigation mesh polygon edges, visible when "Visible Navigation" is enabled in the Debug menu. </member> @@ -1494,8 +1488,8 @@ <member name="network/remote_fs/page_size" type="int" setter="" getter="" default="65536"> Page size used by remote filesystem (in bytes). </member> - <member name="network/ssl/certificate_bundle_override" type="String" setter="" getter="" default=""""> - The CA certificates bundle to use for SSL connections. If this is set to a non-empty value, this will [i]override[/i] Godot's default [url=https://github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates.crt]Mozilla certificate bundle[/url]. If left empty, the default certificate bundle will be used. + <member name="network/tls/certificate_bundle_override" type="String" setter="" getter="" default=""""> + The CA certificates bundle to use for TLS connections. If this is set to a non-empty value, this will [i]override[/i] Godot's default [url=https://github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates.crt]Mozilla certificate bundle[/url]. If left empty, the default certificate bundle will be used. If in doubt, leave this setting empty. </member> <member name="physics/2d/default_angular_damp" type="float" setter="" getter="" default="1.0"> diff --git a/doc/classes/Rect2.xml b/doc/classes/Rect2.xml index 7132f4f0b5..ac012e9604 100644 --- a/doc/classes/Rect2.xml +++ b/doc/classes/Rect2.xml @@ -93,7 +93,7 @@ <method name="get_area" qualifiers="const"> <return type="float" /> <description> - Returns the area of the [Rect2]. See also [method has_no_area]. + Returns the area of the [Rect2]. See also [method has_area]. </description> </method> <method name="get_center" qualifiers="const"> @@ -127,11 +127,10 @@ Returns a copy of the [Rect2] grown by the specified [param amount] on the specified [enum Side]. </description> </method> - <method name="has_no_area" qualifiers="const"> + <method name="has_area" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the [Rect2] is flat or empty, [code]false[/code] otherwise. See also [method get_area]. - [b]Note:[/b] If the [Rect2] has a negative size and is not flat or empty, [method has_no_area] will return [code]true[/code]. + Returns [code]true[/code] if the [Rect2] has area, and [code]false[/code] if the [Rect2] is linear, empty, or has a negative [member size]. See also [method get_area]. </description> </method> <method name="has_point" qualifiers="const"> diff --git a/doc/classes/Rect2i.xml b/doc/classes/Rect2i.xml index d5d68bde31..6d4c113609 100644 --- a/doc/classes/Rect2i.xml +++ b/doc/classes/Rect2i.xml @@ -90,7 +90,7 @@ <method name="get_area" qualifiers="const"> <return type="int" /> <description> - Returns the area of the [Rect2i]. See also [method has_no_area]. + Returns the area of the [Rect2i]. See also [method has_area]. </description> </method> <method name="get_center" qualifiers="const"> @@ -125,11 +125,10 @@ Returns a copy of the [Rect2i] grown by the specified [param amount] on the specified [enum Side]. </description> </method> - <method name="has_no_area" qualifiers="const"> + <method name="has_area" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the [Rect2i] is flat or empty, [code]false[/code] otherwise. See also [method get_area]. - [b]Note:[/b] If the [Rect2i] has a negative size and is not flat or empty, [method has_no_area] will return [code]true[/code]. + Returns [code]true[/code] if the [Rect2i] has area, and [code]false[/code] if the [Rect2i] is linear, empty, or has a negative [member size]. See also [method get_area]. </description> </method> <method name="has_point" qualifiers="const"> diff --git a/doc/classes/SceneTree.xml b/doc/classes/SceneTree.xml index 221e627e35..070b98f21d 100644 --- a/doc/classes/SceneTree.xml +++ b/doc/classes/SceneTree.xml @@ -36,22 +36,22 @@ [b]Note:[/b] Group call flags are used to control the method calling behavior. By default, methods will be called immediately in a way similar to [method call_group]. However, if the [constant GROUP_CALL_DEFERRED] flag is present in the [param flags] argument, methods will be called with a one-frame delay in a way similar to [method Object.set_deferred]. </description> </method> - <method name="change_scene"> + <method name="change_scene_to_file"> <return type="int" enum="Error" /> <param index="0" name="path" type="String" /> <description> Changes the running scene to the one at the given [param path], after loading it into a [PackedScene] and creating a new instance. Returns [constant OK] on success, [constant ERR_CANT_OPEN] if the [param path] cannot be loaded into a [PackedScene], or [constant ERR_CANT_CREATE] if that scene cannot be instantiated. - [b]Note:[/b] The scene change is deferred, which means that the new scene node is added on the next idle frame. You won't be able to access it immediately after the [method change_scene] call. + [b]Note:[/b] The scene change is deferred, which means that the new scene node is added on the next idle frame. You won't be able to access it immediately after the [method change_scene_to_file] call. </description> </method> - <method name="change_scene_to"> + <method name="change_scene_to_packed"> <return type="int" enum="Error" /> <param index="0" name="packed_scene" type="PackedScene" /> <description> Changes the running scene to a new instance of the given [PackedScene]. Returns [constant OK] on success or [constant ERR_CANT_CREATE] if the scene cannot be instantiated. - [b]Note:[/b] The scene change is deferred, which means that the new scene node is added on the next idle frame. You won't be able to access it immediately after the [method change_scene_to] call. + [b]Note:[/b] The scene change is deferred, which means that the new scene node is added on the next idle frame. You won't be able to access it immediately after the [method change_scene_to_packed] call. </description> </method> <method name="create_timer"> diff --git a/doc/classes/ScrollContainer.xml b/doc/classes/ScrollContainer.xml index de586fc3d0..f5018c25ff 100644 --- a/doc/classes/ScrollContainer.xml +++ b/doc/classes/ScrollContainer.xml @@ -87,7 +87,7 @@ </constant> </constants> <theme_items> - <theme_item name="bg" data_type="style" type="StyleBox"> + <theme_item name="panel" data_type="style" type="StyleBox"> The background [StyleBox] of the [ScrollContainer]. </theme_item> </theme_items> diff --git a/doc/classes/SplitContainer.xml b/doc/classes/SplitContainer.xml index f5646e9e97..f0998deeae 100644 --- a/doc/classes/SplitContainer.xml +++ b/doc/classes/SplitContainer.xml @@ -55,6 +55,9 @@ <theme_item name="autohide" data_type="constant" type="int" default="1"> Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically when it isn't under the cursor. If 0 ([code]false[/code]), it's always visible. </theme_item> + <theme_item name="minimum_grab_thickness" data_type="constant" type="int" default="6"> + The minimum thickness of the area users can click on to grab the splitting line. If [theme_item separation] or [theme_item h_grabber] / [theme_item v_grabber]'s thickness are too small, this ensure that the splitting line can still be dragged. + </theme_item> <theme_item name="separation" data_type="constant" type="int" default="12"> The space between sides of the container. </theme_item> diff --git a/doc/classes/StreamPeerSSL.xml b/doc/classes/StreamPeerTLS.xml index 9d21b91416..d1ddb3d441 100644 --- a/doc/classes/StreamPeerSSL.xml +++ b/doc/classes/StreamPeerTLS.xml @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="StreamPeerSSL" inherits="StreamPeer" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="StreamPeerTLS" inherits="StreamPeer" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - SSL stream peer. + TLS stream peer. </brief_description> <description> - SSL stream peer. This object can be used to connect to an SSL server or accept a single SSL client connection. + TLS stream peer. This object can be used to connect to an TLS server or accept a single TLS client connection. [b]Note:[/b] When exporting to Android, make sure to enable the [code]INTERNET[/code] permission in the Android export preset before exporting the project or using one-click deploy. Otherwise, network communication of any kind will be blocked by Android. </description> <tutorials> - <link title="SSL certificates">$DOCS_URL/tutorials/networking/ssl_certificates.html</link> + <link title="TLS certificates">$DOCS_URL/tutorials/networking/ssl_certificates.html</link> </tutorials> <methods> <method name="accept_stream"> @@ -28,7 +28,7 @@ <param index="2" name="for_hostname" type="String" default="""" /> <param index="3" name="valid_certificate" type="X509Certificate" default="null" /> <description> - Connects to a peer using an underlying [StreamPeer] [param stream]. If [param validate_certs] is [code]true[/code], [StreamPeerSSL] will validate that the certificate presented by the peer matches the [param for_hostname]. + Connects to a peer using an underlying [StreamPeer] [param stream]. If [param validate_certs] is [code]true[/code], [StreamPeerTLS] will validate that the certificate presented by the peer matches the [param for_hostname]. [b]Note:[/b] Specifying a custom [param valid_certificate] is not supported in Web exports due to browsers restrictions. </description> </method> @@ -39,7 +39,7 @@ </description> </method> <method name="get_status" qualifiers="const"> - <return type="int" enum="StreamPeerSSL.Status" /> + <return type="int" enum="StreamPeerTLS.Status" /> <description> Returns the status of the connection. See [enum Status] for values. </description> @@ -63,19 +63,19 @@ </members> <constants> <constant name="STATUS_DISCONNECTED" value="0" enum="Status"> - A status representing a [StreamPeerSSL] that is disconnected. + A status representing a [StreamPeerTLS] that is disconnected. </constant> <constant name="STATUS_HANDSHAKING" value="1" enum="Status"> - A status representing a [StreamPeerSSL] during handshaking. + A status representing a [StreamPeerTLS] during handshaking. </constant> <constant name="STATUS_CONNECTED" value="2" enum="Status"> - A status representing a [StreamPeerSSL] that is connected to a host. + A status representing a [StreamPeerTLS] that is connected to a host. </constant> <constant name="STATUS_ERROR" value="3" enum="Status"> - A status representing a [StreamPeerSSL] in error state. + A status representing a [StreamPeerTLS] in error state. </constant> <constant name="STATUS_ERROR_HOSTNAME_MISMATCH" value="4" enum="Status"> - An error status that shows a mismatch in the SSL certificate domain presented by the host and the domain requested for validation. + An error status that shows a mismatch in the TLS certificate domain presented by the host and the domain requested for validation. </constant> </constants> </class> diff --git a/doc/classes/StyleBox.xml b/doc/classes/StyleBox.xml index d9c19a0c86..8656cde4a0 100644 --- a/doc/classes/StyleBox.xml +++ b/doc/classes/StyleBox.xml @@ -97,6 +97,13 @@ Sets the default value of the specified [enum Side] to [param offset] pixels. </description> </method> + <method name="set_default_margin_all"> + <return type="void" /> + <param index="0" name="offset" type="float" /> + <description> + Sets the default margin to [param offset] pixels for all sides. + </description> + </method> <method name="test_mask" qualifiers="const"> <return type="bool" /> <param index="0" name="point" type="Vector2" /> diff --git a/doc/classes/StyleBoxFlat.xml b/doc/classes/StyleBoxFlat.xml index c4024fa4b5..7f6628f8ee 100644 --- a/doc/classes/StyleBoxFlat.xml +++ b/doc/classes/StyleBoxFlat.xml @@ -81,16 +81,6 @@ Sets the corner radius to [param radius] pixels for all corners. </description> </method> - <method name="set_corner_radius_individual"> - <return type="void" /> - <param index="0" name="radius_top_left" type="int" /> - <param index="1" name="radius_top_right" type="int" /> - <param index="2" name="radius_bottom_right" type="int" /> - <param index="3" name="radius_bottom_left" type="int" /> - <description> - Sets the corner radius for each corner to [param radius_top_left], [param radius_top_right], [param radius_bottom_right], and [param radius_bottom_left] pixels. - </description> - </method> <method name="set_expand_margin"> <return type="void" /> <param index="0" name="margin" type="int" enum="Side" /> @@ -106,16 +96,6 @@ Sets the expand margin to [param size] pixels for all margins. </description> </method> - <method name="set_expand_margin_individual"> - <return type="void" /> - <param index="0" name="size_left" type="float" /> - <param index="1" name="size_top" type="float" /> - <param index="2" name="size_right" type="float" /> - <param index="3" name="size_bottom" type="float" /> - <description> - Sets the expand margin for each margin to [param size_left], [param size_top], [param size_right], and [param size_bottom] pixels. - </description> - </method> </methods> <members> <member name="anti_aliasing" type="bool" setter="set_anti_aliased" getter="is_anti_aliased" default="true"> diff --git a/doc/classes/StyleBoxTexture.xml b/doc/classes/StyleBoxTexture.xml index 7db70e630d..aeba777b43 100644 --- a/doc/classes/StyleBoxTexture.xml +++ b/doc/classes/StyleBoxTexture.xml @@ -30,16 +30,6 @@ Sets the expand margin to [param size] pixels for all margins. </description> </method> - <method name="set_expand_margin_individual"> - <return type="void" /> - <param index="0" name="size_left" type="float" /> - <param index="1" name="size_top" type="float" /> - <param index="2" name="size_right" type="float" /> - <param index="3" name="size_bottom" type="float" /> - <description> - Sets the expand margin for each margin to [param size_left], [param size_top], [param size_right], and [param size_bottom] pixels. - </description> - </method> <method name="set_expand_margin_size"> <return type="void" /> <param index="0" name="margin" type="int" enum="Side" /> @@ -56,6 +46,13 @@ Sets the margin to [param size] pixels for the specified [enum Side]. </description> </method> + <method name="set_margin_size_all"> + <return type="void" /> + <param index="0" name="size" type="float" /> + <description> + Sets the margin to [param size] pixels for all sides. + </description> + </method> </methods> <members> <member name="axis_stretch_horizontal" type="int" setter="set_h_axis_stretch_mode" getter="get_h_axis_stretch_mode" enum="StyleBoxTexture.AxisStretchMode" default="0"> diff --git a/doc/classes/TextEdit.xml b/doc/classes/TextEdit.xml index aa7ce85f3a..0905c0c20b 100644 --- a/doc/classes/TextEdit.xml +++ b/doc/classes/TextEdit.xml @@ -915,7 +915,7 @@ <member name="caret_blink" type="bool" setter="set_caret_blink_enabled" getter="is_caret_blink_enabled" default="false"> Sets if the caret should blink. </member> - <member name="caret_blink_speed" type="float" setter="set_caret_blink_speed" getter="get_caret_blink_speed" default="0.65"> + <member name="caret_blink_interval" type="float" setter="set_caret_blink_interval" getter="get_caret_blink_interval" default="0.65"> Duration (in seconds) of a caret's blinking cycle. </member> <member name="caret_mid_grapheme" type="bool" setter="set_caret_mid_grapheme_enabled" getter="is_caret_mid_grapheme_enabled" default="true"> diff --git a/doc/classes/TileMap.xml b/doc/classes/TileMap.xml index e76c696021..54eb83297d 100644 --- a/doc/classes/TileMap.xml +++ b/doc/classes/TileMap.xml @@ -207,6 +207,13 @@ Returns if a layer Y-sorts its tiles. </description> </method> + <method name="local_to_map" qualifiers="const"> + <return type="Vector2i" /> + <param index="0" name="local_position" type="Vector2" /> + <description> + Returns the map coordinates of the cell containing the given [param local_position]. If [param local_position] is in global coordinates, consider using [method Node2D.to_local] before passing it to this method. See also [method map_to_local]. + </description> + </method> <method name="map_pattern"> <return type="Vector2i" /> <param index="0" name="position_in_tilemap" type="Vector2i" /> @@ -216,12 +223,12 @@ Returns for the given coordinate [param coords_in_pattern] in a [TileMapPattern] the corresponding cell coordinates if the pattern was pasted at the [param position_in_tilemap] coordinates (see [method set_pattern]). This mapping is required as in half-offset tile shapes, the mapping might not work by calculating [code]position_in_tile_map + coords_in_pattern[/code] </description> </method> - <method name="map_to_world" qualifiers="const"> + <method name="map_to_local" qualifiers="const"> <return type="Vector2" /> <param index="0" name="map_position" type="Vector2i" /> <description> - Returns a local position of the center of the cell at the given tilemap (grid-based) coordinates. - [b]Note:[/b] This doesn't correspond to the visual position of the tile, i.e. it ignores the [member TileData.texture_offset] property of individual tiles. + Returns the centered position of a cell in the TileMap's local coordinate space. To convert the returned value into global coordinates, use [method Node2D.to_global]. See also [method local_to_map]. + [b]Note:[/b] This may not correspond to the visual position of the tile, i.e. it ignores the [member TileData.texture_offset] property of individual tiles. </description> </method> <method name="move_layer"> @@ -344,13 +351,6 @@ Paste the given [TileMapPattern] at the given [param position] and [param layer] in the tile map. </description> </method> - <method name="world_to_map" qualifiers="const"> - <return type="Vector2i" /> - <param index="0" name="world_position" type="Vector2" /> - <description> - Returns the tilemap (grid-based) coordinates corresponding to the given local position. - </description> - </method> </methods> <members> <member name="cell_quadrant_size" type="int" setter="set_quadrant_size" getter="get_quadrant_size" default="16"> diff --git a/doc/classes/Tree.xml b/doc/classes/Tree.xml index bf66d9f12a..f6a078602c 100644 --- a/doc/classes/Tree.xml +++ b/doc/classes/Tree.xml @@ -558,12 +558,6 @@ <theme_item name="updown" data_type="icon" type="Texture2D"> The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode cell. </theme_item> - <theme_item name="bg" data_type="style" type="StyleBox"> - Default [StyleBox] for the [Tree], i.e. used when the control is not being focused. - </theme_item> - <theme_item name="bg_focus" data_type="style" type="StyleBox"> - [StyleBox] used when the [Tree] is being focused. - </theme_item> <theme_item name="button_pressed" data_type="style" type="StyleBox"> [StyleBox] used when a button in the tree is pressed. </theme_item> @@ -582,6 +576,12 @@ <theme_item name="custom_button_pressed" data_type="style" type="StyleBox"> [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's pressed. </theme_item> + <theme_item name="focus" data_type="style" type="StyleBox"> + The focused style for the [Tree], drawn on top of everything. + </theme_item> + <theme_item name="panel" data_type="style" type="StyleBox"> + The background style for the [Tree]. + </theme_item> <theme_item name="selected" data_type="style" type="StyleBox"> [StyleBox] for the selected items, used when the [Tree] is not being focused. </theme_item> diff --git a/doc/classes/VSplitContainer.xml b/doc/classes/VSplitContainer.xml index b933fb2805..c60d15d9c9 100644 --- a/doc/classes/VSplitContainer.xml +++ b/doc/classes/VSplitContainer.xml @@ -13,6 +13,9 @@ <theme_item name="autohide" data_type="constant" type="int" default="1"> Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically when it isn't under the cursor. If 0 ([code]false[/code]), it's always visible. </theme_item> + <theme_item name="minimum_grab_thickness" data_type="constant" type="int" default="6"> + The minimum thickness of the area users can click on to grab the splitting line. If [theme_item separation] or [theme_item grabber]'s thickness are too small, this ensure that the splitting line can still be dragged. + </theme_item> <theme_item name="separation" data_type="constant" type="int" default="12"> The space between sides of the container. </theme_item> diff --git a/doc/classes/X509Certificate.xml b/doc/classes/X509Certificate.xml index d8f54d0ec5..37b202a513 100644 --- a/doc/classes/X509Certificate.xml +++ b/doc/classes/X509Certificate.xml @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="X509Certificate" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - An X509 certificate (e.g. for SSL). + An X509 certificate (e.g. for TLS). </brief_description> <description> The X509Certificate class represents an X509 certificate. Certificates can be loaded and saved like any other [Resource]. - They can be used as the server certificate in [method StreamPeerSSL.accept_stream] (along with the proper [CryptoKey]), and to specify the only certificate that should be accepted when connecting to an SSL server via [method StreamPeerSSL.connect_to_stream]. + They can be used as the server certificate in [method StreamPeerTLS.accept_stream] (along with the proper [CryptoKey]), and to specify the only certificate that should be accepted when connecting to an TLS server via [method StreamPeerTLS.connect_to_stream]. </description> <tutorials> </tutorials> |