summaryrefslogtreecommitdiffstats
path: root/core/object
Commit message (Collapse)AuthorAgeFilesLines
* Use range iterators in LocalVector loopskobewi2023-01-212-8/+7
|
* Merge pull request #71687 from reduz/support-script-class-name-in-efsRémi Verschelde2023-01-212-1/+2
|\ | | | | | | Support script global resource name in EditorFileSystem
| * Support script global resource name in EditorFileSystemJuan Linietsky2023-01-212-1/+2
| | | | | | | | | | | | | | | | | | | | * 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.
* | Implement a quick script inheritance checkJuan Linietsky2023-01-192-1/+35
|/ | | | Optimizes, simplifies and fixes EditorResourcePicker (was not refreshing custom clases).
* Clean up EditorFileSystem script parsingJuan Linietsky2023-01-182-0/+10
| | | | | * Optimize only update modified/added/removed files. * Clean up documentation parsing.
* Move global script class cache to separate filekobewi2023-01-161-17/+25
|
* Fix Callable call error reporting.Juan Linietsky2023-01-101-1/+1
| | | | | | * Fix potential crash when using bind in `Variant::get_callable_error_text()` * Properly compute bound arguments so they can be properly shown. * Add a function to obtain the actual bound arguments.
* Removed unused property hints and `Object::get_translatable_strings()`Juan Linietsky2023-01-092-36/+4
| | | | | | | | | | | | | | | | * Remove unused `EditorPropertyMember` and related hints, previouly used by VisualScript. Such logic should be implemented in the VS module itself. * As the above broke compatibility with the VS module, clean up the other hacks that were still in core in support of VisualScript. * `PROPERTY_USAGE_INTERNATIONALIZED` was only used in Object's `get_translatable_strings()`, which is a legacy function not used anywhere. So both are removed. * Reordered some usage flags after the above removal to minimize the diff. * General clean up. Fixes #30203. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* Merge pull request #70996 from reduz/properly-report-callable-bound-argumentsRémi Verschelde2023-01-091-1/+1
|\ | | | | | | Properly report Callable bound arguments
| * Properly report Callable bound argumentsJuan Linietsky2023-01-081-1/+1
| | | | | | | | | | Fixes #63213 Adds a function: Callable::get_amount_of_arguments_bound() to query this in callables. Exposed to the engine API.
* | Merge pull request #71045 from reduz/use-bitfield-in-core-typesRémi Verschelde2023-01-091-1/+1
|\ \ | | | | | | | | | Use BitField<> in core type masks
| * | Use BitField<> in core type masksJuan Linietsky2023-01-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * All core types masks are now correctly marked as bitfields. * The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks. * Most bitmask operations replaced by functions in BitField<> * Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is. * Documentation and API dump updated to reflect bitfields in core types.
* | | Fix `ScriptInstanceExtension::get_property_default_value` return valuevoidedWarranties2023-01-061-1/+2
|/ /
* | Merge pull request #68429 from KoBeWi/PropertySettingsRémi Verschelde2023-01-061-2/+1
|\ \ | |/ |/| Add PropertyInfo overload for GLOBAL_DEF
| * Add PropertyInfo overload for GLOBAL_DEFkobewi2022-12-111-2/+1
| |
* | Merge pull request #64253 from heppocogne/Fix-native-enum-release-1Rémi Verschelde2023-01-061-14/+5
|\ \ | | | | | | | | | Register enum type names in release build
| * | Register native base class name of enum types when release buildheppocogne2022-12-301-14/+5
| | |
* | | One Copyright Update to rule them allRémi Verschelde2023-01-0521-609/+609
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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".
* | | Improve logic around using Ref<T> with GDExtension virtual functionsBastiaan Olij2022-12-131-0/+3
| | |
* | | Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextensionRémi Verschelde2022-12-126-89/+89
|\ \ \ | |_|/ |/| | | | | Rename all gdnative occurences to gdextension
| * | Rename all gdnative occurences to gdextensionGilles Roudière2022-12-126-89/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 unable to disconnect signal in Editor once createdMicky2022-12-081-0/+1
|/ / | | | | | | Adds a CONNECT_INHERITED flag to connections, only available in editor builds. This flag denotes that the signal has been inherited from a previous Scene in the instancing hierarchy.
* | Merge pull request #69343 from YuriSizov/core-missing-property-revert-gettersRémi Verschelde2022-12-051-0/+2
|\ \ | | | | | | | | | Add missing public `property_*_revert` getters
| * | Add missing public property_*_revert gettersYuri Sizov2022-11-291-0/+2
| | |
* | | Merge pull request #69357 from TokageItLab/byebye-triggerRémi Verschelde2022-12-051-16/+15
|\ \ \ | | | | | | | | | | | | Remove `UPDATE_TRIGGER` mode from `ValueTrack::UpdateMode` & Match behaviors between `AnimationTree` and `AnimationPlayer`
| * | | Remove UPDATE_TRIGGER & Match behaviors between AnimationTree/PlayerSilc Renew2022-12-021-16/+15
| |/ / | | | | | | | | | #69357
* / / Fix const qualifier for parameters in GDExtension api functionsEmmanuel Leblond2022-12-023-28/+28
|/ /
* | Merge pull request #67680 from haasanen/fix_physics_thread_race_conditionRémi Verschelde2022-11-291-1/+3
|\ \ | | | | | | | | | Fix physics/3d/run_on_separate_thread race condition in WorkerThreadPool (crash).
| * | Fixes HashMap::erase related race condition in WorkerThreadPool when Physics ↵Simo Haasanen2022-10-201-1/+3
| | | | | | | | | | | | 2D or 3D is selected to run on a separate thread.
* | | Add MAKE_RESOURCE_TYPE_HINT macro to simplify binding arrays of resourcesRémi Verschelde2022-11-241-0/+4
| | |
* | | Fixes inability to assign script after clearingocean (they/them)2022-11-211-2/+4
| | |
* | | Remove `PROPERTY_HINT_IMAGE_COMPRESS` constantsMicky2022-11-151-2/+0
| | | | | | | | | | | | These were used in 3.x but there's no reference of them in the codebase, at all.
* | | Merge pull request #67963 from KoBeWi/den_of_actionsRémi Verschelde2022-11-142-0/+5
|\ \ \ | | | | | | | | | | | | Fix nested actions in EditorUndoRedoManager
| * | | Fix nested actions in EditorUndoRedoManagerkobewi2022-10-282-0/+5
| |/ /
* | | 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 :/
* | | Fix default values on virtual classes causing errors in projectsAaron Franke2022-11-091-1/+1
| | |
* | | Use StringName in the whole GDExtension API instead of const char *Emmanuel Leblond2022-11-084-28/+39
| | |
* | | Fix default values not showing up on virtual classesAaron Franke2022-11-061-1/+1
| | |
* | | Don't allow instancing virtual node types in the Create New Node dialogAaron Franke2022-11-051-1/+7
| | |
* | | Merge pull request #67693 from Mickeon/slight-hint-shufflingRémi Verschelde2022-11-021-1/+1
|\ \ \ | | | | | | | | | | | | Fix unordered values of PROPERTY_HINT_INT_IS_POINTER & ARRAY_TYPE
| * | | Fix unordered values of PROPERTY_HINT_INT_IS_POINTER & ARRAY_TYPEMicky2022-10-211-1/+1
| |/ /
* | | Merge pull request #67578 from KoBeWi/GEDITORRémi Verschelde2022-10-311-3/+3
|\ \ \ | | | | | | | | | | | | Unify usage of GLOBAL/EDITOR_GET
| * | | Unify usage of GLOBAL/EDITOR_GETkobewi2022-10-181-3/+3
| |/ /
* / / Minor code improvementskobewi2022-10-181-1/+1
|/ /
* | GDExtension: add support for abstract and virtual classesRicardo Buring2022-10-162-1/+6
| |
* | Merge pull request #66427 from Mickeon/object-methods-autocompletionRémi Verschelde2022-10-131-0/+40
|\ \ | | | | | | | | | Add autocompletion to several Object methods
| * | Add autocompletion to several Object methodsMicky2022-09-261-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | Add autocompletion for the following Object methods: - `connect`, `is_connected`, `disconnect`, `emit_signal`, `has_signal`; - `call`, `call_deferred`, `callv`, `has_method`; - `set`, `set_deferred`, `get`; - `set_meta`, `remove_meta`, `has_meta`, `remove_meta`.
* | | Merge pull request #67300 from Mickeon/indexed-objectionRémi Verschelde2022-10-121-2/+2
|\ \ \ | | | | | | | | | | | | Rename `set`/`get_indexed`'s "property" to "property_path"
| * | | Rename `set`/`get_indexed`'s "property" to "property_path"Micky2022-10-121-2/+2
| | | | | | | | | | | | | | | | Also touches up the Documentation slightly.
* | | | Fix _unnamed_arg so that arguments defined by GDExtension show up in docs.Quentin Quaadgras2022-10-121-1/+3
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Godot API (gdnative_interface.h) allows methods to be registered on extension classes with `classdb_register_extension_class_method` a `GDNativeExtensionClassMethodInfo` can be provided to this function along with a `get_argument_info_func` which according to the comment indicates that argument names should be definable here. Unfortunately, setting the name field in the `GDNativePropertyInfo` struct has no effect on the editor documentation, which continues to display "_unnamed_arg" for each argument. I discovered that `get_argument_info` is responsible for this as it always overrides the `info.name`. I've added an if condition that will only override the name when it is empty. I've tested this with my GDExtension module and I can confirm that with this commit, the argument name shows up in the builtin docs. eg. in Lookup Symbol.