Commit Graph

466 Commits (fe0647202b4644642c5a4bd580bbeaf136254603)

Author SHA1 Message Date
David Snopek 7f74fe7bb2 Fix undefined symbol error on Linux with virtual methods that take `Node *` arguments 2024-06-10 10:55:24 -05:00
David Snopek 246a803954 Explicitly refer to `godot` namespace in `GDREGISTER_*_CLASS()` macros 2024-06-01 08:46:26 -05:00
David Snopek b697ba8896
Merge pull request #1447 from dsnopek/avoid-double-postinitialize
Fix NOTIFICATION_POSTINITIALIZE sent twice to native parent classes
2024-05-17 11:56:09 -05:00
David Snopek e4a4d76cb3
Merge pull request #1463 from Daylily-Zeleen/daylily-zeleen/const_get_class_static
Mark return value of `get_class_static` and `get_parent_class_static` as const.
2024-05-17 11:55:45 -05:00
Daylily-Zeleen 3db8549e19 mark return value of `get_class_static` and `get_parent_class_static` as const 2024-05-17 02:06:59 +08:00
David Snopek 6b39ed0732
Merge pull request #1457 from AThousandShips/foreach_list
[Core] Reduce and prevent unnecessary random-access to `List`
2024-05-16 08:46:39 -05:00
David Snopek 88df025aa0 Clean up instance bindings for engine singletons to prevent crash 2024-05-10 19:51:31 -05:00
David Snopek e3f3cb58b7
Merge pull request #1450 from dsnopek/free-property-list-count
Update `free_property_list` callback to take count
2024-05-08 04:40:52 -05:00
Rémi Verschelde 17a82e7f94
Merge pull request #1374 from dsnopek/gdext-docs
Allow submitting documentation to the Godot editor
2024-05-08 00:48:02 +02:00
David Snopek f5c2b38724
Merge pull request #1456 from dsnopek/packedvector4array
Add support for `PackedVector4Array`
2024-05-07 12:56:11 -05:00
David Snopek 3d0d9cd0e2
Merge pull request #1455 from AThousandShips/localvector_has
[Core] Add `LocalVector::has` for convenience
2024-05-07 12:55:59 -05:00
David Snopek 43be24f34c
Merge pull request #1437 from AThousandShips/vec_elem_scalar
Add scalar versions of `Vector*` `min/max/clamp/snap(ped)`
2024-05-07 12:55:23 -05:00
David Snopek a434850069 Allow submitting documentation to the Godot editor 2024-05-07 11:08:18 -05:00
A Thousand Ships d0bdd6096c
Optionaly add compatibility operators 2024-05-07 11:01:37 +02:00
A Thousand Ships 12a1283663
[Core] 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`
2024-05-07 11:00:56 +02:00
David Snopek 23178e81ff Add support for `PackedVector4Array` 2024-05-06 14:30:04 -05:00
A Thousand Ships 505076c9a9
[Core] Add `LocalVector::has` for convenience 2024-05-06 17:47:21 +02:00
David Snopek 54fe2f9891
Merge pull request #1445 from dsnopek/classdb-enum-issue
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
2024-04-30 09:30:01 -05:00
David Snopek 8cc78cfea9 Update `free_property_list` callback to take count 2024-04-30 08:48:53 -05:00
David Snopek 2cd3d39108
Merge pull request #1405 from dsnopek/fix-null-object-arguments
Correctly handle `Object *` arguments that were encoded as `nullptr`
2024-04-29 16:46:46 -05:00
David Snopek ca46ef4d25 Give compile-time error if registering a class without its own `_bind_methods()` function 2024-04-24 14:49:26 -05:00
David Snopek e23b117ac3
Merge pull request #1431 from pupil1337/fix-create-instance-func
Fix create instance func
2024-04-24 14:44:29 -05:00
David Snopek d304f12dcd
Merge pull request #1443 from Naros/property-method-dict-helpers
Implement to/from dict helpers for PropertyInfo/MethodInfo
2024-04-24 14:43:53 -05:00
David Snopek 61450b3e1b
Merge pull request #1436 from AThousandShips/math_update
[Math] Add `is_finite` methods
2024-04-24 14:43:36 -05:00
David Snopek 06373ce1cf Fix NOTIFICATION_POSTINITIALIZE sent twice to native parent class 2024-04-24 13:22:19 -05:00
David Snopek e1b3b32db5 Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations 2024-04-23 13:47:36 -05:00
Chris Cranford 2a041b5240 Implement to/from dict helpers for PropertyInfo/MethodInfo 2024-04-20 18:50:34 -04:00
Chris Cranford e160966163 Fix PropertyInfo to use hint/usage default constants 2024-04-16 07:24:48 -04:00
A Thousand Ships d389171905
[Math] Add `is_finite` methods 2024-04-11 13:30:28 +02:00
A Thousand Ships b65970860e
Add scalar versions of `Vector*` `min/max/clamp/snap(ped)`
Also added `snapped` to the integer vectors for completeness
2024-04-11 10:42:29 +02:00
pupil1337 1fa7a9cb19 Add static_assert() for register_class 2024-04-11 10:48:13 +08:00
David Snopek 37542dc2ec Correctly handle `Object *` arguments that were encoded as `nullptr` 2024-04-08 11:12:40 -05:00
A Thousand Ships d055b575fb
Fix incorrect utility call signature 2024-04-02 21:44:40 +02:00
David Snopek 44d78ec881
Merge pull request #1409 from Repiteo/class-to-typename
Enforce template syntax  `typename` over `class`
2024-04-02 14:30:01 -05:00
David Snopek a62f633ceb
Merge pull request #1379 from dsnopek/uninitialized-value-mk2
Avoid creating most objects that Godot is going to use placement new to initialize
2024-03-14 11:06:59 -05:00
David Snopek ec166295ba
Merge pull request #1397 from dsnopek/script-free-lists
Load new `script_instance_create3` GDExtension interface function
2024-03-14 10:02:21 -05:00
A Thousand Ships fb79d5ff98
Add support for getting argument count from `Callable`s 2024-03-14 10:27:39 +01:00
David Snopek efb46f7f82
Merge pull request #1407 from AThousandShips/flag_fix
Fix invalid `void` return in `BitField`
2024-03-11 12:43:12 -05:00
Thaddeus Crews 87f5fb0691
Enforce template syntax `typename` over `class` 2024-03-10 16:02:43 -05:00
Marc Gilleron e607790647 Fix explicit namespaces in macros 2024-03-08 19:42:07 +00:00
A Thousand Ships 7ed8ef7221
Fix invalid `void` return in `BitField` 2024-03-08 13:32:28 +01:00
David Snopek cc1217a43c
Merge pull request #1381 from dsnopek/notification-hierarchy
Fix `_notification()` with parent and child classes
2024-03-05 11:50:13 -06:00
David Snopek 8b92368165 Load new `script_instance_create3` GDExtension interface function 2024-03-01 10:50:02 -06:00
David Snopek e55b792fea
Merge pull request #1383 from bruvzg/memalign
[Core] Improve `CowData` and `Memory` metadata alignment.
2024-02-26 12:54:17 -06:00
David Snopek c4fde852e6 Avoid creating most objects that Godot is going to use placement new to initialize 2024-02-26 10:36:16 -06:00
David Snopek 23c010900c Fix _notification with parent and child classes 2024-02-22 14:39:50 -06:00
David Snopek fb884573ea Allow registering "runtime classes" 2024-02-13 08:55:25 -06:00
David Snopek 5fcc43e54d
Merge pull request #1377 from dsnopek/gdextension-register-virtual-method
Allow GDExtensions to register virtual methods and call them on scripts (godot-cpp support)
2024-02-12 18:43:12 -06:00
David Snopek 9a13efa0e3
Merge pull request #1363 from Daylily-Zeleen/daylily-zeleen/fix_object_return_value_of_builtin_types_methods
Fix object return value of builtin types' methods.
2024-02-12 14:33:20 -06:00
David Snopek 8fbb7cf795 Allow GDExtensions to register virtual methods and call them on scripts 2024-02-12 13:30:07 -06:00