Commit Graph

41 Commits

Author SHA1 Message Date
ef9738005a Separate Node editor dock 2025-11-22 10:17:03 +08:00
67735cf213 Make bottom panel into available dock slot 2025-11-21 18:52:13 +01:00
cb1569345a Merge pull request #112729 from KoBeWi/multi_group_yoink
Edit groups on multiple nodes
2025-11-20 16:47:07 -06:00
d6d60845fe Separate visual shader code out of shader editor plugin and dialog 2025-11-20 10:49:18 -08:00
e18b1de88d Merge pull request #107942 from Mickeon/scene-tree-filter-placeholder
Simplify Node Filter's placeholder in Scene dock
2025-11-14 14:22:38 -06:00
23338d2d98 Merge pull request #108168 from Nikitf777/move-nodes-with-different-parents
Allow moving nodes when they have different parents in SceneTreeDock
2025-11-14 14:22:29 -06:00
d59cf3e6c2 Merge pull request #92390 from KoBeWi/add_section_end_section_separate_section._-._section
Refactor SceneTreeDock context menu separators
2025-11-13 17:42:50 -06:00
5fa0f31247 Edit groups on multiple nodes
Co-authored-by: Pablo Ibarz <fribarz123@gmail.com>
2025-11-13 13:37:09 +01:00
77cfbe9371 Merge pull request #111780 from aaronfranke/tree-double-click-not-editable
Allow double-clicking icons of non-editable Tree items
2025-11-10 17:46:58 -06:00
2e09c69f55 Simplify Node Filter's placeholder in Scene dock 2025-11-06 20:36:01 +01:00
0994b19ba4 Merge pull request #111025 from xuhuisheng/dev/clear_inheritance
Fix Clear Inheritance issues
2025-10-29 13:13:53 -05:00
766b45bdd9 Fix Clear Inheritance error 2025-10-29 21:27:50 +08:00
ed4f4d275e Merge pull request #110904 from YeldhamDev/tree_drag_unfolding
Unfold tree items on hover while drag-n-dropping
2025-10-21 15:11:01 -05:00
464ddd4ea7 Merge pull request #109043 from GabCoolDude/resource-signal-viewer
View resource signals in the Connections Dock
2025-10-20 18:09:56 -05:00
cdcb2fc389 View resource signals in the Connections Dock 2025-10-20 23:24:32 +02:00
6075800789 Refactor SceneTreeDock context menu separators 2025-10-20 14:07:08 +02:00
70ea991c69 Allow double-clicking icons of non-editable Tree items 2025-10-19 00:58:05 -07:00
38af23a654 Merge pull request #89409 from aaronfranke/server-folders
Move server files into their subfolders
2025-10-03 12:01:00 -05:00
2182dedcc6 Fix switching back to local SceneTree. 2025-10-02 11:46:47 +03:00
3d1c9fd5de Move server files into their subfolders 2025-09-30 19:39:39 -07:00
97b398cba1 Rework editor docks 2025-09-29 17:30:41 +02:00
26745b4b87 Unfold tree items on hover while drag-n-dropping
Co-authored-by: suddjian
2025-09-26 14:38:45 -03:00
bd65cfa876 Revert "Replace many uses of is_class with derives_from."
This reverts commit 78b743cf4a.
2025-09-25 13:48:53 +02:00
78b743cf4a Merge pull request #110832 from Ivorforce/is-class-to-derives-from
Replace many uses of `is_class` with `derives_from`.
2025-09-24 09:59:09 -05:00
f987cf8a8a Merge pull request #110231 from fstxz/fix_shader_path
Fix invalid suggested file name when saving resource from a scene that hasn't been saved yet
2025-09-24 09:59:06 -05:00
8ef4a43ada Replace many uses of is_class with derives_from. 2025-09-23 19:59:00 +02:00
685c7e92e5 Merge pull request #100437 from KoBeWi/ruaninstancequestionmark
Add `is_instance()` helper method to Node
2025-09-23 12:08:48 -05:00
709226ad1c Merge pull request #109515 from precup/speedy-selections
Speed up large selections in the editor
2025-09-22 21:00:54 -05:00
aeb3a45c97 Hide Control focus when given via mouse input 2025-09-19 13:43:29 -03:00
7b850260bf Fix invalid suggested file name when saving resource from a scene that hasn't been saved yet 2025-09-04 09:49:09 +04:00
1c8e3f9037 Speed up large selections in the editor 2025-08-31 14:25:44 -07:00
27fb2181cd Track last selection using ObjectID 2025-08-20 14:49:50 +02:00
2bfc3212ad Merge pull request #108883 from aaronfranke/editor-crash-scene-tree-dock
Fix crash in SceneTreeDock when closing a scene with a selected node
2025-07-23 13:27:08 -05:00
57719ca9e2 Merge pull request #108708 from Rindbee/fix-wrong-node-path-when-Reparent-to-New-Node
Fix the absolute `NodePath` was calculated incorrectly when "Reparent to New Node"
2025-07-23 13:27:00 -05:00
d492b665c3 Fix crash in SceneTreeDock when closing a scene with a selected node 2025-07-22 14:40:26 -07:00
2f5af689fd Fix the absolute NodePath was calculated incorrectly when "Reparent to New Node"
Since the new parent node has not yet been added to the tree, the
`new_base_path` needs to be calculated using the `base_path`.
2025-07-18 10:26:50 +08:00
b400633dc2 Show detach script button when added via inspector
Fixes #107059.

The SceneTreeDock was not tracking script changes in selected nodes in any capacity as far as I could assess. To do
that, my solution essentially connects the "script_changed" signal from selected nodes to
"SceneTreeDock::_update_script_button()" whenever the selection changes. It actually queues the update to make sure it
happens only once no matter how many nodes are selected.

However, only connecting that signal would leave previously selected nodes with a signal connection that should no
longer exist. To properly disconnect previously selected nodes, we have to store the list of currently selected nodes so
we can disconnect them when the selection changes.

The commit also includes some improvements to the SceneTreeDock class:

1. Remove unnecessary initialization in SceneTreeDock

This field is already initialized in the line that declares it. As such, initializing it on the constructor as well as
is redundant.

2. Queue script button updates in scene tree dock

Since we now have the option to defer the script button update and make sure it only runs once per frame, it's always
best to use the queued version of the update from a performance perspective. I'm not entirely sure if there could be any
unexpected side effects but it is a minor self-contained UI update, so it's likely a relatively safe change.

The replacement includes the bindings since it is a requirement for the other replacements in the class to work
(UndoRedo needs their method names registered in the class DB). It should be OK to remove the old non-queued bindings
too even though they are accessible in the public API because it is a "unofficial" method starting with an underscore.
2025-07-17 13:09:50 -03:00
5a38042b2d Scroll scene tree when moving item with keys 2025-07-10 21:52:50 +02:00
11adf408ab Add is_instance() helper method to Node 2025-07-08 20:42:52 +02:00
cde07bfb9e Allow moving nodes when they have different parents in SceneTreeDock 2025-07-05 17:03:42 +03:00
f11aff3841 Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00