7d3c25d083
Remove callable_bind.h from object.h
2025-10-14 16:24:05 +08:00
e33f89fe27
Merge pull request #111323 from HolonProduction/rm-script
...
Remove `Object::script`
2025-10-10 10:26:09 -05:00
09ad9e535b
Rename MTVIRTUAL to DEBUG_VIRTUAL
2025-10-09 22:11:18 +02:00
89e3587cd8
Merge pull request #111339 from HolonProduction/obj-pack
...
Bitpack more `Object` booleans
2025-10-07 11:54:34 -05:00
1c643549f3
Merge pull request #111337 from Ivorforce/gdvirtual-init-virtual-ptr
...
Abstract `Object` virtual pointer init into a method instead of duplicating it across `gdvirtual.gen.inc`
2025-10-07 11:54:31 -05:00
91c48b3151
Abstract Object virtual pointer init into a method instead of duplicating it across gdvirtual.gen.inc.
2025-10-07 00:12:40 +02:00
7b2e148687
Bitpack more Object booleans
2025-10-06 22:01:22 +02:00
2adecffbc3
Remove Object::script
2025-10-06 16:27:53 +02:00
5935a32e32
Core: Cleanup headers in core/config
...
- `MainLoop` now forward-declared in `OS`
2025-10-06 09:20:56 -05:00
686b56fae9
Merge pull request #106434 from Ivorforce/invert-hashfuncs
...
Reduce cross project includes by rewriting `HashMapHasherDefault`.
2025-10-06 09:06:37 -05:00
dd6ffaabdc
Merge pull request #105793 from Ivorforce/gdtype-the-first
...
Core: Add initial architecture for first-class `Object` types. Optimize `is_class`
2025-10-06 09:06:36 -05:00
9d44b68867
Remove rw_lock.h and rb_map.h includes from object.h.
2025-10-05 23:29:04 +02:00
ad600125df
Rewrite HashMapHasherDefault based on type traits - it is now possible to declare a default hashing function for any type.
...
Remove cross-project includes from `hashfuncs.h`.
Improve hashing function for `Color` (based on values instead of `String`).
Move `Variant` comparison from `hash_map.h` to `dictionary.cpp` (`VariantComparatorDictionary`), where it's used.
Remove now unnecessary `HashableHasher`.
2025-10-05 01:49:11 +02:00
f6aa5ba23c
Merge pull request #97210 from AleksLitynski/object-snapshot-debugger
...
Add an ObjectDB Profiling Tool
2025-10-03 12:01:11 -05:00
ac85d24e64
Add GDType and Object::_gdtype_ptr for first-class Object typing.
...
The type is currently bare-bones, but will be expanded in future PRs.
2025-10-01 18:49:48 +02:00
2c707a911f
GDExtension: Prevent breaking compatibility for unexposed classes that can only be created once
2025-09-30 14:48:06 -05:00
a20ca7bbfe
Merge pull request #110459 from YeldhamDev/let_the_poor_ints_slide
...
Allow to use sliders for integers in `EditorSpinSlider`
2025-09-22 13:28:52 -05:00
f16ff829f0
Allow to use sliders for integers in EditorSpinSlider
2025-09-22 11:23:15 -03:00
96619d46a1
Use AncestralClass to speed up Object::cast_to when possible.
2025-09-22 13:21:51 +02:00
149a4b4ca1
Merge pull request #107868 from lawnjelly/quick_ancestry4
...
Provide quick access to `Object` ancestry
2025-09-20 13:41:39 -05:00
555e7ad073
Core: Handle disabled class detection in ClassDB
2025-08-26 09:31:14 -05:00
78f1543e35
Add an ObjectDB Profiling Tool
...
A new tab is added to the debugger that can help profile a game's memory usage.
Specifically, this lets you save a snapshot of all the objects in a running
game's ObjectDB to disk. It then lets you view the snapshot and diff two
snapshots against each other. This is meant to work similarly to Chrome's
heap snapshot tool or Unity's memory profiler.
2025-07-08 16:39:24 +02:00
14a814586a
Provide quick access to Object ancestry
2025-06-23 07:11:11 +01:00
a7ab249a2a
Make PROPERTY_HINT_GROUP_ENABLE hide properties by default
2025-06-16 20:03:49 +08:00
22702244f8
Merge pull request #105414 from KoBeWi/disable_uid_here
...
Add `@export_file_path` to export raw paths (no UID)
2025-06-13 01:30:24 +02:00
454e4f817c
Make build profile project detection also set build options
2025-06-03 11:11:33 -03:00
5e2396e001
Add a flag to make the connection automatically emit the source object.
...
Mainly used to improve the connection dialog.
Not implemented in `emit_signalp()`, append the source object when a PackScene is instantiated.
2025-05-27 20:19:03 +08:00
06301bee3e
Merge pull request #106775 from Ivorforce/gdsoftclass-expand
...
Move compatible functionality from `GDCLASS` to `GDSOFTCLASS`.
2025-05-26 11:24:26 -05:00
621a8d14fa
Move compatible functionality from GDCLASS to GDSOFTCLASS.
2025-05-26 17:41:15 +02:00
42249bb659
Add @export_file_path to export raw paths (no UID)
2025-05-22 13:25:17 +02:00
1a427d3dec
Add feature hint string and "On" text for checkable groups
2025-05-21 14:56:55 -07:00
d237e31a89
Style: Remove redundant DEBUG_METHODS_ENABLED
...
• Replaced with functionally identical and far more ubiquitous `DEBUG_ENABLED`
2025-05-15 13:09:41 -05:00
1c4b660312
Merge pull request #96611 from Dynamic-Pistol/master
...
Add `PROPERTY_HINT_INPUT_NAME` for use with `@export_custom` to allow using input actions
2025-05-13 16:22:25 -05:00
e57427900f
Use BinaryMutex instead of Mutex for StringName.
2025-04-28 17:13:26 +02:00
c8fed1e1d0
Add PROPERTY_HINT_INPUT_NAME
...
Added PROPERTY_HINT_INPUT_NAME for StringName based off https://github.com/godotengine/godot-proposals/discussions/7559
2025-04-23 22:23:44 +02:00
91fe434a86
Always use String as StringName backing internally.
2025-04-23 14:57:03 +02:00
0cc292f880
Merge pull request #105272 from lodetrick/add_section_toggle
...
Add enable checkboxes to editor sections
2025-04-21 08:24:20 -05:00
2f39d8ebef
Add thread safety to Object signals
...
* It turns out the majority of this work was done already by AThousandShips as part of #89451 . This allows to do lock-less emitting of signals.
* This means, that only the signal map needs to be protected, making the task simple and without risk of deadlocks, or affecting performance.
* Objects can choose to not protect signals for performance (as example Node uses thread guards for protection, so these signals are not thread safe).
2025-04-16 17:14:44 +02:00
ebe9370724
Add enable checkboxes to editor sections
...
Fixes https://github.com/godotengine/godot-proposals/issues/4173
2025-04-15 13:49:41 -07:00
fbe64ffb45
Change get_class_static to return StringName.
...
Use that static `get_class_static` for `_get_class_namev` to avoid duplication.
2025-04-08 23:25:05 +02:00
36991aba34
Merge pull request #104264 from YYF233333/layout/gdvirtual
...
Optimize gdvirtual function layout
2025-04-08 12:32:51 -05:00
5dc7d56b92
Merge pull request #105099 from Ivorforce/object-classname-cache
...
Fix caching of objects' class name pointer in `Object` instances.
2025-04-08 12:32:40 -05:00
e7f087b91a
Fix caching of objects' class name pointer in Object instances.
...
Use `get_class_name` for `get_class` calls. Merge `get_parent_class_static` into `get_class_static`.
2025-04-07 21:05:21 +02:00
5edb235018
CI: Bump various pre-commit hooks
2025-04-07 08:23:35 -05:00
046c9f540c
Merge pull request #105030 from Ivorforce/class-is-enabled-object
...
Move `GD_IS_CLASS_ENABLED` and respective include from `class_db.h` to `object.h`, as this is where it's needed.
2025-04-04 17:40:58 -05:00
aa5ca4f1a2
Move GD_IS_CLASS_ENABLED and respective include from class_db.h to object.h, as this is where it's needed.
2025-04-04 23:45:35 +02:00
78922d756a
Core: Decouple GDCLASS from ClassDB
2025-04-04 16:21:30 -05:00
057858a0fb
Optimize gdvirtual layout.
...
Co-authored-by: David Snopek <dsnopek@gmail.com >
2025-04-04 22:54:42 +08:00
e6d166344b
Remove unused get_inheritance_list_static from GDCLASS.
2025-04-03 17:18:28 +02:00
be82731f99
Removed unused get_valid_parents_static functions from GDCLASS.
2025-04-02 13:50:47 +02:00