Rémi Verschelde
23e51c3cb5
Merge pull request #92888 from Hilderin/fix-unable-to-use-resourceLoader-in-c#-after-threaded-load
...
Fix inability to use ResourceLoader in C# after threaded load in GDScript
2024-09-12 09:25:05 +02:00
Rémi Verschelde
cd9da3344f
Merge pull request #95292 from aaronp64/is_parent_class_perf
...
Improve `ClassDB::_is_parent_class` performance
2024-09-12 09:17:39 +02:00
Hilderin
27d1fb63e1
Fix Unable to use ResourceLoader in C# after threaded load in GDScript #92798
2024-09-11 19:03:55 -04:00
Jan Haller
82b2a58f4c
Fix bool type appearing in GDExtension header
2024-08-31 22:40:48 +02:00
Danil Alexeev
49bcdf78a7
Core: Сheck r_error after calling callp()
2024-08-30 21:09:30 +03:00
Hilderin
ef6f873938
Fix editor needs restart after adding GDExtensions
2024-08-29 06:15:32 -04:00
Rémi Verschelde
b4f268fae8
Merge pull request #91018 from Daylily-Zeleen/daylily-zeleen/optionally_postinitialization_for_extension_owner
...
Allow ClassDB to create a Object without postinitialization for GDExtension.
2024-08-26 10:51:17 +02:00
Rémi Verschelde
091212b4f1
Merge pull request #93602 from aaronp64/inspector_latency
...
Improve Editor Inspector/Theme item lookup performance
2024-08-22 00:10:26 +02:00
aaronp64
7593e55527
Improve Editor Inspector/Theme item lookup performance
...
Changes to reduce the latency between changing node selection in the editor and seeing the new node reflected in the Inspector tab
- Use Vector instead of List for ThemeOwner::get_theme_type_dependencies and related functions
- Use Vector instead of List for ThemeContext::themes, set_themes(), and get_themes()
- Add ClassDB:get_inheritance_chain_nocheck to get all parent/ancestor classes at once, to avoid repeated ClassDB locking overhead
- Update BIND_THEME_ITEM macros and ThemeDB::update_class_instance_items to use provided StringNames for call to ThemeItemSetter, instead of creating a new StringName in each call
These changes reduce the time taken by EditorInspector::update_tree by around 30-35%
2024-08-20 13:39:40 -04:00
Daylily-Zeleen
3d575801ce
Allow ClassDB to create a Object without postinitialization for GDExtension.
2024-08-20 20:19:02 +08:00
aaronp64
6e5175592d
Improve ClassDB::_is_parent_class performance
...
Change ClassDB::_is_parent_class to use ClassInfo::inherits_ptr, instead of looking up each inherited class name.
2024-08-08 13:16:42 -04:00
Rémi Verschelde
fe5d567917
Merge pull request #93942 from MikeSchulze/73525
...
Fix GDScript analyzer error when instantiating EditorPlugins.
2024-07-11 09:41:09 +02:00
baptr
810fcc7431
Fix gdscript analyzer error when instantiating EditorPlugins.
...
Editor code is not instantiable outside of the editor
(https://github.com/godotengine/godot/blob/1d14c054a12dacdc193b589e4afb0ef319ee2aae/core/object/class_db.cpp#L369 ).
This is fine for editor plugins and the like, but the GDScript analyzer
balks at it, causing F5 runs to fail: #73525 .
Instead, we really just want to know if the type is abstract - so add
a new ClassDB method to check that and nothing else.
Update core/object/class_db.cpp
Apply code review comments
Co-Authored-By: Bryce <1522777+baptr@users.noreply.github.com >
2024-07-10 10:24:57 +02:00
David Snopek
91fcdff01e
GDExtension: Fix setting base class properties on a runtime class
2024-07-08 12:33:55 -05:00
Mikael Hermansson
e312f147aa
Fix ClassDB not checking for API_EDITOR_EXTENSION
2024-05-25 00:23:12 +02:00
David Snopek
62f9365b21
Don't use ERR_PRINT_ONCE() for runtime class error because it will hide errors
2024-05-21 13:55:56 -05:00
kobewi
413c11357d
Use Core/Scene stringnames consistently
2024-05-13 23:41:07 +02:00
kobewi
a262d2d881
Add shorthand for using singleton string names
2024-05-11 18:53:08 +02:00
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
Jan Haller
27a637d287
GDExtension: provide free_property_list_func with length of array
2024-04-27 14:13:17 +02:00
David Snopek
87aec2745d
Fix GDExtension hot reload for classes not created via ClassDB::instantiate()
2024-04-09 13:40:33 -05:00
A Thousand Ships
59bcc2888c
Add methods to get argument count of methods
...
Added to:
* `Callable`s
* `Object`s
* `ClassDB`
* `Script(Instance)`s
2024-03-10 11:02:43 +01:00
398utubzyt
4c69e8c026
Fix compilation errors when DISABLE_DEPRECATED is defined
2024-02-28 05:09:29 -08:00
David Snopek
4d0b989bb8
Allow registering "runtime classes" in modules (not just GDExtension)
2024-02-22 14:50:41 -06:00
David Snopek
ea75307a11
Allow registering "runtime classes"
2024-02-20 09:20:58 -06:00