Commit graph

268 commits

Author SHA1 Message Date
Lightning_A 63581fccc3
Focus the scene tree dock after hitting one of the "Create Root Node:" buttons
(cherry picked from commit 285024e806)
2021-08-12 16:43:23 +02:00
kobewi d2034fc269
Fix Change Node Type after Add Node Here
(cherry picked from commit 31a81562a8)
2021-07-24 00:52:32 +02:00
Rémi Verschelde b4282c8435
Merge pull request #50700 from KoBeWi/3.drop
[3.x] Assign value to property by dropping to scene tree
2021-07-22 12:42:13 +02:00
kobewi 559b3a59bb Assign value to property by dropping to scene tree 2021-07-21 15:40:19 +02:00
PouleyKetchoupp 8185c5fe8a Optimize NodePath update when renaming or deleting nodes in the editor
Now the process uses a Map to lookup node pointers instead of iterating
over all modified node paths in a list and comparing them for each
property to check.

The process also avoids checking properties with empty node paths and
does an early exit on deleted nodes to avoid checking the node and its
descendants.

Also made a minor change in NodePath::rel_path_to() to avoid resizing a
Vector many times for long paths (with copy-on-write each time). Now
it's down to 2 resize calls in any case.
2021-07-09 11:43:05 -07:00
kobewi ff7cae4c4c Allow to create a node at specific position 2021-07-07 13:19:59 +02:00
PouleyKetchoupp 5a66ab1ef4
Coding style fix in editor NodePath update
Added r_ prefix for reference arguments that can be modified.

(cherry picked from commit 62ce81ec15)
2021-07-06 11:10:47 +02:00
PouleyKetchoupp daa0977c68
NodePath properly updated in the editor in more cases
Fix more cases of node path needing an update when nodes are renamed or
moved in the editor.

Built-in node properties:
Before, node paths were checked only for script export variables. Now
all properties are checked from the node, which includes built-in node
properties.
Allows proper node path updates for nodes like remote transform, physics
joints, etc.

Arrays and dictionaries:
Node paths nested in array and dictionary properties are now also
updated in the editor.

Also update the documentation to be clear about node path update in the
editor and at runtime.

Co-authored-by: latorril <latorril@gmail.com>
(cherry picked from commit 3e4e530523)
2021-07-06 11:10:47 +02:00
Marcel Admiraal 5a58516231 Remove duplicate ERR_PRINTS macro 2021-06-16 11:56:25 +01:00
kobewi 6ce63017d5
Don't remap resources belonging to instance
(cherry picked from commit 8e8398209e)
2021-06-07 22:35:38 +02:00
Kyle b47cd82f76
Add ctrl+shift+a to instance scene in scenetree dock
Adds another key shortcut to instance a scene in the scentree dock. Complements ctrl+a to add a node.

(cherry picked from commit ea5445655c)
2021-05-09 17:47:38 +02:00
Kyle 629c3e2a0a
Remove extra separator
Removes an extra separator when Scene Tree Editing is disabled. Discussed in #48518

(cherry picked from commit e168baf433)
2021-05-09 17:14:36 +02:00
Kyle f711464030
Fixed cut/copy/paste visibility
Fixes #48514 by moving the visibility of these buttons into their own if statement that depends on if scene tree editing is allowed. Previously it was under the script editing setting which is unexpected as it works with nodes and the scene tree.

(cherry picked from commit 10d5d4d3cd)
2021-05-09 17:14:36 +02:00
Rémi Verschelde 140350d767
Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
Rémi Verschelde b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
Rémi Verschelde 64a63e0861
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde 3d15f04668
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde 6e600cb3f0
Style: Set clang-format Standard to c++14 2021-05-04 14:45:15 +02:00
Rémi Verschelde 880b830ca8
Merge pull request #46292 from hilfazer/nested_scene_instances_duplication 2021-04-29 13:31:27 +02:00
Rafał Mikrut 06976c3e84 [3.x] Fix crashes when using _input functions 2021-04-27 16:51:29 +02:00
Hugo Locurcio 58393b544b
Tweak error messages for the Save Branch as Scene editor option
See https://github.com/godotengine/godot-proposals/issues/2433.

(cherry picked from commit 4c8f458c90)
2021-04-26 13:07:59 +02:00
Bhuvan Vemula 1c1ec81455
instance-scene: make parent as edited_scene if no parent selected.
(cherry picked from commit 9eb3546f38)
2021-04-23 21:52:21 +02:00
Hugo Locurcio 8e54573dfc
Add a tooltip to document performance issues of the Remote scene tree
(cherry picked from commit 6d2f5ee244)
2021-04-14 13:29:59 +02:00
hilfazer 8a7d0d3ce0 Prevent 'Change Type' on nodes from an instanced scene
(cherry picked from commit e28cc34db8)
2021-02-26 15:26:31 +01:00
hilfazer c76e832b1c Support for duplication of nested instanced scenes 2021-02-21 18:34:52 +01:00
kobewi 637117c8d1 [3.2] Add node copy-paste 2021-02-13 14:27:36 +01:00
kobewi 9b4c18ac59
Unify single and multiscene instancing
(cherry picked from commit 881c8da0a0)
2021-01-26 17:00:14 +01:00
Rémi Verschelde bc47a8ae00
Merge pull request #39533 from hilfazer/editable-children-bugfixes
Fix Editable Children issues with node renaming, moving, duplicating and instancing.
2021-01-18 12:31:12 +01:00
Rémi Verschelde 49646383f1
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆

(cherry picked from commit b5334d14f7)
2021-01-13 16:17:06 +01:00
Pedro J. Estébanez 2997a3aa23 Fix cases of resources destroyed too early 2021-01-06 20:25:05 +01:00
kobewi c588ba0b6a
Properly edit the instanced node in the inspector
(cherry picked from commit f5d51288b8)
2021-01-05 21:33:33 +01:00
Marcus Brummer 420df0c2a8
Fixed deletion of nodes with exported node paths
(cherry picked from commit 3629651ef8)
2020-11-18 13:27:47 +01:00
Hugo Locurcio fcab27878c
Require Ctrl for switching between editors, bind F2 to Rename Node
Switching between editors now requires holding Ctrl to avoid
conflicts with the new F2 shortcut.

The asset library can now be accessed by pressing Ctrl + F4
on Windows and Linux, or Alt + 4 on macOS.

This partially addresses #38139.

(cherry picked from commit 79e4e26738)
2020-11-17 16:24:06 +01:00
Rémi Verschelde d81b8e4a86
SceneTree: Fix reparent crash with animation tracks renaming disabled
This check was there since the first commit in 2014, but a later feature added in 2018
with #17717 did not properly update the code while adding non animation-related code
in `perform_node_renames`.

Fixes #40532.

(cherry picked from commit d107fd4c9e)
2020-11-17 12:01:58 +01:00
hilfazer 6dbc08668b Move Editable Children information from scene's root to instanced nodes 2020-10-26 11:55:47 +01:00
Gabriel Van Eyck 5b9c16a324
Keep 'Editor Description' metadata when changing a Node's type
Also copy edit group/lock when replacing a Node3D

(cherry picked from commit a22275c8a2)
2020-10-19 16:10:01 +02:00
Marcus Brummer b426e58acd
Fixed renaming/moving of nodes with exported NodePaths
(cherry picked from commit fdec257e58)
2020-10-19 15:15:27 +02:00
Haoyu Qiu 718f8e8344 Changes mention of Node3D back to Spatial 2020-10-01 23:55:10 +08:00
Nehluxhes 5abc42c27e
Remove duplicate node update call
(cherry picked from commit c85d04a771)
2020-09-29 13:57:57 +02:00
booer b48015a3d1
Fix changing icons' colors when switch dark and light theme
(cherry picked from commit 3d69385655)
2020-09-24 14:43:10 +02:00
Stijn Hinlopen cdb9b51ed1 Add Control to preferred types
(cherry picked from commit ec86d32684)

Fix crash by calculating wrong size of array.

(cherry picked from commit 81b6000812)
2020-07-03 13:17:57 +02:00
Stijn Hinlopen 4c54f39dbe Deleting multiple nodes displays correct message.
(cherry picked from commit 8b046ed477)
2020-07-03 13:17:57 +02:00
Michael Alexsander 5495bbdd47 Fix scene tree showing up when the root selection is present
(cherry picked from commit f30e4dbf54)
2020-06-10 15:30:52 +02:00
Andrii Doroshenko (Xrayez) 3649c61e46 Prevent crash attaching a script with no languages registered
(cherry picked from commit 52f3cfca6f)
2020-06-04 12:09:40 +02:00
Michael Alexsander 3d8cc49ec5 Keep "lock" metadata when changing a Node's type, if applicable
(cherry picked from commit d015e4d6fc)
2020-05-20 11:43:49 +02:00
Hugo Locurcio b1455c68eb Rename the Clear Script editor action to Detach Script
This makes it more obvious that the script won't be modified
in any way.

See comments in #27813.

(cherry picked from commit 7fc0e38e92)
2020-05-11 11:38:22 +02:00
Dominik 'dreamsComeTrue' Jasiński 2524ed4242 Proper naming and ordering when Duplicate nodes
Fixes: #38162
(cherry picked from commit 278259b433)
2020-05-04 16:10:22 +02:00
volzhs f20b3ff503 Fix error when closing Attach Node Script window 2020-01-02 12:31:31 +01:00
Rémi Verschelde a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00