Commit Graph

74 Commits (7d4758eace9cfee80bbb16b862a4e07744c61eb2)

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 88df025aa0 Clean up instance bindings for engine singletons to prevent crash 2024-05-10 19:51:31 -05:00
Thaddeus Crews a537b4af4d
Use `GDREGISTER` defines in example 2024-04-10 14:15:28 -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 e6b6df5893
Merge pull request #1399 from bruvzg/init_list
[Packed*Array] Add support for initializer lists.
2024-03-12 14:30:38 -05:00
bruvzg 8c98a90f32
[Packed*Array] Add support for initializer lists. 2024-03-03 12:50:53 +02: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 8fbb7cf795 Allow GDExtensions to register virtual methods and call them on scripts 2024-02-12 13:30:07 -06:00
Chris Cranford 5f350e2572 Rework GDCLASS macro to allow pure virtual functions 2024-01-18 20:14:13 -05:00
David Snopek 20c4e843b0 Send NOTIFICATION_POSTINITIALIZE to extension classes 2023-11-29 12:00:43 -06:00
David Snopek d33bd47219 Add `CallableCustom` that devs can use in their GDExtensions 2023-11-06 00:09:06 -06:00
Rémi Verschelde 1ab94699c5
Merge pull request #1277 from dsnopek/variant-iter-tests
Add an automated test using a Variant iterator
2023-10-24 22:30:42 +02:00
David Snopek 421c61e730 Add test for `Callable.bind()` 2023-10-21 17:42:10 -05:00
David Snopek d733663e8b Add an automated test using a Variant iterator 2023-10-20 12:58:00 -05:00
David Snopek c18c1916c3 Implement `callable_mp()` and `callable_mp_static()` 2023-09-21 15:17:50 -05:00
David Snopek 4314f91b7d
Merge pull request #1238 from dsnopek/variant-call-callp
Fix variant call compiler error (alternate)
2023-09-21 15:07:05 -05:00
David Snopek aa6867e6c9 Support `_validate_property()` 2023-09-12 13:21:16 -05:00
Matthew Murphy ca3e25de04 Fix variant call compiler error
Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-09-09 11:30:29 -05:00
David Snopek d5fab0b9f8 Add automated tests to verify some previous fixes 2023-08-14 20:48:51 -05:00
David Snopek 8bc1c1dbeb Implement `String::resize()` 2023-07-31 15:14:10 -05:00
David Snopek 3162be28e5
Merge pull request #1150 from dsnopek/charstring-full
Attempt to fully implement CharString
2023-07-22 09:04:27 -05:00
Fabio Alessandrelli 155f2e2a62 Add RPC tests. 2023-06-30 15:07:42 +02:00
David Snopek 4df112cd95 Attempt to fully implement CharString 2023-06-22 21:03:30 -05:00
Rémi Verschelde d12cf071bb
Merge pull request #1128 from Mathis-Z/master
Fixing #1127 by making return types of auto-generated functions dynamic
2023-06-08 22:31:51 +02:00
Mathis-Z ac98dd2752 Fixing #1127 by making return types of auto-generated functions dynamic 2023-06-08 20:35:29 +02:00
David Snopek ad726015e7 Revert the changes from PR #1044 and #1045 and standardize on `Object **` encoding in ptrcall 2023-06-07 08:30:33 -05:00
David Snopek 1fd3f82d3a Add automated tests that run a GDExtension (rather than just building it) 2023-05-17 14:08:12 -05:00
David Snopek a5c6ca5920 Update to load function pointers for GDExtension interface 2023-05-09 21:45:48 -05:00
Rémi Verschelde e72bc1a12f
Merge pull request #1028 from asmaloney/fix-improper-conversion
Fix improper implicit conversion
2023-02-07 13:48:54 +01:00
Andy Maloney b01f0cf99b ExampleRef::get_id() should be const 2023-02-02 13:01:31 -05:00
Andy Maloney f2cb5a7414 Fix improper implicit conversion 2023-02-02 11:30:37 -05:00
Дмитрий Сальников 6528c7177f Fixed variant casting for enum and bitfield 2023-01-20 21:10:03 +03:00
bruvzg abca497b72
Expose some low level functions and String operators. 2023-01-19 13:12:21 +02:00
Rémi Verschelde 931f1a3f34
Sync license copyright with upstream GH-70885 2023-01-10 16:15:31 +01:00
Fabio Alessandrelli 9fd33b5cde Allow method binds to take Object subclasses as arguments
As done in upstream Godot via GH-57205.

Add a test that ensures it works also for "gdextended" objects.
2023-01-10 12:55:41 +01:00
Rémi Verschelde bab247dcb6
Rename godot-headers to gdextension, move header to top folder
Changes the `<godot/gdextension_interface.h>` include to simply
`<gdextension_interface.h>`.

Refactor and better document the SCons and CMake logic around setting
the paths to the header and API JSON file.
2022-12-14 12:36:59 +01:00
Rémi Verschelde 49a478a879
Merge pull request #949 from BastiaanOlij/fix_tests_refcounting
Change example code to properly test refcounted objects
2022-12-13 12:13:39 +01:00
Gilles Roudière c02e644679 Rename GDNative to GDExtension
Non-exhaustive list of case-sensitive renames:

GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension -> Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION -> EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:06:38 +01:00
Bastiaan Olij f24ee56c5d Change example code to properly represent test cases with refcounted objects 2022-12-05 22:28:28 +11:00
Emmanuel Leblond fe86a94dcf
Fix const qualifier for parameters in GDExtension api functions 2022-12-03 00:27:07 +01:00
Andy Maloney fbf7f7bc36 Fix some type warnings in example 2022-11-16 16:43:44 -05:00
Ricardo Buring 01960ffc9f Add support for virtual and abstract classes 2022-10-15 13:15:05 +02:00
bruvzg c001d0e5c7
Implement support for typed arrays. 2022-09-23 09:02:00 +03:00
bruvzg 36273baa7e
Change PropertyInfo members to String. 2022-09-14 08:41:09 +03:00
Ricardo Buring 3e97626b67 Add SelfList template 2022-09-13 11:33:12 +02:00
Fabio Alessandrelli e272d92827 [Test] Add minimal test for templates inclusion.
We probably want to test more than just them being able to compile, but
this is a start.
2022-09-12 13:12:55 +02:00
Rémi Verschelde 446cacde15
Merge pull request #817 from akien-mga/test-project-public-domain 2022-09-07 13:07:57 +02:00
Rémi Verschelde 9220e9dd34 Relicense integration testing project under public domain/Unlicense
Fixes #813.
2022-08-22 18:20:11 +02:00
bruvzg 270ad28931
Add support for `_notification`, `_set`, `_get`, `_get_property_list`, `_property_can_revert`, `_property_get_revert`, and `_to_string` methods. 2022-08-22 12:59:38 +03:00