summaryrefslogtreecommitdiffstats
path: root/core/object/script_language_extension.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix Object::notification orderMarkus Sauermann2023-08-301-3/+12
| | | | | | | | | | | | | | Previously the `p_reversed` parameter didn't influence the order in a correct way. Also script overridden _notification functions were not called in the correct order. To fix this some `notification` functions had to add a `p_reversed` parameter. This made it necessary to adjust cpp-bindings. Co-authored-by: David Snopek <dsnopek@gmail.com>
* Merge pull request #75778 from KoBeWi/_vpRémi Verschelde2023-08-291-0/+3
|\ | | | | | | Expose `_validate_property()` for scripting
| * Expose _validate_property() for scriptingkobewi2023-08-281-0/+3
| |
* | Add a script method to get its class iconYuri Sizov2023-08-241-0/+7
|/ | | | Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
* Fix Ref<>.is_valid() for ScriptInstanceExtensionDavid Cambré2023-06-201-1/+1
| | | | Only check the reference not the value.
* Remove unused `ScriptLanguage` methodsvoidedWarranties2023-02-261-18/+0
|
* Support script global resource name in EditorFileSystemJuan Linietsky2023-01-211-0/+1
| | | | | | | | | | * Works for binary and text files. * Makes EditorQuickOpen work with custom resources again. * Information is cached and easily accessible. Properly fixes #66179. Supersedes #66215 and supersedes #62417 **WARNING**: This required breaking backwards binary compatibility (.res and .scn files). Files saved after this PR is merged will no longer open in any earlier versions of Godot.
* Fix `ScriptInstanceExtension::get_property_default_value` return valuevoidedWarranties2023-01-061-1/+2
|
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Rename all gdnative occurences to gdextensionGilles Roudière2022-12-121-32/+32
| | | | | | | | | | | | | 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
* Fix const qualifier for parameters in GDExtension api functionsEmmanuel Leblond2022-12-021-9/+9
|
* Revert removal of ↵Emmanuel Leblond2022-11-121-13/+7
| | | | | | | | GDNativeExtensionScriptInstanceInfo::get_property_type_func in GDExtension This function pointer is needed to stay close to internal Godot's ScriptInstance class. Besides, by removing this function pointer, we had to do property list create/free each time we want to access type which is quadratic complexity :/
* Use StringName in the whole GDExtension API instead of const char *Emmanuel Leblond2022-11-081-22/+16
|
* Implement ScriptExtension::get_documentationEmmanuel Leblond2022-10-111-1/+4
|
* SCons: Re-enable treating `#warning` as error with `werror`Rémi Verschelde2022-10-101-3/+1
| | | | | | | | Replace all TODO uses of `#warning` by proper TODO comments, and will open matching bug reports to keep track of them. We don't have a great track record fixing TODOs, but I'd wager we're even worse for fixing these "TODO #warning" so we should prohibit this usage.
* Make `property_*_revert` methods multilevel and expose them for scriptingYuri Sizov2022-08-181-0/+13
|
* Removed faulty function update after get_property_list.Hristo Stamenov2022-08-031-0/+8
| | | | The function tried to rearrange properties but that lead to problems with duplication or deleted properties. Implemented the logic that that function did inside the get_property_list both for tool scripts and non-tool scripts.
* [Net] Modularize multiplayer, expose MultiplayerAPI to extensions.Fabio Alessandrelli2022-07-261-21/+5
| | | | | | | | | - RPC configurations are now dictionaries. - Script.get_rpc_methods renamed to Script.get_rpc_config. - Node.rpc[_id] and Callable.rpc now return an Error. - Refactor MultiplayerAPI to allow extension. - New MultiplayerAPI.rpc method with Array argument (for scripts). - Move the default MultiplayerAPI implementation to a module.
* Add support for documenting built-in annotationsYuri Sizov2022-07-041-0/+9
|
* GDExtension: reuse code with constructor PropertyInfo(const ↵Jan Haller2022-06-291-3/+3
| | | | GDNativePropertyInfo&)
* Add a new HashSet templatereduz2022-05-201-2/+2
| | | | | * Intended to replace RBSet in most cases. * Optimized for iteration speed
* Replace most uses of Map by HashMapreduz2022-05-161-3/+3
| | | | | | | | | | | | * Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
* Improve sorting of Code Completion options.Eric M2022-04-011-0/+3
| | | | Done by ordering options by their location in the code - e.g. local, parent class, global, etc.
* Add GDExtension support to Scriptreduz2022-03-271-0/+832
* Ability to create script languages from GDExtension * Some additions to gdnative_extension.h to make this happen * Moved the GDExtension binder to core This now allows creating scripting languages from GDExtension, with the same ease as if it was a module. It replaces the old PluginScript from Godot 3.x. Warning: GodotCPP will need to be updated to support this (it may be a bit of work as ScriptInstance needs to be created over there again).