Thaddeus Crews
9a0bc6431b
Merge pull request #118225 from Hrothdel/editor-fix-resource-preview-jitter
...
Fix editor unsaved scenes getting file path updates
2026-05-19 11:18:25 -05:00
kobewi
c2f8329f00
Fix various editor state related regressions
2026-05-15 00:04:41 +02:00
kobewi
8cd87c2c16
Overhaul scene loading and edit state management
2026-04-14 16:53:30 +02:00
Leonard Pop
9aad8978c4
Fix editor unsaved scenes getting file path updates
2026-04-05 20:56:32 +03:00
kit
7fc6eb88ad
Fix AnimationTree AnimationPlayerEditor broken
2026-03-28 19:38:12 -04:00
Rémi Verschelde
18edfa5245
Explicitly include scene_tree.h where used
...
Pre-requisite before removing `scene_tree.h` from `node.h`
which has cascading consequences on most of the codebase.
2026-03-05 10:43:25 +01:00
Thaddeus Crews
bed242666a
Merge pull request #116848 from billuo/bugfix/issue-116788-crash
...
Fix `reload_scene_from_path` may crash
2026-03-04 11:20:41 -06:00
Rémi Verschelde
eabb9a63d4
Rename callable_method_pointer.h to callable_mp.h and include it explicitly
...
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.
Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Zhen Luo
0b4f18be7a
Fix reload_scene_from_path may crash
2026-03-03 21:51:53 +08:00
Thaddeus Crews
e380a41752
Style: Add class_db.h includes explicitly
2026-02-26 15:50:28 -06:00
Klology
4a823dcd23
Updated unsaved scene dialog to show the time the scene was opened if the scene was last saved before the editor was stared instead of editor startup time.
2026-02-15 14:29:55 -07:00
Pāvels Nadtočajevs
338cfba60a
Use ObjectID to store nodes in the editor selection.
2025-12-18 09:16:43 +02:00
kobewi
7573388c82
Unassign scene root before freeing
2025-12-01 12:48:58 +01:00
xuhuisheng
766b45bdd9
Fix Clear Inheritance error
2025-10-29 21:27:50 +08:00
Thaddeus Crews
fdf32d1b2a
Merge pull request #108577 from YYF233333/global_class_list
...
Simplify `ScriptServer::get_global_class_list`
2025-09-30 11:19:10 -05:00
Thaddeus Crews
685c7e92e5
Merge pull request #100437 from KoBeWi/ruaninstancequestionmark
...
Add `is_instance()` helper method to Node
2025-09-23 12:08:48 -05:00
Yufeng Ying
a50fc5acd8
Change ClassDB::get_class_list and related stuff.
2025-09-16 15:00:33 +08:00
Mike Precup
1c8e3f9037
Speed up large selections in the editor
2025-08-31 14:25:44 -07:00
Mounir Tohami
aa086fa0d5
Fix Editor crash during first scan in headless import mode.
2025-07-27 04:55:23 +03:00
kobewi
11adf408ab
Add is_instance() helper method to Node
2025-07-08 20:42:52 +02:00
A Thousand Ships
f11aff3841
Editor: Restructure editor code
...
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
kobewi
18df2ae9ca
Add class icon cache to EditorNode
2025-05-27 13:59:13 +02:00
PhairZ
1ec1ba6d94
Make script_class_get_icon_path() return any value when r_valid is passed.
2025-04-30 15:42:29 +03:00
Rémi Verschelde
b12258bd22
Merge pull request #99897 from aaronfranke/editor-top-nodes
...
Clarify API for top selected nodes in EditorSelection and make public
2025-03-28 17:29:51 +01:00
Yyf2333
22b5ec17fb
Using iterator pattern instead of List::Element *.
...
Co-authored-by: Adam Scott <ascott.ca@gmail.com >
2025-03-28 13:29:15 +08:00
Aaron Franke
17db92b8b8
Clarify API for top selected nodes in EditorSelection and make public
2025-03-27 16:09:08 -07:00
kobewi
6f25babd6b
Remove empty constructors and destructors from editor/
2025-03-17 21:20:02 +01:00
Yyf2333
df80265d3a
Eliminate interior mutability in get_selected_node_list.
2025-03-14 02:38:02 +08:00
Yufeng Ying
bebe037abf
Add ConstIterator to Dictionary.
2025-03-13 01:28:46 +08:00
PhairZ
16b7459cda
fix plugin icons not displayed
2025-02-22 04:40:52 +02:00
Agustín Marsero
2ba64a57c5
Fix Global Class names cache not saved with upgrade to 4.4.
...
Co-authored-by: Hilderin <81109165+Hilderin@users.noreply.github.com >
2025-02-12 18:33:38 +01:00
kobewi
38d0e82a35
Store _custom_type_script meta as String
2025-02-12 01:22:09 +01:00
Z0rb14n
b32a76299a
Fix Script Class Icons Not Checking Parent
2025-02-07 23:22:03 -08:00
Pedro J. Estébanez
a20934c8e4
Optimize enumeration of global classes in create dialog and autocomplete
2025-01-29 09:39:50 +01:00
A Thousand Ships
a1846b27ea
Improve use of Ref.is_null/valid
...
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Yufeng Ying
f241c1fda0
Remove unused header in editor.
...
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com >
2024-12-24 00:40:38 +08:00
Aaron Franke
0ab3dc273e
Rename internal EditorPlugin icon/name to match exposed methods
2024-12-15 17:31:01 -08:00
bjornmp
06998a3927
Enforce that custom nodes keep their original type
...
Enforce that custom nodes and resources created via the "Create New Node" dialog, should permanently retain their original type (script). This means:
- Type continuity: It should be impossible for the user to (accidentally) clear the original script of a custom node that was created via the "Create New Node" dialog.
- Extensibility: The user should be able to extend custom types as usual (create a script that inherits the original type and replace the original script of that node with his own). However, if he then clears his extension-script from that node later on, the custom type should revert to its original script instead of becoming a non-scripted type.
2024-10-22 18:18:16 +02:00
kobewi
ecc0ab8061
Add EditorContextMenuPluginManager and refactor menu plugins
2024-09-03 23:59:25 +02:00
Rémi Verschelde
79da448d5f
Merge pull request #94582 from citizenll/feat_context_menu_plugin4.x
...
Add support for custom items to editor right-click context menus
2024-09-03 16:13:47 +02:00
citizenl
6b2348adac
Add support for custom items to editor right-click context menus
2024-09-03 20:14:14 +08:00
Hilderin
769424388e
Fix crash on reimport scene with animations
2024-08-02 16:50:22 -04:00
kobewi
413c11357d
Use Core/Scene stringnames consistently
2024-05-13 23:41:07 +02:00
Aaron Franke
1bcbbe96c4
Organize existing code for editor plugins
2024-04-27 11:59:58 -07:00
风青山
41f6a683b6
Correctly replace scene root when must_reload in EditorData::check_and_update_scene()
...
We need to update the scene root in multiple singletons to ensure that
certain flags are correct. This is what `EditorNode::set_edited_scene()`
does.
Usually we use `replace_by` to complete the replacement of the scene
root. Call `EditorNode::set_edited_scene()` when the `replacing_by`
signal is emitted to set the new scene root. This is suitable when
using a single node to replace, which may be problematic if the
replacing node is a tree. Because during the call to `replace_by()`,
the new node and its child nodes will enter tree during `parent->
add_child(p_node)`, and later emits the `replacing_by` signal.
When the parent scene has to be reloaded because the child scene
changes and switches to the parent scene, there is no need to use
`replace_by()` since the scene's diffs are already saved.
2024-04-10 09:49:29 +08:00
ajreckof
609559c074
Fix strange visual bug with camera and external change.
2024-04-07 03:49:43 +02:00
ajreckof
ae472865d0
fix node duplication in update after external changes.
2024-04-03 12:19:38 +02:00
ajreckof
69e5e582c8
fix error where update wouldn't reconnect the signal it should have reconnected and led to errors and crash
2024-03-22 01:00:33 +01:00
Muller-Castro
1638c1b28f
Add const lvalue ref to editor/* container parameters
2024-02-26 15:28:15 -03:00
kobewi
808f4e8cb9
Check if history exists before discarding
2024-02-05 17:42:37 +01:00