Commit Graph

642 Commits

Author SHA1 Message Date
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Haoyu Qiu 6a406bf424 Fix offset of node filter menu separator icon 2024-04-19 13:33:45 +08:00
ajreckof 48a6476861 Fix going forward backward in editor selection history. 2024-04-14 17:21:11 +02:00
风青山 e825a6fb01
Make the inherited scene root node unable to change type
Make the inherited scene root behave like other children from the
inherited scene.
2024-04-11 22:29:18 +08:00
AeioMuch 0ba1adfaf9 Inspect hovered node while dragging 2024-04-10 17:15:13 +02:00
Haoyu Qiu 479b7afa8e Add context support for editor property name i18n 2024-03-31 18:40:14 +08:00
kobewi ad7d54174b Disable auto-translation in sub-resource list menu 2024-03-26 17:47:30 +01:00
kobewi 77879d4288 Update NodePaths only in built-in resources 2024-03-11 15:17:29 +01:00
Rémi Verschelde cc3457b125
Merge pull request #89142 from miv391/shortcut-to-editable-children
Change Editable Children menu action to be keyboard shortcuttable
2024-03-04 20:43:57 +01:00
Mika Viskari 3c0b66bf8f Changed Editable Children menu action to be keyboard shortcuttable 2024-03-04 18:32:15 +02:00
kobewi ffadba0b08 Allow to easily rename multiple nodes
Co-authored-by: ajreckof <tbonhoure@ymail.Com>
2024-03-03 13:16:21 +01:00
Muller-Castro 1638c1b28f Add const lvalue ref to editor/* container parameters 2024-02-26 15:28:15 -03:00
kobewi aeec3c1309 Add methods to add submenus without using names 2024-02-22 15:13:53 +01:00
Rémi Verschelde 9e9dcdbba4
Merge pull request #86378 from RobProductions/update-hover-styling
Add hover highlight to main editor buttons
2024-02-20 19:34:40 +01:00
kobewi a031911c82 Use check_changed_settings_in_group() everywhere 2024-02-19 21:34:45 +01:00
A Thousand Ships dde5368dee
[Editor] Add missing ellipses to menu options that open dialogs 2024-02-17 17:09:17 +01:00
Matt Enad 5b5de0e167 Add hover highlight to main editor buttons
Updates styling of the editor run bar, plugin, bottom panel, icon buttons, and main menu buttons for accessibility.
2024-02-16 14:49:44 -05:00
Bitlytic f9e03459e8
Add an option to center children around the new parent when reparenting 2024-02-14 13:46:04 +01:00
kobewi 8ec86e29c8 Rework how script is edited when clicking icon 2024-02-13 16:54:33 +01:00
A Thousand Ships 684752e75b
Replace error checks against `size` with `is_empty` 2024-02-09 12:50:15 +01:00
Rémi Verschelde 45e9d20d60
Merge pull request #87834 from TokageItLab/remove-dupecall-scene-tree-dock
Remove duplicated callings `set()` from SceneTreeDock
2024-02-05 14:50:09 +01:00
Silc Lizard (Tokage) Renew 87ab959ae0 Remove duplicated `set()` methods from SceneTreeDock 2024-02-03 10:01:27 +09:00
kobewi a2c2caa2f4 Fix shortcut name consistency in SceneTreeDock 2024-02-01 22:40:23 +01:00
passivestar 97a77c5193 Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
kobewi 60e88f2def Display path in tooltips of sub-resource list 2024-01-16 23:51:57 +01:00
Yuri Sizov 95b27fe8c7 Reorganize code related to editor theming
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.

Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.

All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
QuirkyLemon 14b2533ef6 add tooltip for toggling favorite nodes 2024-01-12 15:26:13 -06:00
kobewi 0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
SaracenOne cb8a743e18
Fix behavior of 'Editable Children' toggle.
Prevents losing nodes owned by the edited scene when
toggling editable_children off on an instanced scene,
and makes the toggle compatible with undo-redo.
2024-01-09 13:34:38 +01:00
Muller-Castro 96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Rémi Verschelde bb1006b2ac
Merge pull request #84284 from Haydoggo/script-switch
Preserve inspector focus when opening script from scene tree
2024-01-04 16:39:59 +01:00
Rémi Verschelde 1312a73304
Merge pull request #84135 from aXu-AP/reparent-select-fix
Fix nodes being deselected upon reparenting
2024-01-04 16:39:53 +01:00
Rémi Verschelde 6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
Rémi Verschelde df8b7fee81
Merge pull request #82802 from marcinn/fix-82756-prevent-saving-children-without-owner
Fix saving branch as scene saves children without owner set
2024-01-03 15:40:37 +01:00
Rémi Verschelde e78c5d0ec5
Merge pull request #86211 from TheSofox/node-duplicate-undo-fix
Fix duplicating multiple nodes at different depths in `SceneTreeDock`
2024-01-02 15:08:57 +01:00
Sofox ed648799ae Fixed duplicating nodes at different depths in SceneTreeDock 2023-12-22 15:20:08 +00:00
Michael Alexsander 589b7b0ed1
Fix scene dock search losing its default tooltip after typing an invalid filter 2023-12-17 20:07:46 -03:00
Wilson E. Alvarez a3cb1b096f
Add const references detected by clang-tidy 2023-12-16 13:36:44 -05:00
Yuri Sizov 8f33b4e83a Merge pull request #84882 from Invertex/select-instance-asset
Add "Show In FileSystem" to the Scene hierarchy right-click
2023-12-14 17:38:30 +01:00
Invertex 59787683a9 Added "Show In FileSystem" right-click option to Scene hierarchy nodes.
-Implemented shared function for focusing FileSystem tab and highlighting the node path.
-Created right-click option that shows up in the Scene-Hierarchy on Nodes that have a file-system source path.
-Created custom icon for this right-click option
-Implemented the shared function and icon for other places that already had this features (Open Node tab, Inspector Resource)

Co-authored-by: MewPurPur <mew.pur.pur@gmail.com>
2023-12-13 07:43:39 -08:00
Yuri Sizov 8cb2d20fce Merge pull request #85236 from YuriSizov/editor-flat-remote
Use the flat button style on switches in scene and node docks
2023-12-08 16:58:24 +01:00
Rémi Verschelde a8bc207252
Merge pull request #85181 from TheSofox/reparent-container-undo-fix
Restored Control properties when you undo a parenting of a Control to a Container
2023-12-04 23:10:51 +01:00
Yuri Sizov 3a67eb2675 Disable a prohibitively slow code branch when reparenting nodes 2023-11-29 17:39:39 +01:00
Yuri Sizov b1d6e336ea Use the flat button style on switches in scene and node docks 2023-11-22 20:10:35 +01:00
Sofox 5614e6d61c Restored Control layout properties you undo a parenting of a Control to a Container 2023-11-22 09:37:17 +00:00
Marcin Nowak 561fcf54a4 Fix #82756: Save branch as scene saves children without owner set 2023-11-16 01:14:04 +01:00
Rémi Verschelde 15b8185c68
Don't use TTR/RTR for ERR/WARN prints
We don't translate those, only editor strings are translated.
2023-11-12 12:00:55 +01:00
Yuri Sizov b04b546092 Fix node names of submenu items across the editor
Also removes some programmer remarks and fixes some docs.
2023-11-08 14:42:42 +01:00
Yuri Sizov 8b11ae9cf5 Merge pull request #83596 from SaracenOne/node_copy_paste_fix
Fix ownership bugs in node copy and pasting.
2023-11-06 13:23:03 +01:00
Saracen 26576cc210 Fix ownership bugs in node copy and pasting. 2023-11-04 20:14:09 +00:00
Saracen 4f0790a214 Fix perform_node_renames handling of AnimationMixers track paths 2023-11-02 21:38:32 +00:00
Hayden Leete 887fd08260 preserve inspector focus when opening script 2023-11-01 18:19:27 +13:00
aXu-AP 414d84b159 Fix nodes being deselected upon reparenting 2023-10-31 21:15:04 +02:00
Rémi Verschelde dc3a643541
Merge pull request #83934 from KoBeWi/give_back_animations_to_animation_editor
Fix animation track paths updated by scene dock
2023-10-28 18:34:10 +02:00
Saracen 29c2615352 Remove toggling of unique names in subscenes 2023-10-28 02:55:45 +01:00
Rémi Verschelde dd74ffde95
Merge pull request #84022 from SaracenOne/validate_renames
Add foreign validation warning for rename actions.
2023-10-27 11:39:20 +02:00
Saracen 5deff6c2dd Add foreign validation warning for rename actions. 2023-10-26 22:14:48 +01:00
Rémi Verschelde 9f20a4a391
Merge pull request #81510 from garychia/unedit_created_script
SceneTreeDock: Avoid changing the currently edited object when attaching a script
2023-10-26 08:57:01 +02:00
kobewi 294ce2d2a7 Fix animation track paths updated by scene dock 2023-10-25 12:34:50 +02:00
Rémi Verschelde cd46addfca
Merge pull request #83597 from SaracenOne/duplicate_foreign_nodes
Support duplication of foreign nodes.
2023-10-25 10:28:45 +02:00
Rémi Verschelde f41e07bfe6
Merge pull request #81737 from Mickeon/fix-connection-inherited-packed-scene
Fix internal `CONNECT_INHERITED` being saved in PackedScene & Make Local
2023-10-24 10:53:37 +02:00
Rémi Verschelde 5e8bf6addf
Merge pull request #83815 from timothyqiu/as
Fix "as" capitalization in editor strings
2023-10-23 12:43:15 +02:00
Rémi Verschelde e19acaab47
Merge pull request #82486 from timothyqiu/the-node-who-lived
Fix "Some nodes are referenced by animation tracks" when deleting instance
2023-10-23 12:39:15 +02:00
Haoyu Qiu 2413952a4c Fix "as" capitalization in editor strings 2023-10-23 16:10:05 +08:00
Saracen 9d6f570c28 Support duplication of foreign nodes. 2023-10-18 17:00:47 +01:00
Rémi Verschelde 3d9ce123fa
Merge pull request #83386 from SaracenOne/make_local_inherited
Disallow 'Make Local' command on inherited nodes.
2023-10-16 13:00:59 +02:00
Saracen 0f36040321 Disallow 'Make Local' command on inherited nodes. 2023-10-15 13:35:19 +01:00
kobewi a5c984412c Don't try updating wrong NodePaths in resources 2023-10-13 13:31:13 +02:00
Rémi Verschelde fc64dfedfb
Merge pull request #80817 from garychia/reparent_node
Avoid creating any useless undo action when dragging nodes in place
2023-10-10 15:06:06 +02:00
A Thousand Ships f18aa00e85 Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-10-08 17:23:33 +02:00
Rémi Verschelde c3046f4c0d
Merge pull request #80721 from tom95/resource-node-path-renaming
Recurse into resources to check for changed node paths
2023-10-03 17:12:44 +02:00
Micky 021d92fece Fix internal CONNECT_INHERITED being saved in PackedScene & Make Local 2023-10-03 15:03:55 +02:00
Tom Beckmann 42a3108902 recurse into resources to check for changed node paths 2023-10-02 22:00:02 +02:00
Silc Lizard (Tokage) Renew 1b95827d3e Implement AnimationManager the base class of AnimationPlayer/Tree 2023-09-29 08:23:57 +09:00
Haoyu Qiu b50d0ebb28 Fix "Some nodes are referenced by animation tracks" when deleting instance 2023-09-28 22:53:29 +08:00
kobewi e30e84d77a Fix submenus deleted accidentally 2023-09-26 16:47:33 +02:00
Hugo Locurcio edade7db23
Clarify filtering by node type and group in the Scene tree dock
This functionality has been available since 4.0, but was difficult
to discover since there was no tooltip and the placeholder didn't
mention it.
2023-09-22 23:09:35 +02:00
ajreckof 6afadbaa9f Replace Ctrl in editor shortcuts with Cmd or Ctrl depending on platform 2023-09-19 10:29:07 +02:00
A Thousand Ships 75ee58fd04 [Editor] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-09-15 20:15:39 +02:00
Yuri Sizov fa31a9fe2a Merge pull request #81673 from KoBeWi/only_child
Don't paste nodes as sibling of scene root
2023-09-15 19:48:44 +02:00
kobewi 4778b53da9 Don't paste nodes as sibling of scene root 2023-09-15 16:05:17 +02:00
Chia-Hsiang Cheng 3d7facd21c Remove animation tracks with correct indices 2023-09-15 14:22:09 +08:00
Yuri Sizov 9948f03344 Merge pull request #79920 from KoBeWi/most_sane_path
Automatically add path to built-in scripts
2023-09-14 15:21:19 +02:00
Chia-Hsiang Cheng d12d955e68 Avoid changing the currently edited object when attaching a script 2023-09-10 17:16:09 +08:00
风青山 95248a7d72 Fix bugs of copying scene root node or pasting node as scene root
Fix crash when pasting a node as a new scene root.
Fix owner was not set correctly when copying scene root node from unsaved scene.

The owner of the root node is `nullptr`, which was ignored before.
2023-09-07 21:57:37 +08:00
kobewi 6de34fde27 Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
Rémi Verschelde 0655a7d7d3
Merge pull request #80517 from YuriSizov/tsa-randomly-picked-you-for-mandatory-inspection-i-think-not
Avoid unnecessary inspector updates when loading or switching scenes
2023-08-28 12:05:06 +02:00
Chia-Hsiang Cheng 41441765cd Avoid creating any useless undo action when dragging nodes in place 2023-08-26 22:00:36 +08:00
Rémi Verschelde c081d1bd24
Merge pull request #78816 from kleonc/scene-tree-fix-drag-drop-to-parent-with-internal-nodes
Fix drag-dropping nodes to parent with internal nodes
2023-08-16 16:54:06 +02:00
Yuri Sizov 2445414aa0 Avoid unnecessary inspector updates when loading or switching scenes
This should result in some noticeable performance improvements,
aside from fixing bugs due to conflicts in logic.
This also simplifies some related code identified while debugging.
2023-08-12 13:32:59 +02:00
RandomWalrus13 585633ea85 Fix menu items that trigger secondary interface missing ellipsis
fix #80347
2023-08-09 08:30:35 -05:00
Rémi Verschelde 016621f51d
Merge pull request #79467 from Calinou/editor-add-paste-as-sibling
Add a shortcut to paste nodes as sibling of the selected node
2023-08-07 14:47:27 +02:00
Yuri Sizov e4b8dc81b8 Merge pull request #78300 from ajreckof/fix-replace-node-destroying-Node-properties
Auto-update properties when replacing a node
2023-08-03 22:37:40 +02:00
ajreckof 4da9927faf Fix replace node deleting `Node` properties.
Update editor/scene_tree_dock.cpp

Co-Authored-By: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-08-03 18:38:24 +02:00
kobewi ed6ad376c6 Automatically add path to built-in scripts 2023-07-26 14:52:45 +02:00
Chia-Hsiang Cheng e0cbbe4bbd Avoid duplicating the 'Filters' section 2023-07-23 12:14:28 +08:00
Hugo Locurcio c0e3dc55ba
Add a shortcut to paste nodes as sibling of the selected node
This makes quick pasting jobs easier when you don't want a heavily
nested structure, by pressing Ctrl + Shift + V (Cmd + Shift + V on macOS)
instead of Ctrl + V (Cmd + V on macOS).
2023-07-14 17:35:23 +02:00
kleonc 3f6e35bdb2 Fix drag-dropping nodes to parent with internal nodes 2023-07-07 19:24:44 +02:00
hzhang 25746716f3 Fix drag-dropping nodes at the end of children list 2023-06-19 20:42:33 +08:00
Rémi Verschelde c3e5e4ed4b
Merge pull request #68599 from Rindbee/update-edited_scene_root-in-time
Update the edit scene root in time after it is replaced
2023-06-12 17:08:50 +02:00